全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
28149 11
2012-03-08
比如每个公司代码取5年的各项数据,只要五年中有任一一个缺失值,就把整个公司代码剔除,用代码如何实现。
举个简单的例子吧
var1 var2 var3
1      4      5
1      .      3
2      3     3
2      2     1
在这个例子中,代码1中var2有缺失值,于是需要把整个代码1删除,该如何实现?
PS 我知道可以用命令 list var1 if missing(var2) 显示出哪些代码有缺失值,如果公司代码较少自然是可以一个一个drop,但是通常数据都是成千上百啊。。。肿么办才好捏。。。多谢指点啦!!!
二维码

扫码加我 拉你入群

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

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

全部回复
2012-3-8 21:24:36
求指点~
二维码

扫码加我 拉你入群

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

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

2012-3-8 21:49:55
egen n=rownonmiss(var2 var3)
bys var1: egen sd=sd(n)
drop if sd!=0 | n<2
drop n sd
二维码

扫码加我 拉你入群

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

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

2012-3-9 06:57:23
egen n=rowmiss(var2-var3)
bys var1: egen s=sum(n)
drop if s
drop n s
二维码

扫码加我 拉你入群

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

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

2014-2-25 16:05:33
sungmoo 发表于 2012-3-9 06:57
egen n=rowmiss(var2-var3)
bys var1: egen s=sum(n)
drop if s
楼上的应该是 keep if s=.

另外,这个方法有个问题
例如
var1 var2 var3   n   s  年份
001    xx   xx     0   0  2010
001    0     xx     1   1  2011
此时,只会把001股票的2011年给删掉,而2010年数据仍会保留,并不会把所有001的数据给剔除掉
试了几次,发现数据不匹配了,好郁闷
该如何解决?
二维码

扫码加我 拉你入群

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

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

2014-2-25 21:36:05
感觉是不是可以先导出来,用excel处理,处理好了再导入stata
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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