#r
Вопрос:
Я пытаюсь выполнить подвыборку в кадре данных :
[ time %bw% '2020-08-06' ]
и функция выдает мне следующую ошибку :
Error in time %bw% "2020-08-06" : interval must contain two elements
это df :
> head(GBPUSD_mt5_ticks)
> A tibble: 6 x 5
> time bid ask price volume
<dttm> <dbl> <dbl> <dbl> <dbl>
> 1 2020-08-05 01:00:00 1.31 1.31 1.31 3
> 2 2020-08-05 01:00:00 1.31 1.31 1.31 3
> 3 2020-08-05 01:00:00 1.31 1.31 1.31 4
> 4 2020-08-05 01:00:00 1.31 1.31 1.31 1
> 5 2020-08-05 01:00:00 1.31 1.31 1.31 3
> 6 2020-08-05 01:00:01 1.31 1.31 1.31 3
Я хотел бы выбрать интервал, уже пробовал с данными по той же структуре, и все прошло хорошо, попытался поставить дату и время после %bw% и та же проблема, может ли кто-нибудь более опытный объяснить мне, пожалуйста?
Если вы можете научить меня, как продавать с интервалом в несколько дней, было бы здорово
с уважением
Комментарии:
1. Можете ли вы указать используемые пакеты
2.@r2evans, у меня бы тоже были такие же мысли, но
%bw%
допускает одну дату, причина ошибки была более простой, см. Ответ ниже3. Спасибо. Я должен оставаться в пределах своего мастерства-плавать 🙂
Ответ №1:
Ошибка может быть воспроизведена:
library(quantTools)
data <- tibble::tibble(time = Sys.time())
data[time %bw% '2020-08-06']
Error in time %bw% "2020-08-06" : interval must contain two elements
Это связано с тем, что time
это функция, а не time
столбец.
Попробуй:
data[data$time %bw% '2020-08-06']
Причина ошибки в этом случае заключается в том, что вы используете a tibble
.
Это будет работать с a data.table
, как в %bw%
документации:
data(ticks)
class(ticks)
#[1] "data.table" "data.frame"
ticks[time %bw% '2020-08-06']
Empty data.table (0 rows and 1 cols): time