如何比较和选择面板数据中的非变化变量

问题描述 投票:0回答:1

我的面板数据不平衡,需要排除(t-1)前一年收入发生变化的观察结果(t),同时保留对这些人的其他观察结果。因此,如果收入的变化发生在第t年,则应删除年份(对于该人)。

clear
input year id income
2003 513 1500
2003 517 1600
2003 518 1400
2004 513 1500
2004 517 1600
2004 518 1400
2005 517 1600
2005 513 1700
2005 518 1400
2006 513 1700
2006 517 1800
2006 518 1400
2007 513 1700
2007 517 1600
2007 518 1400
2008 513 1700
2008 517 1600
2008 518 1400
end

xtset id year
xtline income, overlay

为了说明发生了什么,我添加了一个xtline情节,该情节遵循多年来每人的收入。 ID = 518是完美不变的情况(保持所有障碍物)。 ID = 513有一次跳跃(该人在2005年下降)。 ID = 517有点像峰值,可能是一次测量误差(2006年和2007年下降)。

enter image description here

我认为应该有某种形式的循环。初始化每个人的第一个值(因为这不能比较),比如说t0。然后比较t1-t0,如果改变则丢弃,否则比较t2-t1等。因为数据不平衡,可能会丢失年份。谢谢你的建议。

更新/目标:目的是为固定效应回归分析准备数据。还有另一个变量,报告整个“去年”。然而,收入是在面谈日期(时间点)报告的。我需要接近像“去年收入”这样的东西来将它与这个变量联系起来。建议采用该程序,并遵循若干出版物。我试着复制并理解它。

解:

bysort id (year) : drop if income != income[_n-1] & _n > 1
loops stata panel-data data-management
1个回答
2
投票
bysort id (year) : gen byte flag = (income != income[_n-1]) if _n > 1
list, sepby(id)

该方法在方法上非常IFFY。除了xtsetting数据之外,没有必要为固定效应分析做准备;并且很少有任何借口来创建缺失的数据......更不用说这样做是为了将数据压缩到(其他)研究人员对统计和计量经济学的了解的极限。我知道这是一项复制研究,但无论你对复制做什么,无论你在何处提出它,你都需要指出原始作者对回归没有太多线索。不要太努力去理解它。

© www.soinside.com 2019 - 2024. All rights reserved.