如何在stata中生成滞后项、前推项、增长率?

作者:小小谷 | 创建时间: 2023-05-16
在上一条中我们介绍了如何在stata中生成差分、对数差分和移动平均等等操作,这些操作都不需要借助时间变量就能实现,今天我们要讲的是滞后项、前推项、增长率。会用到我前三条讲解的知识。我们马上开始吧!...
如何在stata中生成滞后项、前推项、增长率?

操作方法

第一步还是先打开stata并导入我们需要用到的数据 本条经验依然使用,系统自带的sp500的价格数据 sysuse sp500.dta, clear

然后我们尝试生成滞后项 gen n = _n tsset n gen open_lag  = L.open gen open_lag2 = L2.open 我们一次生成了滞后一阶和滞后2阶的数据,现在考考大家这两个生成的变量分别确实了几个值? 分别是一个和两个。 仔细观察下图,我们就更能理解滞后的含义了,就是假设我站在你前面,你在我后面,你的滞后一阶就是我。

然后我们尝试生成前推项, gen n = _n tsset n gen open_forward  = F.open gen open_forward2  = F2.open list open_forwa* 我们观察下图1就可以知道,前推项,就是依次往前挪一个位置,其实大家在理解时不用一定要从字面出发,可以吧滞后记成,依次向后挪一个,前推记成依次向前挪一个,这条命令在处理面板数据时经常用到,大家还需要熟练掌握。

接下来我们尝试生成差分项,分别是一阶差分和2阶差分 gen n = _n tsset n gen open_diff  = D.open gen open_diff2 = D2.open list open open_dif* in 1/10 观察下图可以清楚地看到数据之间的变化,差分就是假设你站在我前面,一阶差分就是用我减去你的值,2阶差分就是咱俩减完之后有个值,我后面的人减去我也得出一个值,然后再用第二个值减去第一个值,不理解的话可以去查查公式。

此处我们会简单介绍一下增长率: 有两种增长率一种是,直接计算的增长率, gen r1 = D.close/L.close

第二种增长率是对数增长率,这种增长率更加常用,一般使用这种增长率: gen lnclose = ln(close) gen r2 = D.lnclose 我之前也介绍过这种增长率,可以参考,我开头的引用。 观察下图,发现两种增长率有差异但是差异不大。

温馨提示

不能只是看看,想要真正理解还需要多练习
有什么不懂得,可以给我留言
点击展开全文

更多推荐