1

有没有办法将 ffdf 转换为普通数据帧?假设这个东西足够小,可以放入 ram 中。

例如:

library(ff)
library(ffbase)

data(trees)
Girth  <- ff(trees$Girth)
Height <- ff(trees$Height)
Volume <- ff(trees$Volume)
aktiv  <- ff(as.factor(sample(0:1,31,replace=T)))
#Create data frame with some added parameters.
data <- ffdf(Girth=Girth,Height=Height,Volume=Volume,aktiv=aktiv)
rm(Girth,Height,Volume,trees,aktiv)

aktiv <- subset.ffdf(data, data$aktiv== "1" )

然后将 aktiv 转换为数据框并保存 RData(遗憾的是,等待输出的人不想学习如何使用 ff 包,所以我别无选择)

谢谢

4

1 回答 1

3

只需使用as.data.frame

aktiv <- subset(as.data.frame(data), aktiv == 1)

   Girth Height Volume aktiv
2    8.6     65   10.3     1
7   11.0     66   15.6     1
9   11.1     80   22.6     1
12  11.4     76   21.0     1
13  11.4     76   21.4     1
15  12.0     75   19.1     1
17  12.9     85   33.8     1
20  13.8     64   24.9     1
21  14.0     78   34.5     1
23  14.5     74   36.3     1
26  17.3     81   55.4     1
27  17.5     82   55.7     1
28  17.9     80   58.3     1
31  20.6     87   77.0     1

从这里您可以轻松地使用saveor write.csv,例如:

save(aktiv, file="aktiv.RData")
于 2013-02-14T12:51:50.913 回答