Вы используете неправильный синтаксис, вы, вероятно, имели в виду:
dt$time <- ifelse(dt$date > '2019-01-01',1,0)
Даже если приведенная выше работа не даст вам правильный вывод всегда, потому что вы сравниваете дату со строкой здесь (отметьте class('2019-01-01')
). Вероятно, вам следует использовать
dt$time <- ifelse(dt$date > as.Date('2019-01-01'), 1, 0)
, но вам не нужно ifelse
здесь, вы можете преобразовать логические значения после сравнения в целочисленные значения.
dt$time <- as.integer(dt$date > as.Date('2019-01-01'))
#OR
#dt$time <- +(dt$date > as.Date('2019-01-01'))