Funció pandas.concat() a Python
La funció pandas.concat() fa tot el treball pesat de realitzar operacions de concatenació juntament amb un eix de Objectes pandas mentre es realitza la lògica de conjunt opcional (unió o intersecció) dels índexs (si n'hi ha) als altres eixos.
Funció Pandas concat() Sintaxi
Sintaxi: concat(objs, axis, join, ignore_index, keys, levels, names, verify_integrity, sort, copy)
Paràmetres:
- obs: Objectes sèrie o DataFrame
- eix: eix per concatenar al llarg; per defecte = 0
- uneix-te: manera per gestionar índexs en altres eixos; per defecte = 'exterior'
- ignore_index: si és cert, no utilitzeu els valors de l'índex al llarg de l'eix de concatenació; per defecte = Fals
- claus: seqüència per afegir un identificador als índexs de resultats; per defecte = Cap
- nivells: nivells específics (valors únics) per utilitzar per construir un MultiIndex; per defecte = Cap
- noms: noms per als nivells de l'índex jeràrquic resultant; per defecte = Cap
- verificar_integritat: comproveu si el nou eix concatenat conté duplicats; per defecte = Fals
- ordenar: ordena l'eix sense concatenació si encara no està alineat quan la unió és 'exterior'; per defecte = Fals
- còpia: si és fals, no copieu les dades innecessàriament; per defecte = True
Devolucions: tipus d'objs (Sèrie de DataFrame)
Concatenar utilitzant Pandas amb exemples
Exemple 1: Concatenar DataFrames a Python
En aquest exemple, estem concatenant dues sèries amb paràmetres per defecte Pandes .
Python 3
# importing the module> import> pandas as pd> # creating the Series> series1> => pd.Series([> 1> ,> 2> ,> 3> ])> display(> 'series1:'> , series1)> series2> => pd.Series([> 'A'> ,> 'B'> ,> 'C'> ])> display(> 'series2:'> , series2)> # concatenating> display(> 'After concatenating:'> )> display(pd.concat([series1, series2]))> |
Sortida
Exemple 2: Pandas que combinen dos marcs de dades horitzontalment amb índex = 1
En aquest exemple, creem dues sèries Pandas ( series1> i series2> ), i després els concatena al llarg de les columnes (eix=1) utilitzant pd.concat()> . El DataFrame resultant conté les dues sèries com a columnes, creant un nou DataFrame amb dues columnes.
Python 3
# importing the module> import> pandas as pd> # creating the Series> series1> => pd.Series([> 1> ,> 2> ,> 3> ])> display(> 'series1:'> , series1)> series2> => pd.Series([> 'A'> ,> 'B'> ,> 'C'> ])> display(> 'series2:'> , series2)> # concatenating> display(> 'After concatenating:'> )> display(pd.concat([series1, series2],> > axis> => 1> ))> |
Sortida
Exemple 3: Concatenació de 2 DataFrames i assignació de claus
crea dos DataFrames ( df1> i df2> ), i els concatena juntament amb les claus assignades a cada DataFrame utilitzant pd.concat()> . El DataFrame resultant té un índex jeràrquic amb les claus 'key1' i 'key2', distingint l'origen de cada conjunt de dades.
Python 3
# importing the module> import> pandas as pd> # creating the DataFrames> df1> => pd.DataFrame({> 'A'> : [> 'A0'> ,> 'A1'> ,> 'A2'> ,> 'A3'> ],> > 'B'> : [> 'B0'> ,> 'B1'> ,> 'B2'> ,> 'B3'> ]})> display(> 'df1:'> , df1)> df2> => pd.DataFrame({> 'A'> : [> 'A4'> ,> 'A5'> ,> 'A6'> ,> 'A7'> ],> > 'B'> : [> 'B4'> ,> 'B5'> ,> 'B6'> ,> 'B7'> ]})> display(> 'df2:'> , df2)> # concatenating> display(> 'After concatenating:'> )> display(pd.concat([df1, df2],> > keys> => [> 'key1'> ,> 'key2'> ]))> |
Sortida
Exemple 4: Concatenació de DataFrames horitzontalment a Pandas amb l'eix = 1
crea dos DataFrames ( df1> i df2> ), i els concatena al llarg de les columnes (eix=1) utilitzant pd.concat()> . El DataFrame resultant combina columnes de tots dos df1> i df2> , alineant-los un al costat de l'altre .
Python 3
# importing the module> import> pandas as pd> # creating the DataFrames> df1> => pd.DataFrame({> 'A'> : [> 'A0'> ,> 'A1'> ,> 'A2'> ,> 'A3'> ],> > 'B'> : [> 'B0'> ,> 'B1'> ,> 'B2'> ,> 'B3'> ]})> display(> 'df1:'> , df1)> df2> => pd.DataFrame({> 'C'> : [> 'C0'> ,> 'C1'> ,> 'C2'> ,> 'C3'> ],> > 'D'> : [> 'D0'> ,> 'D1'> ,> 'D2'> ,> 'D3'> ]})> display(> 'df2:'> , df2)> # concatenating> display(> 'After concatenating:'> )> display(pd.concat([df1, df2],> > axis> => 1> ))> |
Sortida
Exemple 5: Concatenació de 2 DataFrames amb ignore_index = True
crea dos DataFrames ( df1> i df2> ) amb columnes idèntiques, i les concatena verticalment utilitzant pd.concat()> amb ignore_index=True> . El DataFrame resultant té un índex continu, ignorant els índexs originals de df1> i df2> .
Python 3
# importing the module> import> pandas as pd> # creating the DataFrames> df1> => pd.DataFrame({> 'A'> : [> 'A0'> ,> 'A1'> ,> 'A2'> ,> 'A3'> ],> > 'B'> : [> 'B0'> ,> 'B1'> ,> 'B2'> ,> 'B3'> ]})> display(> 'df1:'> , df1)> df2> => pd.DataFrame({> 'A'> : [> 'A4'> ,> 'A5'> ,> 'A6'> ,> 'A7'> ],> > 'B'> : [> 'B4'> ,> 'B5'> ,> 'B6'> ,> 'B7'> ]})> display(> 'df2:'> , df2)> # concatenating> display(> 'After concatenating:'> )> display(pd.concat([df1, df2],> > ignore_index> => True> ))> |
Sortida
Exemple 6: Concatenació d'un DataFrame amb una sèrie
crea un DataFrame ( df> ) i una sèrie ( series> ), després els concatena al llarg de les columnes (eix=1) utilitzant pd.concat()> . El DataFrame resultant combina les columnes de df> i la Sèrie, alineant-les una al costat de l'altra. Nota: hi ha un error ortogràfic a la declaració de visualització ( df1> en lloc de df> ).
Python 3
# importing the module> import> pandas as pd> # creating the DataFrame> df> => pd.DataFrame({> 'A'> : [> 'A0'> ,> 'A1'> ,> 'A2'> ,> 'A3'> ],> > 'B'> : [> 'B0'> ,> 'B1'> ,> 'B2'> ,> 'B3'> ]})> display(> 'df:'> , df1)> # creating the Series> series> => pd.Series([> 1> ,> 2> ,> 3> ,> 4> ])> display(> 'series:'> , series)> # concatenating> display(> 'After concatenating:'> )> display(pd.concat([df, series],> > axis> => 1> ))> |
Sortida