Panda: come selezionare le colonne in base alla corrispondenza parziale
È possibile utilizzare i seguenti metodi per selezionare le colonne in un DataFrame panda in base a una corrispondenza parziale:
Metodo 1: seleziona le colonne in base alla corrispondenza parziale
#select columns that contain 'team'
df. loc [:, df. columns . str . contains (' team ')]
Metodo 2: seleziona le colonne in base a più corrispondenze parziali
#select columns that contain 'team' or 'rebounds'
df. loc [:, df. columns . str . contains (' team|rebounds ')]
Gli esempi seguenti mostrano come utilizzare ciascun metodo con i seguenti DataFrame panda:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team_name ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'], ' team_points ': [5, 7, 7, 9, 12, 9, 9, 4], ' assists ': [11, 8, 10, 6, 6, 5, 9, 12], ' rebounds ': [6, 7, 7, 6, 10, 12, 10, 9]}) #view DataFrame print (df) team_name team_points assists rebounds 0 A 5 11 6 1 To 7 8 7 2 To 7 10 7 3 to 9 6 6 4 B 12 6 10 5 B 9 5 12 6 B 9 9 10 7 B 4 12 9
Esempio 1: seleziona le colonne in base alla corrispondenza parziale
Il codice seguente mostra come selezionare tutte le colonne nel DataFrame panda che contengono “team” nel nome della colonna:
#select columns that contain 'team'
df_team_cols = df. loc [:, df. columns . str . contains (' team ')]
#view results
print (df_team_cols)
team_name team_points
0 to 5
1 to 7
2 to 7
3 to 9
4 B 12
5 B 9
6 B 9
7 B 4
Tieni presente che vengono restituite entrambe le colonne con “team” nel nome.
Esempio 2: selezionare le colonne in base a più corrispondenze parziali
Il codice seguente mostra come selezionare tutte le colonne nel DataFrame panda che contengono “team” o “rimbalzi” nel nome della colonna:
#select columns that contain 'team' or 'rebounds'
df_team_rebs = df. loc [:, df. columns . str . contains (' team|rebounds ')]
#view results
print (df_team_rebs)
team_name team_points rebounds
0 to 5 6
1 To 7 7
2 to 7 7
3 to 9 6
4 B 12 10
5 B 9 12
6 B 9 10
7 B 4 9
Vengono restituite tutte le colonne con “squadra” o “rimbalzi” nel nome.
Nota : il | l’operatore rappresenta “OR” nei panda.
Sentiti libero di utilizzare tutti gli operatori che desideri per trovare tutte le corrispondenze parziali di stringhe che desideri.
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre operazioni comuni nei panda:
Come selezionare le colonne per nome in Pandas
Come selezionare le colonne per indice in Pandas
Come selezionare le colonne per tipo di dati in Pandas