Я занимаюсь анализом временных рядов в наборе данных сезонов Red Sox.Мне нужно разбивать набор данных год за годом и делать некоторые вычисления, поэтому я почти уверен, что мне нужно использовать парадигму split, lapply, rbind.Я передаю двоичный столбец xts (выигрыш / проигрыш) в функцию split, пока что все хорошо, он возвращает список правильно разделенных xts по годам.
Затем я запустил laply в этом списке, чтобы вычислитькумулятивное среднее значение выигрыша / проигрыша за каждый год, числовой результат в порядке, но он преобразует объекты xts в числовые векторы, поэтому я теряю свой индекс Date.
Что может быть источником этой проблемы?
спасибо!
head of red_sox_xts $ win.
win
2010-04-04 1
2010-04-06 0
2010-04-07 0
2010-04-09 0
2010-04-10 1
2010-04-11 1
1 - подача в эту функцию для разделения на год.
red_sox_seasons <- split(red_sox_xts$win, f = 'years')
вывод:
[[1]]
win
2010-04-04 1
2010-04-06 0
. .
. .
. .
[[2]]
win
2011-04-01 0
2011-04-02 0
. .
. .
. .
2 - Далее я передаю этот вывод в функцию lapply.
red_sox_ytd <- lapply(red_sox_seasons, cummean)
output: (Здесь начинается странное поведение)
1. A.1
B.0.5
.
.
.
2. A.0
B.0.5
.
.
.
class (red_sox_ytd) являетсяКласс списка (red_sox_ytd [[1]]) является числовым, в то время как он должен быть xts
Это не позволяет мне выполнить следующий шаг правильно:
do.call(rbind, red_sox_ytd)