R 应用后保留日期格式

R 应用后保留日期格式,r,R,我一直在尝试将字符向量转换为日期向量。我有一个叫做“日期”的向量,它是字符。我使用“lubridate”包中的一个函数将其转换为POSIXct格式。当我将每个元素单独转换为POSIXct并使用c()绑定它们时,我得到了所需的输出,即“dates\u final” 当我尝试使用apply函数获得相同的输出时,它会给我一个数值向量。在应用函数时是否有办法保留格式 这只是一个例子。在我的原始数据集中,日期以不同的字符格式显示,我编写了一个自定义函数,用于检测每种类型的日期的格式并对其进行解析,然后输出

我一直在尝试将字符向量转换为日期向量。我有一个叫做“日期”的向量,它是字符。我使用“lubridate”包中的一个函数将其转换为POSIXct格式。当我将每个元素单独转换为POSIXct并使用c()绑定它们时,我得到了所需的输出,即“dates\u final”

当我尝试使用apply函数获得相同的输出时,它会给我一个数值向量。在应用函数时是否有办法保留格式

这只是一个例子。在我的原始数据集中,日期以不同的字符格式显示,我编写了一个自定义函数,用于检测每种类型的日期的格式并对其进行解析,然后输出POSIXct格式。如果整个数据中的日期格式相同,就不会有问题

数据集有数百万条记录。我不可能使用循环

library(lubridate)

dates <- c("01-05-2015 00:10","01-05-2015 00:15",
            "01-05-2015 00:15","01-05-2015 00:42")

dates_actaul_1 <- dmy_hm(dates[1])
dates_actaul_2 <- dmy_hm(dates[2])
dates_actaul_3 <- dmy_hm(dates[3])
dates_actaul_4 <- dmy_hm(dates[4])

dates_final <- c(dates_actaul_1,dates_actaul_2,dates_actaul_3,dates_actaul_4)
dates_final
[1] "2015-05-01 05:40:00 IST" "2015-05-01 05:45:00 IST"
[3] "2015-05-01 05:45:00 IST" "2015-05-01 06:12:00 IST"

dates_applied <- apply(X = data.frame(dates),MARGIN = 1,FUN = dmy_hm)
dates_applied
[1] 1430439000 1430439300 1430439300 1430440920
库(lubridate)

日期如果您需要将
apply
输出更改为POSIXct
as,则此操作无需任何
apply
dmy\u hm(日期)
。POSIXct(dates\u applied,origin='1970-01-01',tz='UTC')
已对帖子进行了一些编辑。问题是apply的输出。您是否尝试过将
转换为.POSIXct
,并在commentsok中指定
原点
,指定原点。现在一切正常。为什么是1970年?如果你不介意的话?我不知道。如果数据集有数百万行,最好使用向量化方法,即
dmy\u hm(dates)
,而不是循环。