stargazer导出table为html报names属性长度不一致错误如何解决
报错原因
该报错和数据里的年份数量无关,根源是stargazer包对R原生table类型的二维列联表支持存在缺陷:函数内部处理维度名称时,命名向量长度和实际维度长度不匹配,因此触发异常。
可运行修改方案
将生成的列联表对象转换为数据框后再传入stargazer即可正常导出,修改后代码如下:
# 需提前安装、加载stargazer包 # install.packages("stargazer") library(stargazer) iso <- c("AUT", "AUT", "BEG", "BEG", "BEG") year <- c(2005, 2006, 2003, 2006, 2007) tab1 <- table(iso, year) # 核心修改:用as.data.frame.matrix把table转为规整数据框 stargazer( as.data.frame.matrix(tab1), type = "html", summary = FALSE, rownames = TRUE, # 把iso国家编码作为第一列展示 out = "table1.html" )
运行后会在当前工作目录生成结构正确的table1.html文件,表格计数结果和原生table输出完全一致。
内容的提问来源于stack exchange,提问作者Izzy
相关产品推荐
相关产品推荐

