Фильтровать по парным критериям в нескольких столбцах - PullRequest
0 голосов
/ 19 января 2019

У меня есть фрейм данных, который выглядит как показано ниже, и я хотел бы отфильтровать совпадения в двух столбцах.

Ниже я хотел бы отфильтровать EMILY & FEMALE, а также MICHAEL AND MALE,Могу ли я установить какой-то список или фрейм данных и использовать его для фильтрации?

Name,Year,Gender,Count
Emily,2000,Female,25952
Emily,2001,Female,34294
Michael,2000,Male,345697
Michael,2000,Female,4
Michael,2001,Male,185029
Michael,2001,Female,5

Ответы [ 2 ]

0 голосов
/ 19 января 2019

Вы действительно можете определить фрейм данных с интересующими случаями, а затем использовать inner_join:

toFilter <- data.frame(Name = c("Emily", "Michael"), Gender = c("Female", "Male"))
inner_join(df, toFilter)
Joining, by = c("Name", "Gender")
#      Name Year Gender  Count
# 1   Emily 2000 Female  25952
# 2   Emily 2001 Female  34294
# 3 Michael 2000   Male 345697
# 4 Michael 2001   Male 185029
0 голосов
/ 19 января 2019

А как же:

library(tidyverse)

df %>%
filter( (Name == "Emily" & Gender == "Female") | (Name == "Michael" & Gender == "Male") )

Используемые данные:

df <- read_csv("Name,Year,Gender,Count
         Emily,2000,Female,25952
         Emily,2001,Female,34294
         Michael,2000,Male,345697
         Michael,2000,Female,4
         Michael,2001,Male,185029
         Michael,2001,Female,5")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...