0

char 形式の日付 (emp2$hiredate) の列を持つデータ セットがあります。日付に変換しているときに、次のエラーが発生します。

> date1 <- emp2$hiredate[2]

> str(date1)
chr "20FEB1981"

> as.POSIXct(date1)
Error in as.POSIXlt.character(x, tz, ...) : 
character string is not in a standard unambiguous format

この問題を解決するにはどうすればよいですか?

4

1 に答える 1

0

R は、文字列内の日付の形式を自動的に認識しません。format文字列の処理方法を指定するには、引数 を使用する必要があります。

as.Date日付の作成に使用できます

as.Date("20FEB1981", "%d%b%Y")
# [1] "1981-02-20"

またはas.POSIXct、format オプションを使用して日時を作成します

as.POSIXct("20FEB1981", format = "%d%b%Y")
# [1] "1981-02-20 PST"
  • %d10 進数形式で月の日を意味します
  • %b月が数値形式ではなく、省略名であることを意味します
  • %Y(大文字) は、年が世紀形式 (4 つの数字すべて) であることを意味します。
于 2014-11-18T03:19:40.897 に答える