1

假设我使用 xlsx 包将数据框从 r 写入 excel。并假设我有一个包含问号的列标题的数据框(下面的代码):

library(xlsx)
rm(list = ls())

fpath <- "whatever filepath"

#My df
df <- data.frame("Questions?" = c("bla", "bla bla"), "123Numbers"= c(1,2))

#Now output 
wb <- createWorkbook()
sh <- createSheet(wb, sheetName = "Bla")
addDataFrame(df, sh)

saveWorkbook(wb, paste0(fpath,".xlsx"))

当我打开 excel 输出文件时,我得到以下信息: 结果

  1. 为什么问号在“问题”列标题中显示为句点?
  2. 为什么 123Numbers 列标题前面有一个随机的“X”字符?

当然,如果我缺少一个简单的解决方法,请告知。谢谢!

4

1 回答 1

0

默认情况下,该check.names参数是TRUEin data.frame,它将确保所有非标准列名都由应用 ( make.names-> make.unique) 修改。如果我们将其指定为FALSE,则列名不会改变

df <- data.frame("Questions?" = c("bla", "bla bla"),
    "123Numbers"= c(1,2), check.names = FALSE)
于 2020-01-07T20:16:55.517 回答