Я не уверен, почему вы ожидали бы my.object[!"2015/2015-03-01"]
для работы. Применение логической функции к символьной строке не имеет смысла.
Независимо, одним из способов добиться того, что вы хотите, является использование аргумента which.i
для [.xts
, чтобы найти целые индексы. Затем вы можете удалить эти наблюдения из вашего объекта xts, используя отрицательный i
в другом вызове [.xts
.
R> require(xts)
R> data(sample_matrix)
R> x <- as.xts(sample_matrix)
R> unwantedObs <- x["2007-01-04/2007-06-28", which.i=TRUE]
R> x[-unwantedObs,]
Open High Low Close
2007-01-02 50.03978 50.11778 49.95041 50.11778
2007-01-03 50.23050 50.42188 50.23050 50.39767
2007-06-29 47.63629 47.77563 47.61733 47.66471
2007-06-30 47.67468 47.94127 47.67468 47.76719
R> # in one line:
R> #x[-x["2007-01-04/2007-06-28", which.i=TRUE],]
Спасибо. Могу я спросить, в чем разница между which.i и какой? – uncool
Как я уже сказал в своем ответе, 'which.i' является аргументом' [.xts'. 'which' является функцией. –
ohh. Почему я спросил, что они ведут себя точно так же (с использованием which.i или который) не имеет значения. – uncool