r - 将日期时间列拆分为日期和时间变量

标签 r date datetime split

我有一个格式为“Y-m-d H:M:S”的“日期时间列”“开始”。我想将此列拆分为“日期”和“时间”列。
我尝试了以下方法:

df$Date <- sapply(strsplit(as.character(df$Start), " "), "[", 1)
df$Time <- sapply(strsplit(as.character(df$Start), " "), "[", 2)
但是,如果我使用函数 str(df),这是有效的
# 'data.frame':   18363 obs. of  19 variables:<br>
#  $ Start    : Factor w/ 67 levels "2013-09-01 08:07:41.000",..: 1 1 1 1 1 1 1 1 1 1 ...
# [snip]
所以现在我只需要知道如何从 factor 转换时间和日期。到“时间”和“日期”。

最佳答案

怎么样

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

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

关于r - 将日期时间列拆分为日期和时间变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19292438/

相关文章:

c++ - 如果时刻恰好在冬季结束时(非夏令时),日期/时间转换问题

php - 转换 DateTime 时遇到格式不正确的数值

matlab - datetime matlab 不同时间分辨率

r - 使用条件创建滞后变量并按 id 分组

date - 在 Clojure 中获取昨天的日期

r - 带有四分之一虚拟变量的线性回归

javascript - JS 特定结束日期计算器

c++ - std::chrono::from_stream 可以以微秒精度将字符串转换为 time_point 吗?

r - 取消列出数据框列表

r - 使用 dplyr 中的 mutate_each 函数时选择特定列