楼主: salyc
11050 15

求助关于stata分组滚动求和的问题 [推广有奖]

11
fgleric 发表于 2012-12-7 12:09:36
salyc 发表于 2012-12-7 10:31
stata 提示貌似这个 命令编辑错了,“varlist not allowed”
不好意思,那个是用来举例子的。

你这个是moving average,我用的比较少;但是以前做过相关的,可以考虑用egenmore,专门处理panel data moving average的。

set obs 3
gen firmid=1
replace firmid=2 in 2
replace firmid=3 in 3
expand 19
gen ret=rnormal()
bysort firmid:egen date=seq()
tsset firmid date
egen moveave3 = filter(ret), coef( ) lags(1/8)

12
salyc 在职认证  发表于 2012-12-7 12:20:21
fgleric 发表于 2012-12-7 12:09
不好意思,那个是用来举例子的。

你这个是moving average,我用的比较少;但是以前做过相关的,可以考虑 ...
嗯,先谢谢哈,我回去再试试,命令有些复杂哈,改变量名都得我琢磨一会了,呵呵

13
salyc 在职认证  发表于 2012-12-8 16:25:07
fgleric 发表于 2012-12-7 12:09
不好意思,那个是用来举例子的。

你这个是moving average,我用的比较少;但是以前做过相关的,可以考虑 ...
能具体解释一下最后一个命令吗?包括filter(),coef()

stata运行时说“unknown egen function filter()”我也搜了,貌似也没有filter这个命令

14
salyc 在职认证  发表于 2012-12-8 16:29:58
fgleric 发表于 2012-12-7 12:09
不好意思,那个是用来举例子的。

你这个是moving average,我用的比较少;但是以前做过相关的,可以考虑 ...
我现在只能想到的方法就是,先设置面板数据,然后by firmid:egen newva=L5.X+L6.X+.....+L125,基本就是按原理来了,但就是不知道这个命令可不可以简单点,毕竟滞后120项,这么做可以,但是编辑命令太坑爹了

15
fgleric 发表于 2012-12-9 00:30:42
salyc 发表于 2012-12-8 16:29
我现在只能想到的方法就是,先设置面板数据,然后by firmid:egen newva=L5.X+L6.X+.....+L125,基本就是按 ...
help egenmore

16
caesarljs 在职认证  学生认证  发表于 2017-4-15 10:33:55
可以试试这个行不行  rolling, window(120) clear: mean var

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-26 15:44