numpy读取/写入数组数据
在我们使用numpy处理了数据之后,可以将数组保存为保存为Numpy专用的二进制格式,当我们这样操作之后,就不能用notepad++等打开看了(乱码)。
np.load和np.save是读写磁盘数组数据的两个主要函数,默认情况下,数组是以未压缩的原始二进制格式保存在扩展名为.npy的文件中。
存储数组数据(npy)
ar = np.random.rand(5,5) print(ar) np.save('arraydata.npy', ar)
读取数组数据(npy)
ar_load =np.load('arraydata.npy') print(ar_load)
numpy读取/写入文本数据
除了保存为npy文件外,我们还可以将数据保存为txt格式的文本文件,np可以读写1维和2维的数组同时可以指定各种分隔符、针对特定列的转换器函数、需要跳过的行数等。
存储文本数据(txt)
这里需要注意的是关于文件保存的默认分隔符是空格,缺省按照'%.18e'格式保存数据。
ar = np.random.rand(5,5) np.savetxt('array.txt',ar, delimiter=',') # 改为以整数形式保存 np.savetxt("a.txt",a,fmt="%d",delimiter=",") # np.savetxt(fname, X, fmt='%.18e', delimiter=' ', newline='\n', header='', footer='', comments='# '):存储为文本txt文件
读取文本数据(txt)
同样这里要注意的是读取也要标注分隔符的值,如果与保存时不同会报错。
ar_loadtxt = np.loadtxt('array.txt', delimiter=',') print(ar_loadtxt) >>> [[ 0.28280684 0.66188985 0.00372083 0.54051044 0.68553963] [ 0.9138449 0.37056825 0.62813711 0.83032184 0.70196173] [ 0.63438739 0.86552157 0.68294764 0.2959724 0.62337767] [ 0.67411154 0.87678919 0.53732168 0.90366896 0.70480366] [ 0.00936579 0.32914898 0.30001813 0.66198967 0.04336824]]