“春节假期是难得的读书充电的时间。”--来自某boss。假期能写多少算多少,一个是题目中的这本书,另一个是《python核心编程》中的高级部分,再一个是拖着的《算法导论》。

------------------------------------------------------

一、时间序列研究目的主要有两个:认识产生观测序列的随机机制,即建立数据生成模型;基于序列的历史数据,也许还要考虑其他相关序列或者因素,对序列未来的可能取值给出预测或者预报。通常我们不能假定观测值独立取自同一总体,时间序列分析的要点是研究具有相关性质的模型。

二、下面是书上的几个例子

1、洛杉矶年降水量

问题:用前一年的降水量预测下一年的降水量。

第一幅图是降水量随时间的变化图;第二幅图是当年降水量与去年降水量散点图。

win.graph(width=4.875, height=2.5,pointsize=8)  #这里可以独立弹出窗口
data(larain) #TSA包中的数据集,洛杉矶年降水量
plot(larain,ylab='Inches',xlab='Year',type = 'o') #type规定了在每个点处标记一下 win.graph(width = 3,height = 3,pointsize = 8)
plot(y = larain,x = zlag(larain),ylab = 'Inches',xlab = 'Previous Year Inches')#zlag函数(TSA包)用来计算一个向量的延迟,默认为1,首项为NA

从第二幅图看出,前一年的降水量与下一年并没有什么特殊关系。

2、化工过程

win.graph(width = 4.875,height = 2.5,pointsize = 8)
data(color)
plot(color,ylab = 'Color Property',xlab = 'Batch',type = 'o') win.graph(width = 3,height = 3,pointsize = 8)
plot(y = color,x = zlag(color),ylab = 'Color Property',xlab = 'Previous Batch Color Property')
len <- length(color)
cor(color[2:len],zlag(color)[2:len])#相关系数
>0.5549

第一幅图是颜色属性随着批次的变化情况。

第二幅图画一下前一批次与本批次是散点图。

上面的图显示了稍微向上的趋势,即数值较大的后一批次也趋向于更大的数值。但是并不明显,相挂系数只有0.5549.

3、加拿大野兔年丰度

win.graph(width=4.875, height=2.5,pointsize=8)
data(hare)
plot(hare,ylab='Abundance',xlab='Year',type='o') win.graph(width=3, height=3,pointsize=8)
plot(y=hare,x=zlag(hare),ylab='Abundance',xlab='Previous Year Abundance')
len <- length(hare)
cor(hare[2:len],zlag(hare)[2:len])
>0.7026

看一下下面的图,明显有周期性质。

上面的图看出前一年的数值跟本年度数值相关关系较大。相关系数为0.7026.

4、艾奥瓦州迪比克市月平均气温

非常明显的周期性。季节性模式。

5、滤油器月销售量

win.graph(width=4.875, height=2.5,pointsize=8)
data(oilfilters)
plot(oilfilters,type='o',ylab='Sales') win.graph(width=4.875, height=2.5,pointsize=8)
plot(oilfilters,type='l',ylab='Sales')
Month=c("J","A","S","O","N","D","J","F","M","A","M","J")#注意这里是从1983年7月到1987年6月
points(oilfilters,pch=Month) plot(oilfilters,type='l',ylab='Sales')
points(y=oilfilters,x=time(oilfilters),pch=as.vector(season(oilfilters)))#这里的season函数的返回值取决于传入数值

“向作者提供数据时,经理说没有理由认为销售量存在季节性。”“假如各年1月与1月的数据之间存在关联趋势,2月与2月的数据之间存在关联趋势,那么就有季节性。”

上面的图作者说没有显示明显的季节性。其实……还好,季节性比较明显了已经。

在加上月份的标识之后,确实比原来更能显示出季节性规律。

总之,恰当和有益于发现特定模式的绘图方法,有利于找到符合时间序列数据的合适模型。

三、建模策略

给时间序列寻找合适的模型并非易事,多步建模策略很有用,包括三个可反复使用的主要步骤:

1、模型识别

2、模型拟合

3、模型诊断

模型识别就是在时间序列模型类中选择适合观测值的模型。进一步可以观察时间序列图,计算一些统计量。选取的模型是有待考证的,选取原则是能表示模型的前提下选取参数少的。

第二步就是用数据将将选取模型中的参数估计出来,估计方法是最小二乘挥着极大似然。

最后就是对模型进行质量评估。针对一些问题对模型进行估计,看模型是否合理:比如模型对数据的拟合程度有多好,模型前提是否满足等。如果没有不足之处,就可以进行预测等任务,如果有不足之处,针对不足之处寻找其他模型,再进行上面三个步骤。

四、历史上的时间序列图

名言:“时间序列图是图形设计最常用的形式,其一个维度沿着秒、分、时、日、周、月、年、乃至千年等规则的时间节律延伸,时间标度的自然顺序赋予了这种设计以解释的力量和效率,这一点在其他图形设计上了无痕迹。”

《时间序列分析及应用:R语言》读书笔记--第一章 引论的更多相关文章

  1. 《R语言实战》读书笔记--第一章 R语言介绍

    1.典型的数据分析过程可以总结为一下图形: 注意,在模型建立和验证的过程中,可能需要重新进行数据清理和模型建立. 2.R语言一般用 <- 作为赋值运算符,一般不用 = ,原因待考证.用-> ...

  2. 《css3实战》读书笔记 第一章 基于CSS需求而编写的HTML.

    笔记说明 <CSS3实战手册第3版(影印版)>可以消除Web设计工作的痛苦,并且带给你:HTML--重新入门.如果你是HTML新手,你会学到如何以CSS友好的方式进行基本页面构造.若你是H ...

  3. 《疯狂Java:突破程序员基本功的16课》读书笔记-第一章 数组与内存控制

    很早以前就听过李刚老师的疯狂java系列很不错,所以最近找一本拿来拜读,再此做下读书笔记,促进更好的消化. 使用Java数组之前必须先对数组对象进行初始化.当数组的所有元素都被分配了合适的内存空间,并 ...

  4. 《C++ Primer》读书笔记 第一章

    读<C++ Primer>才知道,自己对C++知之甚少... 写个博客记录下自己C++的成长,只是读书笔记,不是对<C++ Primer>知识点的总结,而是对自己在书上看到的以 ...

  5. 《深入理解计算机系统》(CSAPP)读书笔记 —— 第一章 计算机系统漫游

    本章通过跟踪hello程序的生命周期来开始对计算机系统进行学习.一个源程序从它被程序员创建开始,到在系统上运行,输出简单的消息,然后终止.我们将沿着这个程序的生命周期,简要地介绍一些逐步出现的关键概念 ...

  6. Getting Started With Hazelcast 读书笔记(第一章)

    第一章:数据集群的演化与 早期的服务器架构 显然,应用是可扩展的,但是由于是集中式服务器,随着数据库性能达到极限,再想扩展就变得极端困难,于是出现了缓存.    缓存显然再次提升了可扩展性,减轻了数据 ...

  7. C缺陷与陷阱----读书笔记---第一章

    第一章:词法陷阱 编译器中负责将程序分解为一个一个符号的部分,一般称为“词法分析器”.例如,对于语句: if ( x == big ) big = x ; 它的第一个符号是C语言关键字if,紧接着下一 ...

  8. C语言学习笔记第一章——开篇

    本文章B站有对应视频 (本文图片.部分文字引用c primer plus) 什么是C语言 顾名思义,c语言是一门语言,但是和我们所讲的话不同,它是一门编程语言,是为了让机器可以听懂人的意思所以编写的一 ...

  9. 《Linux内核设计与实现》读书笔记 第一章 Linux内核简介

    一.相关历史 1. Unix内核的特点 简洁:仅提供系统调用并有一个非常明确的设计目的 抽象:几乎所有东西都被当做文件 可移植性:使用C语言编写,使得其在各种硬件体系架构面前都具备令人惊异的移植能力 ...

随机推荐

  1. BehaviorDesigner学习

    行为树: 行为树设计师插件是一个专门为unity设计的AI插件. 学习用!!!插件地址:链接:http://pan.baidu.com/s/1dF2okPN 密码:b43m 通过继承Behavior中 ...

  2. Java开发工程师(Web方向) - 03.数据库开发 - 第4章.事务

    第4章--事务 事务原理与开发 事务Transaction: 什么是事务? 事务是并发控制的基本单位,指作为单个逻辑工作单元执行的一系列操作,且逻辑工作单元需满足ACID特性. i.e. 银行转账:开 ...

  3. lintcode12 带最小值操作的栈

    实现一个带有取最小值min方法的栈,min方法将返回当前栈中的最小值. 你实现的栈将支持push,pop 和 min 操作,所有操作要求都在O(1)时间内完成. 建一个栈helpStack,用来存放从 ...

  4. 157. Unique Characters 【LintCode by java】

    Description Implement an algorithm to determine if a string has all unique characters. Example Given ...

  5. [译] JavaScript核心指南(JavaScript Core) 【转】

    本文转自:http://remember2015.info/blog/?p=141#scope-chain 零.索引 对象(An Object) 原型链(A Prototype Chain) 构造函数 ...

  6. mysql 主从配置笔记

    1.master配置 server-id=1 log-bin=mysql-bin binlog-do-db=testdata binlog-ignore-db=mysql 2.master增加用户 g ...

  7. HDU 3467 Song of the Siren(圆交)

    Problem Description In the unimaginable popular DotA game, a hero Naga Siren, also known as Slithice ...

  8. Mininet实验 多个数据中心的拓扑网络实现

    实验目的 掌握多数据中心网络拓扑的构建 掌握多数据中心数据交换过程 实验原理 主机间发送消息上报给交换机,交换机对收到的报文信息进行分析判断,如果交换机中存在此消息相对应的流表,则交换机直接下发流表, ...

  9. ACM 第五天

    匈牙利算法(二分图匹配) C - Courses Consider a group of N students and P courses. Each student visits zero, one ...

  10. 敏捷冲刺DAY3

    一. 每日会议 1. 照片 2. 昨日完成工作 3. 今日完成工作 登录界面的进一步完善 服务器搭建 建立数据库 下一步任务的规划,展望 4. 工作中遇到的困难 工作中的困难:在进行模糊查询时,由于中 ...