我熟悉 R 中的一些拆分-应用-组合函数,例如 ddply,但我不确定如何拆分数据框、修改每个子集中的单个变量,然后重新组合子集。我可以手动执行此操作,但肯定有更好的方法。
在我的示例中,我试图在 group中随机播放单个变量(但没有其他变量) 。这是一个排列分析,所以我做了很多次,因此想加快速度。
allS <- split(all, f=all$cp)
for(j in 1:length(allS)){
allS[[j]]$party <- sample(x=allS[[j]]$party)
}
tmpAll <- rbind.fill(allS)
示例数据框:
all <- data.frame(cp=factor(1:5), party=rep(c("A","B","C","D"), 5))
感谢您的任何指导!