为什么查询日期时不能在xts对象中使用&
运算符?
例如,这些将起作用:
myts[myts$Symbol == "AAPL" & myts$Size > 100, c("Symbol", "Size")]
myts['2011-09-21', c("Symbol", "Size")]
但是,日期/时间查询上的AND条件将不起作用:
myts[myts$Symbol == "AAPL" & '2011-09-21', c("Symbol", "Size")]
Error in `&.default`("2011-09-21", myts$Symbol == "AAPL") :
operations are possible only for numeric, logical or complex types
最佳答案
"2011-09-21"
不是逻辑 vector ,不能强制为逻辑 vector 。有关详细信息,请参见?"&"
。
xts的ISO-8601样式子集很好,但是我们无能为力来改变.Primitive("&")
的行为。您可以执行以下操作:
myts[myts$Symbol == "AAPL" & index(myts) == as.POSIXct("2011-09-21"),]
关于r - R:xts复杂查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8735249/