我是R新手!我试图将不规则字符转换为日期,同时减少时间,但继续获得NA,例如:
test = as.POSIXct(strptime("6/2/2013 10:27","10/21/2013 3:04"),format="%m/%d/%Y %H:%M")
答案 0 :(得分:0)
你试过了吗?
R> as.Date(c("6/2/2013", "10/21/2013"), format="%m/%d/%Y")
[1] "2013-06-02" "2013-10-21"
或
R> as.POSIXct(c("6/2/2013", "10/21/2013"), format="%m/%d/%Y")
[1] "2013-06-02 IST" "2013-10-21 IST"
答案 1 :(得分:0)
我不确定strptime应该做什么,但如果你只是用c()替换它,那么你的函数运行正常。它也适用于as.Date
test = as.POSIXct(c("6/2/2013 10:27","10/21/2013 3:04"),format="%m/%d/%Y %H:%M")
test = as.Date(c("6/2/2013 10:27","10/21/2013 3:04"),format="%m/%d/%Y %H:%M")
答案 2 :(得分:0)
如果您开始处理R中的日期,我建议您尝试lubridate
包,这样可以简化这种操作。
require(lubridate)
date_string <- c("6/2/2013", "10/21/2013")
mdy(date_string)
[1] "2013-06-02 UTC" "2013-10-21 UTC"
例如,在此处,在函数mdy
中,m
代表月份,d
代表日期,y
代表年份,所有其他函数都是直观的。< / p>
检查小插图以更好地了解其可能性
vignette("lubridate", package = "lubridate")
答案 3 :(得分:0)
尝试as.Date(“6/2/2013”,格式=“%m /%d /%Y”)。但请注意,即使你的“不规则”角色是“6/2 / 2013abcd”,你也会得到相同的结果