如何展示及导出模型摘要结果?stargazer运行报维度名不匹配错误
针对plm模型摘要展示与stargazer导出问题的解决方案
1. 展示plm模型的摘要结果
要查看plm模型的基础统计摘要,直接调用summary()函数即可:
summary(my_plm_pooling_1)
如果需要带稳健标准误的摘要,可结合vcovHC函数生成异方差稳健的协方差矩阵,传入summary()的vcov参数:
# 直接传入vcovHC函数 summary(my_plm_pooling_1, vcov = vcovHC) # 或指定HC类型(如HC1,适配不同的稳健标准误计算逻辑) summary(my_plm_pooling_1, vcov = function(x) vcovHC(x, type = "HC1"))
执行后控制台会输出包含稳健标准误、t值和p值的完整模型摘要。
2. 解决stargazer导出带稳健标准误的plm摘要时的维度错误
你遇到的Error in dimnames(x) <- dn : length of 'dimnames' [2] is not equal to the size of the array错误,是因为stargazer对plm包生成的带稳健标准误的摘要对象兼容性不足。解决思路是手动提取稳健标准误,再传递给stargazer的se参数,具体步骤:
- 单独计算模型的稳健标准误:
# 从vcovHC生成的协方差矩阵中提取对角线元素并开平方,得到稳健标准误 robust_se <- sqrt(diag(vcovHC(my_plm_pooling_1)))
- 调用
stargazer时指定se参数为上述计算结果:
stargazer(my_plm_pooling_1, se = list(robust_se), type = 'text')
若需要自定义输出格式(如保留小数位数、添加标题),可补充参数:
stargazer(my_plm_pooling_1, se = list(robust_se), type = 'text', digits = 3, title = "Pooling Model with Heteroskedasticity-Robust Standard Errors")
这样就能成功导出带稳健标准误的plm模型摘要,且不会出现维度不匹配的报错。
内容的提问来源于stack exchange,提问作者Luiza
相关产品推荐
相关产品推荐

