广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    如何在stata中进行差分、对数差分和移动平均?

    来源:网络收集  点击:  时间:2024-05-01
    【导读】:
    在上一条经验中我们介绍了stata中_n和_N的用法,按照约定,我们来介绍一下如何在stata中对数据进行加工,本章将要介绍的内容包括:_N的妙用、差分、对数差分、移动平均(未来在介绍去除时间趋势时还会用到)本章内容较多,还需要在看完经验之后自己去实践一下。在下一条经验中,我们还会介绍滞后项、前推项、增长率的相关知识。工具/原料morestata电脑方法/步骤

    第一步先打开stata,然后打数据导入到stata当中。

    需要注意的是,我们需要打开一个有时间变量的数据,又些操作需要用到时间变量。为了演示方便,我们打开系统自带的数据

    sysuse sp500.dta

    打开数据查看一下,发现第一列date是表示时间的量。

    我们想生成最大值,与最大值的差,还有数据的变化范围这三个向量。

    sort open

    gen o_max = open //开盘价的最大值

    gen o_diff = open - open // 开盘价与最大值的差

    gen b_diff = open - open // 最大值与最小值之间的范围

    其中:open,表示的就是第一个数值,open指的就是第n个数。

    我们想生成差分(这个十分常用,有两种使用办法)

    第一种:

    gen n = _n

    tsset n

    gen D_open = D.open

    第二种

    sort date

    gen d_open = open - open

    list ?_open in 1/10 //此处用了我们之前介绍的小技巧

    第二种方法十分通用,可以用于所有类型的数据。

    对数差分,这个更是常用!因为如果要是做时间序列的模型(VAR族),都需要对数据做对数差分,这是十分方便的,对数差分的经济意义就是增长率。

    方法一

    gen ln_open = ln(open)

    gen D_ln_open = D.ln_open

    方法二

    gen dln_open = ln(open) - ln(open)

    我平时经常使用第一种方法比较直观,第二种也可以,比较简单

    可以观察下图,发现生成的数据完全一致

    移动平均,直接上命令,观察命令就是,我加上我前面内个数加上后面内个数除以3就是我的移动平均,你在我后面,你加上我,加上你后面的内个数再除以3就是你的移动平均。

    gen mv3_open = (open + open + open) / 3

    list open mv3_open in 1/10

    思考个小问题,算完之后会缺几个数?

    答案是2,缺第一个和最后一个,不懂可以自己输命令试试

    注意事项

    要多用stata进行练习

    遇到不会的问题,在stata里输入help查询一下

    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_642013.html

    相关资讯

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号05-07 19:01:35  耗时:0.035
    0.0347s