【问题标题】:R dplyr date filter based on another variable基于另一个变量的 R dplyr 日期过滤器
【发布时间】:2023-03-21 20:21:01
【问题描述】:

我正在尝试根据日期过滤行,直到响应为 “是” 的行,即第一个是或最早的是。任何帮助将不胜感激。

Date <- c("1/2/2018", "1/3/2018", "1/4/2018", "1/5/2018", "1/6/2018", "1/7/2018", "1/8/2018")
Response <- c("No", "No", "No", "Yes", "No", "No", "Yes")

df <- cbind(Date, Response)

【问题讨论】:

    标签: r function filter rstudio


    【解决方案1】:

    假设,您想保留第一个“是”响应,您可以这样做:

    library(dplyr)
    df <- data.frame(Date, Response, stringsAsFactors = FALSE)
    
    df %>%
      filter(cumsum(lag(Response, default = "") == "Yes") < 1)
    
          Date Response
    1 1/2/2018       No
    2 1/3/2018       No
    3 1/4/2018       No
    4 1/5/2018      Yes
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-04
      • 1970-01-01
      • 2021-01-22
      相关资源
      最近更新 更多