我想用shape(5,2)保存一个数组,这个数组名为sorted_cube_station_list。
在打印时看起来没问题,但是当我用numpy.tofile保存它,然后用numpy.fromfile读取它时,它变成了一个1d数组
你能帮我吗?
将numpy导入为num
nx=5
ny=5
nz=5
stations=['L001','L002','L003','L004','L005']
for x in range(nx):
for y in range (ny):
for z in range (nz):
cube_station_list = []
i=-1
for sta in stations:
i=i+1
cube=[int(i), num.random.randint(2500, size=1)[0]]
cube_station_list.append(cube)
cub_station_list_arr=num.asarray(cube_station_list)
sorted_cube_station_list_arr=cub_station_list_arr[cub_station_list_arr[:, 1].argsort()]
print x,y,z, sorted_cube_station_list_arr
num.ndarray.tofile(sorted_cube_station_list_arr,str(x)+'_'+str(y)+'_'+str(z)
最佳答案
我建议您使用np.save
a = np.ones(16).reshape([8, 2])
np.save("fileName.npy", a)
请参见:第一个参数不能是要保存的变量,而是要保存它的文件的路径。因此,使用
np.save(yourArray)
时会出现错误您可以使用
np.load(pathToArray)
关于python - 读写ndarray,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32764738/