Come selezionare solo colonne numeriche in r utilizzando dplyr


È possibile utilizzare la seguente funzione dal pacchetto dplyr per selezionare solo le colonne numeriche di un frame di dati in R:

 df %>% select(where(is. numeric ))

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

Esempio: seleziona solo colonne numeriche utilizzando dplyr

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', 'B', 'C', 'D', 'E'),
                 dots=c(22, 34, 30, 12, 18),
                 assists=c(7, 9, 9, 12, 14),
                 rebounds=c(5, 10, 10, 8, 8))

#view data frame
df

  team points assists rebounds
1 to 22 7 5
2 B 34 9 10
3 C 30 9 10
4 D 12 12 8
5 E 18 14 8

Possiamo usare la seguente sintassi per selezionare solo colonne numeriche dal frame di dati:

 library (dplyr)

#select only the numeric columns from the data frame
df %>% select(where(is. numeric ))

  points assists rebounds
1 22 7 5
2 34 9 10
3 30 9 10
4 12 12 8
5 18 14 8

Da notare che sono state selezionate solo le tre colonne numeriche: punti , assist e rimbalzi .

Possiamo verificare che queste colonne siano numeriche utilizzando la funzione str() per visualizzare il tipo di dati di ciascuna variabile nel frame di dati:

 #display data type of each variable in data frame
str(df)

'data.frame': 5 obs. of 4 variables:
 $ team: chr "A" "B" "C" "D" ...
 $ points: num 22 34 30 12 18
 $ assists: num 7 9 9 12 14
 $rebounds: num 5 10 10 8 8

Dal risultato si vede che la squadra è un carattere variabile mentre punti , assist e rimbalzi sono tutti numerici.

Correlati: Come controllare il tipo di dati in R (con esempi)

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni utilizzando dplyr:

Come selezionare le colonne per nome usando dplyr
Come selezionare le colonne per indice utilizzando dplyr
Come utilizzare select_if con più condizioni in dplyr

Aggiungi un commento

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