我有一个数据分析 Rmarkdown 文件,我将用它来为我的论文编织一个 .pdf 结果部分。今天早上,当我使用编织按钮在 Rstudio 中编织一个 pdf 时,我得到了漂亮的 LaTeX 表格代码。然而,我似乎把它弄坏了。我不断收到以下错误和输出:error in as.string(y) : Cannot coerce argument to a string
,Calls: <Anonymous> ... print -> print.xtable -> +.string -> paste -> as.string
我的数据框class(df)
读取并且在我的示例中[1] "data.table" "data.frame"
调用后出现错误。sum_table
我尝试过的:
- 将我对 xtable() 和 print() 函数的添加逐一删除,恢复为极其简单的形式。
- 逐行运行代码,而不是作为 Rmd 块运行。
- 向 xtable() 添加显示参数xtable 文档
- 卸载并重新安装 xtable 和 R。我正在运行 MacOS 10.12.6(旧电脑)、R 3.6.3 和 Rstudio 1.2.5033。
booktabs=TRUE
为 print()添加参数xtable 示例
对于此错误或故障排除有什么想法吗?
简单的 Rmd 块示例:
---
output:
pdf_document:
fig_caption: yes
indent: true
---
# Rmd chunk settings
# results = 'asis' to output LaTex code that is recognized as code
{R Summary_Table, echo = FALSE, results = 'asis'}
library(knitr)
library(tinytex)
library(xtable)
options(xtable.timestamp = FALSE)
df <- data.frame(A = c(1:10),
B = c(11:20),
C = c(21:30))
sum_table <- xtable(df)
sum_table # Error thrown here "as.string(y) : Cannot coerce argument to a string"
print.xtable(sum_table)
# try another print function
print(sum_table)
# try adding booktabs argument
print(sum_table, booktabs = TRUE)
#Tried adding display argument to xtable(), extra for xtable's automatic
# number column. Thought maybe num variables couldn't be turned into a string?
sum_table2 <- xtable(df, display = c("s","f","f","f"))
sum_table2