Прежде чем пометить как дубликат, я попробовал несколько других решений, а именно:
R, strptime (),% b, пытаясь преобразовать символ в формат даты
strptime, as.POSIXct и as. Дата возврата неожиданного NA
Но, похоже, ни то, ни другое не работает для меня.
Я пытаюсьпреобразовать формат времени Dec-18
в время POSIXct (в этом случае будет 2018-12-01
).Я пытаюсь использовать strptime
с %b
и %y
, чтобы добиться этого следующим образом:
> strptime("Dec-18", format = "%b-%y")
[1] NA
Но, очевидно, это не работает.Я читаю информацию о «локалях» и подобных вещах, но вышеуказанные решения не сработали для меня.Я попытался сделать следующее:
> Sys.setlocale("LC_TIME", "C")
[1] "C"
> strptime("Dec-18", format = "%b-%y")
[1] NA
Было также предложено использовать эту локаль, Sys.setlocale("LC_TIME", "en_GB.UTF-8")
, но при попытке использовать эту ошибку я получаю сообщение об ошибке:
> Sys.setlocale("LC_TIME", "en_GB.UTF-8")
[1] ""
Warning message:
In Sys.setlocale("LC_TIME", "en_GB.UTF-8") :
OS reports request to set locale to "en_GB.UTF-8" cannot be honored
Вид припотеря для того, что делать здесь.Мои сокращенные месяцы кажутся правильными исходя из этого:
> month.abb
[1] "Jan" "Feb" "Mar" "Apr" "May" "Jun" "Jul" "Aug" "Sep" "Oct" "Nov" "Dec"
Вот версия R, на которой я работаю:
R version 3.5.3 (2019-03-11) -- "Great Truth"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-w64-mingw32/x64 (64-bit)
Заранее спасибо.