Come utilizzare la funzione idxmax() in panda (con esempi)
È possibile utilizzare la funzione pandas.DataFrame.idxmax() per restituire l’indice del valore massimo su un asse specificato in un DataFrame pandas.
Questa funzione utilizza la seguente sintassi:
DataFrame.idxmax(asse=0, skipna=Vero)
Oro:
- asse : l’asse da utilizzare (0 = righe, 1 = colonne). Il valore predefinito è 0.
- skipna : se escludere o meno NA o valori null. L’impostazione predefinita è Vero.
I seguenti esempi mostrano come utilizzare in pratica questa funzione con i seguenti DataFrame panda:
import pandas as pd #createDataFrame df = pd. DataFrame ({'points': [25, 12, 15, 8, 9, 23], 'assists': [5, 7, 7, 9, 12, 9], 'rebounds': [11, 8, 11, 6, 6, 5]}, index=['Andy','Bob', 'Chad', 'Dan', 'Eric', 'Frank']) #view DataFrame df points assists rebounds Andy 25 5 11 Bob 12 7 8 Chad 15 7 11 Dan 8 9 6 Eric 9 12 6 Frank 23 9 5
Esempio 1: trova un indice con un valore massimo per ogni colonna
Il codice seguente mostra come trovare l’indice con il valore massimo per ciascuna colonna:
#find index that has max value for each column df. idxmax (axis= 0 ) Andy points assists Eric rebounds Andy dtype:object
Dal risultato possiamo vedere:
- Il giocatore con il valore più alto nella colonna dei punti è Andy.
- Il giocatore con il valore più alto nella colonna degli assist è Eric.
- Il giocatore con il valore più alto nella colonna dei rimbalzi è Andy.
È importante notare che la funzione idxmax() restituirà la prima occorrenza del valore massimo.
Ad esempio, nota che Andy e Chad hanno entrambi effettuato 11 rimbalzi. Poiché Andy appare per primo nel DataFrame, viene restituito il suo nome.
Esempio 2: trova una colonna con un valore massimo per ogni riga
Il codice seguente mostra come trovare la colonna contenente il valore massimo per ogni riga:
#find column that has max value for each row df. idxmax (axis= 1 ) Andy points Bob stitches Chad points Dan assists Eric assists Frank points dtype:object
Dal risultato possiamo vedere:
- Il valore più alto nella riga denominata “Andy” è nella colonna dei punti .
- Il valore più alto nella riga denominata “Bob” si trova nella colonna dei punti .
- Il valore più alto nella riga denominata “Ciad” è nella colonna dei punti .
- Il valore più alto nella riga denominata “Dan” si trova nella colonna degli assist .
- Il valore più alto nella riga denominata “Eric” si trova nella colonna degli assist .
- Il valore più alto nella riga denominata “Andy” è nella colonna dei punti .
Fare riferimento alla documentazione di panda per una spiegazione completa della funzione idxmax().
Risorse addizionali
Come trovare il valore massimo delle colonne in Pandas
Come calcolare la media delle colonne in Pandas
Come calcolare la somma delle colonne in Pandas