Aggiunta di una nuova colonna al DataFrame esistente in Pandas
L'aggiunta di nuove colonne a un DataFrame esistente è un compito fondamentale nell'utilizzo dell'analisi dei dati Panda . Ti consente di arricchire i tuoi dati con informazioni aggiuntive e facilitare ulteriori analisi e manipolazioni. Questo articolo esplorerà vari metodi per aggiungere nuove colonne, incluso l'assegnazione semplice, il file insert()> metodo, il assign()> metodo. Parliamo dell'aggiunta di nuove colonne al DataFrame esistente di Pandas.
Cos'è Panda DataFrame?
UN Panda DataFrame è una struttura di dati tabellari bidimensionali, di dimensioni variabili e potenzialmente eterogenee con assi etichettati (righe e colonne). È una struttura dati fondamentale nell'ecosistema della scienza dei dati Python e fornisce un modo potente per lavorare con i dati tabulari.
Ecco alcune caratteristiche chiave di un Pandas DataFrame:
- Rappresentazione dei dati: Memorizza i dati in un formato tabella con righe e colonne.
- Tipi di dati eterogenei: Può contenere diversi tipi di dati in diverse colonne (ad esempio, numeri interi, numeri in virgola mobile, stringhe, booleani).
- Etichettatura: Ogni riga e colonna ha un'etichetta (nomi di indice e colonna).
- Mutevole: Consente la manipolazione e la modifica dei dati.
- Operazioni potenti: Fornisce varie funzioni e metodi per l'analisi, la manipolazione e l'esplorazione dei dati.
- Estensibile: Può essere personalizzato ed esteso con funzionalità aggiuntive attraverso librerie e funzioni definite dall'utente.
Esistono diversi modi per aggiungere una nuova colonna a un DataFrame esistente in Pandas in Pitone :
- Creazione di un dataframe di esempio
- Usando Dataframe.insert() metodo
- Usando Dataframe.assign() metodo
- Utilizzando il dizionario
- Utilizzo della lista
- Utilizzando .posto()
- Aggiunta di più di una colonna nel dataframe esistente
Creazione di un dataframe di esempio
Qui stiamo creando un Dataframe di esempio:
Python3
import> pandas as pd> data> => {> 'Name'> : [> 'Jai'> ,> 'Princi'> ,> 'Gaurav'> ,> 'Anuj'> ],> > 'Height'> : [> 5.1> ,> 6.2> ,> 5.1> ,> 5.2> ],> > 'Qualification'> : [> 'Msc'> ,> 'MA'> ,> 'Msc'> ,> 'Msc'> ]}> df> => pd.DataFrame(data)> print> (df)> |
Produzione:
Name Height Qualification 0 Jai 5.1 Msc 1 Princi 6.2 MA 2 Gaurav 5.1 Msc 3 Anuj 5.2 Msc
Tieni presente che la lunghezza dell'elenco deve corrispondere alla lunghezza della colonna dell'indice, altrimenti verrà visualizzato un errore.
Aggiungi una nuova colonna a un Datframe esistente utilizzando DataFrame.insert()
Dà la libertà di aggiungere una colonna in qualsiasi posizione desideriamo e non solo alla fine. Fornisce inoltre diverse opzioni per l'inserimento dei valori della colonna.
Python3
import> pandas as pd> # Define a dictionary containing Students data> data> => {> 'Name'> : [> 'Jai'> ,> 'Princi'> ,> 'Gaurav'> ,> 'Anuj'> ],> > 'Height'> : [> 5.1> ,> 6.2> ,> 5.1> ,> 5.2> ],> > 'Qualification'> : [> 'Msc'> ,> 'MA'> ,> 'Msc'> ,> 'Msc'> ]}> # Convert the dictionary into DataFrame> df> => pd.DataFrame(data)> # Using DataFrame.insert() to add a column> df.insert(> 2> ,> 'Age'> , [> 21> ,> 23> ,> 24> ,> 21> ],> True> )> # Observe the result> print> (df)> |
Produzione:
Name Height Age Qualification 0 Jai 5.1 21 Msc 1 Princi 6.2 23 MA 2 Gaurav 5.1 24 Msc 3 Anuj 5.2 21 Msc
Aggiunta di colonne a Pandas DataFrame utilizzando Dataframe.assign()
Questo metodo creerà un nuovo dataframe con una nuova colonna aggiunta al vecchio dataframe.
Python3
import> pandas as pd> # Define a dictionary containing Students data> data> => {> 'Name'> : [> 'Jai'> ,> 'Princi'> ,> 'Gaurav'> ,> 'Anuj'> ],> > 'Height'> : [> 5.1> ,> 6.2> ,> 5.1> ,> 5.2> ],> > 'Qualification'> : [> 'Msc'> ,> 'MA'> ,> 'Msc'> ,> 'Msc'> ]}> # Convert the dictionary into DataFrame> df> => pd.DataFrame(data)> # Using 'Address' as the column name and equating it to the list> df2> => df.assign(address> => [> 'Delhi'> ,> 'Bangalore'> ,> 'Chennai'> ,> 'Patna'> ])> print> (df2)> |
Produzione:
Name Height Qualification address 0 Jai 5.1 Msc Delhi 1 Princi 6.2 MA Bangalore 2 Gaurav 5.1 Msc Chennai 3 Anuj 5.2 Msc Patna
I panda aggiungono colonne a DataFrame utilizzando un dizionario
Possiamo usare a Dizionario Python per aggiungere una nuova colonna in panda DataFrame. Utilizza una colonna esistente come valori chiave e i rispettivi valori saranno i valori per una nuova colonna.
Python3
# Import pandas package> import> pandas as pd> # Define a dictionary containing Students data> data> => {> 'Name'> : [> 'Jai'> ,> 'Princi'> ,> 'Gaurav'> ,> 'Anuj'> ],> > 'Height'> : [> 5.1> ,> 6.2> ,> 5.1> ,> 5.2> ],> > 'Qualification'> : [> 'Msc'> ,> 'MA'> ,> 'Msc'> ,> 'Msc'> ]}> # Define a dictionary with key values of> # an existing column and their respective> # value pairs as the # values for our new column.> address> => {> 'Delhi'> :> 'Jai'> ,> 'Bangalore'> :> 'Princi'> ,> > 'Patna'> :> 'Gaurav'> ,> 'Chennai'> :> 'Anuj'> }> # Convert the dictionary into DataFrame> df> => pd.DataFrame(data)> # Provide 'Address' as the column name> df[> 'Address'> ]> => address> # Observe the output> print> (df)> |
Produzione:
Name Height Qualification Address 0 Jai 5.1 Msc Delhi 1 Princi 6.2 MA Bangalore 2 Gaurav 5.1 Msc Chennai 3 Anuj 5.2 Msc Patna
Aggiunta di una nuova colonna a un DataFrame Pandas utilizzando List
In questo esempio, I panda aggiungono nuove colonne dall'elenco Indirizzamento a un Pandas DataFrame esistente utilizzando un dizionario e un elenco.
Python3
# Declare a list that is to be converted into a column> address> => [> 'Delhi'> ,> 'Bangalore'> ,> 'Chennai'> ,> 'Patna'> ]> # Using 'Address' as the column name> # and equating it to the list> df[> 'Address'> ]> => address> print> (df)> |
Produzione:
Name Height Qualification Address 0 Jai 5.1 Msc Delhi 1 Princi 6.2 MA Bangalore 2 Gaurav 5.1 Msc Chennai 3 Anuj 5.2 Msc Patna
Aggiungi una nuova colonna a un DataFrame Panda esistente utilizzando Dataframe.loc()
In questo esempio, crea un Pandas DataFrame denominato df> con le colonne Nome, Altezza e Qualifica e aggiunge una nuova colonna Indirizzo utilizzando il file loc> attributo.
Python3
import> pandas as pd> data> => {> 'Name'> : [> 'Jai'> ,> 'Princi'> ,> 'Gaurav'> ,> 'Anuj'> ],> > 'Height'> : [> 5.1> ,> 6.2> ,> 5.1> ,> 5.2> ],> > 'Qualification'> : [> 'Msc'> ,> 'MA'> ,> 'Msc'> ,> 'Msc'> ]}> df> => pd.DataFrame(data)> # Create the list of new column values> address> => [> 'Delhi'> ,> 'Bangalore'> ,> 'Chennai'> ,> 'Patna'> ]> # Add the new column using loc> df.loc[:,> 'Address'> ]> => address> print> (df)> |
Produzione:
Name Height Qualification Address 0 Jai 5.1 Msc Delhi 1 Princi 6.2 MA Bangalore 2 Gaurav 5.1 Msc Chennai 3 Anuj 5.2 Msc Patna
Aggiunta di più di una colonna nel dataframe esistente
In questo esempio, espande un Pandas DataFrame esistente df> con due nuove colonne, Età e Stato, utilizzando i rispettivi elenchi di dati.
Python3
import> pandas as pd> data> => {> 'Name'> : [> 'Jai'> ,> 'Princi'> ,> 'Gaurav'> ,> 'Anuj'> ],> > 'Height'> : [> 5.1> ,> 6.2> ,> 5.1> ,> 5.2> ],> > 'Qualification'> : [> 'Msc'> ,> 'MA'> ,> 'Msc'> ,> 'Msc'> ],> > 'Address'> : [> 'Delhi'> ,> 'Bangalore'> ,> 'Chennai'> ,> 'Patna'> ]}> df> => pd.DataFrame(data)> # Define new data for additional columns> age> => [> 22> ,> 25> ,> 23> ,> 24> ]> state> => [> 'NCT'> ,> 'Karnataka'> ,> 'Tamil Nadu'> ,> 'Bihar'> ]> # Add multiple columns using dictionary assignment> new_data> => {> 'Age'> : age,> 'State'> : state }> df> => df.assign(> *> *> new_data)> print> (df)> |
Produzione:
Name Height Qualification Address Age State 0 Jai 5.1 Msc Delhi 22 NCT 1 Princi 6.2 MA Bangalore 25 Karnataka 2 Gaurav 5.1 Msc Chennai 23 Tamil Nadu 3 Anuj 5.2 Msc Patna 24 Bihar
Conclusione
Comprendere come aggiungere nuove colonne ai DataFrames è essenziale per l'esplorazione e la manipolazione dei dati in Panda. La scelta del metodo appropriato dipende dal contesto specifico e dal risultato desiderato. Padroneggiando queste tecniche, puoi manipolare, analizzare e ottenere informazioni preziose dai tuoi dati in modo efficace.