kable打印有多行的观星桌

时间:2017-09-17 08:02:39

标签: r knitr r-markdown stargazer kable

我想用kable打印stargazer表。
当我在markdown中运行代码时,我得到了stargazer表,但在表之前的那些行之间有多行符号|。 我也在开头收到警告信息:

Warning in kable_markdown(x = structure(c("", "<table style=\"text-
align:center\"><caption><strong>Crude models: OR for mRS at discharge >3
with 95% CI</strong></caption>", : The table should have a header (column
names)

我的输出如下:

kable error when printing stargazer table

这是我的表格代码(有一些更改):

mod.example1 <- glm(bad_outcome~x1+x2+x3+x4, family = "binomial", data = dat0)
mod.example2 <- glm(bad_outcome~x1+x2+x3+x4, family = "binomial", data = dat1)

CI.list <- list(exp(confint(mod.example1)),exp(confint(mod.example2)))

my.stg <- stargazer(
title = "my models: OR for bad outcome",
mod.example1
mod.example2,
type="html",
digits = 2,
t.auto = FALSE,
model.numbers = F,
keep.stat = "n",
report = c("vc*sp"),
omit = "Constant",
star.cutoffs = c(0.05,0.01,0.001),
no.space = FALSE,
single.row = F,
dep.var.labels = c("***bad outcome***"),
covariate.labels = c("x1","x2","x3","x4"),
column.labels = c("-**dat0**-", "-**dat1**-"),
ci= T,
ci.custom = CI.list,
apply.coef=exp)

并在一个新的块中:

kable(my.stg)

表格已打印,但仅在多行/矩形之后。 我还从其他计算机运行代码,然后问题没有发生。 什么可能导致这种情况?

2 个答案:

答案 0 :(得分:0)

更新:经过大量研究后,我发现只有在将我的R版本从3.4.0升级到3.4.1后才会出现问题。 更新到新版本后,它还让我更新了从1.16到1.17的knitr包,只有那个版本给出了上述错误。 因此,我将knitr从1.17降级到1.16,这解决了这个问题。

答案 1 :(得分:0)

您无需使用kable()函数在markdown中生成stargrazer表。只需将{r results='asis'}添加到包含stargrazer()的块的开头即可。