r - 是否可以同时使用 write.table() 和 ddply?

标签 r

假设我有一个 data.frame 像:

a <- c(1:10,1:10,1:10,1:10,1:10,1:10,1:10,1:10,1:10,1:10)
df <- data.frame(a,rnorm(100))

我希望能够为 x 的每个值编写一个 csv 文件。可以用 ddply 做到这一点吗?

我已经可以用几行 for 循环来做到这一点……但我很好奇是否可以用 ddply 做到这一点。
for (x in 1:nrow(unique(df["a"]))) {
tmp <- unique(df["a"])
tmp2 <- paste(tmp[x,],".csv", sep="")
write.table(subset(df, a == tmp[a,], drop=T),file=tmp2, sep=",", row.names=F)
}  

最佳答案

继续约书亚的回答,plyr要使用的函数是 d_ply它不期望返回任何东西。你可以这样做:

d_ply(df, .(a),
      function(sdf) write.csv(sdf,
                              file=paste(sdf$a[[1]],".csv",sep="")))
file论据 write.csv构造成每个子集都有不同的文件名。

关于r - 是否可以同时使用 write.table() 和 ddply?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3411429/

相关文章:

r - 比较 R 中列表的相应元素

r - 如果 rowSums 大于一,除以总和

r - R 中的字符比较如何工作?

r - mclapply 与 for 循环绘图 : speed and scalability focus

RSelenium findElement 适用于 firefox :2. 53.1 但不适用于 firefox:latest

r - 将转录矩阵转换为基因矩阵的任何智能解决方案?

r - 在 R 中将两个数据框列堆叠到一个单独的数据框列中

r - 根据多个标准绘制整体百分比

R Markdown : How to use icons

r - 在 R 的公式表达式中添加控制变量字符串