把数据存储在内存之外
有几种包可以实现在内存之外存储数据。解决之道是把数据保存在外部数据库或者硬盘里的二进制文件中,然后在需要的时候部分地读取。下表描述了几种有用的包:
包 | 描述 |
---|---|
ff | 提供了一种数据结构,保存在硬盘中,但是操作起来就如同在内存中一样 |
bigmemory | 支持大规模矩阵的创建、储存、读取和操作。矩阵被分配到共享内存或内存映射的文件中(memory-mapped files) |
filehash | 实现了简单的key-value数据库,在其中特征字符串key与存储在硬盘中的数据value相关联。 |
ncdf, ncdf4 | Provides an interface to Unidata netCDF data files. |
RODBC, RMySQL, ROracle, RPostgreSQL, RSQLite | 可以用这些包读取外部关系数据库管理系统的数据 |
上面的包可以帮助客服R的内存限制。除此以外,当需要在有限时间内分析大数据集时,使用专门方法也是必须的。一些有用的方法将在下面介绍。