R неверное значение функции даты
Я пытаюсь использовать как.Дата в Р.
Я использую команду:
as.Date("65-05-14", "%y-%m-%d")
Я получил:
"2065-05-14"
Есть ли способ, чтобы вместо этого показать 1965? Или мне нужно перекодировать все в длинный формат - например, добавить 1900 в виде числа?
Спасибо!
1 ответ
Решение
Я не видел этого простого решения в связанных вопросах, поэтому добавляю его и здесь.
В базе R вы можете просто использовать as.POSIXlt
класс, который обеспечивает year
приписывать. Затем вы можете просто сократить 100 лет.
Допустим, это ваш вектор дат
(Date <- c("65-05-14", "15-05-14", "25-05-14", "34-05-14"))
## [1] "65-05-14" "15-05-14" "25-05-14" "34-05-14"
Вы можете просто сделать
Date <- as.POSIXlt(Date, format = "%y-%m-%d")
Date$year <- Date$year - 100L
Date # Alternatively, you could also do `as.Date(Date)`
## [1] "1965-05-14 IDT" "1915-05-14 IDT" "1925-05-14 IDT" "1934-05-14 IDT"