Le risorse di dati di grandi dimensioni sono disordinate, soprattutto quando devi estrarle da siti Web, server o altre origini dati.

Le applicazioni basate sull'interfaccia utente come MS Excel sono utili per gestire semplici set di dati, ma possono avere difficoltà quando i dati diventano più grandi. Questo è un buon motivo per passare a Python per eseguire operazioni basate sui dati più complesse.

La libreria di terze parti di Python, Pandas, fa molto per aiutarti a ordinare rapidamente i tuoi set di dati esistenti. Se stai cercando di ordinare i tuoi dati in Python, questo articolo esamina alcuni modi per ottenere questo compito.

Prerequisiti per l'utilizzo di Python per ordinare i dati

Prima di ordinare i tuoi dati in Python, devi prenderti cura di alcuni prerequisiti:

  • Scarica un IDE Python. Puoi usare un IDE compatibile con Python, come Jupyter Notebook, PyCharm e Spyder, tra gli altri. Ognuno di questi è compatibile con tutte le versioni di Python.
  • Installa i panda. Avrai bisogno del pacchetto panda che puoi installare utilizzando PIP o il tuo metodo preferito.
  • instagram viewer
  • Set di dati di esempio. Scarica un set di dati di esempio per esercitarsi con i codici elencati. In alternativa, puoi utilizzare queste procedure sui tuoi dati esclusivi.

Importazione della libreria Pandas in Python

Pandas è una libreria Python di terze parti che puoi utilizzare per gestire Excel, CSV e altri formati di dati.

Per lavorare con un file Excel di esempio, inizia importando la libreria Panda. Successivamente, utilizzerai il procedura di importazione per leggere i dati di Excel in Python.

Per importare la libreria

importare panda come pd

Crea un nuovo DataFrame per caricare i dati di Excel

file = "Esempio - Superstore.xls"
df = pd.read_excel (file)
df.testa()

Dove:

  • df è un oggetto DataFrame che memorizza i dati importati.
  • pd è un alias per la libreria Pandas.
  • leggi_excel è un metodo per leggere il file Excel in Python.
  • file è un percorso del file Excel.
  • testa è un metodo che restituisce le prime cinque righe da DataFrame.

Una volta che il tuo programma ha caricato i dati, puoi utilizzare i molti metodi DataFrame disponibili per ordinarli in vari modi.

1. Ordinamento in base a una singola colonna in un DataFrame

Poiché i tuoi dati avranno molte righe e colonne, spesso vorrai ordinare i dati in base a una o più colonne specifiche.

Python ordina i dati in ordine crescente per impostazione predefinita. Se vuoi modificare l'ordine di ordinamento, devi menzionarlo esplicitamente nel tuo codice.

Ordina per singola colonna (ordine crescente)

df.sort_values ​​(di = "identificativo del cliente")

Ordina per una singola colonna (ordine decrescente)

Impostare il ascendente parametro a Falso per ordinare la colonna in ordine decrescente.

df.sort_values ​​(di = "identificativo del cliente", crescente=Falso)

Dove:

  • df è un oggetto DataFrame contenente i dati.
  • sort_values è un metodo per ordinare in base ai valori dei dati.
  • di è un parametro per definire il nome della colonna.
  • ascendente è un parametro per definire l'ordinamento.

2. Ordinamento di più colonne in un DataFrame

Se le tue esigenze lo richiedono, puoi anche ordinare i tuoi DataFrame in base a più colonne contemporaneamente. In tale scenario, è necessario definire i riferimenti di colonna in un elenco.

Ordina per più colonne crescente

df.sort_values ​​(per = ["identificativo del cliente", "Città"])

Ordina per più colonne decrescenti

Usa la funzione ascendente = falso per ordinare le colonne in ordine decrescente. Ricorda, devi specificare i nomi delle colonne all'interno di un elenco per ordinarle contemporaneamente.

df.sort_values ​​(per = ["identificativo del cliente", "Città"], crescente = falso)

Ordinamento per più colonne in diversi ordini di ordinamento

Con le basi dell'ordinamento, cosa succede quando si desidera ordinare una colonna in ordine decrescente e un'altra in ordine crescente? È necessario modificare leggermente il codice per incorporare questi requisiti.

Ad esempio, per ordinare il Regione e Città colonne rispettivamente in ordine decrescente e crescente:

df.sort_values ​​(per = ["Regione", "Città"], crescente = [Falso, Vero])

La spiegazione di questo codice è semplice; si definisce il nome DataFrame e si passa il file sort_values funzione insieme ai nomi delle colonne in un elenco. Dovresti usare booleano valori per specificare l'ordinamento.

Chiamare la funzione in questo modo significa che Python ordinerà prima in base alla colonna della regione di DataFrame in ordine decrescente. Quindi, le righe con una regione identica verranno ulteriormente ordinate in base alla colonna Città, in ordine crescente.

3. Come ordinare le colonne in un DataFrame per indice

La variabile index è il valore predefinito assegnato a ciascuna riga all'interno di un dataframe Python. Puoi definire i valori dell'indice o lasciare che Python imposti un valore dell'indice da solo.

Per ordinare i dati in base al valore dell'indice, è possibile utilizzare il file indice_ordinamento funzione. Questa funzione esegue l'ordinamento in base all'indice anziché a qualsiasi valore contenuto nel set di dati originale.

df.ordinamento_indice()

Come con sort_values, puoi passare un ascendente parametro per specificare la direzione dell'ordinamento. Ad esempio, passare un valore di Falso per ordinare i dati in ordine decrescente:

df.sort_index (crescente = Falso)

4. Ordinamento di colonne in un DataFrame anziché in righe

Invece di ordinare le righe in un DataFrame, puoi ordinare le sue colonne. Puoi farlo chiamando il metodo sort_index e passandolo a asse parametro con un valore di 1:

df.sort_index (asse=1)

Questo passaggio ordina il DataFrame, in base alle sue colonne, in ordine crescente. Per ordinare le colonne di DataFrame in ordine decrescente, puoi specificare l'ordine di ordinamento nel passaggio di ordinamento.

df.sort_index (asse=1, ascendente = Falso)

5. Modifica del DataFrame durante l'ordinamento

I due metodi di ordinamento funzionano restituendo una copia dei dati originali, nello stato appena ordinato. Per risparmiare spazio di archiviazione o semplicemente per scrivere codice più conciso, puoi invece modificare i dati DataFrame originali. Ogni metodo accetta un a posto parametro booleano che modifica i dati anziché restituire una copia modificata.

df.sort_values ​​(per = ["identificativo del cliente", "Città"], ascendente = Falso, inplace = Vero)

Imparare a ordinare i dati in Python

Python replica molte delle funzioni integrate di Excel con poche righe di codice. Dalle procedure di ordinamento alla creazione di elaborate tabelle Pivot sui tuoi dati, gli dai un nome e puoi farlo in Python.

Se sei ancora nuovo in Python e stai imparando le basi, questi passaggi miglioreranno le tue abilità di programmazione in modo relativamente semplice.