将变量拆分为两列(尝试colsplit)

时间:2018-03-02 21:41:10

标签: r

我有一个名为Date的变量,其格式为03/08/2015 09:00:00 AM

我想将列拆分为两列,即DateTime。我使用colsplit()命令:

> colsplit(crime$Date,"",names = c("Date","Time"))[1:5,]
  Date                  Time
1    0 3/18/2015 07:44:00 PM
2    0 3/18/2015 11:00:00 PM
3    0 3/18/2015 10:45:00 PM
4    0 3/18/2015 10:30:00 PM
5    0 3/18/2015 09:00:00 PM

但这并不像预期的那样。 Date变量为0,Time变量具有其他值。我该如何纠正这个?

此外,当我尝试将这些变量包含在犯罪数据集中时,列名称为date.datedate.time

2 个答案:

答案 0 :(得分:1)

您还可以使用tidyr::separate来划分字符列。

data %>% separate(date_time, c("date", "time"), sep = " ", remove = TRUE)

答案 1 :(得分:0)

出于您的目的,只需使用substr:

data.frame(Date = substr(crime$Date, 1, 10), Time = substr(crime$Date, 12, 19))

但我必须同意第一条关于不将此更改为两列的评论。