重新编码日期是否大于?

发布于 2025-02-08 09:57:06 字数 278 浏览 2 评论 0原文

我有几个日期,所有发生在2005-06-12之后的事情都应重新编码为2005-06-12

# Example how the data looks like:
data <- data.frame(review_date = as.Date(c("2006-04-11","2001-01-01", "2005-06-12", "2007-07-09")))

,基本上是所需的输出,即2006-04-11和2007-07-09的日期成为2005-06-12。 thnx。

I have a few dates, and all that happened after 2005-06-12 should be recoded to 2005-06-12

# Example how the data looks like:
data <- data.frame(review_date = as.Date(c("2006-04-11","2001-01-01", "2005-06-12", "2007-07-09")))

Basically, desired output is that dates 2006-04-11 and 2007-07-09 become 2005-06-12.
Thnx.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

别把无礼当个性 2025-02-15 09:57:06

我们可以使用pmin

data$review_date <- pmin(data$review_date, "2005-06-12")
data$review_date
[1] "2005-06-12" "2001-01-01" "2005-06-12" "2005-06-12"

We could use pmin

data$review_date <- pmin(data$review_date, "2005-06-12")
data$review_date
[1] "2005-06-12" "2001-01-01" "2005-06-12" "2005-06-12"
故人爱我别走 2025-02-15 09:57:06

我们可以使用if_else

library(dplyr)
data %>% 
  mutate(review_date = if_else(review_date > as.Date("2005-06-12"), as.Date("2005-06-12"), review_date))
  review_date
1  2005-06-12
2  2001-01-01
3  2005-06-12
4  2005-06-12

We could do it with if_else:

library(dplyr)
data %>% 
  mutate(review_date = if_else(review_date > as.Date("2005-06-12"), as.Date("2005-06-12"), review_date))
  review_date
1  2005-06-12
2  2001-01-01
3  2005-06-12
4  2005-06-12
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文