0

R を使用してデータセットを N 個の等しいサイズのパーティションに分割するにはどうすればよいですか? 私は次のようなものを試しました

    for (i in 1:100){data[i] <- full_data[i:(100000*i),]}

これは明らかに機能しませんが、うまくいけば、私が達成しようとしていることのアイデアが得られます. 完全なデータセットには 1,000,000 行あり、既にランダムな順序になっています。それぞれ 10,000 行の 100 個の同等で独立したデータセットが必要です。

4

3 に答える 3

0

がリストであると仮定すると、それでうまくいくはずですdata

data <- list()
for (i in 1:100){data[[i]] <- full_data[((i-1)*10000+1):(i*10000),]}
于 2014-04-10T19:22:06.747 に答える
0

インデックスの変位値グループを作成できます (たとえば、数えなくても正確に n グループが必要です)。

data <- data.frame(1:1000000)

xtile <- function (x, n)
    {
        cuts <- quantile(x, probs = seq(0, 1, length = n + 1))
        cut(x, breaks = cuts, include.lowest = TRUE)
    }

group <- xtile(1:nrow(data), 100)
all(table(group)== 10000)

data.spl <- split(data, group)
data.spl[[2]]
于 2014-04-10T19:27:09.010 に答える
0

cut2() 関数も均等に分割され、引数で分割数を設定できると思います。

于 2014-04-10T19:39:08.183 に答える