これは、一般的なメモリ割り当てエラーです。通常の問題では、革命 R がデータの 1 つのチャンクのメモリ内のデータを処理するデータ ファイルの行が多すぎますを同時に読み取るしようとしていること。
まず、問題を解決するのには、以下を試してください。
RxImport() ステートメントの引数 'rowsPerRead' の小さい値を設定します。'10000' の以下の値を実行してください。に対して異なる設定を試す必要がある場合があります。
これが問題なく動作し、できるだけ迅速にデータをインポートする値を検索するには。
この問題が解決しないし、csv ファイルの列の多くには、同時に 'x' のデータ列をインポートするのには役立ちます。たとえば、5000 の列とデータセット、場合に一度に 50 列のデータをインポートおよび 50 および XDF ファイルを新しい列のデータを書き出すし、その既存のおよび XDF ファイルに追加します。
ここでは R のサンプル コードのとおりです。
varNames <- readLines("mycsv.txt", n=1) colsPerRead <- 50 ## Set how many columns to read from the csv file at a time. You may want to initially set this to a larger value, say 100.
numReadsFromFile <- length(varNames/colsPerRead)
for (i in 1:numReadsFromFile)
{
tempdf <- rxImport(inData = "C:/MyRData/data.csv", varsToKeep = paste(varNames[((i-1)*colsPerRead)+1:(((i-1)*colsPerRead)+1)+colsPerRead], sep = ","),
rowsPerRead = 10000)
rxDataFrameToXdf(data = tempdf, ouFile = "C:/MyRData/data.xdf", append = "cols")
}