python读取npz/npy文件
zeeq_ 人气:3python读取npz/npy文件
npz和npy文件都可以直接使用numpy读写。
import numpy as np ac = np.load('mydata.npz') ac.files
python查看npz/npy文件
要查看其中某一项的数据:
M = ac['M'] M
显示的值带省略号,要完全显示,执行:
np.set_printoptions(threshold=np.inf) M
输出有很多很多:
查看M的形状大小:
M.shape
将numpy输出样式修改回去(默认为6):
np.set_printoptions(threshold=6)
再输出M试试:
M
要查看M中某一项的值,可以执行:
M[0,0] # 查看第一个元素的值
上面说的是打开查看npz文件的方式,但是其实,打开npy文件的方式和上述是一模一样的,并且,npz文件其实就是一系列npy文件的压缩包而已,如下图所示:
因此,要打开npy文件,执行:
M = np.load("M.npy")
文件名依据自己的实际文件名进行更改,这里的M和上面的M是一样的,所以操作其实也是一样的了。
保存为文本文件的方法:
np.savetxt('M.txt', M, delimiter=" ") #保存为txt np.savetxt('M.csv', M, delimiter=",") #保存为csv
最后,记录一个问题,来自python读取npy文件。如果在加载预训练模型时,执行如下命令:
pre_train = np.load("vgg16.npy", allow_pickle=True, encoding="latin1") print(pre_train.shape) # 输出为(),没有数据
解决方法:
data_dic = pre_train.item() print(data_dic.shape)
即可查看。
附:python-读取和保存npy文件示例代码
import numpy as np # .npy文件是numpy专用的二进制文件 arr = np.array([[1, 2], [3, 4]]) # 保存.npy文件 np.save("../data/arr.npy", arr) print("save .npy done") # 读取.npy文件 np.load("../data/arr.npy") print(arr) print("load .npy done")
总结
加载全部内容