在R中,我试图根据其中一个变量输出带有子标题的数据帧。需要的是带有这样的子标题的csv文本(使用虹膜数据):
# setosa
5.1, 3.5, 1.4, 0.2
4.9, 3.0, 1.4, 0.2
...
# versicolor
7.0, 3.2, 4.7, 1.4
6.4, 3.2, 4.5, 1.5
...
# virginica
6.3, 3.3, 6.0, 2.5
5.8, 2.7, 5.1, 1.9
...
用于处理此类任务的一些本机命令是什么?有没有包含这个的包裹?
答案 0 :(得分:0)
您可以将cat
和write.table
与append = TRUE
结合使用来创建输出。请注意,我们会在开头设置append = FALSE
。
mylist = split(iris, iris$Species)
lapply(1:length(mylist), function(i){
if (i == 1){
append = FALSE
}else{
append = TRUE
}
#Write the name of the Species
cat(paste0("#",names(mylist)[i],"\n"), file = "~/test.csv", append = append)
#Write the data corresponding to the above Species
write.table(mylist[[i]], file = "~/test.csv", sep = ",", append = TRUE)
})