logo

Cum să concatenați două sau mai multe cadre de date Pandas?

Concatenarea a două sau mai multe cadre de date se poate face folosind metoda pandas.concat(). concat() în Pandas funcționează prin combinarea cadrelor de date pe rânduri sau coloane. Putem conecta două sau mai multe cadre de date fie de-a lungul rândurilor (axa=0) fie de-a lungul coloanelor (axa=1). În acest articol, vom vedea cum putem concatena sau adăuga două sau mai multe Pandas Dataframe .

Concatenați două sau mai multe Pandas DataFrames Python

Există diverse metode pentru a concatena cadre de date pe verticală sau orizontală, aici discutăm câteva metode utilizate în general pentru a concatena cadre de date pe verticală sau pe orizontală. astea sunt urmatoarele.



  • Concatenarea a două cadru de date Pandas
  • Using> pd.merge()> pentru a concatena două cadre de date
  • pd.DataFrame.reindex()> pentru concatenare verticală cu aliniere index
  • Using pd.concat()>cusort=False>pentru o concatenare mai rapidă
  • Folosind pandas.concat() pentru a concatena două cadre de date
  • Concatena mai multe cadre de date folosind pandas.concat()
  • Folosind pandas.join() pentru a uni două cadre de date
  • Folosind DataFrame.append() pentru a concatena două cadre de date

Creați un exemplu de cadru de date

Creați două cadre de date pe care le vom concatena acum. Pentru crearea cadrelor de date vom folosi Numpy și panda.

Python3








java catch try
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)>

>

>

Ieșire:

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>

Concatenați două cadru de date Pandas pe verticală și pe orizontală

Le vom transmite două cadre de date pd.concat() metodă sub formă de listă și menționați în ce axă doriți să concat, i.e. axa=0 a concat de-a lungul rândurilor, axa=1 a concat de-a lungul coloanelor.

Python3




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

>

>

Ieșire:

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>

Concatenare DataFrames folosind pd.merge() la Concat Two DataFrames

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

Python3




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

>

>

Ieșire:

   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()>pentru concatenare verticală cu aliniere index

Metoda pd.DataFrame.reindex() este utilizat pentru concatenarea verticală a DataFrame-urilor în panda. Aliniază indicii DataFrames-urilor, asigurând o stivuire adecvată. Este un pas crucial atunci când combinați DataFrames pe verticală folosind concatenarea în panda.

Exemplu: În acest exemplu de cod concatenează două cadre de date panda,df1>șidf>, ignorând indicii lor originali și stochează rezultatul în variabilăresult>. Apoi resetează indexul DataFrame-ului concatenat

Python3

jdbc




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

>

>

Ieșire:

   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()>cusort=False>pentru o concatenare mai rapidă

Metoda ` pd.concat() ` în biblioteca Python panda este folosit pentru a combina DataFrames fie vertical (de-a lungul rândurilor), fie orizontal (de-a lungul coloanelor). Parametrul `sort=False` este folosit pentru a spori viteza de concatenare prin dezactivarea sortării DataFrame-ului rezultat.

Exemplu: În acest exemplu, codul folosește biblioteca Pandas pentru a concatena două DataFrames, df1 și df, de-a lungul rândurilor lor (axa=0). Parametrul sort=False previne sortarea DataFrame-ului rezultat după numele coloanelor.

Python3




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

>

>

Ieșire:

   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>

Concatenați două sau mai multe cadre de date Pandas în Python folosind pandas.concat()

`pandas.concat()` combină două DataFrames fie pe verticală, fie pe orizontală, stivuindu-le unul peste altul sau unul lângă altul, oferind o modalitate flexibilă de a concatena datele de-a lungul axelor specificate.

Exemplu : În acest exemplu,pd.concat()>funcția este utilizată pentru a concatena aceste cadre de date pe verticală, producând un nou cadru de date numitresult>, șiignore_index=True>este folosit pentru a reseta indexul. Rezultatul final este imprimat.

Python3




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

>

>

Ieșire:

   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>

Concat mai multe cadre de date în Python folosind pandas.concat()

Metoda pandas.concat() este folosită pentru a combina DataFrames fie vertical (de-a lungul rândurilor), fie orizontal (de-a lungul coloanelor). Ia o listă de DataFrames ca intrare și le concatenează pe baza axei specificate (0 pentru verticală, 1 pentru orizontală).

Exemplu: Acest exemplu folosește panda pentru a crea trei cadre de date (df>,df1>, șidf2>) reprezentând informații despre cursuri, taxe, durată și reduceri. Apoi concatenează aceste cadre de date pe verticală folosindpd.concat()>, creând un nou cadru de date numitresult>cu un index de resetare, iar cadrul de date rezultat este tipărit.

Python3




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

>

>

Ieșire:

   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>

Pandas Concat două cadre de date folosind pandas.join() pentru a alătura două cadre de date

Thepandas.join()>metoda este utilizată pentru a concatena DataFrames vertical sau orizontal pe baza coloanelor specificate, efectuând o îmbinare în stil SQL. Combină rânduri sau coloane din două DataFrames pe baza valorilor comune ale coloanei, permițând îmbinări interioare, exterioare, stânga sau dreapta.

Exemplu: În acest exemplu,join>metoda este utilizată pentru a combina aceste cadre de date pe baza indicilor lor, rezultând un nou cadru de date numitresult>, care este tipărită.

Python3




constructor de corzi

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

>

>

Ieșire:

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

Combinați două cadre de date în Python folosind DataFrame.append()

` DataFrame.append() Metoda ` din panda este folosită pentru a concatena două DataFrame pe verticală, adăugând rândurile unui DataFrame sub celălalt. Returnează un nou DataFrame cu datele combinate. Asigurați-vă că ambele DataFrame au aceleași coloane.

Exemplu : În acest exemplu, folosimappend()>metoda, rezultând un nou cadru de date numitresult>cu un index de resetare, care este tipărit.

Python3




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

>

>

Ieșire:

   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>