以xts
范围子集:
library(xts)
X <- xts(1:10, seq(as.Date("2007-01-02"),as.Date("2007-01-11"), 1))
X
[,1]
2007-01-02 1
2007-01-03 2
...
2007-01-10 9
2007-01-11 10
X["2007-1::"]
[,1]
2007-01-02 1
2007-01-03 2
...
2007-01-10 9
2007-01-11 10
X["2007-1-02::"]
[,1]
最后一个命令返回0行。
这是xts
中的错误?还是错误的范围规范?
X["2007-01-02::"]
和X["2007-01-2::"]
都可以X["2007-1::"]
,但X["2007-1-2::"]
也会返回0行。
答案 0 :(得分:0)
这是一个不正确的范围规范。 [.xts
使用.parseISO8601
来解析i
的这些类型的值,?.parseISO8601
的注意部分说明,
没有检查来测试正确构造的ISO格式字符串。 这必须由用户正确输入,以免发生不好的事情。
尽管X["2007-01-2::"]
和X["2007-1::"]
都有效,但根据ISO-8601标准,它们被错误地指定。日期时间的每个组成部分都有固定的宽度,应该是零填充。