我的数据框是
c1 c2 c3 c100
0.2 0.4 0.9 0
0.2 0.3 0 1
0.1 0.6 1 0.3
我想要选择c1 c2和c3,c1 c2和c4,类似于c1 c2和c100。每3个选定的列应保存在单独的文件中。我怎么能在r?
答案 0 :(得分:0)
假设x
是你的data.frame
,你可以使用它:
for (i in 3:100){
tmp <- x[, c(1,2,i)]
write.table(tmp, paste0("some/file/path/and/name_", i, ".csv"))
}
通过使用迭代器i
作为文件名,您可以创建单个文件名。
答案 1 :(得分:-1)
我们可以使用combn
lst <- combn(df1, 3, FUN = list)
names(lst) <- sapply(lst, function(x) paste(names(x), collapse="_"))
lapply(names(lst), function(x) write.table(lst[[x]], paste0(x, ".csv")))
如果它附加了包含所有其他列的第1列和第2列
lst <- lapply(names(df1)[3:100], function(i) df1[c(1:2, i)])
names(lst) <- sapply(lst, function(x) paste(names(x), collapse="_"))
lapply(names(lst), function(x) write.table(lst[[x]], paste0(x, ".csv")))