0

我有一个数据集,其中有一列日期 (emp2$hiredate) 是 char 格式。将其转换为日期时,出现以下错误:

> 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格式选项来创建日期时间

as.POSIXct("20FEB1981", format = "%d%b%Y")
# [1] "1981-02-20 PST"
  • %d表示十进制形式的月份中的日期
  • %b表示月份不是数字形式,而是缩写名称
  • %Y(大写)表示年份采用世纪形式(所有四个数字)
于 2014-11-18T03:19:40.897 回答