You need to enable JavaScript to run this app. 如何在R中为dLagM包ardlBound输出生成美观可复现结果表格
优惠活动
大模型
产品
解决方案
定价
更多

如何在R中为dLagM包ardlBound输出生成美观可复现结果表格

ARDL回归结果导出可复现表格的两种可行方案

方法1:使用modelsummary包(推荐,适配多输出格式)

modelsummary包支持非标准R模型的结果导出,只需自定义系数提取和模型统计量提取规则,即可直接生成符合要求的格式,支持输出Markdown、Word、LaTeX、HTML等多种格式:

# 安装依赖包(首次使用运行)
install.packages(c("dLagM", "modelsummary", "broom", "dplyr"))

library(dLagM)
library(modelsummary)
library(broom)
library(dplyr)

# 原有运算代码
data(M1Germany)
data <- M1Germany[1:144,]
results <- ardlBound(data = data , formula = logprice ~ interest + logm1 , case = 2 , 
                   max.p = 3, max.q = 3)

# 自定义系数提取函数
tidy_ardl <- function(x) {
  coef_df <- as.data.frame(summary(x)$coefficients)
  colnames(coef_df) <- c("estimate", "std.error", "statistic", "p.value")
  coef_df$term <- rownames(coef_df)
  rownames(coef_df) <- NULL
  return(coef_df)
}

# 自定义模型统计量提取函数
glance_ardl <- function(x) {
  s <- summary(x)
  data.frame(
    r.squared = s$r.squared,
    adj.r.squared = s$adj.r.squared,
    f.statistic = s$fstatistic[1],
    nobs = nobs(x$model)
  )
}

# 输出Markdown格式表格,调整output参数可切换输出格式
# 输出到Word:output = "ARDL回归结果.docx"
# 输出LaTeX代码:output = "latex"
modelsummary(results, 
             tidy = tidy_ardl, 
             glance = glance_ardl,
             output = "markdown")

方法2:适配stargazer(适合习惯stargazer语法的用户)

如果偏好stargazer的输出风格,可手动提取ardlBound返回的系数、标准误、模型统计量后传入stargazer,即可生成兼容的表格:

# 安装依赖包(首次使用运行)
install.packages(c("dLagM", "stargazer"))

library(dLagM)
library(stargazer)

# 原有运算代码
data(M1Germany)
data <- M1Germany[1:144,]
results <- ardlBound(data = data , formula = logprice ~ interest + logm1 , case = 2 , 
                   max.p = 3, max.q = 3)

# 提取变量级统计量
coefs <- summary(results)$coefficients[,1]
se <- summary(results)$coefficients[,2]
pvals <- summary(results)$coefficients[,4]

# 提取模型级统计量
r2 <- summary(results)$r.squared
adj_r2 <- summary(results)$adj.r.squared
f_stat <- summary(results)$fstatistic[1]
n_obs <- nrow(data)

# 输出表格,调整type参数切换格式
# 输出LaTeX代码:type = "latex"
# 输出HTML格式:type = "html"
stargazer(coef = list(coefs),
          se = list(se),
          p = list(pvals),
          title = "ARDL边界检验回归结果",
          dep.var.labels = c("logprice"),
          column.labels = c("对数价格"),
          keep.stat = c("n", "rsq", "adj.rsq"),
          add.lines = list(
            c("F统计量", round(f_stat, 3))
          ),
          type = "text")

内容的提问来源于stack exchange,提问作者user3227641

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.08 08:51:03