楼主: rictan
29123 17

[面板数据求助] 请教大家:如何求移动平均值 [推广有奖]

教授

27%

还不是VIP/贵宾

-

威望
0
论坛币
1809 个
通用积分
4.6118
学术水平
2 点
热心指数
9 点
信用等级
1 点
经验
22940 点
帖子
592
精华
0
在线时间
1603 小时
注册时间
2007-4-19
最后登录
2022-5-20

20论坛币
请教大家:如何求移动平均值:
比如,95-11年数据,怎么求五年的移动平均值,
即,将95、96、97、98、99年算一次平均值,随后是96、97、98、99、10求一次平均值,以此类推。
谢谢诸位!

最佳答案

frommyself 查看完整内容

https://bbs.pinggu.org/thread-1185730-1-1.html https://bbs.pinggu.org/thread-2233580-1-1.html 测试了一下,你的算法是MA1=(A1+A2+A3+A4+A5)/5 问题在于你这相当于预测4期,正确的做法应该是MA5=(A1+A2+A3+A4+A5)/5,手动数据移动一下位置就好了;另外,总有第一期,第一期数据前不可能再有4期。建议看看第二个链接地址。
关键词:移动平均值 移动平均 平均值 如何 平均值
沙发
frommyself 发表于 2014-7-7 22:19:25 |只看作者 |坛友微信交流群
rictan 发表于 2014-7-8 13:11
我用您介绍的方法,算了一个,然后又用Excel算了一个(excel-av5),两个算法的数值不一样不知怎么回事呢 ...
https://bbs.pinggu.org/thread-1185730-1-1.html
https://bbs.pinggu.org/thread-2233580-1-1.html
测试了一下,你的算法是MA1=(A1+A2+A3+A4+A5)/5
问题在于你这相当于预测4期,正确的做法应该是MA5=(A1+A2+A3+A4+A5)/5,手动数据移动一下位置就好了;另外,总有第一期,第一期数据前不可能再有4期。建议看看第二个链接地址。
已有 1 人评分论坛币 热心指数 收起 理由
crystal8832 + 10 + 1 补偿

总评分: 论坛币 + 10  热心指数 + 1   查看全部评分

使用道具

藤椅
frommyself 发表于 2014-7-8 02:01:29 |只看作者 |坛友微信交流群
egen newvariablename= ma(targetvarible), nomiss t(3)   /*3是MA的跨度*/
已有 2 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
可以爱你吗9 + 1 + 1 + 1 热心帮助其他会员
crystal8832 + 10 + 1 热心帮助其他会员

总评分: 论坛币 + 10  学术水平 + 1  热心指数 + 2  信用等级 + 1   查看全部评分

使用道具

板凳
rictan 发表于 2014-7-8 11:05:40 |只看作者 |坛友微信交流群
frommyself 发表于 2014-7-8 02:01
egen newvariablename= ma(targetvarible), nomiss t(3)   /*3是MA的跨度*/
请教大家:95-11年数据,如果想求这样的平均值,
即,将95、96年算一次平均值,随后是97、98求一次平均值,99、10年求一次均值,以此类推。
谢谢啦!

使用道具

报纸
rictan 发表于 2014-7-8 13:11:58 |只看作者 |坛友微信交流群
frommyself 发表于 2014-7-8 02:01
egen newvariablename= ma(targetvarible), nomiss t(3)   /*3是MA的跨度*/
我用您介绍的方法,算了一个,然后又用Excel算了一个(excel-av5),两个算法的数值不一样不知怎么回事呢?
期待回复!

五年均值.xlsx

10.65 KB

使用道具

地板
rictan 发表于 2014-7-10 00:04:36 |只看作者 |坛友微信交流群
frommyself 发表于 2014-7-9 00:40
https://bbs.pinggu.org/thread-1185730-1-1.html
https://bbs.pinggu.org/thread-2233580-1-1.html
测试 ...
谢谢,解决问题了!

使用道具

7
brcs8 学生认证  发表于 2018-4-5 16:27:31 |只看作者 |坛友微信交流群
rictan 发表于 2014-7-8 13:11
我用您介绍的方法,算了一个,然后又用Excel算了一个(excel-av5),两个算法的数值不一样不知怎么回事呢 ...
您好,看到您求移动平均的帖子,我有一些疑惑,stata中分组移动平均的命令,用by dm:movavg 新变量=设定变量,lags(5)是说五年的移动平均,2011年的移动平均值是用2007 2008 2009 2010 2011求和平均,2012年是用2008 2009 2010 2011 2012求和平均,依次类推,但是我用stata按这个代码算的跟我用计算器算出来的值不一样啊,请问您知道是什么原因吗,有什么好的解决办法吗,用tssmooth不能分组,还有什么别的代码命令可以解决这个问题吗,谢谢啊

使用道具

8
黃河泉 在职认证  发表于 2018-4-5 18:18:31 |只看作者 |坛友微信交流群
brcs8 发表于 2018-4-5 16:27
您好,看到您求移动平均的帖子,我有一些疑惑,stata中分组移动平均的命令,用by dm:movavg 新变量=设定变 ...
请先安装 ssc install rangestat, 然后试试
  1. webuse grunfeld, clear
  2. rangestat (sd) invest (count) N=invest, interval(year -4 0) by(company)
复制代码

使用道具

9
黃河泉 在职认证  发表于 2018-4-5 18:19:37 |只看作者 |坛友微信交流群
brcs8 发表于 2018-4-5 16:27
您好,看到您求移动平均的帖子,我有一些疑惑,stata中分组移动平均的命令,用by dm:movavg 新变量=设定变 ...
不好意思,应该是
  1. webuse grunfeld, clear
  2. rangestat (mean) invest (count) N=invest, interval(year -4 0) by(company)
复制代码

使用道具

10
brcs8 学生认证  发表于 2018-4-5 20:12:52 |只看作者 |坛友微信交流群
黃河泉 发表于 2018-4-5 18:19
不好意思,应该是
谢谢您,解决了我想了好多天的问题

使用道具

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

本版微信群
加好友,备注jltj
拉您入交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-28 19:56