导入 R markdown 时,如何保持 Excel 电子表格单元格中文本的格式?

How do I maintain the formatting of text in a cell in an Excel spreadsheet when importing into R markdown?

我有一个 .xlsx 文件,其中一些单元格的数字为粗体,而一些单元格的数字为斜体。我正在使用 read_xlsx 将 .xlsx 文件读入 R,然后使用 kable 将其与此代码一起呈现:

knitr::kable(spreadsheet, format="latex", booktabs = T) %>% 
kable_styling(latex_options = c("striped"))

当它们出现在从 .Rmd 文件生成的 .pdf 中时,我无法让 .xlsx 中的粗体和斜体数字保持粗体和斜体。我该怎么做?

在回答你的问题时,你不能维护格式,但你可以复制它。

read_xlsx() 函数为 运行 时,它从单元格中提取数据但不保留任何格式。因此,任何粗体都不会自动传输到 R。

实现您想要的最简单方法是在将数据加载到 R 后添加粗体文本。kableExtra 非常适合做这些事情。这是一个示例,使用 column_specrow_spec 函数更改单元格的格式:

```{r}
library(kableExtra)

knitr::kable(iris[1:5,], format = "latex", booktab = TRUE) %>%
  column_spec(1, bold = T) %>%
  row_spec(0, bold = T, color = "red")

```

您可以自定义一些属性(运行 ?row_spec加载助手):

  • 字体大小
  • 对齐
  • 文字角度
  • 文字颜色
  • 背景颜色

如果您需要对特定单元格的单元格格式进行更精细的调整,您可以研究 cell_spec 函数。

View the full guidance for customising LaTeX tables here: https://haozhu233.github.io/kableExtra/awesome_table_in_pdf.pdf