Elaborazione scalabile dei dati in R
Michael Kane
Assistant Professor, Yale University
bigmemoryserve per archiviare, manipolare e processare grandi matrici, anche più grandi della RAM del computer
Gli oggetti R stanno in RAM
Quando la RAM finisce
Meglio caricare in RAM solo i dati necessari al momento dell'elaborazione.
bigmemory implementa il tipo big.matrix, usato per creare, archiviare, accedere e manipolare matrici salvate su disco
I dati restano su disco e vengono spostati in RAM in modo implicito
Un oggetto big.matrix:
library(bigmemory)# Crea un nuovo oggetto big.matrix x <- big.matrix(nrow = 1, ncol = 3, type = "double", init = 0, backingfile = "hello_big_matrix.bin", descriptorfile = "hello_big_matrix.desc")
# Guarda cosa contiene
x[,]
0 0 0
x
Oggetto di classe "big.matrix"
Slot "address":
<pointer: 0x108e2a9a0>
# Cambia il valore nella prima riga e colonna
x[1, 1] <- 3
# Verifica che la modifica sia avvenuta
x[,]
3 0 0
Elaborazione scalabile dei dati in R