全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
11143 7
2011-08-02

该方法适用于面板数据中时间变量是间断的情况。最典型的例子就是CHNS面板数据(年份分别是1989、1991、1993、1997、2000、2004、2006、2009)。

假设截面变量为:id,时间变量为:year

. tsset id year

       panel variable:  id (unbalanced)

        time variable:  year, 1989 to 2009, but with gaps

                delta:  1 unit

上述结果是CHNS面板数据进行面板数据截面和时间项设定的结果。

为了获得关键变量的滞后项,直接采用gen newvar=l.varname的结果是所有滞后项均为缺失值。解决办法如下:

首先,

. bysort id (year): gen order = _n

. list order

       +-------+

       | order |

       |-------|

    1. |     1 |

    2. |     2 |

    3. |     3 |

    4. |     4 |

    5. |     1 |

       |-------|

    6. |     2 |

    7. |     3 |

    8. |     4 |

    9. |     1 |

   10. |     1 |

       |-------|

   11. |     2 |

   12. |     3 |

   13. |     1 |

   14. |     2 |

   15. |     3 |

       |-------|

从中你可以看出,第一个被调查者只有4年的数据,这四年按先后顺序分别被赋值为1234。第二调查者也是如此,第三和第四个调查者则只有1年和3年的数据。

然后,

. tsset id order

       panel variable:  id (unbalanced)

        time variable:  order, 1 to 8

                delta:  1 unit

最后,

. gen newvar=l.varname

此时即可获得按order顺序排列的滞后项。
二维码

扫码加我 拉你入群

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

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

全部回复
2011-8-25 22:14:13
谢谢,很管用
二维码

扫码加我 拉你入群

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

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

2017-11-4 21:49:36
解决了大问题!非常感谢!
二维码

扫码加我 拉你入群

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

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

2017-11-5 10:48:36
楼主的作法是有问题的:
复制代码
二维码

扫码加我 拉你入群

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

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

2017-11-5 10:53:39
虽然根据 order 是 OK,但是真实的时间是 year,很可能不同 id 同一年(底下的 1995) 取的落后期是不一样的!
复制代码
二维码

扫码加我 拉你入群

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

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

2018-8-20 20:41:33
黃河泉 发表于 2017-11-5 10:53
虽然根据 order 是 OK,但是真实的时间是 year,很可能不同 id 同一年(底下的 1995) 取的落后期是不一样的 ...
请问怎样做能避免您说的这种情况,并进行更好的处理?我的面板数据也是时间不连续,而且时间短,个体多……
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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