logo

Legger til ny kolonne i eksisterende DataFrame i Pandas

Å legge til nye kolonner i en eksisterende DataFrame er en grunnleggende oppgave ved bruk av dataanalyse Pandaer . Den lar deg berike dataene dine med tilleggsinformasjon og lette videre analyse og manipulering. Denne artikkelen vil utforske ulike metoder for å legge til nye kolonner, inkludert enkle tildelingerinsert()>metoden, denassign()>metode. La oss diskutere å legge til nye kolonner til Pandas eksisterende DataFrame.

Hva er Pandas DataFrame?

EN Pandas DataFrame er en todimensjonal, størrelsesendbar, potensielt heterogen tabelldatastruktur med merkede akser (rader og kolonner). Det er en grunnleggende datastruktur i Python-datavitenskapens økosystem og gir en kraftig måte å jobbe med tabelldata på.



Her er noen nøkkelfunksjoner til en Pandas DataFrame:

  • Datarepresentasjon: Lagrer data i et tabellformat med rader og kolonner.
  • Heterogene datatyper: Kan inneholde forskjellige datatyper i forskjellige kolonner (f.eks. heltall, flyter, strenger, booleaner).
  • Merking: Hver rad og kolonne har en etikett (indeks- og kolonnenavn).
  • Mulig: Tillater datamanipulering og modifikasjon.
  • Kraftige operasjoner: Gir ulike funksjoner og metoder for dataanalyse, manipulering og utforskning.
  • Utvidbar: Kan tilpasses og utvides med tilleggsfunksjonalitet gjennom biblioteker og brukerdefinerte funksjoner.

Det er flere måter å legge til en ny kolonne til en eksisterende dataramme i Pandas på Python :

  • Opprette en prøvedataramme
  • Ved bruk av Dataframe.insert() metode
  • Ved bruk av Dataframe.assign() metode
  • Bruke ordbok
  • Bruker List
  • Ved hjelp av .plass()
  • Legge til mer enn én kolonne i eksisterende dataramme

Opprette en prøvedataramme

Her lager vi en eksempeldataramme:



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)>

>

>

Produksjon:

   Name Height Qualification     0    Jai 5.1 Msc   1    Princi 6.2 MA   2   Gaurav 5.1 Msc   3   Anuj 5.2 Msc>

Vær oppmerksom på at lengden på listen din bør samsvare med lengden på indekskolonnen, ellers vil den vise en feil.

Legg til en ny kolonne til en eksisterende Datframe ved hjelp av DataFrame.insert()

Det gir friheten til å legge til en kolonne på hvilken som helst posisjon vi liker og ikke bare på slutten. Det gir også forskjellige alternativer for å sette inn kolonneverdiene.

Python3

int parseint




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)>

>

>

Produksjon:

  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>

Legge til kolonner i Pandas DataFrame ved hjelp av Dataframe.assign()

Denne metoden vil opprette en ny dataramme med en ny kolonne lagt til den gamle datarammen.

Python3




første ordens logikk

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)>

>

>

Produksjon:

   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>

Pandaer Legg til kolonne til DataFrame ved hjelp av en ordbok

Vi kan bruke en Python-ordbok for å legge til en ny kolonne i pandas DataFrame. Bruk en eksisterende kolonne da nøkkelverdiene og deres respektive verdier vil være verdiene for en ny kolonne.

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)>

>

>

Produksjon:

  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>

Legge til en ny kolonne til en Pandas DataFrame ved hjelp av List

I dette eksemplet, Pandaer legger til nye kolonner fra listen Adresse til en eksisterende Pandas DataFrame ved hjelp av en ordbok og en liste.

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)>

>

>

Produksjon:

  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>

Legg til en ny kolonne til en eksisterende Pandas DataFrame ved hjelp av Dataframe.loc()

I dette eksemplet oppretter det en Pandas DataFrame med navndf>med kolonnene Navn, Høyde og Kvalifikasjon og legger til en ny kolonne Adresse ved hjelp avloc>Egenskap.

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)>

>

>

Produksjon:

  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>

Legge til mer enn én kolonne i eksisterende dataramme

I dette eksemplet utvider den en eksisterende Pandas DataFramedf>med to nye kolonner, Alder og Stat, ved å bruke sine respektive datalister.

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)>

>

java sorteringsliste

>

Produksjon:

   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>

Konklusjon

Å forstå hvordan du legger til nye kolonner i DataFrames er avgjørende for datautforskning og -manipulering i Pandas. Valg av riktig metode avhenger av den spesifikke konteksten og ønsket resultat. Ved å mestre disse teknikkene kan du effektivt manipulere, analysere og få verdifull innsikt fra dataene dine.