Att lägga till nya kolumner i en befintlig DataFrame är en grundläggande uppgift i dataanalys med hjälp av Pandas . Det låter dig berika dina data med ytterligare information och underlätta ytterligare analys och manipulation. Den här artikeln kommer att utforska olika metoder för att lägga till nya kolumner, inklusive enkel tilldelninginsert()>metod, denassign()>metod. Låt oss diskutera att lägga till nya kolumner till Pandas befintliga DataFrame.
Vad är Pandas DataFrame?
A Pandas DataFrame är en tvådimensionell, storleksföränderlig, potentiellt heterogen tabelldatastruktur med märkta axlar (rader och kolumner). Det är en grundläggande datastruktur i Pythons datavetenskapliga ekosystem och ger ett kraftfullt sätt att arbeta med tabelldata.
Här är några nyckelfunktioner i en Pandas DataFrame:
- Datarepresentation: Lagrar data i ett tabellformat med rader och kolumner.
- Heterogena datatyper: Kan innehålla olika datatyper i olika kolumner (t.ex. heltal, flytande, strängar, booleaner).
- Märkning: Varje rad och kolumn har en etikett (index- och kolumnnamn).
- Föränderlig: Tillåter datamanipulation och modifiering.
- Kraftfulla operationer: Tillhandahåller olika funktioner och metoder för dataanalys, manipulation och utforskning.
- Utdragbar: Kan anpassas och utökas med ytterligare funktioner genom bibliotek och användardefinierade funktioner.
Det finns flera sätt att lägga till en ny kolumn till en befintlig DataFrame i Pandas Pytonorm :
- Skapa en exempeldataram
- Genom att använda Dataframe.insert() metod
- Genom att använda Dataframe.assign() metod
- Använder ordbok
- Använder List
- Använder sig av .plats()
- Lägga till fler än en kolumn i befintlig dataram
Skapa en exempeldataram
Här skapar vi en exempeldataram:
Python3
10 procent av 60
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)> |
>
>
Produktion:
Name Height Qualification 0 Jai 5.1 Msc 1 Princi 6.2 MA 2 Gaurav 5.1 Msc 3 Anuj 5.2 Msc>
Observera att längden på din lista bör matcha längden på indexkolumnen, annars kommer den att visa ett fel.
Lägg till en ny kolumn till en befintlig Datframe med DataFrame.insert()
Det ger friheten att lägga till en kolumn på vilken position vi vill och inte bara i slutet. Det ger också olika alternativ för att infoga kolumnvärdena.
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)> |
>
>
Produktion:
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>
Lägga till kolumner i Pandas DataFrame med Dataframe.assign()
Denna metod kommer att skapa en ny dataram med en ny kolumn som läggs till i den gamla dataramen.
Python3
25 c till k
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)> |
exempel på python-programmering
>
>
Produktion:
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>
Pandas Lägg till kolumn till DataFrame med hjälp av en ordbok
Vi kan använda en Python ordbok för att lägga till en ny kolumn i pandas DataFrame. Använd en befintlig kolumn eftersom nyckelvärdena och deras respektive värden blir värdena för en ny kolumn.
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)> |
>
>
Produktion:
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>
Lägga till en ny kolumn till en Pandas DataFrame med hjälp av List
I det här exemplet, Pandas lägger till nya kolumner från listan Adress till en befintlig Pandas DataFrame med hjälp av en ordbok och en lista.
java sträng klass
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)> |
>
>
Produktion:
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>
Lägg till en ny kolumn till en befintlig Pandas DataFrame med Dataframe.loc()
I det här exemplet skapar det en Pandas DataFrame med namnetdf>med kolumnerna Namn, Höjd och Kvalifikation och lägger till en ny kolumn Adress med hjälp avloc>attribut.
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)> |
>
>
sträng till tecken
Produktion:
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>
Lägga till fler än en kolumn i befintlig dataram
I det här exemplet expanderar den en befintlig Pandas DataFramedf>med två nya kolumner, Ålder och Stat, med sina respektive datalistor.
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)> |
>
>
Produktion:
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>
Slutsats
Att förstå hur man lägger till nya kolumner i DataFrames är viktigt för datautforskning och -manipulation i Pandas. Att välja rätt metod beror på det specifika sammanhanget och det önskade resultatet. Genom att behärska dessa tekniker kan du effektivt manipulera, analysera och få värdefulla insikter från dina data.