- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
编辑:下面提供了一个工作示例
原文:后估计命令可用于预测因变量的值。这是一个示例,您可以在其中键入 _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
) 和一个二分变量指标(类型
)。运行回归后,我想运行可以生成预测值的后估计命令(如 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??
最佳答案
目前尚不清楚“正确”值的含义。 predict
使用数据中当前的任何值并将其乘以相应的系数(假设您使用因子变量表示法)。
但是,margins
有一个半文档化的 generate()
选项,可以根据灵活选择的协变量值为您提供单独的预测。它可能会给你任何你内心想要的东西。
这是一个使用您的数据的示例:
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, coefl
predict double yhat1
margins, predict(xb) gen(yhat2) // match predict #1
margins, predict(xb) gen(yhat3) at((asobserved) price type pack) // match predict #2
gen double yhat4=_b[_cons] + _b[price]*price + _b[type]*type + _b[12.pack]*12.pack + _b[18.pack]*18.pack //match predict #3
margins, predict(xb) gen(yhat5) at(price = 5 type=1 pack=6) // choose some values
gen double yhat6=_b[_cons] + _b[price]*5 + _b[type]*1 + _b[12.pack]*0 + _b[18.pack]*0 // yhat5 by hand
list yhat*, clean noobs
前四种方法的预测结果完全相同;第五个和第六个将与前四个不同,但都相同,因为我们将所有协变量固定在特定值:
. list yhat*, clean noobs
yhat1 yhat21 yhat31 yhat4 yhat51 yhat6
32.773585 32.773585 32.773585 32.773585 32.764151 32.764151
2.4622642 2.4622642 2.4622642 2.4622642 32.764151 32.764151
32.764151 32.764151 32.764151 32.764151 32.764151 32.764151
30.716981 30.716981 30.716981 30.716981 32.764151 32.764151
30.745283 30.745283 30.745283 30.745283 32.764151 32.764151
6 6 6 6 32.764151 32.764151
6 6 6 6 32.764151 32.764151
.53773585 .53773585 .53773585 .53773585 32.764151 32.764151
请参阅help margins generate
和help undocumented
以了解更多信息。
关于stata - Stata _b[] 中用于分类变量的后估计命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42165052/
我在尝试编译程序时在 VisualStudio10 中遇到了这个错误(从Unix转Windows环境) error C2440: 'initializing' : cannot convert fro
编辑:下面提供了一个工作示例 原文:后估计命令可用于预测因变量的值。这是一个示例,您可以在其中键入 _b[_cons] + _b[x1]*1 + _b[x2] 以获得 Y 的实际值。对于 Stata
很难说出这里问的是什么。这个问题是含糊的、模糊的、不完整的、过于宽泛的或修辞性的,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开它,visit the help center 。 已关
我是一名优秀的程序员,十分优秀!