Proszę wziąć pod uwagę następujące kwestie
$ R --vanilla
> as.Date("01 Jan 2000")
Error in charToDate(x) :
character string is not in a standard unambiguous format
Ale ta data jest najwyraźniej w standardowym, jednoznacznym formacie. Dlaczego komunikat o błędzie?
Co gorsza, niejednoznaczna data jest najwyraźniej akceptowana bez ostrzeżenia lub błędu, a następnie odczytywana nieprawidłowo!
> as.Date("01/01/2000")
[1] "0001-01-20"
Przeszukałem i znalazłem 28 innych pytań w tagu [R] zawierającym ten komunikat o błędzie. Wszystko z rozwiązaniami i obejściami obejmującymi określenie formatu, iiuc. To pytanie jest inne, ponieważ pytam, gdzie i tak zdefiniowano standardowe, jednoznaczne formaty i czy można je zmienić? Czy wszyscy dostają te wiadomości, czy to tylko ja? Być może jest to związane z lokalizacją?
Innymi słowy, czy istnieje lepsze rozwiązanie niż konieczność określenia formatu?
29 pytań zawierających „[R] standardowy, jednoznaczny format”
> sessionInfo()
R version 2.15.2 (2012-10-26)
Platform: x86_64-w64-mingw32/x64 (64-bit)
locale:
[1] LC_COLLATE=English_United Kingdom.1252
[2] LC_CTYPE=English_United Kingdom.1252
[3] LC_MONETARY=English_United Kingdom.1252
[4] LC_NUMERIC=C
[5] LC_TIME=English_United Kingdom.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
as.Date.character
wejścia, jest testowany tylko dla tych dwóch formatów:"%Y-%m-%d"
i"%Y/%m/%d"
. Jeśli pasuje do jednego z nich, wydaje się, że jest to „jednoznaczne”.