Вы можете использовать встроенный вектор month.abb
для проверки при преобразовании в число, например:
mm <- c("Jan","Dec","jan","Mar","Apr")
sapply(mm,function(x) grep(paste("(?i)",x,sep=""),month.abb))
Jan Dec jan Mar Apr
1 12 1 3 4
Конструкция grep учитывает различия в использовании заглавных букв. Если это не нужно,
match(mm,month.abb)
работает так же хорошо.
Если у вас также есть столбец «День» и «Год», вы можете использовать любую из функций преобразования, используя соответствующие коды (см. Также ?strftime
)
например
mm <- c("Jan","Dec","jan","Mar","Apr")
year <- c(1998,1998,1999,1999,1999)
day <- c(4,10,3,16,25)
dates <- paste(year,mm,day,sep="-")
strptime(dates,format="%Y-%b-%d")
[1] "1998-01-04" "1998-12-10" "1999-01-03" "1999-03-16" "1999-04-25"