我有一个名称为“开始”的日期时间(DD:MM:yyyy HH:mm:ss)列的df,我想将此列拆分为两个名为“日期”和“时间”的列。
现在,我尝试了以下方法:

df$Date <- sapply(strsplit(as.character(df$Start), " "), "[", 1)
df$Time <- sapply(strsplit(as.character(df$Start), " "), "[", 2)


但是,如果我使用函数str(df),则此方法有效(我将其缩短了,因此您几乎可以看到我所关注的变量)。


'data.frame':18363磅。 19个变量中:
$ Start:具有67个级别的因子“ 2013-09-01 08:07:41.000”,..:1 1 1 1 1 1 1 1 1 1 ...
$时间间隔:int 47259 47259 47259 47259 47259 47259 47259 47259 47259 47259 47259 ...
$ DateTime:带18363级别的因子“ 2013-09-01 08:07:41.350”,..:1 2 3 4 5 6 7 8 9 10 ...
$ TimeSensor:编号158489 158489 158490 158490 158491 ...


所以现在我只需要知道如何将时间和日期从“因素”转换为“时间”和“日期”。

如果有人知道解决方案,我将不胜感激!我是R的菜鸟,所以请不要把我烧死。

太感谢了!

最佳答案

怎么样

df$Date <- as.Date(df$Start)

df$Time <- format(df$Start,"%H:%M:%S")

08-19 23:03