Stata含大量系数的非线性最小二乘:简化命令写法
Stata非线性回归模型的代码简化需求
需要估计包含大量待估系数的回归方程:方程中$D_{it}^d$为0/1虚拟变量,${\theta_i}_i$与$\delta$为待估系数,i的取值范围极大(如100个),且多个i可同时生效(非互斥)。
当维度为2、i=1,2,3,4时,方程有对应的展开形式,但使用Stata的nl命令手动编写所有项会异常冗长。
当前简化尝试
已将0次线性求和项做了简化,原代码:
nl (y = {theta1}*D01+{theta2}*D02+{theta3}*D03+{delta}*{theta1}*D11+{delta}*{theta2}*D12+{delta}*{theta3}*D13)
简化为:
nl (y = {xb:D01-D03}+{delta}*{xb_D01}*D11+{delta}*{xb_D02}*D12+{delta}*{xb_D03}*D13)
但含$\delta$、$\delta^2$等更高次的项依然冗长,需进一步简化方法。
理想写法的可行性疑问
希望采用如下更简洁的写法,但不确定是否会强制约束$xb_D0i=xb_D1i$,违背模型设定:
nl (y = {xb:D01-D03}+{delta}*{xb:D11-D13})
内容的提问来源于stack exchange,提问作者Nameless
相关产品推荐
相关产品推荐

