【发布时间】:2022-11-28 18:41:58
【问题描述】:
我有一个尺寸为 24,523x3,468 的数据框,我想打乱这个数据框的条目。例如,我有一个简单的数据框
df <- data.frame(c1=c(1, 1.5, 2, 4), c2=c(1.1, 1.6, 3, 3.2), c3=c(2.1, 2.4, 1.4, 1.7))
df_shuffled = transform(df, c2 = sample(c2))
它适用于一列,但我想随机播放所有列或所有行。我试过了
col = colnames(df)
for (i in 1:ncol(df)){
df2 = transform(df, col[i] = sample(col[i]))
}
df2
它会产生这样的错误
我也试过这个来洗牌,但它只洗牌行和列
df_shuf = df[sample(rownames(df), nrow(df)), sample(colnames(df), ncol(df))]
df_shuf
如何按行和列对 I 使用循环来随机播放数据框 df 的条目?
【问题讨论】:
标签: r dataframe random shuffle sample