如何在R控制台对比两个变量的描述统计量(非Viewer界面)
解决R中对比两变量描述统计量的问题
先修正变量创建代码的错误
原代码中econmath$act0赋值时误用了未定义的data对象,需替换为econmath:
library('wooldridge') data(econmath) econmath$actmiss <- ifelse(is.na(econmath$act), 1, 0) econmath$act0 <- ifelse(econmath$actmiss == 1, 0, econmath$act)
用stargazer解决报错问题
你遇到的报错是因为stargazer不支持直接传入summary()返回的原子向量,它更适配数据框或模型对象。正确做法是将两个变量整理成数据框后传入:
library(stargazer) # 提取目标变量到新数据框 compare_df <- data.frame(Original_ACT = econmath$act, Imputed_ACT0 = econmath$act0) # 控制台输出对比描述统计,可自定义展示的统计量 stargazer(compare_df, type = "text", summary.stat = c("mean", "sd", "median", "min", "max", "n"), title = "act与act0的描述统计对比")
执行后即可在控制台得到格式化的两变量统计对比结果。
其他可选方法
如果需要更灵活的控制台输出,还可以使用以下工具:
- psych包:输出简洁的多变量统计信息
library(psych) describe(compare_df)
- skimr包:输出结构化的详细统计内容
library(skimr) skim(compare_df)
内容的提问来源于stack exchange,提问作者AKJ
相关产品推荐
相关产品推荐

