I panda creano colonna in base alla condizione

I panda creano colonna in base alla condizione
Python è il linguaggio di codifica più utilizzato nell'arena della scienza dei dati. Un fattore per la sua importanza è molte biblioteche Python per l'analisi dei dati. Queste librerie forniscono tecniche per l'esecuzione di operazioni di dati che sono rapide, modulari ed efficienti. Panda e numpy sono due noti moduli Python per l'analisi e la manipolazione dei dati.

Generare nuove colonne da colonne preesistenti in un set di dati è un'operazione comune nella fase di pre-elaborazione dei dati. È anche un aspetto importante dell'ingegneria delle caratteristiche. In alcune circostanze, nuove colonne sono costruite in risposta alle condizioni sulle colonne esistenti. Panda e numpy offrono una serie di opzioni per questo compito.

In questo post, esamineremo diversi approcci per la costruzione di una nuova colonna a seconda delle condizioni delle colonne esistenti.

Metodi per la creazione di una colonna basata sulle condizioni nei panda

Le tecniche Pandas che useremo in questo articolo sono riportate di seguito:

  • Elenco tecnica di comprensione
  • DataFrame.applicare () funzione
  • DataFrame.funzione mappa ()

In questa lezione, useremo questi metodi e spiegheremo come implementare tutti e tre i modi in Panda.

Esempio 01: Utilizzo della tecnica di comprensione dell'elenco

Il primo approccio che stiamo usando qui per creare una colonna in base alla condizione delle colonne esistenti è "Comprensione dell'elenco". Impareremo questo metodo con un esempio pratico. Iniziamo il codice.

Usiamo lo strumento "Spyder" per l'implementazione e l'esecuzione dei codici di esempio Python in questo articolo. Apriamo un nuovo file Python in "Spyder" per iniziare a scrivere il nostro script Python. Il nostro codice inizia con l'importazione della libreria richiesta, "Panda come PD" qui. Quindi, creiamo un frame dati utilizzando il "PD.Funzione DataFrame () ". Inizializziamo questo frame dati con due colonne "nome" e "età".

La colonna "Nome" memorizza cinque nomi che sono "Elsa", "Emma", "Alaxandar", "Ron" e "Sasha". Mentre la colonna "Age" memorizza la stessa lunghezza dei valori interi che sono "28", 19 "," 26 "," 19 "e" 31 ". Quindi archiviamo questo Frame Data in un oggetto DataFrame Abbiamo creato "Informazioni". Questo telaio di dati è possibile accedere all'oggetto "Informazioni". Nell'ultima riga, il metodo "Print ()" viene invocato per visualizzare il frame dati appena creato.

Per l'esecuzione del codice sopra, premere il pulsante "Esegui file" o premi i tasti "Shift+Enter". L'output visualizzato sul terminale mostra un frame dati con 2 colonne, ciascuna memorizzano 5 valori.

Ora genereremo un'altra colonna in base a una condizione sulla colonna precedentemente creata. Creiamo un'altra colonna "CAN_VOTE" all'interno del telaio di dati "Info" per verificare chi può votare alle elezioni quest'anno. Applichiamo una condizione, utilizzando il metodo di comprensione dell'elenco, se l'età della persona ha 18 anni o superiore per votare. Usiamo una "A" variabile che ha un valore dalla colonna "Age", mentre controlliamo le condizioni in base all'età della persona. La condizione diventa "vera" se l'età è uguale o maggiore di "18", la condizione produce "falsa"; dove "A" è un valore nella colonna "Age" nel frame dati "Info".

Il primo valore della colonna "Age" è memorizzato in "A" che è "28" e la condizione verrà controllata. Poiché "28" è maggiore di "18", la condizione produce "vera" e il primo valore della colonna "età" diventa "vera". Questa operazione continuerà a ripetere fino a quando tutti i valori non sono stati controllati per la condizione specificata. Quindi, utilizziamo il metodo "Print ()" per visualizzare il frame dati con una nuova colonna in base alla condizione.

Quando eseguiamo lo script, visualizza sia il frame dati precedente con due colonne sia il frame dati aggiornato con 3 colonne. Nell'immagine di output in basso, puoi vedere che l'unico 4th Il record ha un valore inferiore a 18, quindi nella colonna "CAN_VOTE" il suo valore è "falso" mentre tutti gli altri record soddisfano la condizione specificata e quindi sono valutati come "veri".

Esempio 02: Utilizzo del Frame di dati Pandas.applicare () funzione

La seconda tecnica di cui discuteremo qui sono i Pandas "DataFrame.Funzione Applica () "per creare una colonna basata sulla condizione.

Per questa dimostrazione verrà utilizzato il frame dati generato nell'esempio precedente. Abbiamo il telaio di dati "Info" che contiene due colonne "nome" e "età", ognuna con 5 record. Dopo aver stampato il telaio di dati "Informazioni", lavoriamo sulla creazione di una nuova colonna in questo frame dati. Qui abbiamo definito una funzione "can_vote" con "età" come parametro. La prima condizione "if" inizia che afferma che se l'età è maggiore e uguale a 18, restituisce un valore "vero". Se la condizione non corrisponde, restituirà "false". Questa funzione controllerà ogni record nella colonna di età e lo abbinerà alla condizione specificata fino a quando non viene confrontato ogni record. Ora, dobbiamo creare una colonna in base alla condizione che è "CAN_VOTE" e assegnargli l'output di chiamata "DataFrame.applicazione () "funzione.

Forniamo la funzione che abbiamo definito sopra "Can_vote" come parametro al ".Applica () "Metodo. Prenderà il valore dalla colonna "Age" e lo controllerà nella funzione "CAN_VOTE" e memorizzerà il risultato in una nuova colonna "CAN_VOTE". Infine, utilizziamo il metodo "Print ()" per stampare il risultato.

L'immagine di output di seguito mostra la colonna appena creata nel frame dati "info" che ha 4 valori "veri" e un valore "falso" in base alla condizione specificata.

Esempio 03: Utilizzo del Frame di dati Pandas.funzione mappa ()

Il nostro ultimo metodo per creare una colonna in base alla condizione è l'utilizzo dei Pandas "DataFrame.funzione mappa () ”.

Abbiamo importato per la prima volta la biblioteca "Panda come PD" nel nostro file Python. Una volta attivate le funzionalità Panda, iniziamo a scrivere il nostro codice principale. Creiamo il nostro telaio di dati utilizzando il "PD.Metodo DataFrame () "e inizializza il Frame Data con due colonne" Data "ed" Evento ". La colonna "Data" memorizza i valori DateTime che sono "15/8/2022", "16/9/2022", "15/10/2022", "15/11/2022" e "16/12/2022 ".

Mentre la colonna "Event" memorizza 5 valori di stringa che sono "cartoni", "giochi", "cartoni", "puzzle" e "giochi". Abbiamo archiviato questo frame dati in un oggetto dati "dati". Chiamare il metodo "Print ()" con l'oggetto dati "Dati" come parametro, visualizzerà il Frame dati appena creato sul terminale.

Quando prendiamo il pulsante "Esegui file", eseguirà il file Python. Il telaio di dati di output è esibito sul terminale che ha due colonne "data" ed "evento".

Ora creiamo un'altra colonna applicando una condizione alle colonne esistenti. Creiamo un dizionario "plist" e impostiamo il prezzo di ogni evento che include "cartoni: 1500", "giochi: 800" e "puzzle: 1200". Quindi, aggiungi una nuova colonna "Price" nel telaio di dati "Data" e assegnalo il valore di mappatura dei record della colonna "evento" con i record del dizionario "plist".

A tale scopo, utilizziamo il "dati di dati.funzione mappa () ”. Il frame dati con il nome della colonna "Data ['Price']” è scritto con ".La funzione mappa () "e il nome del dizionario" plist "sono forniti tra le sue parentesi graffe. Quindi, questa funzione mappe "l'evento" con il "plist", ogni volta che un valore corrisponde si tradurrà nella nuova colonna "Price".

L'immagine di output mostra entrambi i frame dati. Il secondo frame dati ha una nuova colonna aggiunta ad essa che inserisce ogni record in base alla corrispondenza.

Conclusione

La lezione di oggi si basa sulla creazione della colonna in base a alcune condizioni specificate. Ti abbiamo spiegato il concetto di creare una nuova colonna da quelle esistenti. I panda ci forniscono una varietà di metodi per ottenere il risultato desiderato. In questo tutorial abbiamo usato alcune delle funzioni di Panda “DataFrame.Applica () "," DataFrame.mappa () "e" comprensione dell'elenco ". Ogni tecnica è elaborata con un codice di esempio pratico implementato su Python nello strumento "Spyder". Crediamo davvero che la pratica pienamente focalizzata nell'apprendimento del concetto di Panda ti renderà un maestro.