其他分享
首页 > 其他分享> > 第一周

第一周

作者:互联网

使用R进行时间序列分析

读取外部数据

对于不是表格形式的单变量的数据,用scan()达到将数据按每行的方式读取为向量形式的数据

对于表格形式的多变量数据 :

构造时间序列对象

时间序列是按照时间顺序记录的一系列观测值,因此一个时间序列应包含这些数值以及记录这些数值的时间,这些信息可以存储在一个时间序列对象里。

对于周期规则的观测数据

在R里,ts函数可以用来构造这种时间序列对象
example :
time_series = ts(variable,start = year,frequency = 1)
time_series = ts(variable, start = c(1980,1), frequency = 12), 1980表示年份,1表示第一个周期.

观测周期 frequency
年度 1
季度 4
月度 12
52

使用window函数可以按时间要求截下需要的子时间序列部分并以表格形式呈现 :
cut_of_time_series=window(time_series,start = c(1981,1),end = c(1982,12))

对于非规则的观测数据

可以用包lubridate来构造时间标签,用包xts中的xts函数来构造时间序列对象,下面是一个例子

library(xts)
library(lubridate)
table_data=read.table("filename.txt",header=TRUE)
date = make_date(table_data$year,table_data$mon,table_data$day)#生成的是一列时间字符串向量
data_series = xts(table_data[,4],order.by = date)#生成时间序列变量

可视化

plot函数

plot(data_series,main="Title",ylab="value")
plot(data_series,type="o",main="Australia Wine Sales,1980-1991")#type指定数据点的形状

plot呈现的是空白背景的图

autoplot函数

library(forecast)
library(ggplot2)
autoplot(data_series) + ggtitle("Title") + ylab="value"

autoplot生成灰色背景的有标度线的图

标签:xts,第一周,series,时间,序列,table,data
来源: https://www.cnblogs.com/WilliamHuang2022/p/16670788.html