Pandas.concat() funkcija Python
Funkcija pandas.concat() atlieka visas sudėtingas sujungimo operacijas kartu su ašimi Pandos objektai atliekant pasirenkamą indeksų (jei yra) rinkinių logiką (sąjungą arba susikirtimą) kitose ašyse.
Pandas concat() funkcija Sintaksė
Sintaksė: concat(objs, ašis, prisijungti, ignoruoti_indeksą, raktai, lygiai, pavadinimai, patikrinti_vientisumą, rūšiuoti, kopijuoti)
Parametrai:
- obs: Serija arba DataFrame objektai
- ašis: ašis sujungti išilgai; numatytasis = 0
- prisijungti: būdu tvarkyti indeksus kitoje ašyje; numatytasis = 'išorinis'
- ignore_index: jei True, nenaudokite indekso reikšmių sujungimo ašyje; default = False
- raktai: seka pridėti identifikatorių prie rezultatų indeksų; numatytasis = Nėra
- lygiai: konkretūs lygiai (unikalios reikšmės), kuriuos reikia naudoti kuriant MultiIndex; numatytasis = Nėra
- vardai: lygių pavadinimai gautoje hierarchinėje rodyklėje; numatytasis = Nėra
- verify_integrity: patikrinkite, ar naujoje sujungtoje ašyje nėra dublikatų; default = False
- Rūšiuoti: rūšiuoti nesujungimo ašį, jei ji dar nesulygiuota, kai sujungimas yra „išorinis“; default = False
- kopija: jei Netiesa, be reikalo nekopijuokite duomenų; default = True
Grąžina: objs tipas (DataFrame serija)
Sujunkite naudodami pandas su pavyzdžiais
1 pavyzdys: Sujunkite duomenų rėmelius Python
Šiame pavyzdyje mes sujungiame dvi serijas su numatytaisiais parametrais Pandos .
Python3
# 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]))> |
Išvestis
2 pavyzdys: Pandos, jungiančios du duomenų kadrus horizontaliai su indeksu = 1
Šiame pavyzdyje sukuriame dvi Pandų serijas ( series1> ir series2> ), tada sujungia juos išilgai stulpelių (ašis = 1), naudojant pd.concat()> . Gautame „DataFrame“ yra abi serijos kaip stulpeliai, sukuriant naują „DataFrame“ su dviem stulpeliais.
Python3
# 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> ))> |
Išvestis
3 pavyzdys: 2 duomenų rėmelių sujungimas ir raktų priskyrimas
sukuria du duomenų rėmelius ( df1> ir df2> ) ir sujungia juos kartu su raktais, priskirtais kiekvienam naudojamam DataFrame pd.concat()> . Gautas DataFrame turi hierarchinę indeksą su raktais „key1“ ir „key2“, išskiriantį kiekvieno duomenų rinkinio kilmę.
Python3
# 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'> ]))> |
Išvestis
4 pavyzdys: Duomenų rėmelių sujungimas horizontaliai pandose, kai ašis = 1
sukuria du duomenų rėmelius ( df1> ir df2> ), ir sujungia juos išilgai stulpelių (ašis = 1), naudojant pd.concat()> . Gautas DataFrame sujungia abiejų stulpelius df1> ir df2> , sulygiuodami juos vienas šalia kito .
Python3
# 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> ))> |
Išvestis
5 pavyzdys: 2 duomenų rėmelių sujungimas su ignore_index = True
sukuria du duomenų rėmelius ( df1> ir df2> ) su vienodais stulpeliais ir sujungia juos vertikaliai naudodami pd.concat()> su ignore_index=True> . Gautas DataFrame turi nuolatinį indeksą, neatsižvelgiant į pradinius indeksus df1> ir df2> .
Python3
# 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> ))> |
Išvestis
6 pavyzdys: DataFrame sujungimas su serija
sukuria duomenų rėmelį ( df> ) ir serija ( series> ), tada sujungia juos išilgai stulpelių (ašis = 1), naudojant pd.concat()> . Gautas DataFrame sujungia stulpelius iš df> ir Serija, sulygiuodami juos vienas šalia kito. Pastaba: ekrano teiginyje yra rašybos klaida ( df1> vietoj df> ).
Python3
# 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> ))> |
Išvestis