全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 统计软件培训班VIP答疑区
1915 5
2010-04-12
请教连老师一个数据命令问题

           hhid (住户编号)          line (住户中的具体个人编号)        a(与户主关系)                    
         211101                                      1                                                      3                                      
         211101                                      2                                                      0                                      

         211102                                       1                                                      2        

         211103                                       1                                                      0
         211103                                       2                                                      1
         211103                                       3                                                      3

            。。。。。。。。。


如果需要统计在同一住户编号下 与户主关系即出现0又出现3的住户总共有多少不知该用什么命令呢?(如上表表明 住户01 03满足条件 故因显示总和为2)
有尝试用 bys hhid: egen n=count(hhid) if a==3 & a==0 但是并没有出来想要的结果 请问连老师这是什么原因呢?
二维码

扫码加我 拉你入群

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

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

全部回复
2010-4-13 08:35:14
bys hhid: egen n=count(hhid) if a==3 | a==0

而不是
bys hhid: egen n=count(hhid) if a==3 & a==0
二维码

扫码加我 拉你入群

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

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

2010-4-13 12:27:19
此命令还是没能得到想要的结果 如下的panel data  我想知道 同一个household的同一个个人下面(既hhid line都相同时) year 又有89 又有91的信息个人有几个?

    hhid          line     year
   211101001 1        1991         
   211101001 1       1989
   211101001 2       1991
   211101001 2       1989
   211101002 1       1989
   211101002 1       1991
   211101002 2       1991
   211101002 2       1989
   211101003 1       1989
   211101003 2       1989
   211101003 3       2006
   211101004 1       1991
   211101004 1       1993
   211101004 1      1989
   211101004 2      1989
此表中  211101001 1 ; 211101001 2 ;211101002 1; 211101002 2 满足条件 其余不符 故应显示满足条件数为4.  请问该命令该如何描述?或是该分几步来做? 麻烦您了! 非常感谢!
二维码

扫码加我 拉你入群

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

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

2010-4-13 15:09:57
我觉得你需要更为细致的描述你的问题,你在三楼所言的问题与一楼的问题有很大的差异。
二维码

扫码加我 拉你入群

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

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

2010-4-18 10:44:07
好的 我的数据是panel data     hhid 表示住户编号  line表示住户下的特定个人编号 hhid加line 就是一个特定个人   我panel的年份是从1989 到2006 可是并不是每一个特定个人都有所有年份的数据  比如有的只有89 91 有的只有93 97 有的只有89 00;  我需要用89 和06的数据 对特定个人做一个一阶差分 然后做回归, 所以需筛选出哪些特定个人同时拥有89 和06 的数据 然后对这些个人做回归  不知该用什么命令? 希望这回说明白了 辛苦您了!^_^

补充一句:三楼我所描述的问题 只是想通过写命令查看满足条件的observation有多少个。
二维码

扫码加我 拉你入群

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

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

2010-4-18 12:04:22
处理命令如下:
gen id = hhid + line*10^9
format id hhid %14.0g
order id year
tsset id year
keep if year==1989|year==2006  // 你的问题可以使用这个语句来解决
bysort id: egen num = count(id)
drop if num<2  // 只有一个年度有观察值的个人被删掉
list id year, sepby(id)

*==========用你的数据测试结果如下==========

. input hhid  line     year

           hhid        line        year
  1.    211101001 1        1991         
  2.    211101001 1       1989
  3.    211101001 2       1991
  4.    211101001 2       1989
  5.    211101002 1       1989
  6.    211101002 1       1991
  7.    211101002 2       1991
  8.    211101002 2       1989
  9.    211101003 1       1989
10.    211101003 2       1989
11.    211101003 3       2006
12.    211101004 1       1991
13.    211101004 1       1993
14.    211101004 1      1989
15.    211101004 2      1989
16. end

.
. gen id = hhid + line*10^9

. format id hhid %14.0g

. order id year

.
. tsset id year
       panel variable:  id (unbalanced)
        time variable:  year, 1989 to 2006, but with gaps
                delta:  1 unit

.
. keep if year==1989|year==1991  // 测试,仅保留1989和1991有样本的个体
(2 observations deleted)

.  
. *keep if year==1989|year==2006  // 你的问题可以使用这个语句来解决
.
. bysort id: egen num = count(id)

.
. drop if num<2  // 只有一个年度有观察值的个人被删掉
(3 observations deleted)

.
. list id year, sepby(id)

     +-------------------+
     |         id   year |
     |-------------------|
  1. | 1211101001   1989 |
  2. | 1211101001   1991 |
     |-------------------|
  3. | 1211101002   1989 |
  4. | 1211101002   1991 |
     |-------------------|
  5. | 1211101004   1989 |
  6. | 1211101004   1991 |
     |-------------------|
  7. | 2211101001   1989 |
  8. | 2211101001   1991 |
     |-------------------|
  9. | 2211101002   1989 |
10. | 2211101002   1991 |
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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