小编Jon*_*ung的帖子

R:使用 openxlsx 将数据导出为“文本”

我正在尝试使用openxlsx(或xlsx其他包)包将数据框导出到 Excel 电子表格。我遇到的一个问题是我想将某些列设置为“文本”而不​​是“常规”,因为 Excel 倾向于自动格式化基因名称(即SEPT16 -> 16-Sep(日期格式))。

openxlsx文档提供了一些将列类设置为“货币”、“会计”、“超链接”、“百分比”或“科学”的示例,但没有明确设置为“文本”。我尝试将类设置为“文本”或“字符”,但输出 Excel 列仍然是“常规”。最初,那里有正确的文本,但如果我在单元格中编辑任何内容,Excel 会自动设置这些单元格的格式。

library(openxlsx)

df <- data.frame(gene   = c("SEPT16", "MARCH10", "GATA4"),
                 pvalue = c(0.0123, 0.2315, 0.00001),
                 stringsAsFactors = FALSE)

class(df$gene)   <- "text"         # Doesn't work
class(df$pvalue) <- "scientific"

wb    <- openxlsx::createWorkbook()
sheet <- openxlsx::addWorksheet(wb, "test")
openxlsx::writeDataTable(wb         = wb, 
                         sheet      = "test",
                         x          = df)
openxlsx::saveWorkbook(wb, "example_table.xlsx")
Run Code Online (Sandbox Code Playgroud)

excel formatting r

6
推荐指数
1
解决办法
2482
查看次数

标签 统计

excel ×1

formatting ×1

r ×1