2020-11-22
阅读量:
918
如何用函数对时间序列进行转换?
问题详述:如何用函数对时间序列进行转换?
解答:
时间序列对象是一种专为时间序列分析而设计的对象类型,其中包括两个维度,一个是描述指标的数值,还有一维是时间。时间序列对象和一般数值型向量类似,只不过是加了一个时间的描述。在R语言中可以使用ts(数据向量,frequency=表示将时间分开的时间间隔,start=c(第一个数据所表示的年,月))。详见下面的的例子。
> sales.data<-read.csv("citysales.csv") #读取处于R工作目录下的一个文件 > sales.data #可以看见读取的数据为一个data.frame数据框 City ProductA ProductB ProductC 1 Seattle 23 11 12 2 London 89 6 56 3 Tokyo 24 7 13 4 Berlin 36 34 44 5 Mumbai 3 78 14 > sales1<-c(sales.dataProductB,sales.data$ProductC) #把数据提取出来形成一个数值型向量,以便于使用ts时使用 > sales1 #可以看到已经转变为了一个数值型向量,共有十五个数据 [1] 23 89 24 36 3 11 6 7 34 78 12 56 13 44 14 > sales.ts<-ts(sales1,frequency=12,start=c(2014,1)) #使用ts函数对数据将刚才数值型向量转化为一个时间序列对象,数值就是指标,然后为每一个数据加上一个日期标签,就完成时间序列的转化。Frequency等于12表示将这15个数据划分到十二个月中,超过的从第一个月开始,以此类推,start表示第一个数据所处的年和月份。 > sales.ts Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec 2014 23 89 24 36 3 11 6 7 34 78 12 56 2015 13 44 14 > plot(sales.ts,type="b",col="red")#画出这个时间序列的图,x轴根据时间序列转化为的矩阵时间表示,纵轴表示指标数据。






评论(0)


暂无数据
推荐帖子
0条评论
0条评论
0条评论