statar(420)估计与检验

Stata 报错 r(420):分组变量必须有两类

ttest、ranksum、prtest 这类两组比较命令,要求分组变量恰好有两个取值。你给的变量可能只有一类(比如筛选后只剩处理组),或者有三类以上。

报错原文

groups found, 2 required
r(420);

为什么会报这个错

ttest、ranksum、prtest 这类两组比较命令,要求分组变量恰好有两个取值。你给的变量可能只有一类(比如筛选后只剩处理组),或者有三类以上。

怎么解决

tabulate 分组变量 看实际取值。只有一类说明前面的 if 筛选把另一组全过滤掉了;有三类以上就先 recode 或 keep if 只保留要比较的两组。

代码示例

tabulate treated

// 只保留两组
keep if inlist(treated, 0, 1)
ttest y, by(treated)

同工具的其他报错

报错解决了,但方法还没搞懂?

报错只是表象。因果推断、面板数据、稳健性检验这些方法背后的逻辑,知识库里按「原理 × 直觉 × 代码」讲清楚了。

进入知识库 →