全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
5592 7
2009-09-03
我手头有各个行业的数据,希望对每个行业单独回归。
如food_total food_labor food_capital; wood_total wood_labor wood_capital等(分别是总产出,劳动和资本)
现在我希望
首先,对每个行业都生成各个变量的对数形式,如:
gen lfood_total=log(food_total)
gen lfood_labor=log(food_labor)
gen lfood_capital=log(food_capital)
然后,进行回归,如:
reg lfood_total lfood_labor lfood_capital
行业太多,一个一个输入实在是太麻烦了。请问如何进行批量操作呢?由于只了解STATA命令,但对编程一无所知,希望高手指教。非常感谢!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2009-9-3 11:57:15
假设行业变量为sic,操作如下:

egen sicid = group(sic)
tab sicid
global N = r(r)
local varlist "total labor capital"
foreach var of varlist `varlist'{
   forvalues i = 1(1)$N{
      gen ln_`var'_`i' = ln(`var') if sicid==`i'
   }
}

forvalues i = 1(1)$N{
   reg ln_total_`i' ln_labor_`i' ln_capital_`i'
   est store r_`i'
}

esttab r_*
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2009-9-3 12:20:21
这里是前缀不同 先用stack
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2009-9-3 14:11:30
arlionn 发表于 2009-9-3 11:57
假设行业变量为sic,操作如下:

egen sicid = group(sic)
tab sicid
global N = r(r)
local varlist "total labor capital"
foreach var of varlist `varlist'{
   forvalues i = 1(1)$N{
      gen ln_`var'_`i' = ln(`var') if sicid==`i'
   }
}

forvalues i = 1(1)$N{
   reg ln_total_`i' ln_labor_`i' ln_capital_`i'
   est store r_`i'
}

esttab r_*
非常感谢。
请问一定要使用行业变量吗?我的现有数据格式是不同的变量,仅仅名字的后缀存在差异,如total_wood和total_food,可以直接使用吗?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2009-9-3 14:12:58
dxystata 发表于 2009-9-3 12:20
这里是前缀不同 先用stack
谢谢。我的数据里事实上是后缀不同,具体应该怎么用呢?能说详细点吗?再度感谢。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2009-9-3 15:19:00
2# arlionn

请问最后的
est store r_`i'

中的r是指什么呢?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群