是否可以根据另一列中的日期更新时间的起源日期?我有2列,一列有10行日期,另一列有10行Times,它们附有日期。我最初使用as.POSIX1t
从角色转换了时间,并尝试设置origin=df$Date
,但这不起作用。这个日期刚刚出现在今天的日期。如何将Time的原始日期重置为与Date列相同的日期?或者,是否可以只删除附加到我的时间的日期,然后创建一个附加时间和日期列的新列?
我的数据:
Date Time
1999-05-10 2017-10-25 07:50:00
1999-05-11 2017-10-25 15:30:00
1999-05-12 2017-10-25 18:00:00
1999-05-13 2017-10-25 23:05:00
1999-05-14 2017-10-25 19:30:00
1999-05-15 2017-10-25 19:00:00
1999-05-16 2017-10-25 16:10:00
1999-05-17 2017-10-25 10:00:00
1999-05-18 2017-10-25 02:30:00
1999-05-19 2017-10-25 22:00:00
1999-05-20 2017-10-25 21:50:00
str()
数据:
'data.frame': 11 obs. of 2 variables:
$ Date: Date, format: "1999-05-10" "1999-05-11" "1999-05-12" "1999-05-13" ...
$ Time: POSIXlt, format: "2017-10-25 07:50:00" "2017-10-25 15:30:00" "2017-10-25 18:00:00" "2017-10-25 23:05:00" ...
答案 0 :(得分:1)
假设您的起源日期和时间是字符数据类型:
df1 <- data.frame(date=c("2017-01-05"), time=c("2017-05-05 10:05:06"), stringsAsFactors = F)
timing <- strsplit(df1$time, split=" ")
timing <- sapply(timing, '[[', 2)
df1$time <- timing
df1$datetime <- paste(df1$date, df1$time)
df1$datetime <- as.POSIXct(df1$datetime)
需要查看您的实际数据才能获得更准确的答案。