首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R dplyr:对不同的组使用不同的条件进行过滤

R dplyr:对不同的组使用不同的条件进行过滤
EN

Stack Overflow用户
提问于 2019-09-24 17:00:53
回答 1查看 27关注 0票数 0

我有一个由ID和year标识的面板数据集。我需要通过变量“小时”来过滤数据集,但是对于不同的年份,我想对小时施加不同的标准。

这就是我正在尝试做的事情,但由于if与向量不兼容,因此以下代码不起作用

代码语言:javascript
复制
data <- data %>%
           filter(
             if(year == 2014 | year == 2016){
               (hours >= 35 & hours <= 105) 
             }else if (year == 2012){
               (hours >= 30 & hours <= 100) 
             }
           )

一个类似的问题是如何只对某些年份进行过滤,而忽略其余年份。

EN

回答 1

Stack Overflow用户

发布于 2019-09-24 17:12:52

代码语言:javascript
复制
data %>%
  filter((year %in% c(2014, 2016) & between(hours, 35, 105)) | (year == 2012 & between(hours, 30, 100)))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58076652

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档