Tutorial di Pandas in Python

Tutorial di Pandas in Python
In questa lezione sulla libreria Python Pandas, esamineremo diverse strutture di dati, questo pacchetto Python fornisce funzionalità rapide di elaborazione dei dati che sono efficienti per i dati dinamici e gestire operazioni complesse su dati multidimensionali. In questa lezione, copriremo principalmente:
  • Qual è il pacchetto Pandas
  • Installazione e inizio
  • Caricamento dei dati dai CSV in Pandas DataFrame
  • Cos'è il frame dati e come funziona
  • Frame dati di taglio
  • Operazioni matematiche su dati di dati

Sembra molto da coprire. Iniziamo ora.

Qual è il pacchetto Python Pandas?

Secondo la homepage di Pandas: Panda è una libreria open source, con licenza BSD che fornisce strutture di dati di facile performance e di facile utilizzo e strumenti di analisi dei dati per il linguaggio di programmazione Python.

Una delle cose più belle dei panda è che produce i dati di lettura da formati di dati comuni come CSV, SQL ecc. molto semplice, il che lo rende ugualmente utilizzabile nelle applicazioni di grado di produzione o solo alcune applicazioni demo.

Installa Python Panda

Solo una nota prima di iniziare il processo di installazione, utilizziamo un ambiente virtuale per questa lezione che abbiamo fatto con il seguente comando:

Python -M Virtualenv Panda
Panda di origine/bin/attiva

Una volta che l'ambiente virtuale è attivo, possiamo installare la libreria Pandas all'interno dell'ENV virtuale in modo che gli esempi che creiamo dopo possano essere eseguiti:

PIP Installa panda

Oppure, possiamo usare Conda per installare questo pacchetto con il seguente comando:

Panda di installazione di Conda

Vediamo qualcosa del genere quando eseguiamo il comando sopra:

Una volta completata l'installazione con Conda, saremo in grado di utilizzare il pacchetto nei nostri script Python come:

Importa panda come PD

Cominciamo ora a usare i panda nei nostri script.

Leggendo il file CSV con i dati di dati Pandas

Leggere un file CSV è facile con i panda. Per dimostrazione, abbiamo costruito un piccolo file CSV con i seguenti contenuti:

Nome, rollno, data di ammissione, contatto di emergenza
Shubham, 1,20-05-2012.9988776655
Gagan, 2.20-05-2009.8364517829
Oshima, 3.20-05-2003.5454223344
Vyom, 4,20-05-2009.1223344556
Ankur, 5.20-05-1999.9988776655
Vinod, 6.20-05-1999.9988776655
Vipin, 7.20-05-2002.9988776655
Ronak, 8.20-05-2007.1223344556
DJ, 9.20-05-2014.9988776655
VJ, 10.20-05-2015.9988776655

Salva questo file nella stessa directory dello script Python. Una volta presente il file, aggiungi il seguente frammento di codice in un file Python:

Importa panda come PD
Studenti = PD.read_csv ("Studenti.CSV ")
studenti.Testa()

Una volta eseguito lo snippet di codice sopra, vedremo il seguente output:

La funzione head () nei panda può essere utilizzata per mostrare un campione di dati presenti nel frame dati. Aspetta, dati? Studieremo molto di più sui dati di dati nella prossima sezione, ma comprenderemo solo che un frame dati è una struttura di dati n-dimensionali che può essere utilizzata per contenere e analizzare o operazioni complesse su un insieme di dati.

Possiamo anche vedere quante righe e colonne hanno i dati correnti:

studenti.forma

Una volta eseguito lo snippet di codice sopra, vedremo il seguente output:

Si noti che i panda contano anche il numero di righe a partire da 0.

È possibile ottenere solo colonna in un elenco con i panda. Questo può essere fatto con l'aiuto di indicizzazione nei panda. Diamo un'occhiata a uno snippet di codice corto per lo stesso:

Student_Names = Students ['Name']
Student_Names

Una volta eseguito lo snippet di codice sopra, vedremo il seguente output:

Ma non sembra un elenco, lo fa? Bene, dobbiamo chiamare esplicitamente una funzione per convertire questo oggetto in un elenco:

Student_Names = Student_Names.elencare()
Student_Names

Una volta eseguito lo snippet di codice sopra, vedremo il seguente output:

Solo per informazioni aggiuntive, possiamo assicurarci che ogni elemento nell'elenco sia unico e scegliamo solo elementi non vuoti aggiungendo alcuni semplici controlli come:

Student_Names = Students ['Name'].dropna ().unico().elencare()

Nel nostro caso, l'output non cambierà in quanto l'elenco non contiene già alcun valori di fallo.

Possiamo anche creare un telaio di dati con dati grezzi e passare i nomi delle colonne insieme ad esso, come mostrato nel seguente frammento di codice:

my_data = pd.DataFrame (
[
[1, "Chan"],
[2, "Smith"],
[3, "Winslet"]
",
colonne = ["rango", "cognome"]
)
i miei dati

Una volta eseguito lo snippet di codice sopra, vedremo il seguente output:

Frame dati di taglio

Abbattere i telai dei dati per estrarre solo le righe e le colonne selezionate è una funzionalità importante per mantenere l'attenzione sulle parti richieste di dati che dobbiamo utilizzare. Per questo, Panda ci consente di tagliare il frame dati come e quando necessario con dichiarazioni come:

  • Iloc [: 4 ,:] - Seleziona le prime 4 righe e tutte le colonne per quelle righe.
  • Iloc [:,::] - Viene selezionato il frame dati completo
  • ILoc [5:, 5:] - Righe dalla posizione 5 in poi e colonne dalla posizione 5 in poi.
  • iloc [:, 0] - la prima colonna e tutte le righe per la colonna.
  • Iloc [9 ,:] - La decima riga e tutte le colonne per quella riga.

Nella sezione precedente, abbiamo già visto indicizzazione e taglio con i nomi delle colonne anziché gli indici. È anche possibile mescolare lo affettatura con numeri di indice e nomi di colonne. Diamo un'occhiata a un semplice frammento di codice:

studenti.loc [: 5, 'name']

Una volta eseguito lo snippet di codice sopra, vedremo il seguente output:

È possibile specificare più di una colonna:

studenti.loc [: 5, ['name', 'contatto di emergenza']

Una volta eseguito lo snippet di codice sopra, vedremo il seguente output:

Struttura dei dati in serie nei panda

Proprio come i panda (che è una struttura di dati multidimensionali), una serie è una struttura di dati a una dimensione nei panda. Quando recupiamo una singola colonna da un frame dati, stiamo effettivamente lavorando con una serie:

tipo (studenti ["nome"])

Una volta eseguito lo snippet di codice sopra, vedremo il seguente output:

Possiamo anche costruire la nostra serie, ecco uno snippet di codice per lo stesso:

serie = PD.Serie ([shubham ", 3.7])
serie

Una volta eseguito lo snippet di codice sopra, vedremo il seguente output:

Come chiaro dall'esempio sopra, una serie può contenere più tipi di dati per la stessa colonna.

Filtri booleani in Pandas DataFrame

Una delle cose positive nei panda è come è estrarre i dati da un telaio di dati in base a una condizione. Come estrarre gli studenti solo quando il numero di rotolo è maggiore di 6:

roll_filter = studenti ['rollno']> 6
roll_filter

Una volta eseguito lo snippet di codice sopra, vedremo il seguente output:

Bene, non è quello che ci aspettavamo. Sebbene l'output sia abbastanza esplicito su quali righe abbiano soddisfatto il filtro che abbiamo fornito ma non abbiamo ancora le righe esatte che soddisfacevano quel filtro. Si scopre Possiamo utilizzare i filtri come indici di dati anche:

Studenti [roll_filter]

Una volta eseguito lo snippet di codice sopra, vedremo il seguente output:

È possibile utilizzare più condizioni in un filtro in modo che i dati possano essere filtrati su un filtro conciso, come:

Next_filter = (Students ['rollno']> 6) & (Students ['name']> 's')
Studenti [Next_filter]

Una volta eseguito lo snippet di codice sopra, vedremo il seguente output:

Calcolo mediano

In un frame dati, possiamo anche calcolare molte funzioni matematiche. Faremo un buon esempio di calcolo mediano. La mediana verrà calcolata per una data, non solo per numeri. Diamo un'occhiata a uno snippet di codice corto per lo stesso:

date = studenti ['data di ammissione'].astype ('datetime64 [ns]').quantile (.5)
date

Una volta eseguito lo snippet di codice sopra, vedremo il seguente output:

L'abbiamo raggiunto indicizzando prima la colonna della data che abbiamo e quindi fornendo un tipo di dati alla colonna in modo che i panda possano dedurre correttamente quando applica la funzione quantile per calcolare la data mediana.

Conclusione

In questa lezione, abbiamo esaminato vari aspetti della libreria di elaborazione di Panda che possiamo utilizzare con Python per raccogliere dati da varie fonti in una struttura dati di dati che ci consente di operare sofisticamente su un set di dati. Ci consente inoltre di ottenere un sottoset di dati su cui vogliamo lavorare momentaneamente e fornisce molte operazioni matematiche.

Condividi il tuo feedback sulla lezione su Twitter con @sbmaggarwal e @linuxhint.