繁体   English   中英

为什么导出的行名总是在R中偏离1?

[英]Why are exported row names always off by 1 in R?

在R中,导出CSV时,为什么列名总是偏离1?

x=matrix(c(1,2,3,4), nrow=2)
rownames(x) <- c("row1", "row2")
colnames(x) <- c("col1", "col2")

>x
          col1 col2
    row1    1    3
    row2    2    4

write.table(x,"/Users/username/Desktop/x.csv", sep=",")

列名总是向左移动一列:

*The resulting CSV looks like this when opened in Excel:*
 col1   col2    
 row1   1      3
 row2   2      4

*The resulting CSV looks like this when opened in TextEdit:*
 "col1","col2"
 "row1",1,3
 "row2",2,4

我一直对此有疑问,但是现在我的代码被用于专业目的,而不是仅仅用于处理数据,我需要弄清楚如何避免这种情况。 我觉得这很容易解决。

该文档为您提供了答案:

默认情况下,行名称的列没有列名。 如果col.names = NA且row.names = TRUE,则将添加空白列名,这是电子表格读取CSV文件所使用的约定。 请注意,可以通过read.csv(file =“”,row.names = 1)在R中读取此类CSV文件。

因此,请使用write.csv或将col.names = NA添加到write.table

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM