Numpy IO
Numpy 可以读写磁盘上的文本数据或二进制数据
npy文件用于存储重建ndarray所需的数据,图形,dtype和其他信息。
常用的IO函数有:
- load()和save(),默认情况下数组以未压缩的二进制原始格式保存在.npy文件中
- savez(),用于将多个数组写入文件,默认情况下数组以未压缩的二进制原始格式保存在.npz中
- loadtxt()和savetxt()处理正常的文本文件(.txt等)
numpy.save()
将数组保存到.npy文件中
numpy.save(file, arr,allow_pickle=True, fix_imports=True)
参数说明:
- file:数组保存到的文件,拓展名为.npy(若无拓展名会自动加上)
- arr:保存的数组
- allow_pickle:可选,布尔值,允许使用 Python pickles 保存对象数组,Python 中的 pickle 用于在保存到磁盘文件或从磁盘文件读取之前,对对象进行序列化和反序列化。
- fix_imports:可选,为了方便 Pyhton2 中读取 Python3 保存的数据。
示例
>>>a=[1,2,3,4]
>>>np.save("testSave",a)
>>>b=np.load("testSave.npy")
>>>b
array([1, 2, 3, 4])
numpy.savez()
将多个数组保存到.npz文件中
.files属性查看数组的名称
numpy.savez(file, *args, *kwds)
参数说明
- file:数组保存到的文件,拓展名为.npz(无拓展名会自动加上)
- args:要保存的数组,可用关键字参数起名,非关键字参数传递的数组会被自动命名为arr_0,arr_1...
- kwds:被保存数组的关键字名称
示例
>>>a=np.array([[1,2,3],[4,5,6]])
>>>b=np.arange(0,1.0,0.1)
>>>c=np.sin(b)
>>>np.savez("testSavez",a,b,sin_array=c)
>>>r=np.load("testSavez.npz")
>>>r.files
['sin_array', 'arr_0', 'arr_1']
>>>r['arr_0']
array([[1, 2, 3],
[4, 5, 6]])

浙公网安备 33010602011771号