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

Aggiungi un commento

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