时间序列分析与应用
第一章 时间序列特征
参考书 “Time Series Analysis and Its Applications (4th ed.)” by Robert H. Shumway and Davis S. Stoffer
文章目录
- 环境准备
- 一、均值和自协方差函数
- 二、平稳时间序列
- 三、 经典时序建模方法
- 四、 超前序列和滞后序列
- 五 绘制时序图R示例
环境准备
安装R conda install -c r r-essentials
频道是Navigator和conda查找包的位置。(source)具有相同名称的包可能存在于多个通道上。如果希望从默认通道以外的其他通道安装,则指定要使用哪个通道的一种方法是使用conda install -c channel_name package_name语法。 另请阅读this以获取使用通道的安装过程的描述.
同时使用R和pythonconda install rpy2
安装R package conda install -c r r-dplyr
pip切换源 pip install package -i url
豆瓣 http://pypi.douban.com/simple/
阿里云 http://mirrors.aliyun.com/pypi/simple/
清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/
华中科技大学 http://pypi.hustunique.com/
一、均值和自协方差函数
mean公式
ACVF(Autocovariance function)
ACF(Autocorrelation function)
的性质:
二、平稳时间序列
strict stationary
weak stationary
对于平稳时间序列,acvf可简写作
平稳过程的例子:
(1)white noise
(2)3点的移动平均
非平稳过程的例子:
(1)signal+noise
(2)Random walk with a drift
三、 经典时序建模方法
(1)假定该随机过程可拆分为
确定性的趋势
季节组分
平稳的随机组分
(2)估计模型参数: OLS
(3)检查模型拟合优度:AIC、BIC
(4)预测
可选的方法:Box and Jenkins
四、 超前序列和滞后序列
差分算子:
滞后算子:
五 绘制时序图R示例
画两条TS在一张大图,两行一列两个小图形式排列
plot.ts(time_series_to_be_plotted,
plot.type = “multiple”, nc = 1, main = ts_title)
画两条TS在一张图
plot.ts(time_series_to_be_plotted,
plot.type=“single”, main=ts_title, col=colors_name,
ylab=“amplitudes”)
legend(“bottomright”, time_series_name, col=colors_name, lty=1)
构造一个分段时序
s_i_fun = function(t) ifelse(t<=125, 0, 10*exp(-(t-125)/25)*cos(2*pi*t/4))
omega_fun = function(t) rnorm(length(t))
t_index = 1:250
set.seed(19460614)
x_i = ts(s_i_fun(t_index) + omega_fun(t_index))
R语言中::双冒号的作用
要使用某个包里的函数,通常做法是先加载(library)包,再调用函数。
最新加载的包的namespace会成为最新的enviroment,某些情况下可能影响函数的结果。
package name::functionname的用法
一是可以在需要用某个函数时临时直接加载包,不用事先library。另一点更重要的是尽可能减少library带来的附带作用,这一点在开发R包时影响较大。而这种写法的副作用,是会稍微慢上那么几毫秒,在需要反复循环使用一个函数时对效率有影响,其他时候除了写起来麻烦一点,基本没有显见的副作用。