r - 如何在modelsummary()中添加来自kable()的参数,输出为kableExtra
问题描述
我最近从这个问题modelsummary
的答案中发现了 R 包。看来,由创建的汇总表的输出可以是可以输入到其他函数的类,例如。modelsummary
kable_knitr
kableExtra
kable_styling
但是,我被困在如何将其他选项的值从函数指定kable()
到modelsummary()
函数中。一种明显的方法可能是获取data.frame
输出,然后将其输入到kable
. 有没有更好的选择(这样我就可以避免修复data.frame
输出?
我特别在寻找kable()
选项,escape=F
(在乳胶输出中插入希腊字母 - 看到这个)和booktabs=T
.
一个可重现的例子:
x=rnorm(100)
mod1=arima(x,order = c(1,0,1))
modelsummary(mod1, output = 'kableExtra', coef_rename = c('ar1'='$x_{t-1}$',
'ma1'='$\\epsilon_{t-1}$')) %>%
kable_styling(latex_options = 'HOLD_position')
在上表中,我试图将变量重命名为数学样式,kable()
如果名称按原样给出,这将起作用。
解决方案
椭圆会自动...
向前推到kbl
函数。像这样的有效参数escape
可以直接传递给modelsummary
.
请注意,由于参数文档的“后处理”注释中解释的原因output
,我更喜欢在后处理函数之前直接指定我需要的输出格式,否则kableExtra
默认情况下会准备一个 HTML 表:
library(kableExtra)
library(modelsummary)
x=rnorm(100)
mod1=arima(x,order = c(1,0,1))
modelsummary(
mod1,
output = "latex",
coef_rename = c('ar1'='$x_{t-1}$', 'ma1'='$\\epsilon_{t-1}$'),
escape = FALSE)
\begin{table}[H]
\centering
\begin{tabular}[t]{lc}
\toprule
& Model 1\\
\midrule
$x_{t-1}$ & 0.337\\
& (0.368)\\
$\epsilon_{t-1}$ & -0.490\\
& (0.335)\\
intercept & 0.007\\
& (0.068)\\
\midrule
Num.Obs. & 100\\
AIC & 267.6\\
BIC & 278.0\\
Log.Lik. & -129.808\\
\bottomrule
\end{tabular}
\end{table}
另请注意,modelsummary
已经在内部调用kable_styling
过一次,并且添加kable_styling
到由 生成的乳胶表kableExtra
有时会产生奇怪的结果,因为kableExtra
会将表嵌套在表中。(注意:我计划为此提交一个错误修复kableExtra
。)
data.frame(a = 1:2, b = 2:3) %>%
kbl("latex") %>%
kable_styling() %>%
kable_styling() %>%
kable_styling()
\begin{table}[H]
\centering\begin{table}[H]
\centering\begin{table}[H]
\centering
\begin{tabular}[t]{r|r}
\hline
a & b\\
\hline
1 & 2\\
\hline
2 & 3\\
\hline
\end{tabular}
\end{table}
\end{table}
\end{table}
推荐阅读
- ios - 如何有效地绘制可以平移和缩放的无限网格?
- python-3.x - Python:如何使用随机坐标逐像素显示图像
- javascript - mapStateToProps 未在 redux 中调用,未定义状态
- python - 使用 init.d 在引导时运行时,Shell 文件会跳过命令吗?
- reactjs - 函数在 render() 之外的 React 中不起作用
- thunderbird - 如何在外部浏览器而不是内置浏览器中使用 Thunderbird 68 插件打开网址?
- shell - zsh_history 中命令的平均长度
- r - Tibble 列必须具有一致的长度,如何正确地从列表中提取
- asp.net-mvc - 如何处理同一实体类型的多个一对零或一关系?
- jquery - 单击时重定向到当前页面(不重新加载)