Panda: come ottenere valori univoci dalla colonna dell'indice
È possibile utilizzare i seguenti metodi per ottenere i valori univoci della colonna indice di un DataFrame panda:
Metodo 1: ottieni valori univoci dalla colonna dell’indice
df. index . single ()
Metodo 2: ottieni valori univoci da una colonna specifica in MultiIndex
df. index . unique (' some_column ')
Gli esempi seguenti mostrano come utilizzare questa sintassi nella pratica.
Esempio 1: ottieni valori univoci dalla colonna dell’indice
Supponiamo di avere i seguenti panda DataFrame:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'], ' points ': [18, 22, 19, 14, 14, 11, 20, 28], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4]}, index = [0, 1, 1, 1, 2, 2, 3, 4]) #view DataFrame print (df) team points assists 0 to 18 5 1 B 22 7 1 C 19 7 1 D 14 9 2 E 14 12 2 F 11 9 3 G 20 9 4:28 4
Possiamo utilizzare la seguente sintassi per ottenere i valori univoci della colonna indice del DataFrame:
#get unique values from index column
df. index . single ()
Int64Index([0, 1, 2, 3, 4], dtype='int64')
L’output mostra ciascuno dei valori univoci nella colonna dell’indice.
Possiamo anche usare la funzione len() per contare il numero di valori univoci nella colonna dell’indice:
#count number of unique values in index column
len ( df.index.unique ( ))
5
Possiamo vedere che ci sono 5 valori univoci nella colonna indice del DataFrame.
Esempio 2: ottieni valori univoci da una colonna specifica in MultiIndex
Supponiamo di avere i seguenti panda DataFrame:
import pandas as pd #define index values index_names = pd. MultiIndex . from_tuples ([(' West ',' A '), (' West ', ' A '), (' West ', ' B '), (' East ', ' C '), (' East ', ' C '), (' East ', ' D ')], names=[' Division ', ' Team ']) #define data values data = {' Sales ': [12, 44, 29, 35, 44, 19]} #createDataFrame df = pd. DataFrame (data, index=index_names) #view DataFrame print (df) Sales Division Team West A 12 At 44 B29 East C 35 C 44 D 19
Tieni presente che questo DataFrame ha un multiIndex.
Possiamo utilizzare la seguente sintassi per ottenere i valori univoci della singola colonna Team del multiIndex:
#get unique values from Team column in multiIndex
df. index . single (' Team ')
Index(['A', 'B', 'C', 'D'], dtype='object', name='Team')
L’output mostra i quattro valori univoci della colonna Team del multiIndex: A, B, C e D.
Possiamo utilizzare una sintassi simile per estrarre valori univoci dalla colonna Division del multiIndex:
#get unique values from Division column in multiIndex
df. index . single (' Division ')
Index(['West', 'East'], dtype='object', name='Division')
L’output mostra i due valori univoci della colonna Divisione del multiIndex: Ovest ed Est.
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre funzioni comuni nei panda:
Come convertire l’indice in colonna in Pandas
Come rinominare l’indice in Pandas
Come impostare la colonna come indice in Pandas