楼主: oenochoe
1636 4

[编程问题求助] 如何drop掉观测值少的subsample? [推广有奖]

  • 0关注
  • 0粉丝

初中生

4%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
1062 点
帖子
5
精华
0
在线时间
17 小时
注册时间
2012-2-17
最后登录
2015-1-16

楼主
oenochoe 发表于 2013-2-24 09:22:19 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
情况是这样的:
假设我一个年份变量,从2000年到2010年,然后每年有3个地区编号,为A, B, C.
用 bysort 年份: tabulate 编号
可以得到非常直观的结果,就是每个地区编号在某个年份有多少次观测(observations)。

现在我想把发生数在20以下的观测值全部drop掉,请问该怎么做?比如说,在2003年,A区只有8个观测值,那么就drop掉所有2003年的A区观测。

用 bys 年份 (编号):  egen freq = count(编号) 并不能带来我想要的结果,freq的数量很大,明显和前面生成的表格不一样。



二维码

扫码加我 拉你入群

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

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

关键词:subsample Sample drop AMPL subs 购物券 如何

沙发
ywh19860616 发表于 2013-2-24 14:26:41
试试这个,最好能上传你的数据,才容易判断。
egen tag = tag(year)

egen IDcount = total(tag), by(year)

egen IDcount1 = total(IDcount), by(year)
drop if IDcount1<20
一份耕耘,一份收获。

藤椅
oenochoe 发表于 2013-2-25 00:27:18
ywh19860616 发表于 2013-2-24 14:26
试试这个,最好能上传你的数据,才容易判断。
egen tag = tag(year)
example.dta.zip (98.68 KB) 本附件包括:
  • example.dta

首先十分感谢您的回复!


这个似乎不太管用。这个是缩减后的数据。year是年份,tag是地区编号。
用 bys year: tabulate tag 就能看见每个地区在每个年份的有多少个次数,我想把低于20个的都去掉。

板凳
ywh19860616 发表于 2013-2-25 09:44:58
看下这个可以吗?
rename tag tagnew

egen tag1 = tag(year tagnew)

egen IDcount = total(tag1), by(year tagnew)

egen IDcount1 = total(IDcount), by(year tagnew)

drop if IDcount1<20
一份耕耘,一份收获。

报纸
bbwade 发表于 2013-2-25 13:16:51
bys 年份(编号):gen num=_N
drop if num<20

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-18 04:20