R 如何输出正确的TSV?

R 如何输出正确的TSV?,r,tsv,R,Tsv,简短而甜蜜:如何从R导出TSV/CSV write.table/write.csv几乎可以工作: …但生成的格式与大多数其他程序所期望的格式不同: a b 1 2 3 2 3 4 3 4 5 –注意标题行的不同处理方式 如何导出第二种格式而不是第一种格式?手动将col.names指定为c(“”,colnames(test))不起作用–R抱怨参数无效。您可以使用col.names=NA: write.table(test, file='test.tsv', q

简短而甜蜜:如何从R导出TSV/CSV

write.table
/
write.csv
几乎可以工作:

…但生成的格式与大多数其他程序所期望的格式不同:

    a   b
1   2   3
2   3   4
3   4   5
–注意标题行的不同处理方式


如何导出第二种格式而不是第一种格式?手动将
col.names
指定为
c(“”,colnames(test))
不起作用–R抱怨参数无效。

您可以使用
col.names=NA

write.table(test, file='test.tsv', quote=FALSE, sep='\t', col.names = NA)

你也可以考虑排除行名<代码> ROW.NAME= false

。我认为没有CSV或TSV文件的“适当”定义,只是一系列不同的约定。@KonradRudolph我同意这是一个记录不充分的“陷阱”。好的一面是,一旦你学会了,你永远不会忘记:-)卡尔尽管你答应了,我还是忘了-/你真的不想要row.names=FALSE吗?关于R可以说很多,但是“直观的默认选项”不是其中之一。很抱歉,重新开始,但是@DaveH是对的,我认为你想要
row.names=FALSE
col.names=FALSE
,而不是
NA
。从预期的输出来看,OP显然想要保留行号。上述评论中已经提出了这一点。
write.table(test, file='test.tsv', quote=FALSE, sep='\t', col.names = NA)