您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關Python中numpy.loadtxt()讀取txt文件的案例的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
讀取txt文件我們通常使用 numpy 中的 loadtxt()函數
numpy.loadtxt(fname, dtype=, comments='#', delimiter=None, converters=None, skiprows=0, usecols=None, unpack=False, ndmin=0)
注:loadtxt的功能是讀入數據文件,這里的數據文件要求每一行數據的格式相同。
也就是說對于下面這樣的數據是不符合條件的:
123
1 2 4 3 5
接下來舉例講解函數的功能:
1、簡單的讀取
test.txt
1 2 3 4 2 3 4 5 3 4 5 6 4 5 6 7
import numpy as np a = np.loadtxt('test.txt')#最普通的loadtxt print(a)
輸出:
[[1. 2. 3. 4.] [2. 3. 4. 5.] [3. 4. 5. 6.] [4. 5. 6. 7.]]
數組中的數都為浮點數,原因為Python默認的數字的數據類型為雙精度浮點數
2、skiprows=n:指跳過前n行
test.txt
A B C D 2 3 4 5 3 4 5 6 4 5 6 7
a = np.loadtxt('test.txt', skiprows=1, dtype=int) print(a)
輸出:
[[2 3 4 5] [3 4 5 6] [4 5 6 7]]
3、comment=‘#’:如果行的開頭為#就會跳過該行
test.txt
A B C D 2 3 4 5 3 4 5 6 #A B C D 4 5 6 7
a = np.loadtxt('test.txt', skiprows=1, dtype=int, comments='#') print(a)
輸出:
[[2 3 4 5] [3 4 5 6] [4 5 6 7]]
4、usecols=[0,2]:是指只使用0,2兩列,參數類型為list
a = np.loadtxt('test.txt', skiprows=1, dtype=int, comments='#',usecols=(0, 2), unpack=True) print(a)
輸出:
[[2 3 4] [4 5 6]]
unpack是指會把每一列當成一個向量輸出, 而不是合并在一起。 如果unpack為false或者參數的話輸出結果如下:
[[2 4] [3 5] [4 6]]
test.txt
A, B, C, D 2, 3, 4, 5 3, 4, 5, 6 #A B C D 4, 5, 6, 7
5、delimiter:數據之間的分隔符。如使用逗號","。
6、converters:對數據進行預處理
def add_one(x): return int(x)+1 #注意到這里使用的字符的數據結構 a = np.loadtxt('test.txt', dtype=int, skiprows=1, converters={0:add_one}, comments='#', delimiter=',', usecols=(0, 2), unpack=True) print a
def add_one(x): return int(x)+1 #注意到這里使用的字符的數據結構 a = np.loadtxt('test.txt', dtype=int, skiprows=1, converters={0:add_one}, comments='#', delimiter=',', usecols=(0, 2), unpack=True) print a
感謝各位的閱讀!關于Python中numpy.loadtxt()讀取txt文件的案例就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。