Naujų stulpelių įtraukimas į esamą DataFrame yra pagrindinė duomenų analizės užduotis Pandos . Tai leidžia praturtinti duomenis papildoma informacija ir palengvinti tolesnę analizę bei manipuliavimą. Šiame straipsnyje bus nagrinėjami įvairūs naujų stulpelių pridėjimo būdai, įskaitant paprastą priskyrimąinsert()>metodas,assign()>metodas. Aptarkime naujų stulpelių įtraukimą į esamą Pandas DataFrame.
Kas yra Pandas DataFrame?
A Pandas DataFrame yra dvimatė, keičiamo dydžio, potencialiai nevienalytė lentelių duomenų struktūra su pažymėtomis ašimis (eilelėmis ir stulpeliais). Tai pagrindinė duomenų struktūra Python duomenų mokslo ekosistemoje ir yra galingas būdas dirbti su lentelės duomenimis.
Štai keletas pagrindinių Pandas DataFrame funkcijų:
- Duomenų pateikimas: Saugo duomenis lentelės formatu su eilutėmis ir stulpeliais.
- Heterogeniniai duomenų tipai: Skirtinguose stulpeliuose gali būti skirtingų tipų duomenys (pvz., sveikieji skaičiai, plūdės, eilutės, loginiai).
- Ženklinimas: Kiekviena eilutė ir stulpelis turi etiketę (rodyklės ir stulpelių pavadinimus).
- Keičiamas: Leidžia manipuliuoti ir keisti duomenis.
- Galingos operacijos: Teikia įvairias funkcijas ir metodus duomenų analizei, manipuliavimui ir tyrinėjimui.
- Išplečiamas: Galima tinkinti ir išplėsti papildomomis funkcijomis per bibliotekas ir vartotojo nustatytas funkcijas.
Yra keletas būdų, kaip pridėti naują stulpelį prie esamo duomenų rėmelio Pandas in Python :
- Pavyzdinio duomenų rėmelio kūrimas
- Naudojant Dataframe.insert() metodas
- Naudojant Dataframe.assign() metodas
- Naudojant žodyną
- Sąrašo naudojimas
- Naudojant .place()
- Daugiau nei vieno stulpelio įtraukimas į esamą duomenų rėmelį
Pavyzdinio duomenų rėmelio kūrimas
Čia kuriame duomenų rėmelio pavyzdį:
Python3
transformuoti eilutę į int
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)> |
>
>
Išvestis:
Name Height Qualification 0 Jai 5.1 Msc 1 Princi 6.2 MA 2 Gaurav 5.1 Msc 3 Anuj 5.2 Msc>
Atminkite, kad sąrašo ilgis turi atitikti indekso stulpelio ilgį, kitaip bus rodoma klaida.
Pridėkite naują stulpelį prie esamo duomenų rėmelio naudodami DataFrame.insert()
Tai suteikia laisvę pridėti stulpelį bet kurioje mums patinkančioje vietoje, o ne tik pabaigoje. Taip pat pateikiamos įvairios stulpelių reikšmių įterpimo parinktys.
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)> |
>
>
Išvestis:
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>
Stulpelių įtraukimas į Pandas DataFrame naudojant Dataframe.assign()
Šis metodas sukurs naują duomenų rėmelį su nauju stulpeliu, pridėtu prie senojo duomenų rėmelio.
Python3
cinamonas vs mate
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)> |
kaip vykdyti scenarijų
>
>
Išvestis:
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>
„Pandos“ pridėkite stulpelį prie „DataFrame“ naudodami žodyną
Galime naudoti a Python žodynas norėdami įtraukti naują stulpelį į pandas DataFrame. Naudokite esamą stulpelį kaip pagrindines reikšmes, o atitinkamos jų reikšmės bus naujo stulpelio reikšmės.
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)> |
>
>
Išvestis:
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>
Naujo stulpelio įtraukimas į Pandas DataFrame naudojant sąrašą
Šiame pavyzdyje Pandos prideda naujų stulpelių iš sąrašo Adresas į esamą Pandas DataFrame naudojant žodyną ir sąrašą.
įvesti eilutę Java
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)> |
>
>
Išvestis:
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>
Pridėkite naują stulpelį prie esamo Pandas DataFrame naudodami Dataframe.loc()
Šiame pavyzdyje jis sukuria Pandas DataFrame pavadinimudf>su stulpeliais Vardas, ūgis ir Kvalifikacija ir prideda naują stulpelį Adresas naudodamiloc>atributas.
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)> |
>
>
vardas
Išvestis:
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>
Daugiau nei vieno stulpelio įtraukimas į esamą duomenų rėmelį
Šiame pavyzdyje jis išplečia esamą Pandas DataFramedf>su dviem naujais stulpeliais Amžius ir Būsena, naudojant atitinkamus duomenų sąrašus.
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)> |
>
>
Išvestis:
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>
Išvada
Supratimas, kaip prie „DataFrames“ pridėti naujų stulpelių, yra būtinas norint naršyti ir manipuliuoti „Panda“ duomenimis. Tinkamo metodo pasirinkimas priklauso nuo konkretaus konteksto ir norimo rezultato. Įvaldę šiuos metodus, galite efektyviai manipuliuoti, analizuoti ir gauti vertingų įžvalgų iš savo duomenų.