所以我下面的代碼片段:爲什麼將浮點列表轉換爲numpy數組會改變某些變量的值?
with open('dataset/train/problem.csv', 'r') as p:
raw_x = csv.reader(p)
data_x = []
for ix in raw_x:
data_x.append([float(i) for i in ix])
print(data_x)
這將打印輸出如下:
[[217.0, 118.0, 0.63, 755.0, 1071.0], [217.0, 118.0, 0.63, 755.0, 1071.0],...]
現在我想這種結構轉換成浮動的numpy的陣列,這樣我可以用它scikit學習作爲觀察輸入。但是,當我嘗試做以下
X = np.array(data_x)
print(X)
它提供了以下結果:
[ 2.17000000e+02 1.18000000e+02 6.30000000e-01 7.55000000e+02
1.07100000e+03]
...
[ 2.17000000e+02 1.18000000e+02 6.30000000e-01 7.55000000e+02
1.07100000e+03]
它仍然浮動,但十進制值不正確。
一直試圖弄清楚爲什麼會發生這種情況,因爲源數組也是浮動的。我曾嘗試提供type=float
和astype
,但似乎沒有任何工作。
謝謝!
謝謝,這是scikit-learn中使用的正確結構嗎? –
我不是很有經驗,但我相信。 – AMACB