全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
4662 10
2010-03-12
请问:如下所示,那是目前的数据结构。想在stata中如何施以命令产生1210(605*2)个obs的xtset?
我需要的数据结构形似应是:
hhid year    slcp      ttinc       agrsinc  agrinc  husinc      forinc       fuyeinc  otherinc  varlist
1      0           0        10000     5000     1000    2000          1000         1000      5000    ...
1      1          1         15000     4000      500    2000          1000           500       11000  ...
2      0          1
2      1           1
。。。。。。。
请问,要实现这个目标,怎么做啊?谢谢。


    Variable |    Obs        Mean    Std. Dev.       Min        Max
-------------+--------------------------------------------------------
        hhid |       605         303    174.7927             1         605
      region |      605    1.996694    .8158137          1          3
        slcp |       605    .7123967    .4530197          0          1
     ttinc06 |       605     21081.2    23922.53          0     300273
   agrsinc06 |    605    18421.04    23388.29          0     296113
-------------+--------------------------------------------------------
    agrinc06 |      605    7620.694    11181.96          0     138000
    forinc06 |       600    125.8383    1473.353          0      32000
    husinc06 |      605    1926.851    6050.278          0      93585
   fuyeinc06 |       605    8792.292    18678.52          0     214400
  otherinc06 |      605   2664.566    4890.594          0      80320
-------------+--------------------------------------------------------
     ttinc99 |        605     8373.25       12466          0     139800
   agrsinc99 |     605    6194.008    10605.19          0     135000
    agrinc99 |      605    3112.593    6891.417          0     123500
    forinc99 |       605    25.80826     239.195          0       4250
    husinc99 |      605    1004.635    2458.671          0      39000
-------------+--------------------------------------------------------
   fuyeinc99 |      605    1673.121    5430.646          0      60000
  otherinc99 |      605    2179.241    4597.019          0      80320
     acult06 |       605    5.700826    5.330912          0         38
     acult99 |       605    9.580431    9.399305          0        181
tthousearesq |   605    116.2248    83.21037          0       1000
-------------+--------------------------------------------------------
   housejian |       605    4.596694    2.202344          0         36
prodcasset06 |    605    2515.783    9790.376          0     198400
prodcasset99 |   605    335.3504    1328.687          0      10240
        delt |       605        7053.046    15360.64          0     160000
       hdage |       605        46.8    10.65106          6         79
-------------+--------------------------------------------------------
       hdedu |       605    5.396694    3.840097          0         15
    hdleader |       605     .168595    .3747036          0          1
     famsize |       605     4.71405    1.290266          1          9
        ttlb |       605    2.590083    1.062875          0          6
    offlab06 |       605     1.05124    .9450214          0          5
-------------+--------------------------------------------------------
    offlab99 |       605    .3024793    .6192902          0          4
   wkmonth06 |       605    5.970248    4.882894          0         12
   wkmonth99 |       605    1.905785    3.898151          0         12
distwnnear~t |       605     7.80876    8.612118          0        100
placeoffw~06 |       605     2.28595    1.876806          0          6
-------------+--------------------------------------------------------
placeoffw~99 |       605    .7900826    1.571866          0          6
waytowork06 |       605    2.550413    2.152202          0          6
waytowork99 |       605    .8826446    1.775788          0          6
govpromotion |       605    .3305785    .4708107          0          1
offfarmwk06 |       605    .6826446    .4658322          0          1
-------------+--------------------------------------------------------
offfarmwk99 |       605     .231405    .4220796          0          1
二维码

扫码加我 拉你入群

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

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

全部回复
2010-3-12 17:21:37
guobinzhenjing 发表于 2010-3-12 17:13 请问:如下所示,那是目前的数据结构。想在stata中如何施以命令产生1210(605*2)个obs的xtset?
我需要的数据结构形似应是:
hhid year    slcp      ttinc       agrsinc  agrinc  husinc      forinc       fuyeinc  otherinc  varlist
1      0           0        10000     5000     1000    2000          1000         1000      5000    ...
1      1          1         15000     4000      500    2000          1000           500       11000  ...
2      0          1
2      1           1
。。。。。。。
请问,要实现这个目标,怎么做啊?
没太看懂你的生成规则。
二维码

扫码加我 拉你入群

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

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

2010-3-12 17:48:22
我以前的数据结构没有把时间作为一个变量独立列出来。
以前是:
hhid slcp   inc06        inc99        obs   varlist
1       0      50000       20000      605
2       1      10000      8000         605
3       1      18000      15000       605
...
现在想把它调整过来,为:
hhid   year(06=1,99=0)             slcp(1=处理组,0=控制组)                                   inc                         obs   varlist
1         0                                         0                                                                      20000                       605
1         1                                         0                                                                      50000                       605
2          0                                        1                                                                      15000                       605
2          1                                        1                                                                      18000                       605
....
如何实现这一转化?如何设置命令??

希望高手指点。谢谢!
二维码

扫码加我 拉你入群

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

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

2010-3-12 22:16:30
guobinzhenjing 发表于 2010-3-12 17:48 我以前的数据结构没有把时间作为一个变量独立列出来。以前是:
hhid slcp   inc06        inc99        obs   varlist
1       0      50000       20000      605
2       1      10000      8000         605
3       1      18000      15000       605
...
现在想把它调整过来,为:
hhid   year(06=1,99=0)             slcp(1=处理组,0=控制组)                                   inc                         obs   varlist
1         0                                         0                                                                      20000                       605
1         1                                         0                                                                      50000                       605
2          0                                        1                                                                      15000                       605
2          1                                        1                                                                      18000                       605
....
如何实现这一转化?如何设置命令?
*试一下:

expandcl 2,cl(hhid) gen(t)
sort hhid t
g year=(mod(t,2)==1)
g inc=inc06*(mod(t,2)==1)+inc99*(mod(t,2)==0)
drop inc06 inc99 t
二维码

扫码加我 拉你入群

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

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

2010-3-13 02:37:24
非常感谢版主帮助!您的确技术高超啊。
解决了我的问题。
不过,有一点,每个农户观测两次,所以,
应是g inc=inc06*(mod(t,1)==1)+inc99*(mod(t,1)==0).
换句话,2期面板数据,样本量扩大为原来的2倍。
非常感谢您的帮助!
二维码

扫码加我 拉你入群

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

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

2010-3-13 07:58:34
guobinzhenjing 发表于 2010-3-13 02:37 应是g inc=inc06*(mod(t,1)==1)+inc99*(mod(t,1)==0)
任何整数除以1的余数都是0吧?
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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