R: XTS сложные запросы - PullRequest
2 голосов
/ 05 января 2012

Почему я не могу использовать оператор & в объектах xts при запросе дат?Например, они будут работать:

myts[myts$Symbol == "AAPL" & myts$Size > 100, c("Symbol", "Size")]
myts['2011-09-21', c("Symbol", "Size")]

Но это условие И для запроса даты / времени не будет работать:

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

Ответы [ 2 ]

3 голосов
/ 05 января 2012

Другой способ решить эту проблему с помощью двойной индексации:

myts[myts$Symbol == "AAPL"]['2011-09-21']
3 голосов
/ 05 января 2012

"2011-09-21" не является логическим вектором и не может быть приведен к логическому вектору. Подробнее см. ?"&".

Подмножество стиля

xts 'ISO-8601 хорошо, но мы ничего не можем сделать, чтобы изменить поведение .Primitive("&"). Вы можете сделать что-то вроде этого, хотя:

myts[myts$Symbol == "AAPL" & index(myts) == as.POSIXct("2011-09-21"),]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...