Pandas per Python: il metodo iloc[]
Il metodo iloc[]
per DataFrame in Pandas per Python serve a selezionare i dati di un DataFrame in Pandas in base al loro indice. In questo modo è possibile visualizzare righe e colonne specifiche di un DataFrame sulla base della loro posizione.
- Certificato SSL e protezione DDoS
- Velocità, flessibilità e scalabilità
- Dominio e consulente personale
- 1 anno gratis del gestionale di fatturazione elettronica FlexTax
La sintassi di iloc()[]
in Pandas
Il metodo iloc[]
di Pandas accetta valori interi che specificano quali elementi selezionare nel DataFrame. La sintassi generale per DataFrame.iloc()
in Pandas è la seguente:
DataFrame.iloc[selection]
pythonÈ possibile utilizzare iloc[]
in Pandas per assegnare un singolo intero, una lista di interi in Python, un oggetto slice oppure una tupla con indici di riga e colonna.
Applicazione del metodo DataFrame.iloc[]
Il comportamento di iloc[]
in Pandas varia a seconda del valore passato allo strumento. Per spiegare meglio il funzionamento sono utili alcuni esempi pratici.
Selezione di una riga specifica
Per iniziare, creiamo un DataFrame con diverse persone, la loro età e il loro luogo di residenza:
import pandas as pd
# Creazione di un DataFrame di esempio
data = {'Nome': ['Anna', 'Bruno', 'Carlo', 'Davide'],
'Età': [28, 24, 22, 32],
'Città': ['Roma','Milano','Torino','Napoli']}
df = pd.DataFrame(data)
print(df)
pythonIl DataFrame risultante si presenta così:
Nome Età Città
0 Anna 28 Roma
1 Bruno 24 Milano
2 Carlo 22 Torino
3 Davide 32 Napoli
Per mezzo di iloc[]
puoi ora selezionare una riga qualsiasi passando l’indice della riga desiderata:
# Selezione della riga zero
result = df.iloc[0]
print(result)
pythonIn questo esempio viene selezionata la riga zero (0). Il risultato sono i dati per Anna:
Nome Anna
Età 28
Città Roma
Nome: 0, dtype: object
Selezione di riga e colonna specifiche
Se desideri specificare non soltanto l’indice della riga ma anche quello della colonna, non devi far altro che passare questi valori a iloc[]
separandoli con una virgola:
# Selezione della riga zero e della prima colonna
result = df.iloc[0, 1]
print(result)
pythonLa chiamata precedente di iloc[]
in Pandas permette di selezionare la riga zero (0) e la prima colonna (1). Il risultato è quindi l’età di Anna: 28.
Selezione di più righe e colonne tramite slice
Un’ulteriore possibilità è selezionare più righe e colonne contemporaneamente utilizzando le slice di Python. A tal fine ricorda che l’indice dopo i due punti non viene preso in considerazione per la selezione.
# Selezione delle prime due righe e delle prime due colonne
result = df.iloc[0:2, 0:2]
print(result)
pythonIl codice precedente dà questo risultato:
Nome Età
0 Anna 28
1 Bruno 24
In questo caso sono selezionate le prime due righe (0:2
) e le prime due colonne (0:2
). Il DataFrame risultante contiene solo le sezioni corrispondenti.
Selezione di righe e colonne specifiche con le liste
È possibile selezionare più colonne e righe anche utilizzando le liste in Python. Il loro vantaggio sta nella possibilità di selezionare anche aree non contigue del DataFrame:
# Selezione della riga zero e della prima e seconda colonna
result = df.iloc[[0, 2], [1, 2]]
print(result)
pythonIn questo caso sono selezionate la riga zero e la seconda riga ([0, 2]
) nonché la prima e la seconda colonna ([1, 2]
), ottenendo quindi il seguente risultato:
Età Città
0 28 Roma
2 22 Torino