Advertisement

在 R语言 中生成时序对象

阅读量:

为了在R语言中进行有效的时间序列分析基础是需要将待处理的数据转换为符合要求的时间序列对象。具体来说,在R语言中一个标准的时间序列对象通常包含观测值数据点以及相关的属性信息:初始日期和结束日期代表了数据的时间范围,并且具有明确的时间间隔(如月度间隔)。仅当我们将数据转换为相应的时序类型变量例如ts类别并包含了必要的属性信息之后则能够有效地运用一系列时序方法来进行建模与图形绘制。

一个数值型向量或数据框中的一列可通过ts()函数存储为时序对象:

复制代码
    myseries <- ts(data, start=, end=, frequency=) 
    
    
    
      
      
    
    AI助手

其中myseries代表生成的时间序列对象,data是一个包含观测值的时间序列数据向量。start和end参数(可选)确定了时间序列的时间范围,frequency表示每个时间段内的观测次数(例如frequency=1对应年度数据、frequency=12对应月度数据、frequency=4对应季数据)。

复制代码
    > sales <- c(18, 33, 41, 7, 34, 35, 24, 25, 24, 21, 25, 20, 
     22, 31, 40, 29, 25, 21, 22, 54, 31, 25, 26, 35) 
    > tsales <- ts(sales, start=c(2003, 1), frequency=12)
    > tsales 
     Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec 
    2003 18 33 41 7 34 35 24 25 24 21 25 20 
    2004 22 31 40 29 25 21 22 54 31 25 26 35 
    > plot(tsales) 
    > start(tsales)
    [1] 2003 1 
    > end(tsales) 
    [1] 2004 12 
    > frequency(tsales) 
    [1] 12 
    > tsales.subset <- window(tsales, start=c(2003, 5), end=c(2004, 6))
    > tsales.subset 
     Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec 
    2003 34 35 24 25 24 21 25 20 
    2004 22 31 40 29 25 21
    
    
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
    
    AI助手

ts函数常用于创建时间序列对象➊。生成后我们可以将其以图像形式展示在屏幕上图15-2展示了基于时序数据的图像。我们可以通过第3章所述的方法使图像更为简洁例如使用plot(tsales type=‘0’ pch=19)将线条转换为连续的实心点。生成时序对
象后我们可以通过start、end以及frequency等方法获取其属性➋同时window函数可帮助提取原始数据的时间序列片段。

在这里插入图片描述

全部评论 (0)

还没有任何评论哟~