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

如何保存fixest::feols回归的估计样本以计算描述统计量?

如何用fixest::feols保存估计样本并计算描述统计量

在fixest中,obs(model)返回的是估计样本对应的行号整数向量,我们可以通过两种简单方式将其转化为可用的筛选条件,实现类似Stata中e(sample)的效果:

方法一:直接提取估计样本数据集

先运行回归并获取保留样本的行号,再从原数据框中提取对应行,之后就可以对这个子集直接计算描述统计:

library(fixest)

# 示例:带缺失值的模拟数据
iris_data = iris
iris_data$Sepal.Length[1:10] = NA

# 拟合回归
reg_model = feols(Sepal.Width ~ Sepal.Length, data = iris_data)

# 获取估计样本的行号
est_rows = obs(reg_model)
# 提取估计样本
est_sample = iris_data[est_rows, ]

# 计算描述统计量
# 比如因变量的均值、标准差
mean(est_sample$Sepal.Width)
sd(est_sample$Sepal.Width)
# 或者整体汇总
summary(est_sample)

方法二:生成布尔型样本标识向量

如果不想单独提取数据集,可以生成一个和原数据行数一致的布尔向量,标记哪些行属于估计样本,直接用于筛选计算:

# 创建初始全为FALSE的布尔向量
in_est_sample = rep(FALSE, nrow(iris_data))
# 将估计样本对应的位置设为TRUE
in_est_sample[est_rows] = TRUE

# 直接用向量筛选计算
# 示例:计算因变量在估计样本中的均值
mean(iris_data$Sepal.Width[in_est_sample])
# 或者筛选指定变量做汇总
summary(iris_data[in_est_sample, c("Sepal.Width", "Sepal.Length")])

这两种方法都能精准定位到回归时实际使用的样本,满足描述统计的需求,你可以根据后续操作的便利性选择合适的方式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 01:22:03