我希望将我的csv文件导入数据框,但我的csv文件中的日期是非标准格式。
第一列中的日期采用以下格式:
2016年9月8日
我的read.csv2函数中的一个参数是指定类,当我将此列指定为日期时,我在执行时收到以下错误:
Error in charToDate(x) :
character string is not in a standard unambiguous format
我猜它不喜欢将日期从因子类转换为日期类。
我已经阅读了一些关于POSIXlt的内容,但我不了解该功能的细节。
如何将类从因子转换为日期?
答案 0 :(得分:2)
将字符转换为日期时,如果不是标准格式,则需要指定格式。您得到的错误是as.Date("08.09.2016")
的结果。但如果你做as.Date("08.09.2016", format = "%m.%d.%Y")
,那就没关系了。
我不确定是否可以将格式传递给read.csv2
以获得正确的日期格式(可能不是)。我只想在此日期列中读取因子,然后自己在此列上进行as.Date(as.character(), format = "%m.%d.%Y")
。
通常我们使用以下格式" dd / mm / yy"如何将日期重新组织为该格式?
使用format(, format = "%d/%m/%y")
。
一个完整的例子:
format(as.Date("08.09.2016", format = "%m.%d.%Y"), format = "%d/%m/%y")
# [1] "09/08/16"