Rで学ぶスケーラブルなデータ処理
Michael Kane
Assistant Professor, Yale University
bigmemoryは、コンピュータのRAMを超えるような大規模な行列を格納・操作・処理するために使用されます
RオブジェクトはRAMに保持されます
RAMが不足すると
処理に必要なときだけデータをRAMに読み込む方が効率的です。
bigmemoryは big.matrix データ型を実装しており、ディスク上の行列の作成・格納・アクセス・操作に使用されます
データはディスクに保持され、必要に応じて暗黙的にRAMへ転送されます
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で学ぶスケーラブルなデータ処理