2017-05-03 16 views
1

一度にすべてを保存することはできません。私は毎回20行しか保存できないという制限があります。すべてのx行を自分のデータに追加する

例:

nrow(iris) 
intervals <- nrow(z)/20 
new_iris <- iris[1:20, ] 
new_iris <- rbind(new_iris, iris[21:41, ]) 
new_iris <- rbind(new_iris, iris[22:42, ]) 
new_iris <- rbind(new_iris, iris[43:53, ]) 
... 

どのように私は手動ですべての20行を指定せずにこのrbindを行うことができますか?

+2

'スプリット(アイリス、担当者(1: (アイリス)、each = 20、length.out = nrow(アイリス))) '?最終的なグループは20未満になるかもしれません...あなたが '区間 'を作成してから無視するので、ここで分割したり結合しているかどうかは分かりません。 – Frank

+0

[なぜ回答を受け入れますか?](https://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)回答を受け入れることで、同じ質問をした他の人に役立ちます。私は@ J.Conの答えに行くだろう。 – Masoud

答えて

0

それがループを使用して、私は最善ではなく、しようとまず最初に、このようになります:

nrow(iris) 
intervals <- floor(nrow(z)/20) 
new_iris <- iris[1:20, ] 
for (i in 1:intervals){ 
new_iris <- rbind(new_iris, iris[i * 20 + 1, (i + 1) * 20]) 
} 
0

多分...

library(dplyr) 
new_iris<-iris %>% 
     group_by(grp = as.integer(gl(n(), 20, n()))) 
+0

これを動作させるにはパッケージをロードする必要がありますか? – smacdonald

+0

が編集されました。ありがとう@smacdonald –

+0

'magrittr'も必要ですか? – smacdonald

関連する問題