7

私は、長さがさまざまな程度のデータフレームをたくさん持っています。15,000 ~ 500,000。これらのデータ フレームごとに、さらに処理を行う 300 行の小さなデータ フレームに分割したいと思います。これどうやってするの?

これ ( Split up a dataframe by number of rows ) は部分的な答えを提供しますが、すべてのデータ フレームの長さが 300 の倍数であるとは限らないため、うまくいきません。

プライアと非プライアの両方のソリューションを提供できれば、非常にありがたいです。

ありがとうございました!

4

2 に答える 2

16

プライアソリューションが必要な理由がわかりません。split完全にうまく機能し、ハドリー自身でさえ、前の質問を見たときに plyr/reshape2 ソリューションを提案しませんでした:

split(dfrm, (0:nrow(dfrm) %/% 300)  # modulo division

警告が生成されますが、均等に割り切れない結果が予想されるため、無視する必要があります。

于 2013-08-09T03:59:09.637 に答える
2

次のようなものが役立つかもしれません

numBreaks <- nrow(DAT)%/%300 + 1
for( i in seq(numBreaks)){
  smallDAT <- DAT[((i-1)*300+1):(min(nrow(DAT), i*300)), ]
.....
}
于 2013-08-09T03:55:22.943 に答える