全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
54661 19
2015-12-03

时间序列(使用ts()函数进行时间序列转化)

时间序列对象是一种专为时间序列分析而设计的对象类型,其中包括两个维度,一个是描述指标的数值,还有一维是时间。时间序列对象和一般数值型向量类似,只不过是加了一个时间的描述。在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.data$ProductA,sales.data$ProductB,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轴根据时间序列转化为的矩阵时间表示,纵轴表示指标数据。


附件列表
图片1.png

原图尺寸 12.92 KB

图片1.png

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-12-4 10:05:03
学习了
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-4 11:00:43
学习
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-4 22:11:54
学习了,谢谢,楼主
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-26 15:15:38
现在的问题是,如果是每日的数据怎么转化
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-27 21:05:49
会思恋的风 发表于 2015-12-26 15:15
现在的问题是,如果是每日的数据怎么转化
你可以通过设置frequency和start来调整周期和时序的划分
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群