Я использую данные временных рядов, которые были получены от разных поставщиков.Это приводит к тому, что длина векторов не совпадает.
Например:
nrow(xts_ret) #2176
nrow(xts_trade) #2177
nrow(xts_trans) #2192
nrow(xts_vola_ret) #2177
У меня есть один дополнительный временной ряд, который содержит только факторы:
> head(xts_sentiment)
[,1]
2019-04-29 "neutral"
2019-04-29 "negative"
2019-04-29 "neutral"
2019-04-29 "neutral"
2019-04-29 "neutral"
2019-04-29 "neutral"
Примечание: все вышеперечисленные векторы отформатированы как объекты "xts".
Основная проблема этого параметра заключается в том, что даты xts_ret, xts_trade, xts_trans, xts_vola_ret и xts_sentiment различаются по переменной.
Я использую версию R 3.5.1 (2018-07-02).
Я нашел команду "merge" для xts, которая делает именно то, что я хочу
data_pool <- merge(xts_ret, xts_trade, xts_trans, xts_vola_ret)
Если одиндата (или значение) отсутствует, она заменяет свою запись в соответствующем векторе на «NA», но перечисляет эту запись в строке с соответствующей датой.
> head(data_pool)
xts_ret xts_trade xts_trans xts_vola_ret
2013-04-28 NA NA 40986 NA
2013-04-29 0.04805079 0 50009 0.00000000
2013-04-30 -0.04805079 0 48795 -0.04516775
2013-05-01 -0.14532060 0 50437 -0.13931143
2013-05-02 -0.12327888 0 57278 -0.12424083
2013-05-03 -0.12792566 0 55859 -0.12770457
Функция «complete.case» позволяетчтобы я исключил все строки, в которых есть запись "NA", чтобы все векторы имели одинаковую длину.
Проблема:
Если я добавлю вектор xts_sentiment в мою переменную пула, он содержиттолько значения «NA», а «complete.cases» удаляет eсама строка набора данных.
Если я взгляну на переменную xts_sentiment, то она сама (см. выше) содержит правильные значения.
Я также попытался установить "as.character (xts_sentiment)) "или" as.string (xts_sentiment) "в команде" слияние ", но это не помогло.
Кто-нибудь знает, как получить значения xts_sentiment в переменную" pool "?
Кстати: я также попробовал data.table, который отображает xts_sentiment со всем его значением, но у меня нет преимущества "уникальных" дат.
Большое спасибо за вашу помощь!