は私が元のデータ配信の割合を維持しながらランダムな行を選択していますか?
今d[,.N,by=group]
として配布されている5つのグループのためのデータを表し、次のdata.table
d <- data.table(group=rep(letters[1:5],c(30,20,20,20,10)), x=1:100, y=101:201)
を持って考えてみましょう、私は小さなサンプルを選択しないか、のは10行としましょう(または1つまたは複数の列に基づいておおよそ類似したグループ分布を有するデータの10%)。だから、上記の表Iは、何かのようになります受け取ることができる架空のサブセットのため:
group x y
a 8 108
b 32 132
e 93 193
b 46 146
d 88 188
c 53 153
c 68 168
a 19 119
d 74 174
a 24 124
私はこれを行うにはどうすればよい、好ましくは、data.table?あなたがこれについて議論するSO hereに関する質問がありますが、私はむしろ分配率を手動で計算しません。
非常に良い! Damianoさん、 'caret :: createDataPartition'と徹底的な答えを指摘してくれてありがとうございます。 – Vijay