R: como encontrar a primeira linha que atende aos critérios


Você pode usar os seguintes métodos para encontrar a primeira linha de um quadro de dados em R que atenda a critérios específicos:

Método 1: Encontre a primeira linha que atende a um critério

 #get first row where value in 'team' column is equal to 'B'
df[which(df$team == ' B ', arr. ind = TRUE )[1],]

Método 2: Encontre a primeira linha que atende a vários critérios

 #get first row where 'points' column > 15 and 'assists' column > 10
df[which(df$points>15 & df$assists>10, arr. ind = TRUE )[1],]

Método 3: Encontre a primeira linha que atende a um dos muitos critérios

 #get first row where 'points' column > 15 or 'assists' column > 10
df[which(df$points>15 | df$assists>10, arr. ind = TRUE )[1],]

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

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'C', 'C', 'C'),
                 points=c(18, 13, 19, 14, 24, 21, 20, 28),
                 assists=c(5, 7, 17, 9, 12, 9, 5, 12))

#view data frame
df

  team points assists
1 to 18 5
2 to 13 7
3 A 19 17
4 B 14 9
5 B 24 12
6 C 21 9
7 C 20 5
8 C 28 12

Exemplo 1: Encontre a primeira linha que atende a um critério

Podemos usar a seguinte sintaxe para encontrar a primeira linha onde o valor na coluna da equipe é igual a “B”:

 #find first row where team is equal to 'B'
df[which(df$team == ' B ', arr. ind = TRUE )[1],] 

  team points assists
4 B 14 9

Podemos ver que a primeira linha onde o valor na coluna da equipe é igual a “B” é a quarta linha no quadro de dados.

Exemplo 2: Encontre a primeira linha que atende a vários critérios

Podemos usar a seguinte sintaxe para encontrar a primeira linha onde o valor na coluna de pontos é maior que 15 e o valor na coluna de assistências é maior que 10:

 #find first row where points > 15 and assists > 10
df[which(df$points>15 & df$assists>10, arr. ind = TRUE )[1],] 

  team points assists
3 A 19 17

Podemos ver que a primeira linha onde o valor na coluna de pontos é maior que 15 e o valor na coluna de assistências é maior que 10 é a terceira linha do quadro de dados.

Exemplo 3: Encontre a primeira linha que atende a um dos muitos critérios

Podemos usar a seguinte sintaxe para encontrar a primeira linha onde o valor na coluna de pontos é maior que 15 ou o valor na coluna de assistências é maior que 10:

 #find first row where points > 15 or assists > 10
df[which(df$points>15 | df$assists>10, arr. ind = TRUE )[1],]

  team points assists
1 to 18 5

Podemos ver que a primeira linha onde o valor na coluna de pontos é maior que 15 ou o valor na coluna de assistências é maior que 10 é a primeira linha do quadro de dados.

Nota : O & e | operadores representam “e” e “ou” em R, respectivamente.

Recursos adicionais

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

Como encontrar o valor máximo em cada linha em R
Como calcular o valor mediano das linhas em R
Como encontrar linhas exclusivas em várias colunas em R

Add a Comment

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