怎样将数据时间序列化

#时间序列和R的结合
data(AirPassengers)
AP <- AirPassengers
class(AP)#判断AP属于什么对象
start(AP);end(AP);frequency(AP)
plot(AP,ylab="Passegers",xlab="shijian")


data(AirPassengers)
AP <- AirPassengers
layout(1:2)#是一个布局函数,可以话几张图
plot(aggregate(AP))
boxplot(AP ~ cycle(AP))
#多行注释快捷键  ctrl+shift+C
#  csv形式的数据导入到R软件里面,只是数据框的形式,并不是时间序列数据
# 我们需要将其时间序列化,就要用ts函数了

www<- "http://www.massey.ac.nz/~pscowper/ts/Maine.dat"
Maine.month <- read.csv("123.csv",header = TRUE)
attach(Maine.month)
class(Maine.month)
# 从1996年开始进行时间序列化
Maine.month.ts <- ts(x1, start = 1996/3/01, freq = 3)
#start=c(1996,1)中1代表1996年第一季度,可以是2代表第二季度,
# 可以使3,代表第三季度,或者是4
ts(1:10, frequency = 4, start = c(1959, 1))

sz<-read.csv("123.csv",header = TRUE)
Ds1<-timeSeries(Ds[,2:10],as.Date(Ds[,1]))


#将数据时间序列化,是需要先将数据加个日期一列,一般第一列是日期,第二列是变量
需要加载timeSeries包,用到下面的函数

timeSeries(sz[,2],as.Date(sz[,1]))


Z1<-sz[,1:2]
class(Z1)
Z1.ts<-timeSeries(Z1[,2],as.Date(Z1[,1]))

plot(Z1.ts,xlab="time",ylab="y1")



还有就是可以将一个图中的两个趋势给分开


 Z.92.96 <- window(Z.ts, start = c(1992, 1), end = c(1996, 1))

Z.96.98 <- window(Z.ts, start = c(1996, 1), end = c(1998, 1))

 layout (1:2)

 plot(Z.92.96, ylab = "Exchange rate in $NZ/pound",
xlab = "Time (years)" )
 plot(Z.96.98, ylab = "Exchange rate in $NZ/pound",
xlab = "Time (years)" )







猜你喜欢

转载自blog.csdn.net/weixin_42099676/article/details/80503992