- 阅读权限
- 255
- 威望
- 1 级
- 论坛币
- 238675 个
- 通用积分
- 17659.3894
- 学术水平
- 851 点
- 热心指数
- 971 点
- 信用等级
- 711 点
- 经验
- 759469 点
- 帖子
- 4028
- 精华
- 1
- 在线时间
- 793 小时
- 注册时间
- 2012-7-15
- 最后登录
- 2017-9-16
已卖:483份资源
学科带头人
还不是VIP/贵宾
- 威望
- 1 级
- 论坛币
 - 238675 个
- 通用积分
- 17659.3894
- 学术水平
- 851 点
- 热心指数
- 971 点
- 信用等级
- 711 点
- 经验
- 759469 点
- 帖子
- 4028
- 精华
- 1
- 在线时间
- 793 小时
- 注册时间
- 2012-7-15
- 最后登录
- 2017-9-16
 | 苦逼 2015-7-21 22:10:12 |
|---|
签到天数: 7 天 连续签到: 1 天 [LV.3]偶尔看看II
|
200论坛币
|
问题需要的数据用如下命令生成- clear
- set obs 15
- gen g = mod(_n,4)+1
- gen x1 = rnormal()
- gen x2 = rnormal()
- gen y = rnormal()+0.1*x1+0.1*x2
复制代码 我要估计的模型是但是这个命令输出的结果是- Source | SS df MS Number of obs = 15
- -------------+---------------------------------- F(3, 11) = 1.17
- Model | 4.24932692 3 1.41644231 Prob > F = 0.3655
- Residual | 13.3267007 11 1.21151825 R-squared = 0.2418
- -------------+---------------------------------- Adj R-squared = 0.0350
- Total | 17.5760276 14 1.25543055 Root MSE = 1.1007
- ------------------------------------------------------------------------------
- y | Coef. Std. Err. t P>|t| [95% Conf. Interval]
- -------------+----------------------------------------------------------------
- x1 | .0177673 .4204068 0.04 0.967 -.9075419 .9430765
- 2.g | 1.516739 .8566444 1.77 0.104 -.3687223 3.402201
- |
- g#c.x2 |
- 2 | 1.573115 2.037524 0.77 0.456 -2.911444 6.057675
- |
- _cons | -.7132035 .3319455 -2.15 0.055 -1.443811 .0174036
- ------------------------------------------------------------------------------
复制代码 问题是结果里由i.g生成的变量只剩下了2.g。另外三个都不见了。
如果我去掉上面模型里的最后那一项- . reg y x1 i.g
- Source | SS df MS Number of obs = 15
- -------------+---------------------------------- F(4, 10) = 3.83
- Model | 10.6372209 4 2.65930522 Prob > F = 0.0386
- Residual | 6.93880676 10 .693880676 R-squared = 0.6052
- -------------+---------------------------------- Adj R-squared = 0.4473
- Total | 17.5760276 14 1.25543055 Root MSE = .833
- ------------------------------------------------------------------------------
- y | Coef. Std. Err. t P>|t| [95% Conf. Interval]
- -------------+----------------------------------------------------------------
- x1 | -.2097415 .3376247 -0.62 0.548 -.9620162 .5425333
- |
- g |
- 2 | .7720366 .678917 1.14 0.282 -.7406848 2.284758
- 3 | .5551185 .6653441 0.83 0.424 -.9273606 2.037598
- 4 | -1.314822 .6844013 -1.92 0.084 -2.839763 .2101191
- |
- _cons | -.4407666 .5058699 -0.87 0.404 -1.567915 .6863819
- ------------------------------------------------------------------------------
复制代码 结果并没有任何问题。
如果我手动生成这个交互项然后放入回归- . gen z = 2.g#c.x2
- . reg y x1 i.g z
- Source | SS df MS Number of obs = 15
- -------------+---------------------------------- F(5, 9) = 3.18
- Model | 11.2265684 5 2.24531369 Prob > F = 0.0628
- Residual | 6.34945919 9 .705495466 R-squared = 0.6387
- -------------+---------------------------------- Adj R-squared = 0.4380
- Total | 17.5760276 14 1.25543055 Root MSE = .83994
- ------------------------------------------------------------------------------
- y | Coef. Std. Err. t P>|t| [95% Conf. Interval]
- -------------+----------------------------------------------------------------
- x1 | -.1457978 .3475531 -0.42 0.685 -.9320174 .6404219
- |
- g |
- 2 | 1.19592 .8268804 1.45 0.182 -.6746137 3.066453
- 3 | .5919986 .6721019 0.88 0.401 -.9284016 2.112399
- 4 | -1.267043 .6920826 -1.83 0.100 -2.832643 .2985563
- |
- z | 1.425375 1.559519 0.91 0.385 -2.102501 4.953252
- _cons | -.4704782 .511121 -0.92 0.381 -1.626714 .6857579
- ------------------------------------------------------------------------------
复制代码 结果也没有任何问题!
我需要用fvvarlist因为实际的模型很复杂,而且估计完之后需要计算边际效应。只有用了fvvarlist来表示最后那个交互项,margins命令才能正确计算出边际效应。不然margins算出来的结果就是错的。
请问这个问题要怎么解决呢?还是说这个其实是Stata的bug?如果是的话也太不应该了,这样的模型应该很常见啊。当然也可能是我忽视了什么很明显的东西。总之请大家帮忙。有点着急。谢谢!
|
|