R: como usar a função which() com múltiplas condições


Você pode usar os seguintes métodos para usar a função which() com múltiplas condições em R:

Método 1: which() com múltiplas condições usando AND

 new_df <- df[which(df$my_column >= 14 & df$my_column <= 25), ]

Método 2: which() com múltiplas condições usando OR

 new_df <- df[which(df$my_column < 14 | df$my_column > 25), ] 

Os exemplos a seguir mostram como usar cada método na prática com o seguinte quadro de dados:

 #create data frame
df <- data. frame (player=c('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'),
                 points=c(10, 13, 13, 15, 19, 22, 24, 25, 29, 35))

#view data frame
df

   player points
1 to 10
2 B 13
3 C 13
4 D 15
5 E 19
6 F 22
7 G 24
8:25 a.m.
9 I 29
10 D 35

Exemplo 1: which() com múltiplas condições usando AND

O código a seguir mostra como usar a função which() para filtrar o quadro de dados para conter apenas linhas cujo valor na coluna de pontos seja maior ou igual a 14 e menor ou igual a 25:

 #filter for players who score between 14 and 25 points
new_df <- df[which(df$points >= 14 & df$points <= 25), ]

#view results
new_df

  player points
4 D 15
5 E 19
6 F 22
7 G 24
8:25 a.m.

Observe que o quadro de dados é filtrado para conter apenas linhas cujo valor na coluna de pontos é maior ou igual a 14 e menor ou igual a 25.

Observe que o operador & é usado como uma instrução “e” em R.

Exemplo 2: which() com múltiplas condições usando OR

O código a seguir mostra como usar a função which() para filtrar o quadro de dados para conter apenas linhas cujo valor na coluna de pontos seja menor que 14 ou maior que 25:

Caso contrário, atribui o valor “ruim”:

 #filter for players who score less than 14 or greater than 25 points
new_df <- df[which(df$points < 14 | df$points > 25), ]

#view results
new_df

   player points
1 to 10
2 B 13
3 C 13
9 I 29
10 D 35

Observe que o quadro de dados é filtrado para conter apenas linhas cujo valor na coluna de pontos seja menor que 14 ou maior que 25.

Observe que o | O operador é usado como uma instrução “ou” em R.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em R:

Como usar a instrução If com múltiplas condições em R
Como escrever uma instrução If Else aninhada em R
Como escrever um loop For aninhado em R

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *