Как добавить новое значение к объекту XTS без создания нового
Вопрос
У меня есть объект XTS, например,
ts=xts(seq(10),seq(Sys.Date(),Sys.Date()+10,length.out=10))
и нужно добавить новую точку, например
(Sys.Date()+11, 11)
я пытался
ts[Sys.Date()+11] <- 11
Но это не работает. Я бы предпочел избегать создания нового объекта XTS. Есть ли элегантный способ сделать это.
Решение
Вы можете использовать c
или же rbind
на xts
объект для добавления строк:
c(ts, xts(11, Sys.Date()+11))
РЕДАКТИРОВАТЬ :
Обратите внимание, что это создает предупреждение mismatched types: converting objects to numeric
. Анкет Чтобы удалить предупреждение, сначала приступите к значению к числовому, например:
c(ts, xts(as.integer(11), Sys.Date()+11))
[,1]
2011-12-01 1
2011-12-02 2
2011-12-03 3
2011-12-04 4
2011-12-05 5
2011-12-06 6
2011-12-07 7
2011-12-08 8
2011-12-09 9
2011-12-11 10
2011-12-12 11
Не связан с StackOverflow