将我的日期转换为 POSIXct class
Converting my dates into a POSIXct class
我目前正在研究 adehabitatLT 软件包。
我已将 date_time 列放入字符中并将其命名为 da:
da<-as.character(dat$date_time)
头(大)
[1] "7/08/2015 0:22" "7/08/2015 0:52" "7/08/2015 1:22" "7/08/2015 1:52" "7/08/2015 2:56" "7/08/2015 3:26""=12=]
如您所见,我的 date_time 输入有点非传统,我认为这是错误发生的地方,因为当我创建 class POSIXct:
da<-as.POSIXct(strptime(as.character(dat$date_time),"%d/%m/%y% H:%M:%S") )
它创建了 class 但我的所有值都为 NA:
head(da)
[1] NA NA NA NA NA NA
我的结束 objective 是创建 class ltraj 的对象(但不仅包含日期,还包含时间)。
有什么想法吗?
亲切的问候,
山姆
da<-as.POSIXct(strptime(as.character(locs$Date),"%y%m%d"))
format
应该修改为
as.POSIXct(strptime(da, "%d/%m/%Y %H:%M"))
或者如果月在前,日在后,则将其更改为"%m/%d/%Y %H:%M"
在解析棘手的 date/time 格式时,使用 Garrett Grolemund 和 Hadley Wickham 的 lubridate
包可能会有用。
对于您的情况,只需执行
require(lubridate)
a <- dmy_hm(da)
天或月或小时等的分隔符和位数会自动解析。
我目前正在研究 adehabitatLT 软件包。 我已将 date_time 列放入字符中并将其命名为 da:
da<-as.character(dat$date_time)
头(大)
[1] "7/08/2015 0:22" "7/08/2015 0:52" "7/08/2015 1:22" "7/08/2015 1:52" "7/08/2015 2:56" "7/08/2015 3:26""=12=]
如您所见,我的 date_time 输入有点非传统,我认为这是错误发生的地方,因为当我创建 class POSIXct:
da<-as.POSIXct(strptime(as.character(dat$date_time),"%d/%m/%y% H:%M:%S") )
它创建了 class 但我的所有值都为 NA:
head(da) [1] NA NA NA NA NA NA
我的结束 objective 是创建 class ltraj 的对象(但不仅包含日期,还包含时间)。
有什么想法吗?
亲切的问候,
山姆
da<-as.POSIXct(strptime(as.character(locs$Date),"%y%m%d"))
format
应该修改为
as.POSIXct(strptime(da, "%d/%m/%Y %H:%M"))
或者如果月在前,日在后,则将其更改为"%m/%d/%Y %H:%M"
在解析棘手的 date/time 格式时,使用 Garrett Grolemund 和 Hadley Wickham 的 lubridate
包可能会有用。
对于您的情况,只需执行
require(lubridate)
a <- dmy_hm(da)
天或月或小时等的分隔符和位数会自动解析。