np.memmap
pandas的处理速度要比numpy慢,而遇到特别大的数组、矩阵时,numpy将数据读入内存也会发生IO内存不足,即便读入了内存操作也很慢,这时候用memmap。
memmap可以将大文件分小段读写。使用时,会先为磁盘上的数据创建一个映射,对映射赋值,然后保存即可将数据写入磁盘。读取时也是通过映射,将修改通过映射写入磁盘。
#创建memmap
fp = np.memmap(filename, dtype=‘float32’, mode=‘w+’, shape=(3,4))
#赋值写入memmap
fp[:] = data[:]
#删除(或关闭)memmap
del fp
#读取memmap
fpr = np.memmap(filename, dtype=‘float32’, mode=‘r’, shape=(3,4))