-1

データは機密であるため、ここではたとえばダミー データ フレームを示します。

  i1  i2 o1
1 72 3.1 69
2 12 1.1 46
3 16 2.0 37
4 16 7.9 70
5 24 7.0 27
6 12 9.9 49 

このデータ フレームを固定サイズの 3 つのデータ フレームに分割したいのですが、行を置換せずに選択する必要があります。ここで、次を使用してランダムな部分を選択するとします:-

x=sample(6,3);
df_part1=df[x,]

ランダムに選択された行は次のとおりです:-

  i1  i2  o1
4 16  2.0  37
6 12  9.9  49 
1 72  3.1  69

ここで、2 番目の部分を選択する前に、これらの特定の行をデータ フレームから削除します。どうすればいいですか?

4

2 に答える 2

1

splitデータフレームから行を削除するのではなく、実際にデータフレームにしたいようです。データフレームのサイズが同じで、抽出された 3 つのデータフレームをランダム サンプルにしたい場合は、次のように指定します。

split(df, sample(1:3,dim(df)[1],TRUE))

サンプリングされた 3 つの相互に排他的なデータフレームのリストを取得します。元のデータフレームから何も削除する必要はありません。

また、データフレームに異なるサイズを持たせたい場合は、 でprob引数を指定できますsample

于 2013-07-04T08:04:29.533 に答える
0

1:6最初にサンプリングしてから、シャッフルされた 6 つの数字から情報を抽出できます。

tmp <- sample(6, 6)

tmp[1:3], tmp[4:6]が情報を提供し、そこから進むことができます。これが役立つことを願っています。

于 2015-07-10T20:04:35.127 に答える