我有一个xts对象,例如
ts=xts(seq(10),seq(Sys.Date(),Sys.Date()+10,length.out=10))
并需要添加一个新点,例如
(Sys.Date()+11, 11)
我试过了
ts[Sys.Date()+11] <- 11
但它不起作用。我宁愿避免创建一个新的xts对象。是否有一种优雅的方式来做到这一点。
答案 0 :(得分:7)
您可以在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