R 设置xts索引
构建一个包含两行的xts对象R 设置xts索引,r,xts,R,Xts,构建一个包含两行的xts对象 library(xts) junk<-xts(c(1,2),as.Date(c("2010-01-01","2010-05-01"))) junk > [,1] > 2010-01-01 1 > 2010-05-01 2 库(xts) 垃圾[1] > 2010-01-01 1 > 2010-05-01 2 为什么下面不更改第一行的索引 time(jun
library(xts)
junk<-xts(c(1,2),as.Date(c("2010-01-01","2010-05-01")))
junk
> [,1]
> 2010-01-01 1
> 2010-05-01 2
库(xts)
垃圾[1]
> 2010-01-01 1
> 2010-05-01 2
为什么下面不更改第一行的索引
time(junk[1])<-as.Date("2010-02-01")
junk
> [,1]
> 2010-01-01 1
> 2010-05-01 2
时间(垃圾[1])[,1]
> 2010-01-01 1
> 2010-05-01 2
我知道下面的方法行得通,但为什么上面的方法行不通呢
time(junk)[1]<-as.Date("2010-02-01")
junk
> [,1]
> 2010-02-01 1
> 2010-05-01 2
时间(垃圾)[1][,1]
> 2010-02-01 1
> 2010-05-01 2
谢谢,Bill时间序列中的日期没有用“[”引用。它们更像数据帧中的行名。它们存储在属性列表的“索引”叶中。此外,它们不是日期类,而是日期时间类,因此您需要使用POSIXct:
> attributes(junk)$index[1] <- as.POSIXct("2010-02-01")
> junk
[,1]
2010-02-01 1
2010-05-01 2
>属性(垃圾)$index[1]垃圾
[,1]
2010-02-01 1
2010-05-01 2
编辑:更准确地说,属性$index在内部以秒为单位,但time方法将接受各种赋值类。
time(垃圾[1])对这篇文章的直接回答是,魔法在属性中,除了有一个time@Dwin很好。我看的是时间,而不是有意义的时间。还有,在时间(垃圾)[1]语句中(最后一段代码),是否创建了引用垃圾的新子集对象?并且,该引用强制修改垃圾?@Billtime(垃圾)
返回垃圾的index属性
;我对R关于对象属性的解析/求值规则还不太熟悉,无法确切地告诉您属性是什么。我会记住属性函数。我仍在研究该方法(“time在这种情况下不需要它,因为有一个timeWelcome to stackoverflow,Jeff!
time(junk[1]) <- as.Date("2010-02-01")