您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“python如何將txt等文件中的數據讀為numpy數組”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“python如何將txt等文件中的數據讀為numpy數組”這篇文章吧。
實際中,很多數據都是存為txt文件、csv文件等,但是在程序中處理的時候numpy數組或列表是最方便的。
1 將txt文件讀為list并轉化為numpy數組
import numpy as np file = open('filename.txt') val_list = file.readlines() lists =[] for string in val_list:
string = string.split('\t',3)
lists.append(string[0:2]) #只取每個string的前兩項,得到的lists即為所要的列表 a = np.array(lists) #將列表轉化為numpy數組, a= a.astype(int) #并設定類型為intfile.close()
這種方法雖然代碼長一點,但是可以允許你的txt文件中每一個line中既包含數字項又包含字母項等,如果你的txt文件的每一個line中的每一項都是數字,則有一個更簡單的方法:
a = numpy.loadtxt('filename.txt')
這樣直接得到一個全為數字的numpy數組。
2 split等方法的簡介
split函數通過指定分隔符對字符串進行分隔,如果參數num有值,則表示將字符串分隔為num個字符串。語法格式:string.split(str = " " , num = x ),str為分隔符,默認是所有的空字符,如空格、換行、制表符等。num為子字符串個數。返回值為分隔后的字符串列表。實列如上文中:
string = string.split('\t',3)
表示以\t為分隔符,分成3個字符串。除了常用的split,還有一個常用的功能相關的函數strip(),它用于移除字符串頭尾指定的字符。它的語法格式:string.strip([char]),char為
要移除的指定的字符,默認為空格。返回值為移除后的新字符串。實列如下:
str = "000111aaabbb111000" print str.strip('0')
輸出為:
111aaabbb111
以上是“python如何將txt等文件中的數據讀為numpy數組”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。