0

listの機能をffload適切に使用して、の一部を選択的にロードするにはどうすればよいffdfですか?

ff データフレームの一部を選択的にロードすることは可能ですが、自分で機能させることはできないと何度も読みました。

私の問題は、一意の ID のリストを持つベクターとのマージを実行しようとしていますが、ffdf ファイルが大きすぎてコンピューターがこのマージを処理できないことです。

これまでのところffinfo、 を構成するさまざまなパーツのリストを取得するために を使用しようとしてきましたffdf

たとえば、問題の ffdf の「ファイル パーツ」の次のリストを取得します。

ffinfo(file=paste(imp_tables_root_loc,table_name,sep=""))

ここでpaste(imp_tables_root_loc,table_name,sep="")、ffdf テーブルとその場所を指定します

[1] "ffdf1590409e251b.ff" "ffdf159047426082.ff" "ffdf159058a426ab.ff" "ffdf1590410708c.ff"  "ffdf159022b49bf.ff" 
 [6] "ffdf1590174e5dec.ff" "ffdf159045d93226.ff" "ffdf159037f87280.ff" "ffdf159044ad3d39.ff" "ffdf15905224601a.ff"
[11] "ffdf159027936205.ff" "ffdf1590133841c8.ff" "ffdf15902d365cac.ff" "ffdf159065b4259.ff"  "ffdf15904a162908.ff"
[16] "ffdf15905529c1c.ff"  "ffdf1590eda1092.ff"  "ffdf1590ab65eb.ff"   "ffdf159048e74f82.ff"

次に、次のように呼び出して ffload を試みます。

ffload(file=paste(imp_tables_root_loc,table_name,sep=""),list="ffdf1590409e251b.ff")

しかし、これにより次のエラーが発生します。

ffload(file = paste(imp_tables_root_loc, table_name, sep = "") のエラー: ffarchive にありません: " ffdf1590409e251b.ff",

4

1 に答える 1

0

list: An optional vector of names selecting those objects to be restored (default NULL restores all)

したがって、複数の場合に特定のオブジェクトのみをロードできますffsave。すなわち

R> a = as.ffdf(data.frame(x = rnorm(10), y = rbinom(10, 5, .2)))
R> b = as.ffdf(data.frame(g = 1:15, h = rpois(15, 5)))
R> ffsave(a, b, file = "foo")
R> rm(list = ls())
R> ffload("foo", list = "a")
R> ls()
[1] "a"
R> rm(list = ls())
R> ffload("foo", list = "b")
R> ls()
[1] "b"

の1列だけをロードできるとは思わないffdf

于 2013-08-01T03:20:12.810 に答える