在所有支持软件问题的论坛中:
单一命令
by ID dummy_reg: reg ret_px Mkt_RF SMB HML & egen b_Mkt_RF=_b[Mkt_RF] & egen b_SMB=_b[SMB] & egen b_HML=_b[HML]
在语法上不正确和/或在几种不同的意义上不是您想要的。它只能来自一些非常疯狂的猜测。
考虑到您之前的排序,您的by:
前缀是合法的,但是regress
下面的命令将通过如此定义的不同组运行,并且之后只有最后一组回归结果在内存中可用。
逻辑运算符&
用于将数值参数组合成表达式,以评估其真假;没有任何意义将命令一个接一个地组合在一起。
以下egen
调用都是非常非法的,因为它们不包含egen
函数调用。
即使它们在 #3 下是合法的,第二次egen
调用每个命令by:
也会出现问题,因为被命名的变量已经存在。
即使它们在 #3 和 #4 下是正确的,在代码末尾也会给您带来问题,这样创建的变量只能包含最后一组系数估计值。问题 #3 可以通过使用generate
而不是解决egen
,也可以使用不同的代码,但问题 #4 和 #5 仍然存在。
幸运的是,有一个简单的方法可以解决这一切。您需要该statsby
命令来保存regress
结果。如果您希望将系数估计值与原始数据集一起使用,请使用merge
.
您的问题命名标准错误 [of what?] 但您的代码中没有任何内容访问标准错误;尽管如此,它们也可以使用statsby
.
我在这里专注于您提供的一段代码。问题的其余部分是指我不明白的经济细节。和 Stack Overflow 上的几乎所有人一样,我不是经济学家。