A: come raggruppare e contare con la condizione


È possibile utilizzare la seguente sintassi di base per eseguire una condizione di raggruppamento e conteggio con in R:

 library (dplyr)

df %>%
  group_by(var1) %>%
  summarize(count = sum(var2 == ' val '))

Questa particolare sintassi raggruppa le righe del frame di dati in base a var1 e quindi conta il numero di righe in cui var2 è uguale a “val”.

L’esempio seguente mostra come utilizzare questa sintassi nella pratica.

Esempio: raggruppare e contare con una condizione in R

Supponiamo di avere il seguente frame di dati in R che contiene informazioni su vari giocatori di basket:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 pos=c('Gu', 'Fo', 'Fo', 'Fo', 'Gu', 'Gu', 'Fo', 'Fo'),
                 points=c(18, 22, 19, 14, 14, 11, 20, 28))


#view data frame
df

  team pos points
1 A Gu 18
2 A Fo 22
3 A Fo 19
4 A Fo 14
5 B Gu 14
6 B Gu 11
7 B Fo 20
8 B Fo 28

Il codice seguente mostra come raggruppare il frame di dati per variabile del team e contare il numero di righe in cui la variabile pos è uguale a “Gu”:

 library (dplyr)

#group by team and count rows where pos is 'Gu'
df %>%
  group_by(team) %>%
  summarize(count = sum(pos == ' Gu '))

# A tibble: 2 x 2
  team count
   
1 to 1
2 B 2

Dal risultato possiamo vedere:

  • La squadra A ha 1 riga in cui la colonna pos è uguale a “Gu”
  • La squadra B ha 2 righe in cui la colonna pos è uguale a “Gu”

Possiamo usare una sintassi simile per raggruppare e contare con una condizione numerica.

Ad esempio, il codice seguente mostra come raggruppare per variabile della squadra e contare il numero di righe in cui la variabile punti è maggiore di 15:

 library (dplyr)

#group by team and count rows where pos is 'Gu'
df %>%
  group_by(team) %>%
  summarize(count = sum(points > 15 ))

# A tibble: 2 x 2
  team count
   
1 to 3
2 B 2

Dal risultato possiamo vedere:

  • La squadra A ha 3 linee in cui la colonna dei punti è maggiore di 15
  • La squadra B ha 2 linee in cui la colonna dei punti è maggiore di 15

Puoi utilizzare una sintassi simile per raggruppare e contare con qualsiasi condizione specifica desideri.

Risorse addizionali

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

Come contare i valori in una colonna con condizione in R
Come selezionare i primi N valori per gruppo in R

Aggiungi un commento

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