首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用R/dplyr过滤列?

使用R/dplyr过滤列?
EN

Stack Overflow用户
提问于 2021-01-17 08:52:10
回答 1查看 48关注 0票数 0

我有一个简单的Q..。我有一个数据集,我需要通过某些参数进行筛选。我希望在R中找到一个解决方案?

假人案件:

代码语言:javascript
复制
colour  age animal
red     10  dog
yellow  5   cat
pink    6   cat

我想对这个数据集进行分类,例如:

如果颜色是‘红色’或‘粉红色’,而年龄是<7岁,动物是‘猫’,那么=第1类,其他类别2。

产出将是:

代码语言:javascript
复制
colour  age animal category
red     10  dog      2
yellow  5   cat      2
pink    6   cat      1

有办法操纵dplyr来实现这一点吗?我是临床医生,不是生物信息专家,所以别紧张!

EN

回答 1

Stack Overflow用户

发布于 2021-01-17 11:00:42

您还可以将其操作为:

代码语言:javascript
复制
df$category <- with(df,!(colour %in% c('red', 'pink') & age < 7 & animal == 'cat')) + 1
df

#  colour age animal category
#1    red  10    dog        2
#2 yellow   5    cat        2
#3   pink   6    cat        1

dplyr中:

代码语言:javascript
复制
df %>%
  mutate(category = as.integer(!(colour %in% c('red', 'pink') & 
                                 age < 7 & animal == 'cat')) + 1)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65758779

复制
相关文章

相似问题

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