Numpy:数组保存成文件 + 文件导入
2019-11-26 本文已影响0人
胜负55开
大型程序运行时,需要及时对每步计算结果矩阵进行保存。Numpy的数组保存为文件非常简单,并且再次导入的速度也非常的快!—— 总之,十分好用!
假设保存在当前文件夹下:
- 保存函数:numpy.save( '文件名', xx )
- 导入函数:numpy.load( '文件名.npy' )
优势:
- 保存成的文件是一个二进制的.npy文件,numpy写入与读取这种文件格式非常的快!因此无需将数组保存为.txt文件或其他;并且.npy文件可以保存"任意高维"的数组,并且保存了高维数组的"结构"!—— 即再次导入后,完全和原数组一模一样!
- 保存的文件大小,纯粹和数组里的元素类型有关,即:是float64还是float32;可以人为控制保存的文件大小。
一个例子,就会使用保存 + 导入:
import random
import numpy as np
specimen_total = 1000
r1 = []
r2 = []
w1 = np.zeros( (200,200) )
w2 = np.zeros( (1000,1) )
# 高维数组生成:
for x in range(specimen_total):
rtmp1 = w1 + random.random()
rtmp2 = w2 + random.random()
r1.append(rtmp1)
r2.append(rtmp2)
# 保存到当前文件夹:
np.save('r1_{}_samples'.format(specimen_total), r1)
np.save('r2_{}_samples'.format(specimen_total), r2)
# 将保存的数组导入:
g1 = np.load( 'r1_{}_samples.npy'.format(specimen_total) )
g2 = np.load( 'r2_{}_samples.npy'.format(specimen_total) )