ファイルが占有するスペースを最小限に抑えながら、比較的大きなデータフレームをたくさん保存したいと思います。ファイルを開くときに、ワークスペースで与えられた名前を制御できるようにする必要があります。データフレームをバイナリファイルとして保存する
基本的に私はdputとdgetのシンボリックスをバイナリファイルで探しています。
例:
n<-10000
for(i in 1:100){
dat<-data.frame(a=rep(c("Item 1","Item 2"),n/2),b=rnorm(n),
c=rnorm(n),d=rnorm(n),e=rnorm(n))
dput(dat,paste("data",i,sep=""))
}
##much later
##extract 3 random data sets and bind them
for(i in 1:10){
nums<-sample(1:100,3)
comb<-rbind(dget(paste("data",nums[1],sep="")),
dget(paste("data",nums[2],sep="")),
dget(paste("data",nums[3],sep="")))
##do stuff here
}
Nice answer Shane。私は '保存'を使用したいと思いますが、読み込み時にデータの名前を制御できないというのは好きではありません。 –
データの名前を知っている新しい関数でload()関数をラップすることができます戻り値の名前を変更します。ロード関数は、関数の環境/名前空間に変数を挿入します。 – Harlan
Harlanが提案したことを実行できます。ファイルごとに1つのデータフレームを保存し、ファイルとデータフレームの両方に同じ名前を付けることもできます。それで、dputとdgetを使って、上で説明したのと同じ動作をします。 – Shane