我已经看过如何使用格式选项保存numpy数组(此处(。我这样保存了我的numpy数组:
np.savetxt('my_file.txt', results, fmt='%1.4f', delimiter=",")
看起来不错:
0.0050,0.0100,0.0150,0.0000,0.0000,0.0050,0.0000,0.0150
0.0050,0.0100,0.0150,0.0000,0.0000,0.0050,0.0000,0.0150
0.0050,0.0100,0.0200,0.0000,0.0000,0.0050,0.0000,0.0150
0.0050,0.0100,0.0150,0.0000,0.0000,0.0050,0.0000,0.0150
0.0050,0.0100,0.0100,0.0000,0.0000,0.0050,0.0000,0.0150
0.0050,0.0050,0.0100,0.0000,0.0000,0.0050,0.0000,0.0150
0.0050,0.0100,0.0150,0.0000,0.0000,0.0050,0.0000,0.0150
0.0050,0.0100,0.0100,0.0000,0.0000,0.0050,0.0000,0.0150
0.0050,0.0100,0.0100,0.0000,0.0000,0.0050,0.0000,0.0150
0.0050,0.0100,0.0100,0.0000,0.0000,0.0050,0.0000,0.0150
现在,当我尝试加载它时,我会收到一个错误:
pl_sioux = np.loadtxt(" my_file.txt&quort;(
Traceback (most recent call last):
File "rfresults.py", line 3, in <module>
pl_sioux = np.loadtxt("rf_pl_Sioux.txt") #, dtype='f')
File "/user/pkgs/anaconda2/lib/python2.7/site-packages/numpy/lib/npyio.py", line 1092, in loadtxt
for x in read_data(_loadtxt_chunksize):
File "/user/pkgs/anaconda2/lib/python2.7/site-packages/numpy/lib/npyio.py", line 1019, in read_data
items = [conv(val) for (conv, val) in zip(converters, vals)]
File "/user/pkgs/anaconda2/lib/python2.7/site-packages/numpy/lib/npyio.py", line 738, in floatconv
return float(x)
ValueError: invalid literal for float(): 0.0050,0.0100,0.0150,0.0000,0.0000,0.0050,0.0000,0.0150
我尝试了此操作,以数学为fmt
选项:
loaded_file = np.loadtxt("my_file.txt", dtype='f')
但有相同的错误。
如何加载我的numpy数组?
默认分界符值是一个空格。您必须提供实际定界符的价值:
np.loadtxt("my_file.txt", delimiter=",")