全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
4208 7
2010-03-22
求助!各位高手,小弟在stata处理数据时,遇到以下问题,希望大家能予以解答。
数据格式如下:
编号       日期       变量1               
1          2004       国家            
1          2005       法人
1          2006       境外法人,国有
2          2005         ……
2          2006
3          2004
3          2005
3          2006         
4          2006
5          2004
5          2005
5          2006
……
我的问题是:
1.每个编号应该有2004-2006三年的数据,如果缺失(如编码2和4),则应当删除,应该如何实现呢?
2.产生虚拟变量“变量2” ,当“变量1”中的字段包含“国”时则变量2=1,否则为0。
注:变量1为字符型变量,长度不起,为说明性文字。
此外,在考虑另一个回归模型时:y=a+b*x
要对上述每个编码做一个回归(每个编码有上百个数据,共有上百个编码),并保留每次回归的R-squared,同时形成一个新的表格如下格式:
编码   R-squared
1      
2
3
……
不知这又该如何实现呢?
写论文急用,先行谢过大家了!
二维码

扫码加我 拉你入群

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

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

全部回复
2010-3-22 21:38:51
may05lzu 发表于 2010-3-22 20:41 1.每个编号应该有2004-2006三年的数据,如果缺失(如编码2和4),则应当删除,应该如何实现呢?
*如果编号只有2004、2005、2006三种值

bys id: egen a=count(date)
drop if a<3
drop a
二维码

扫码加我 拉你入群

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

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

2010-3-22 21:43:32
may05lzu 发表于 2010-3-22 20:41 2.产生虚拟变量“变量2” ,当“变量1”中的字段包含“国”时则变量2=1,否则为0。
注:变量1为字符型变量,长度不起,为说明性文字。
g var2=indexnot("国",var1)==0
二维码

扫码加我 拉你入群

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

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

2010-3-22 21:52:11
may05lzu 发表于 2010-3-22 20:41 此外,在考虑另一个回归模型时:y=a+b*x
要对上述每个编码做一个回归(每个编码有上百个数据,共有上百个编码),并保留每次回归的R-squared,同时形成一个新的表格如下格式:
编码   R-squared
1      
2
3
……
不知这又该如何实现呢?
g r2=.
levelsof id,l(id)
foreach i of num `id'{
reg y x if id==`i'
replace r2=e(r2) if id==`i'
}
keep id r2
bys id: keep if _n==1
二维码

扫码加我 拉你入群

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

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

2010-3-22 22:24:17
版主真是答地太好了!!!
像这样的解答
我都有收藏

最近我自己也在写loop
开始摸索forvalue与foreach

string function的指令  indexnot用地很棒

真是受益良多
感谢
二维码

扫码加我 拉你入群

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

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

2010-3-23 08:26:55
版主太伟大了,不胜感激!
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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