SPSS的专家建模器可以自动识别数据,给出最适合的模型,本章通过三个例题介绍如何使用SPSS实现时间序列分析。由于本人对时间序列分析的理解尚浅,做出模型后在论文上的呈现形式需要取查阅资料,以便更好地在论文上呈现

在此之前,我们还需要了解时间序列分析的一些基础的名词

一、名词解释

1.时间序列的平稳性

简单来说,就是均值固定,相邻项方差相同,相邻项协方差为0

2.ACF自相关系数

3.PACF偏自相关函数

PACF使用的前提是数据为平稳序列。

二、实例分析————销量数据预测

1.准备工作

在进行时间序列分析之前,我们需要先对数据进行一个可视化观察,并思考以下问题

(1)画出时序图

在定义好时间变量后,创造时序图。如图所示,这里的数据已经是一个趋于平稳的值,不需要在设置差分,即不需要调整差异的参数

(2)不设置参数地建立模型————查看模型结果

此处,我们先用默认的参数进行建模,观察SPSS使用的哪种模型,心里有一个底,然后进行分析

点击创造传统模型,进入下图的界面后,直接把因变量放进去,点击确定即可



可见SPSS选用的模型是温特加法模型,之后我们需要根据这个模型取进行分析

2.参数设置

(1)条件

条件设置可以指定模型的寻找,是只在指数平滑模型找还是在ARIMA模型找。其中,是否考虑季节性的参数可以不用修改,因为SPSS会自动识别此项,但是需要我们定义新的时间变量,因此在进行建模前,定义时间变量是必须的

(2)离群值

离群值也就是异常值,勾选了这个选项后,SPSS会自动识别异常值,应用时我们可以先不排除异常值,如果模型拟合度不好再设置排除,要排除可以全选。

各个异常值的种类如图所示

(3)统计与图

在“统计”里面,我们需要勾选参数估算值;在“图”里面,我们需要勾选拟合值,这样会在画出来的图中,把我们建模的拟合曲线与实际曲线画在同一张图内,便于观察模型拟合效果。而ACF和PACF则是为了检查残差是否平稳

(4)保存与选项

保存我们已经非常熟悉,就是在数据集中添加一个新的变量,这里我们只需要勾选预测值即可。选项处则是可以设置预测的时期

3.结果分析

(1)模型拟合度

此处R方0.992,为拟合优度,越接近1越好。正态化的BIC没有一个相对的量,越接近0越准确。要用这个值比较的话,需要对比不同模型的BIC,但是SPSS已经找到了最优的模型,所以看此处意义并不大,但还是可以汇报到论文中的

(2)模型统计

此处我们进行的Q检验的p值为0.7>0.05,接受“残差为0”的原假设,所以可以认为残差是白噪声

(3)指数平滑法模型参数

下图是指数平滑法模型的参数,在我们的论文会介绍这个模型的公式。现在有了结果,就可以在论文中体现出来了

(4)残差的ACF与PACF图

此处的ACF与PACF图都在两条线内,因此可以认为残差为0

(5)拟合图与真实图的对比

在模型可视化后,我们可以看到模型的拟合值与真实值相差不大,因此我们的拟合效果还是很不错的

(6)模型预测

在前面的选项中,我们可以设置预测的时期。如果想预测的话,设置好需要预测的时期即可。此外,我们还可以在保存的选项中,勾选预测的置信上限与预测下限。效果如图所示

三、实例分析————人口数据预测

因为建模的过程在前面的例题已经讲的非常详细了,此处我们只讨论一些比较细节的图形优化

1.添加标记

在此图中,因为数据点比较少,我们可以对每个数据点添加标记,更好地观察图形的变化形式

2.添加数据标签

在我们预测值比较少的时候,为了更清楚地看到预测值,我们可以对作出的图添加数据标签

预测小结

时间序列分析专题——利用SPSS专家建模器进行建模的更多相关文章

  1. SPSS统计分析过程包括描述性统计、均值比较、一般线性模型、相关分析、回归分析、对数线性模型、聚类分析、数据简化、生存分析、时间序列分析、多重响应等几大类

    https://www.zhihu.com/topic/19582125/top-answershttps://wenku.baidu.com/search?word=spss&ie=utf- ...

  2. R语言实现金融数据的时间序列分析及建模

    R语言实现金融数据的时间序列分析及建模 一 移动平均    移动平均能消除数据中的季节变动和不规则变动.若序列中存在周期变动,则通常以周期为移动平均项数.移动平均法可以通过数据显示出数据长期趋势的变动 ...

  3. SPSS时间序列分析

    时间序列分析必须建立在预处理的基础上…… 今天看了一条新闻体会到了网络日志的重要性…… 指数平滑法(Exponential Smoothing,ES)是布朗(Robert G..Brown)所提出,布 ...

  4. python时间序列分析

              题记:毕业一年多天天coding,好久没写paper了.在这动荡的日子里,也希望写点东西让自己静一静.恰好前段时间用python做了一点时间序列方面的东西,有一丁点心得体会想和大家 ...

  5. R时间序列分析实例

    一.作业要求 自选时间序列完成时间序列的建模过程,要求序列的长度>=100. 报告要求以下几部分内容: 数据的描述:数据来源.期间.数据的定义.数据长度. 作时间序列图并进行简单评价. 进行时间 ...

  6. 时间序列分析算法【R详解】

    简介 在商业应用中,时间是最重要的因素,能够提升成功率.然而绝大多数公司很难跟上时间的脚步.但是随着技术的发展,出现了很多有效的方法,能够让我们预测未来.不要担心,本文并不会讨论时间机器,讨论的都是很 ...

  7. 时间序列分析工具箱——sweep

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/kMD8d5R/article/details/81977856 作者:徐瑞龙.量化分析师,R语言中文 ...

  8. 《时间序列分析——基于R》王燕,读书笔记

    笔记: 一.检验: 1.平稳性检验: 图检验方法:     时序图检验:该序列有明显的趋势性或周期性,则不是平稳序列     自相关图检验:(acf函数)平稳序列具有短期相关性,即随着延迟期数k的增加 ...

  9. 《时间序列分析及应用:R语言》读书笔记--第一章 引论

    "春节假期是难得的读书充电的时间."--来自某boss.假期能写多少算多少,一个是题目中的这本书,另一个是<python核心编程>中的高级部分,再一个是拖着的<算 ...

  10. 【R实践】时间序列分析之ARIMA模型预测___R篇

    时间序列分析之ARIMA模型预测__R篇 之前一直用SAS做ARIMA模型预测,今天尝试用了一下R,发现灵活度更高,结果输出也更直观.现在记录一下如何用R分析ARIMA模型. 1. 处理数据 1.1. ...

随机推荐

  1. 解决 pip 安装时的 SSL/TLS 问题

    在使用pip安装Python软件包时,有时会遇到与 SSL/TLS 相关的问题.一种常见情况是在使用VPN时出现以下错误信息 ValueError: check_hostname requires s ...

  2. ctf_web

    ctfshow web13 访问题目链接 一看是一道文件上传题,上传文件进行测试 上传php会显示 error suffix 因此推测会检测格式 当文件字数超出一定字数时,显示 error file ...

  3. Python基础篇(安装)

    Python简介 Python是Guido van Rossum发布于1991年的一种计算机程序设计语言.是一种动态的.面向对象的脚本语言,是一种解释型的,弱类型的高级计算机语言.需要注意的是pyth ...

  4. Python:Python字符串中的r、u和转义字符

    Python中字符串前面我们经常看到加r(R)或u/(U)的前缀,而这两个符号是什么意思呢? 1.r(R) r意为raw,表示不包含转义字符的原生字符串.常见的转义字符包括下列几种: 转义字符 描述 ...

  5. QGIS开发笔记(二):Windows安装版二次开发环境搭建(上):安装OSGeo4W运行依赖其Qt的基础环境Demo

    前言   使用QGis的目的是进行二次开发,或者说是融入我们的应用(无人车.无人船.无人机),本片描述搭建QGis二次基础开发环境,由于实在是太长了,进行了分篇: 上半部分:主要是安装好后,使用QtC ...

  6. uniapp 配置 基座调试指定页面

    在用hbuildx时,用自定义基座,调试程序时,有的页面因为基座缺少组件而进不去,这个时候就可以用指定页面的方式,我们只需要把进入页面的入参传进去,这个时候打开页面就是指定要调试的页面了. 就在pag ...

  7. 安利一个好用的IDEA插件 object-helper-plugin

    更多精彩博文请关注:听到微笑的博客 一. 插件背景 object-helper 插件是一个日常开发工具集插件,提供丰富的功能,最开始是基于 GenerateO2O 插件开发而来,它提供了对象之间值拷贝 ...

  8. 手写Word2vec算法实现

    1. 语料下载:https://dumps.wikimedia.org/zhwiki/latest/zhwiki-latest-pages-articles.xml.bz2 [中文维基百科语料] 2. ...

  9. ChatGPT还是有点东西的-public static <T> List<T> Arrays.asList(T... a) {...}

    背景 业务开发需要判断业务状态是否在30.40.50.60的集合内,所以写了以下代码 int[] inLiq = {30,40,50,60}; return Arrays.asList(inLiq). ...

  10. NOIP模拟61

    T1 交通 解题思路 把环视为点,对于原图中每一个点的两条入边以及两条出边分别连边. 优于保证了原图中每个点出入度都是 2 因此新图中一定由若干个偶数环所组成的. 并且对于环中一定是只能间隔着选点,因 ...