Come selezionare colonne contenenti una stringa specifica in r
È possibile utilizzare le seguenti funzioni dal pacchetto dplyr in R per selezionare colonne contenenti una stringa specifica:
Metodo 1: seleziona le colonne contenenti una stringa specifica
df %>%
select(matches(" string1 "))
Metodo 2: selezionare le colonne contenenti una delle numerose stringhe
df %>%
select(matches(" string1|string2|string3 "))
Gli esempi seguenti mostrano come utilizzare nella pratica ciascuno di questi metodi con il seguente frame di dati in R:
#create data frame df <- data. frame (mavs=c(12, 10, 14, 19, 22, 25, 29), cavs=c(22, 41, 14, 15, 15, 19, 22), hornets=c(8, 8, 12, 14, 15, 13, 12), spurs=c(10, 12, 12, 16, 22, 28, 30), nets=c(9, 7, 10, 22, 28, 23, 25)) #view data frame df mavs cavs hornets spurs nets 1 12 22 8 10 9 2 10 41 8 12 7 3 14 14 12 12 10 4 19 15 14 16 22 5 22 15 15 22 28 6 25 19 13 28 23 7 29 22 12 30 25
Esempio 1: seleziona colonne contenenti una stringa specifica
Il codice seguente mostra come utilizzare la funzionematch() per selezionare solo le colonne che contengono la stringa “avs” da qualche parte nel nome:
library (dplyr)
#select all columns that contain "avs" in the name
df %>%
select(matches(" avs "))
mavs cavs
1 12 22
2 10 41
3 14 14
4 19 15
5 22 15
6 25 19
7 29 22
Vengono restituite solo le colonne con “avs” nel nome.
In questo caso “mavs” e “cavs” sono le uniche colonne restituite.
Esempio 2: selezionare colonne contenenti una delle numerose stringhe
Il codice seguente mostra come utilizzare la funzionematch() per selezionare solo le colonne che contengono “avs” o “ets” da qualche parte nel nome:
library (dplyr)
#select all columns that contain "avs" or "ets" in the name
df %>%
select(matches(" avs|ets "))
mavs cavs hornets nets
1 12 22 8 9
2 10 41 8 7
3 14 14 12 10
4 19 15 14 22
5 22 15 15 28
6 25 19 13 23
7 29 22 12 25
Vengono restituite solo le colonne con “avs” o “ets” nel nome.
Nota che la barra verticale ( | ) è l’operatore ” OR ” in R.
Sentiti libero di concatenare tutti gli operatori “OR” che desideri per selezionare colonne contenenti una delle tante stringhe diverse.
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