[R]write.table时列名总是左移一位?补几行小代码完美解决

问题产生:
有一天科室师妹问:为什么我保存出来的数据,用excel打开后列名总是被左移了一位?有没有解决办法。
答曰:直接在excel把他往右拖一位。
师妹:可是我有二十多个这样的表
答曰:...

a

错位输出


应该挺多人遇到过上方提到的问题,相信蛮多人的第一解决手段是直接在excel右拖。本文将用几行简单的代码解决这个问题

错位输出

#测试数据构建
a<-matrix(0,2,2)
rownames(a)<-c("r1","r2")
colnames(a)<-c("c1","c2")

#常规输出(错位)
write.table(a,file = "a1.txt",sep = "\t",quote = FALSE)
错位输出

调整后输出

adjustdata <- function(data) {
  data<-cbind(rownames(data),data)
}

a<-adjustdata (a)
a
write.table(a,file = "a.txt",sep = "\t",quote = FALSE,row.names = FALSE)
a
a.txt

你可能感兴趣的:([R]write.table时列名总是左移一位?补几行小代码完美解决)