You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言中是否有类似Stata xtsum命令的面板数据分析工具?

R中替代Stata xtsum的工具推荐

当然有!我平时处理面板数据时,最常用的就是plm包里的xtsum()函数,它完全对应Stata xtsum的功能,能清晰输出组内(within)、组间(between)的方差及各类统计量,用起来超顺手。

步骤1:安装并加载plm包

首先确保你安装了plm包,没装的话先运行:

install.packages("plm")
library(plm)

步骤2:转换为面板数据格式

plm需要先把普通数据框转换成面板数据对象,指定你的个体标识(比如企业ID、用户ID)和时间标识(比如年份、月份):

# 假设你的数据框是df,个体变量是id,时间变量是year
panel_df <- pdata.frame(df, index = c("id", "year"))

步骤3:运行xtsum函数

直接调用就能得到和Stata一致的清晰输出:

  • 对整个数据集的所有变量统计:
xtsum(panel_df)
  • 只对单个变量(比如income)统计:
xtsum(panel_df$income)

示例:用内置数据集测试

plm包自带经典的Grunfeld面板数据集,你可以直接测试效果:

data(Grunfeld)
grunfeld_panel <- pdata.frame(Grunfeld, index = c("firm", "year"))
# 查看所有变量的组内/组间统计
xtsum(grunfeld_panel)

输出会包含overall(整体统计)、between(组间差异)、**within(组内差异)**三个维度的均值、标准差、最小值、最大值,还有样本量相关的N(总观测数)、n(个体数量)、T(每个个体的时间跨度),和Stata的xtsum输出一一对应,完全满足需求。

额外选项:自定义输出(可选)

如果你想要更个性化的格式,也可以用dplyr手动计算组内和组间统计量,但对于快速获取标准输出,plm::xtsum()绝对是最高效的选择。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 10:07:14