web-dev-qa-db-ja.com

Rで大規模なデータセットのサブセットを読み取る方法は?

約200万行のデータセットがあるので、データセット全体を読み取らずに、データセットのサブセットを読み取ります。私のデータセットには日付列が含まれているため、データセット全体を読み取らずに、時間とメモリの浪費になるため、日付範囲の間でデータセットを読み取りたいだけです。それを達成する方法は誰でも私にこれを案内できますか?

12
Zeeshan shaikh

_skip=_で_read.table_パラメータを使用する

_read.table("file.txt",skip= ,nrows= )
_

_skip=_と_nrows=_は両方とも行インジケーター番号を受け取るため、=の後に追加するだけです。

_nrows=_は、ファイルをインポートするときの範囲の深さを定義します。

まだ読んでいない場合は、 https://stat.ethz.ch/R-manual/R-devel/library/utils/html/read.table.html をお勧めします。

また、私の質問の1つを参照してください。

R-特定の行の後の.txtファイルから行を読み取る

それは、多少、同じ主題に触れています。

もう1つの可能な方法は、_skip=_でgrep()を使用することです。

_read.table(...,skip=grep("2005-12-31", readLines("File.txt")),nrows=365)
_

この行が行うことは、grep()に示されている行が見つかるまでスキップし、その後の行を読み取ります。 _nrow=_は、365行を読み取った後、読み取りを停止します(このようにして、1行が1つの日付と等しい場合、1年の日付を読み取ります)。

これは少し複雑に見えますが、それが私がこれを解決する方法を知っている唯一の方法です。

10
Olli J