Kuinka yhdistää kaksi tai useampi Pandas-tietokehys?

Kahden tai useamman datakehyksen ketjuttaminen voidaan tehdä käyttämällä pandas.concat() -menetelmää. concat() Pandasissa toimii yhdistämällä tietokehyksiä riveille tai sarakkeille. Voimme yhdistää kaksi tai useampi tietokehys joko rivejä (akseli=0) tai sarakkeita pitkin (akseli=1). Tässä artikkelissa näemme, kuinka voimme ketjuttaa tai lisätä kaksi tai useampia Pandas Dataframe .

Liitä kaksi tai useampi Panda DataFrames Python

Datakehysten ketjuttamiseen pysty- tai vaakasuunnassa on useita menetelmiä. Tässä keskustellaan joistakin yleisesti käytetyistä menetelmistä datakehysten ketjuttamiseen pysty- tai vaakasuunnassa. ne ovat seuraavat.

  • Kahden Pandan datakehyksen ketjuttaminen
  • Using> pd.merge()> ketjuttaa kaksi datakehystä
  • pd.DataFrame.reindex()> pystysuoraan ketjutukseen indeksikohdistuksen kanssa
  • Using pd.concat()> kanssa sort=False> for Faster Concatenation
  • Pandas.concat():n käyttäminen kahden datakehyksen yhdistämiseen
  • Liitä useita tietokehystä käyttämällä pandas.concat()
  • Käyttämällä pandas.join() yhdistääksesi kaksi datakehystä
  • Käyttämällä DataFrame.append() ketjuttaa kaksi datakehystä

Luo mallitietokehys

Luo kaksi tietokehystä, jotka ketjutamme nyt. Käytämme datakehysten luomiseen Nuhjuinen ja pandat.

Python 3




import> pandas as pd> import> numpy as np> df> => pd.DataFrame({> 'Courses'> : [> 'GFG'> ,> 'JS'> ,> 'Python'> ,> 'Numpy'> ],> > 'Fee'> : [> 20000> ,> 25000> ,> 22000> ,> 24000> ]})> df1> => pd.DataFrame({> 'Courses'> : [> 'Matplotlib'> ,> 'SSC'> ,> 'CHSL'> ,> 'Java'> ],> > 'Fee'> : [> 25000> ,> 25200> ,> 24500> ,> 24900> ]})> df2> => pd.DataFrame({> 'Duration'> : [> '30day'> ,> '40days'> ,> '35days'> ,> '60days'> ],> > 'Discount'> : [> 1000> ,> 2300> ,> 2500> ,> 2000> ]})> print> (> 'DataFrame 1:'> )> print> (df)> print> (> 'DataFrame 2:'> )> print> (df1)> print> (> 'DataFrame 3:'> )> print> (df2)>

Lähtö:

DataFrame 1:    Courses     Fee  0 GFG 20000 1 JS 25000 2 Python 22000 3 Numpy 24000 DataFrame 2:    Courses     Fee  0 Matplotlib 25000 1 SSC 25200 2 CHSL 24500 3 Java 24900 DataFrame 3:    Duration     Discount  0 30day 1000 1 40days 2300 2 35days 2500 3 60days 2000 

Liitä kaksi Panda DataFrame -kehystä pystysuunnassa ja vaakasuunnassa

Välitämme kaksi datakehystä pd.concat() menetelmä listan muodossa ja mainitse millä akselilla haluat yhdistää, ts. akseli = 0 yhdistää rivejä pitkin, akseli = 1 yhdistää sarakkeita pitkin.

Python 3




# concatenating df1 and df2 along rows> vertical_concat> => pd.concat([df, df1], axis> => 0> )> # concatenating df3 and df4 along columns> horizontal_concat> => pd.concat([df1, df2], axis> => 1> )> print> (> 'Vertical:'> )> print> (vertical_concat)> print> (> 'Horizontal:'> )> print> (horizontal_concat)>

Lähtö:

Vertical:    Courses     Fee  0 GFG 20000 1 JS 25000 2 Python 22000 3 Numpy 24000 0 Matplotlib 25000 1 SSC 25200 2 CHSL 24500 3 Java 24900 Horizontal:    Courses     Fee     Duration     Discount  0 Matplotlib 25000 30day 1000 1 SSC 25200 40days 2300 2 CHSL 24500 35days 2500 3 Java 24900 60days 2000 

Tietokehysten ketjuttaminen käyttämällä pd.merge():tä kahden datakehyksen yhdistämiseksi

The method> 'pd.merge()'> in pandas is used to concatenate DataFrames either vertically or horizontally. It combines two DataFrames based on common columns using a merge operation. The 'how' parameter in pd.merge() specifies the type of merge (inner, outer, left, or right), determining how the DataFrames are combined.>

Python 3




result> => pd.merge(df, df1, on> => 'Courses'> , how> => 'outer'> , suffixes> => (> '_df1'> ,> '_df2'> )).fillna(> 0> )> result[> 'Fee'> ]> => result[> 'Fee_df1'> ]> +> result[> 'Fee_df2'> ]> result> => result[[> 'Courses'> ,> 'Fee'> ]]> print> (result)>

Lähtö:

   Courses     Fee  0 GFG 20000.0 1 JS 25000.0 2 Python 22000.0 3 Numpy 24000.0 4 Matplotlib 25000.0 5 SSC 25200.0 6 CHSL 24500.0 7 Java 24900.0 

Using pd.DataFrame.reindex()> pystysuoraan ketjutukseen indeksikohdistuksen kanssa

Menetelmä pd.DataFrame.reindex() käytetään DataFrame-kehysten pystysuoraan ketjuttamiseen pandoissa. Se kohdistaa DataFrame-kehysten indeksit varmistaen asianmukaisen pinoamisen. Se on ratkaiseva askel yhdistettäessä DataFrame-kehykset pystysuoraan käyttämällä ketjutusta pandoissa.

Esimerkki: Tässä esimerkissä koodi ketjuttaa kaksi pandan datakehystä, df1> ja df> , jättäen huomioimatta niiden alkuperäiset indeksit ja tallentaa tuloksen muuttujaan result> . Sitten se nollaa ketjutetun DataFramen indeksin

Python 3




result> => pd.concat([df1, df], ignore_index> => True> )> # Concatenate and reset index> result> => result.reindex(> range> (> 8> ))> print> (result)>

Lähtö:

   Courses     Fee  0 Matplotlib 25000 1 SSC 25200 2 CHSL 24500 3 Java 24900 4 GFG 20000 5 JS 25000 6 Python 22000 7 Numpy 24000 

Using pd.concat()> kanssa sort=False> for Faster Concatenation

Menetelmä ` pd.concat() Pythonin pandaskirjastossa ` käytetään yhdistämään DataFrames joko pystysuunnassa (rivejä pitkin) tai vaakasuunnassa (sarakkeita pitkin). Parametria 'sort=False' käytetään lisäämään ketjutusnopeutta poistamalla tuloksena olevan DataFramen lajittelu käytöstä.

Esimerkki: Tässä esimerkissä koodi käyttää pandaskirjastoa kahden datakehyksen, df1 ja df, ketjuttamiseen riveillään (akseli=0). Parametri sort=False estää tuloksena olevan DataFramen lajittelun sarakkeiden nimien mukaan.

Python 3




result> => pd.concat([df1, df], sort> => False> )> print> (result)>

Lähtö:

   Courses     Fee  0 Matplotlib 25000 1 SSC 25200 2 CHSL 24500 3 Java 24900 0 GFG 20000 1 JS 25000 2 Python 22000 3 Numpy 24000 

Liitä kaksi tai useampi Panda DataFrame Pythonissa käyttämällä pandas.concat()

'pandas.concat()' yhdistää kaksi DataFrame-kehystä joko pysty- tai vaakasuunnassa pinoaen ne päällekkäin tai vierekkäin, mikä tarjoaa joustavan tavan ketjuttaa tietoja tiettyjä akseleita pitkin.

Esimerkki : Tässä esimerkissä pd.concat()> -toimintoa käytetään yhdistämään nämä tietokehykset pystysuoraan, jolloin saadaan uusi tietokehys nimeltä result> , ja ignore_index=True> käytetään indeksin nollaamiseen. Lopputulos tulostetaan.

Python 3




result> => pd.concat([df, df1], ignore_index> => True> )> print> (result)>

Lähtö:

   Courses     Fee  0 GFG 20000 1 JS 25000 2 Python 22000 3 Numpy 24000 4 Matplotlib 25000 5 SSC 25200 6 CHSL 24500 7 Java 24900 

Yhdistä useita tietokehyksiä Pythonissa käyttämällä pandas.concat()

Pandas.concat() -menetelmää käytetään yhdistämään DataFrames joko pystysuunnassa (rivejä pitkin) tai vaakasuunnassa (sarakkeita pitkin). Se ottaa syötteeksi luettelon DataFrame-kehyksistä ja ketjuttaa ne määritetyn akselin perusteella (0 pystysuoralle, 1 vaakasuuntaiselle akselille).

Esimerkki: Tämä esimerkki käyttää pandoja kolmen tietokehyksen luomiseen ( df> , df1> , ja df2> ), jotka edustavat tietoja kursseista, maksuista, kestosta ja alennuksista. Sitten se ketjuttaa nämä tietokehykset pystysuunnassa käyttämällä pd.concat()> , luomalla uuden tietokehyksen nimeltä result> nollausindeksillä, ja tuloksena oleva datakehys tulostetaan.

Python 3




result> => pd.concat([df, df1, df2], ignore_index> => True> )> print> (result)>

Lähtö:

   Courses     Fee     Duration     Discount  0 GFG 20000 NaN NaN 1 JS 25000 NaN NaN 2 Python 22000 NaN NaN 3 Numpy 24000 NaN NaN 4 Matplotlib 25000 NaN NaN 5 SSC 25200 NaN NaN 6 CHSL 24500 NaN NaN 7 Java 24900 NaN NaN 8 NaN NaN 30day 1000.0 9 NaN NaN 40days 2300.0 10 NaN NaN 35days 2500.0 11 NaN NaN 60days 2000.0 

Pandat yhdistävät kaksi datakehystä käyttämällä pandas.join()-komentoa yhdistääksesi kaksi datakehystä

The pandas.join()> menetelmää käytetään DataFrame-kehysten ketjuttamiseen pysty- tai vaakasuunnassa määritettyjen sarakkeiden perusteella suorittamalla SQL-tyylinen liitos. Se yhdistää rivit tai sarakkeet kahdesta DataFramesta yhteisten sarakearvojen perusteella, mikä mahdollistaa sisäisen, ulkoisen, vasemman tai oikean liitoksen.

Esimerkki: Tässä esimerkissä join> menetelmää käytetään yhdistämään nämä tietokehykset niiden indeksien perusteella, jolloin saadaan uusi tietokehys nimeltä result> , joka on painettu.

Python 3




result> => df.join(df1)> print> (result)>

Lähtö:

   Courses     Fee     Duration     Discount  0 GFG 20000 30day 1000 1 JS 25000 40days 2300 2 Python 22000 35days 2500 3 Numpy 24000 60days 2000 

Yhdistä kaksi datakehystä Pythonissa käyttämällä DataFrame.append()

` DataFrame.append() `-menetelmää pandassa käytetään kahden DataFrame-kehyksen yhdistämiseen pystysuunnassa lisäämällä yhden DataFramen rivit toisen alle. Se palauttaa uuden DataFramen yhdistetyillä tiedoilla. Varmista, että molemmilla DataFrame-kehyksillä on samat sarakkeet.

Esimerkki : Tässä esimerkissä käytämme append()> menetelmä, jolloin saadaan uusi datakehys nimeltä result> palautusindeksillä, joka tulostetaan.

Python 3




result> => df.append(df1, ignore_index> => True> )> print> (result)>

Lähtö:

   Courses     Fee  0 GFG 20000 1 JS 25000 2 Python 22000 3 Numpy 24000 4 Matplotlib 25000 5 SSC 25200 6 CHSL 24500 7 Java 24900