funkce pandas.concat() v Pythonu

Funkce pandas.concat() dělá veškerou těžkou práci provádění operací zřetězení spolu s osou Předměty pandy při provádění volitelné logiky sady (sjednocení nebo průnik) indexů (pokud existují) na ostatních osách.

Syntaxe funkce Pandas concat().

Syntax: concat(objs, osa, spojení, ignorovat_index, klíče, úrovně, názvy, ověřit_integritu, seřadit, kopírovat)

Parametry:

  • obs: Série nebo objekty DataFrame
  • osa: osa zřetězit podél; výchozí = 0
  • připojit se: cesta zpracovávat indexy na jiné ose; výchozí = ‚vnější‘
  • ignore_index: je-li True, nepoužívejte hodnoty indexu podél osy zřetězení; výchozí = False
  • klíče: sekvence pro přidání identifikátoru k indexům výsledků; výchozí = Žádný
  • úrovně: specifické úrovně (jedinečné hodnoty), které se mají použít pro konstrukci MultiIndexu; výchozí = Žádný
  • jména: názvy úrovní ve výsledném hierarchickém indexu; výchozí = Žádný
  • ověřit_integritu: zkontrolujte, zda nová zřetězená osa obsahuje duplikáty; výchozí = False
  • seřadit: seřadit nezřetězenou osu, pokud již není zarovnána, když je spojení „vnější“; výchozí = False
  • kopírovat: pokud je False, nekopírujte data zbytečně; výchozí = True

Vrácení: typ objs (Series of DataFrame)

Zřetězení pomocí pand s příklady

Příklad 1: Zřetězení datových rámců v Pythonu

V tomto příkladu zřetězujeme dvě řady s výchozími parametry pandy .

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

Výstup

Příklad 2: Pandy kombinující dva datové rámce horizontálně s indexem = 1

V tomto příkladu vytvoříme dvě řady Pandas ( series1> a series2> ) a poté je zřetězí podél sloupců (osa=1) pomocí pd.concat()> . Výsledný DataFrame obsahuje obě řady jako sloupce a vytváří nový DataFrame se dvěma sloupci.

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

Výstup

Příklad 3: Zřetězení 2 datových rámců a přiřazení klíčů

vytvoří dva DataFrames ( df1> a df2> ) a zřetězí je spolu s klíči přiřazenými každému DataFrame pomocí pd.concat()> . Výsledný DataFrame má hierarchický index s klíči ‚key1‘ a ‚key2‘, který rozlišuje původ každé sady dat.

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

Výstup

Příklad 4: Horizontální zřetězení datových rámců v Pandas s osou = 1

vytvoří dva DataFrames ( df1> a df2> ) a zřetězí je podél sloupců (osa=1) pomocí pd.concat()> . Výsledný DataFrame kombinuje sloupce z obou df1> a df2> a zarovnejte je vedle sebe .

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

Výstup

Příklad 5: Zřetězení 2 DataFrames s ignore_index = True

vytvoří dva DataFrames ( df1> a df2> ) s identickými sloupci a zřetězí je vertikálně pomocí pd.concat()> s ignore_index=True> . Výsledný DataFrame má spojitý index, ignorující původní indexy df1> a 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> ))>

Výstup

Příklad 6: Zřetězení datového rámce se sérií

vytvoří DataFrame ( df> ) a řada ( series> ), pak je zřetězí podél sloupců (osa=1) pomocí pd.concat()> . Výsledný DataFrame kombinuje sloupce z df> a Series, zarovnat je vedle sebe. Poznámka: V příkazu zobrazení je překlep ( df1> namísto 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> ))>

Výstup