我有一个包含4列的数据框:
ID Name response datetime
a-1 abc xyz 2020-01-05 00:00:00
a-2 abc xyz 2020-01-06 00:00:00
a-3 abc xyz 2020-01-07 00:00:00
我只想将datetime列转换为dd / mm / yyyy格式:
所需结果:
ID Name response datetime
a-1 abc xyz 05/01/2020
a-2 abc xyz 06/01/2020
a-3 abc xyz 07/01/2020
我已经试过了:
df2<-mutate(df,as.Date(as.POSIXct(df$datetime, format="%d-%m-%Y")))
一种选择是首先使用strptime
函数将时间戳字符串转换为POSIXct 。然后,使用以下命令将该POSIXct转换为所需格式的字符串strftime
:
dt <- "2020-01-05 00:00:00"
x <- strptime(dt, "%Y-%m-%d %H:%M:%S")
out <- strftime(x, "%d/%m/%Y")
out
[1] "05/01/2020"
对于可以在您的实际数据帧上工作的单行代码,请使用:
df$datetime <- strftime(strptime(df$datetime, "%Y-%m-%d %H:%M:%S"), "%d/%m/%Y")
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句