empdata является dataframe, как указано ниже:фильтр dataframe на основе заданного значения
employee <- c('John','Peter','Jolie')
salary <- c(10000, 20000, 30000)
startdate <- as.Date(c('2010-11-1','2010-11-25','2011-10-14'))
empdata <- data.frame(employee, salary, startdate)
Я хочу, чтобы извлечь общее количество строк в empdata где дата находится между [StartDate] и [EndDate]. Например, если StartDate = 2010-11-1 и EndDate = 2010-11-30, то я хочу ответить = 2.
Использование 'data.table' (если приведенные ниже ответы - это то, что вы ищете); 'setDT (empdata) [между (startdate, startDate, endDate), .N]' – akrun
На основании данных, которые вы предоставили, я получил результат как '2'. 'setDT (empdata) [между (startdate, startDate, endDate), .N] # [1] 2', учитывая, что' startDate' и 'endDate' также являются классом дат – akrun
Я не знаю проблемы на вашей стороне , Я использую версию data.table. – akrun