R 的可扩展数据处理
Michael Kane
Assistant Professor, Yale University
bigmemory用于存储、操作和处理可能大于计算机内存的超大矩阵
R 对象保存在内存中
当内存不足时
仅在需要处理时再把数据加载到内存更好。
bigmemory 实现了 big.matrix 数据类型,用于在磁盘上创建、存储、访问和操作矩阵
数据保存在磁盘上,并按需隐式载入内存
一个 big.matrix 对象:
library(bigmemory)# Create a new big.matrix object x <- big.matrix(nrow = 1, ncol = 3, type = "double", init = 0, backingfile = "hello_big_matrix.bin", descriptorfile = "hello_big_matrix.desc")
# See what's in it
x[,]
0 0 0
x
An object of class "big.matrix"
Slot "address":
<pointer: 0x108e2a9a0>
# Change the value in the first row and column
x[1, 1] <- 3
# Verify the change has been made
x[,]
3 0 0
R 的可扩展数据处理