Мы можем преобразовать в Date
класс и извлечь day
library(lubridate)
day(dmy("12-04-2014"))
#[1] 12
Или с strptime
strptime("12-04-2014", "%d-%m-%Y")$mday
#[1] 12
В функции OP as.Date
должен принимать входной аргумент
as.Date(date_vector,format = "%d-%m-%Y")
вместо этого, он был жестко закодирован с '12 -04-2014', тогда как входные данные 'date_vector' не преобразуются в класс Date
и передаются в format
day <- function(day_vector) {
day_vector <- as.Date(day_vector,format = "%d-%m-%Y")
day <- format(day_vector,"%d")
day
}
day("12-04-2014")
#[1] "12"