在R中将几个输出打印到同一个CSV?

his*_*eim 1 csv file-io r traminer

我正在使用TraMineR包.我打印输出到CSV文件,如下所示:

write.csv(seqient(sequences.seq), file = "diversity_measures.csv", quote = FALSE, na = "", row.names = TRUE)
write.csv(seqici(sequences.seq), file = "diversity_measures.csv", quote = FALSE, na = "", row.names = TRUE, append= TRUE)
write.csv(seqST(sequences.seq), file = "diversity_measures.csv", quote = FALSE, na = "", row.names = TRUE,  append= TRUE)
Run Code Online (Sandbox Code Playgroud)

可以在此处找到dput(sequences.seq)对象.

但是,这不会正确附加输出,但会创建此错误消息:

In write.csv(seqST(sequences.seq), file = "diversity_measures.csv",  :attempt to set 'append' ignored
Run Code Online (Sandbox Code Playgroud)

另外,它只给我最后一个命令的输出,所以看起来它每次都会覆盖文件.

是否可以将所有列都放在一个CSV文件中,每个列都有一个列名(即熵,复杂性,湍流)

Jus*_*tin 7

您可以append=TRUEwrite.table调用中使用并使用相同的文件名,但您需要根据需要指定所有其他参数. 如文档中所述,append=TRUE包装函数不可用write.csv:

这些包装器是故意不灵活的:它们旨在确保使用正确的约定来编写有效文件.尝试更改append,col.names,sep,dec或qmethod会被忽略,并显示警告.

或者你可以写出来

write.csv(data.frame(entropy=seqient(sequences.seq), 
                     complexity=seqici(sequences.seq), 
                     turbulence=seqST(sequences.seq)),
          'output.csv')
Run Code Online (Sandbox Code Playgroud)