时间序列分析与R - 多个输入变量除时间周期

时间:2014-02-06 22:40:10

标签: r time-series

我认为我遇到的问题应该是常见的,但由于某种原因我到目前为止找不到好的答案,所以这是我的问题 - 我正在使用R进行时间序列分析,我的数据看起来像

time_period customer# sales_amt    sales_qty
2013/01      123      $xxx,xxx.xx   xxx
2013/01      345      $yyy,yyy.yy   yyy
2013/02 ....

到目前为止,我可以逐个手动为每个客户做这件事,但是当我有超过100个客户时,不可能这样做,我希望能够一次性完成为了包括所有客户,稍后我还必须包括其他输入变量,比如客户#以外的销售区域,我应该如何包含这些额外的输入变量?

1 个答案:

答案 0 :(得分:0)

我认为这不是一个答案,因为你没有问一个确切的问题。这是一个建议或如何做到这一点。

首先您应该创建一个包含所有变量的data.frame。 然后,要按组处理您的数据,一种方法是使用ddply中的plyr来使用split-apply-bind范例。例如,假设dat是您的data.frame。

## process by customer
ddply(dat,.(customer),
      function(x){ 
         ## here you procces each time customer time series
            xts(x$sales_amt,x$time_period)
       })
## by customer and by region
ddply(dat,.(customer,region),
      function(x){ 
         ## here you procces each time customer time series
            xts(cbind(x$sales_amt,x$sales_qty),x$time_period)
       })

请注意,我使用xts包来处理时间序列对象。