% as.character()) -6ren">
gpt4 book ai didi

r - 使用 dplyr 在不更改变量格式的情况下过滤日期

转载 作者:行者123 更新时间:2023-12-02 05:49:01 25 4
gpt4 key购买 nike

我想使用年份列表按日期过滤数据库

years<-c("2014")
yearsdata <- data.frame(animal=c("cow","pig"),
mydate=c(as.Date("2015-01-01"),
as.Date("2014-01-01")))
yearsdata %>%
mutate(mydate =format(mydate, "%Y") %>%
as.character()) %>%
filter(is.null(years) | mydate %in% years)

上面的代码有效,让我可以过滤我的数据集,但它也格式化了日期列。有没有办法在不更改已完成子集数据框中日期列格式的情况下获取我的过滤结果?

最佳答案

如果您准备使用 lubridate 包,您可以这样做:

library("lubridate")

yearsdata %>%
filter(is.null(years) | year(mydate) %in% years)

给出:

#   animal     mydate
# 1 pig 2014-01-01

关于r - 使用 dplyr 在不更改变量格式的情况下过滤日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30199427/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com