RStudio:将YYYY-MM-DD分隔为单独的列
我对R还是个新手,我正在努力做一些可能非常简单的事情 我下载了洛杉矶2010-2019年的犯罪数据。共有2114010行数据。现在,在我的全球环境领域,它被称为“df” 我想操纵一个名为“发生”的特定列,它是犯罪发生的日期参考 现在,它被设置为YYYY-MM-DD(即,2010-02-20) 我正试图将这三个部分分开成单独的列。我在这个论坛和StackExchange上搜索了,搜索了,搜索了,搜索了,尝试了,尝试了,尝试了,尝试了,但就是无法让它工作 我尝试过Lubridate,并按照其他答案的说明进行操作,但它根本不会创建新的列(一年、一个月、一天) 下面是数据集中的一点reprex。。。我没有包括所有不同的变量,因为它们不是问题所在 如前所述,我试图将“发生”分为单独的年、月和日列RStudio:将YYYY-MM-DD分隔为单独的列,r,date,tidyverse,lubridate,R,Date,Tidyverse,Lubridate,我对R还是个新手,我正在努力做一些可能非常简单的事情 我下载了洛杉矶2010-2019年的犯罪数据。共有2114010行数据。现在,在我的全球环境领域,它被称为“df” 我想操纵一个名为“发生”的特定列,它是犯罪发生的日期参考 现在,它被设置为YYYY-MM-DD(即,2010-02-20) 我正试图将这三个部分分开成单独的列。我在这个论坛和StackExchange上搜索了,搜索了,搜索了,搜索了,尝试了,尝试了,尝试了,尝试了,但就是无法让它工作 我尝试过Lubridate,并按照其他答案的
> head(df, 10)[c('dr_no','occurred','time','area_name')]
dr_no occurred time area_name
1 1307355 2010-02-20 1350 Newton
2 11401303 2010-09-12 45 Pacific
3 70309629 2010-08-09 1515 Newton
4 90631215 2010-01-05 150 Hollywood
5 100100501 2010-01-02 2100 Central
6 100100506 2010-01-04 1650 Central
7 100100508 2010-01-07 2005 Central
8 100100509 2010-01-08 2100 Central
9 100100510 2010-01-09 230 Central
10 100100511 2010-01-06 2100 Central
我们可以使用
tidyverse
和lubridate
library(dplyr)
library(lubridate)
df <- df %>%
mutate(occurred = as.Date(occurred),
year = year(occurred), month = month(occurred), day = day(occurred))
库(dplyr)
图书馆(lubridate)
df%
突变(发生=截止日期(发生),
年=年(发生),月=月(发生),日=日(发生))
转换(df,年=格式(发生,“%Y”)、月=格式(发生,“%m”)、日=格式(发生,“%d”)
我可以看到进程在控制台中运行,因为它运行了所有数据。它将年、月和日相加。但是,当我查看数据时,新列不在那里。数据中的变量数量也保持不变(28)。您需要将数据分配回对象<代码>df1