我的 file.data 看起來像這樣:
"3.0,1.5,0\n
4.6,0.7,1\n
5.8,2.7,2"
我想將此資料加載到兩個 numpy 陣列中,使其最終看起來像這樣:
X = [ [3.0, 1.5],
[4.6, 0.7],
[5.8, 2.7] ]
y = [0, 1, 2]
如果我執行以下操作...
fname = open("file.data", "r")
for line in fname.readlines():
print(line)
...我可以逐行讀取字串,但是將這些值分開并將它們放入兩個 numpy 陣列中的最佳方法是什么?
numpy 中是否有一個很好的模塊或函式可以真正有效地做到這一點?
uj5u.com熱心網友回復:
- 如果您的資料檔案是一個帶有分隔符的簡單 txt 檔案,那么您可以使用numpy.loadtxt加載整個資料一次
import numpy as np
data = np.loadtxt("file.data",delimiter=',')
X = data[:,0:2]
Y = data[:,2]
- 如果你想逐行閱讀,你可以嘗試使用numpy.fromstring它將每個字串輸出到一個陣列中
import numpy as np
data =[]
fname = open("file.data", "r")
for line in fname.readlines():
data.append(fromstring(line,sep=','))
data_array = np.array(data)
X = data_array[:,0:2]
Y = data_array[:,2]
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/420303.html
標籤:
上一篇:springboot應用程式正在運行但端點拋出404
下一篇:如何將列值附加到numpy陣列?
