R рекомбинация операции split.xts - PullRequest
1 голос
/ 07 июня 2011

У меня есть объект xts (временной ряд цены акций), который состоит из внутридневных данных за несколько лет, то есть данные представляют собой непрерывный поток, который объединяет внутридневные данные для каждого дня в периоде.

Я разделил объект на day (используя split.xts (x, f = "days)), так как мне нужно вычислять различные собственные операции за день с использованием данных за день.

Теперь я хочу повторно объединить конечный продукт обратно в объект xts, аналогичный оригиналу, чтобы я мог импортировать его в другое программное приложение для изучения. Я пробовал различные операции, используя tapply и unlist без успеха. Цени руководство.

Ниже приведен фрагмент объекта XLE1_split, который состоит из 252 объектов xts. Я хочу рекомбинировать такой объект.

> str(XLE1_split)
List of 252
 $ :An ‘xts’ object from 2010-05-28 09:31:00 to 2010-05-28 16:00:00 containing:
  Data: num [1:390, 1:8] 54 54 53.9 53.8 53.8 ...
 - attr(*, "dimnames")=List of 2
  ..$ : NULL
  ..$ : chr [1:8] "XLE.Open" "XLE.High" "XLE.Low" "XLE.Close" ...
  Indexed by objects of class: [POSIXct,POSIXt] TZ: 
  xts Attributes:  
 NULL
> head(XLE1_split)
[[1]]
                    XLE.Open XLE.High XLE.Low XLE.Close XLE.Volume XLE.WAP XLE.hasGaps XLE.Count
2010-05-28 09:31:00    53.95    53.97   53.89     53.97        664  53.935           0       237
2010-05-28 09:32:00    53.97    54.01   53.88     53.89        478  53.955           0       213
2010-05-28 09:33:00    53.90    53.92   53.79     53.82        350  53.854           0       217
2010-05-28 09:34:00    53.81    53.82   53.74     53.81        314  53.782           0       172
2010-05-28 09:35:00    53.82    53.83   53.69     53.69        502  53.762           0       198
2010-05-28 09:36:00    53.69    53.72   53.55     53.56       1366  53.601           0       817
2010-05-28 09:37:00    53.56    53.60   53.51     53.52       1724  53.562           0       742
2010-05-28 09:38:00    53.52    53.52   53.42     53.46        909  53.468           0       509

1 Ответ

1 голос
/ 07 июня 2011

Я считаю, что do.call(rbind,XLE1_split) должен делать то, что вы хотите.

...