A: come trovare la prima riga che soddisfa i criteri


È possibile utilizzare i seguenti metodi per trovare la prima riga di un frame di dati in R che soddisfa criteri specifici:

Metodo 1: trova la prima riga che soddisfa un criterio

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

Metodo 2: trova la prima riga che soddisfa più criteri

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

Metodo 3: trova la prima riga che soddisfa uno dei tanti criteri

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

I seguenti esempi mostrano come utilizzare ciascun metodo nella pratica con il seguente frame di dati in 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

Esempio 1: trova la prima riga che soddisfa un criterio

Possiamo utilizzare la seguente sintassi per trovare la prima riga in cui il valore nella colonna della squadra è uguale 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

Possiamo vedere che la prima riga in cui il valore nella colonna della squadra è uguale a “B” è la quarta riga nel frame di dati.

Esempio 2: trova la prima riga che soddisfa più criteri

Possiamo utilizzare la seguente sintassi per trovare la prima riga in cui il valore nella colonna dei punti è maggiore di 15 e il valore nella colonna degli assist è maggiore di 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

Possiamo vedere che la prima riga in cui il valore nella colonna dei punti è maggiore di 15 e il valore nella colonna degli assist è maggiore di 10 è la terza riga del frame di dati.

Esempio 3: trova la prima riga che soddisfa uno dei tanti criteri

Possiamo utilizzare la seguente sintassi per trovare la prima riga in cui il valore nella colonna dei punti è maggiore di 15 o il valore nella colonna degli assist è maggiore di 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

Possiamo vedere che la prima riga in cui il valore nella colonna dei punti è maggiore di 15 o il valore nella colonna degli assist è maggiore di 10 è la prima riga del frame di dati.

Nota : & e | gli operatori rappresentano rispettivamente “e” e “o” in R.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni in R:

Come trovare il valore massimo in ogni riga in R
Come calcolare il valore mediano delle righe in R
Come trovare righe univoche su più colonne in R

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *