2017-06-23 12 views
0

サイズが2GBを超える大きなjsonファイルを持っています。データサイズが非常に大きいので、データセット全体でデータフレームを作成することはできません。特定の情報を解析してCSVファイルに書き込む必要があります。特定の行数のデータフレームを作成するR

私は特定の数の行を持つデータフレームを作成するための技術を探しています。

jsonをデータフレームにパースするときに2M行があると仮定して、1プロセス当たり行が10k-15kのデータフレームを作成したいとします。そして、CSVファイルに情報を書き込んでください。

各プロセスは、すべて2M行を終了するまで、10k-15kの行を持ちます。

私はtidyjsondplyrパッケージで働いています。

+0

巨大なjsonファイルをRの外の小さなものに分割するのはどうですか? – amonk

+0

あなたはこれまでに試したことを私たちに見せてもらえますか? – loki

答えて

0

私は小さなものに大きなファイルの分割を行うとと平行行くことをお勧め:

library(parallel) 
json_files<-list.files(path = "path/to/jsons",pattern="*.json",full.names = TRUE)#get the files' location 

no_cores <- detectCores() - 1 
registerDoParallel(cores=no_cores) 
cl <- makeCluster(no_cores) 

system.time(json_list<-parLapply(cl,json_files,function(x) rjson::fromJSON(file=x,method = "R"))) 

    stopCluster(cl)#Once we are done we need to close the cluster so that resources such as memory are returned to the operating system. 
    gc()#just a garbage collection call. 

あなたは今、全体輸入情報を保持しているリストを持っています。

関連する問題