使用xlsx包保存data.frame时如何避免编写row.names列

Dav*_*ira 11 r xlsx dataframe

我有一个如下所示的数据框,当我使用xlsx包将其导出到excel文件时,我真的想删除行名称.

bd <- data.frame(id = 1:200, A = c(rep("One", 100), rep("Two", 100)), 
             B = c(rep(1,50), rep(0, 50), rep(1, 50), rep(0, 50)))
Run Code Online (Sandbox Code Playgroud)

我已经尝试使用下面的命令,但它将它们保存在excel文件的第一列中.

bd <- data.frame(id = 1:200, A = c(rep("One", 100), rep("Two", 100)), 
             B = c(rep(1,50), rep(0, 50), rep(1, 50), rep(0, 50)), row.names=NULL)
Run Code Online (Sandbox Code Playgroud)

有没有办法做到这一点?

And*_*ndy 24

将rownames设置NULL为删除它们:

rownames(bd) <- NULL
Run Code Online (Sandbox Code Playgroud)

另外,从xlsx文档:

write.xlsx(x, file, sheetName="Sheet1",
           col.names=TRUE, row.names=TRUE, append=FALSE)
Run Code Online (Sandbox Code Playgroud)

将row.names设置FALSE为避免第一列是行名.

  • 如果`append = T,`和'row.names = F',那么在第一个工作簿之后的同一工作表上的每一write.xlsx工作表都会引发错误。`.jcall(cell,“ V”,“ setCellValue”,value)中的错误:带有签名([Ljava / lang / String;)V的setCellValue方法未找到另外:警告消息:如果(is.na(value) ){:条件的长度&gt; 1,并且只会使用第一个元素。 (3认同)