BatchJobs
パッケージを使用しています。data.table
繰り返してジョブを送信しようとしているリストがあります。ただし、次のエラーメッセージが表示されます。
batchMap(reg, function(dtb) dtb[,roll_reg(.SD),by=gvkey], dtb_input_list)
Error: serialization is too large to store in a raw vector
それぞれdata.table
約7,000行6列です。なぜこれが大きすぎてシリアル化できないのか理解できないようです。すべての検索では、制限として2^31-1の数が出てきます。次に例を示します。
require(BatchJobs)
reg <- makeRegistry(id="myreg", file.dir="myreg")
test_list = lapply(1:10, function(i) data.frame(a=rep(i,10000)))
batchMap(reg, function(dtb) nrow(dtb), test_list)
Error: serialization is too large to store in a raw vector
編集:さらなる調査を保留中。これは、まったく同じデータを使用して発生するエラーのようです。他のどのような環境変数が変化しているかを理解しようとしています。