日付ベクトルの年が 2 桁の場合、mdy()
は 00 から 68 までの年を 21 世紀の年に、69 から 99 までの年を 20 世紀の年に変換します。例えば:
library(lubridate)
mdy(c("1/2/54","1/2/68","1/2/69","1/2/99","1/2/04"))
次の出力が得られます。
Multiple format matches with 5 successes: %m/%d/%y, %m/%d/%Y.
Using date format %m/%d/%y.
[1] "2054-01-02 UTC" "2068-01-02 UTC" "1969-01-02 UTC" "1999-01-02 UTC" "2004-01-02 UTC"
間違った日付から 100 を引いて 2054 と 2068 を 1954 と 1968 にすることで、事後にこれを修正できます。解析プロセス自体?
更新: @JoshuaUlrich が私に指摘した後、この質問strptime
を見つけました。これは、私のものと同様の問題を扱っていますが、ベース R を使用しています。
R での日付処理への追加は、日付解析関数内で 2 桁の日付の世紀選択カットオフを処理する何らかの方法であるように思われます。