实现“小内存跑大数据”。
利用虚拟内存映射,不一次性将大数据集加载进内存,而是在虚拟空间中开辟一块区域指向文件,按需加载对应页。
语法与参数
import numpy as np
arr = np.memmap(
filename='data.bin',
dtype='uint16',
mode='w+',
shape=(10000,)
)dtype: 数据类型mode:r: 只读r+: 读写w+: 创建新文件或覆盖旧文件读写c(Copy-on-write): 写操作只留在内存,不改动硬盘原始文件
shape: 形状
注意
- 写回后最好显式调用
flush()