楼主: lijian1981112
3452 3

[Stata高级班] 如何用stata求得某变量的偶数项移动平均数 [推广有奖]

  • 1关注
  • 4粉丝

已卖:114份资源

博士生

58%

还不是VIP/贵宾

-

威望
0
论坛币
110 个
通用积分
2.0009
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
4880 点
帖子
177
精华
0
在线时间
270 小时
注册时间
2006-7-4
最后登录
2020-9-30

楼主
lijian1981112 发表于 2012-12-6 20:19:29 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
想请教一下,如何使用stata命令求得某个变量的移动平均数
在汉米尔顿的书上有这样一个命令

egen newvar= ma(y), nomiss t(7)
即建立一个新变量,等于跨距为7的y的移动平均数,用较短、未对中的平均数取代起点值和终点值。
这是奇数项移动,可以跑出结果

但是当我想偶数项移动时求移动平均数时,括号里是4时
egen newvar= ma(y), nomiss t(4)

跳出警告,说“t() must be odd and >= 3”

请问如何想偶数项移动,该用什么函数?
二维码

扫码加我 拉你入群

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

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

关键词:Stata 移动平均 tata 平均数 如何用 移动 平均数 如何

沙发
arlionn 在职认证  发表于 2012-12-7 21:42:42
那就需要自己写命令了。egen 提供的 ma() 函数之所以设定奇数,主要是为了保证前后的时间跨度一致。

藤椅
lijian1981112 发表于 2012-12-11 13:57:38
arlionn 发表于 2012-12-7 21:42
那就需要自己写命令了。egen 提供的 ma() 函数之所以设定奇数,主要是为了保证前后的时间跨度一致。
经过摸索,我发现其实就是用tssmooth做两次即可

tssmooth ma  consump4= consump, window(1 1 2) ----表示4次移动平均数

在对 consump4再做一次两项移动平均即可
tssmooth ma  consump42= consump4, window(1 1)

这样就实现了统计学中给定的偶数项移动平均数的求解

板凳
arlionn 在职认证  发表于 2012-12-11 17:09:38
高明!呵呵

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

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