0

R には次の命令があります。これは、長い文字列を含むdata$theme内のテキストに従ってvariable の値を変更するために使用しています。data$paragraph

  lines <- grep('banana|apple', file$paragraph)  # lines that match search terms
  for (i in 1:length(lines)){
    data[lines[i], 'theme'] <- 'Fruit'
  }

このコマンドの問題は、大規模なデータセットでは非常に効率が悪いことです。私の実際のケースには 20 万行以上あります。コンピューターが各置換を行うのに 1 秒以上かかり、4 万を超えるサブスクライブを実行する必要があります (スクリプト全体のこの小さなステップを完了するのに 5 時間以上かかるわけにはいきません)。これをスピードアップする方法を必死に探しています。簡単な解決策があるに違いありませんが、そこにたどり着くためのより良い方法は考えられません。ヘルプ!

4

1 に答える 1

4
data[lines, 'theme'] <- 'Fruit'

R はベクトル全体を一度に処理できます。これを利用することは、物事をスピードアップする簡単な方法です。

于 2013-07-19T20:42:13.450 に答える