【发布时间】:2017-02-11 07:36:37
【问题描述】:
编辑:下面提供了一个工作示例
ORIGINAL:后估计命令可用于预测因变量的值。这是一个示例,您可以在其中键入 _b[_cons] + _b[x1]*1 + _b[x2] 以获得 Y 的实际值。对于 Stata 上的大多数在线示例,这些值要么是虚拟的,要么是连续的。如果我有一个难以手动转换为多个虚拟变量的分类变量(例如 52 周)怎么办?我可以通过告诉 Stata 选择正确的值来保留我的所有分类变量并仍然运行如下所示的后期估计命令吗?
regress write female read
Source | SS df MS Number of obs = 200
-------------+------------------------------ F( 2, 197) = 77.21
Model | 7856.32118 2 3928.16059 Prob > F = 0.0000
Residual | 10022.5538 197 50.8759077 R-squared = 0.4394
-------------+------------------------------ Adj R-squared = 0.4337
Total | 17878.875 199 89.843593 Root MSE = 7.1327
------------------------------------------------------------------------------
write | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
female | 5.486894 1.014261 5.41 0.000 3.48669 7.487098
read | .5658869 .0493849 11.46 0.000 .468496 .6632778
_cons | 20.22837 2.713756 7.45 0.000 14.87663 25.58011
------------------------------------------------------------------------------
and then ask
gen _b[_cons] + _b[female]*1 + _b[read]*52
display _b[_cons] + _b[female]*1 + _b[read]*52
55.141383
工作示例:为了说明我的观点,这里有一个小数据样本,其中包含一个分类变量 (pack)、一个连续变量 (price) 和一个二分指标 (type)。运行回归后,我想运行一个可以生成预测值的后估计命令(如predict 或简单的gen)。为此,到目前为止,我发现的唯一 Stata 代码只能使用连续变量和二进制变量预测 y,而不能使用分类变量。您是否知道可以解决包含pack 的问题而不将pack 转换为多个二进制变量的代码?
clear
input units price pack type
32 4 6 1
2 20 18 1
34 5 6 1
32 8 6 0
29 5 6 0
5 10 12 0
7 10 12 0
1 10 18 0
end
reg units price type i.pack
predict yhat
*OR
gen yhat=_b[_cons]+_b[_type]+....??pack??
【问题讨论】:
-
请注意,您的
generate语句不是合法代码。这是一个关于基础知识的广泛问题:help estimates是一个起点。 -
嗨尼克。我很难找到一个可以选择适当分类值的后估计命令。它仅适用于虚拟变量和连续变量。有什么建议我可以在哪里寻找它?
-
对不起;我完全不明白。除了通过一组指标外,我不知道如何获得分类预测器。像您这样更广泛的讨论性问题在 Statalist 上的表现更好,但基于数据和代码的精确示例更有可能在任何论坛中获得好的答案。
-
我不明白为什么你觉得
predict在你的例子中不起作用。 -
您似乎期望具有三个或更多类的分类预测器有一个术语。但是没有。
标签: stata