r - 如何在日期列中为月、日和年创建单独的列?
问题描述
我有 500 行日期列,第一行是 2018-10-17。我想为日、月和年创建单独的列。日期列的类是因子。
解决方案
您可以str_extract
从库中使用stringr
:
date <- "2018-10-17"
library(stringr)
df <- data.frame(
year = str_extract(date, "^\\d{4}"),
month = str_extract(date, "(?<=-)\\d{2}(?=-)"),
day = str_extract(date, "(?<=-)\\d{2}$")
)
df
year month day
1 2018 10 17
或者,format
根据需要的日期:
df <- data.frame(
year = format(as.Date(date, "%Y-%m-%d"), "%Y"),
month = format(as.Date(date, "%Y-%m-%d"), "%m"),
day = format(as.Date(date, "%Y-%m-%d"), "%d")
)
推荐阅读
- php - 如何在 php 中使用多个正则表达式模式?
- queue - 在流中使用 Source.queues 和 Sink.queues 的 Akka 流应用程序中无法处理项目
- visual-studio-2017 - 更改“添加辅助插入符号”键盘快捷键 [visual studio]
- sql - 一年的前 10 周
- android - 如何使用 Kotlin 获取片段中的当前经度和纬度?
- google-kubernetes-engine - GKE 上的 IP 过滤
- node.js - 如何计算节点js中的工作表数量
- email - 随机电子邮件地址注册到我的网站
- r - 如何使用 geom_text 仅绘制全局最大值?
- google-cloud-functions - 在哪里存储键值对以从 Cloud Function 中进行运行时检索?