Jak połączyć dwie lub więcej ramek danych Pand?

Konkatenację dwóch lub więcej ramek danych można wykonać za pomocą metody pandas.concat(). concat() w Pandach działa poprzez łączenie ramek danych w wierszach lub kolumnach. Możemy połączyć dwie lub więcej ramek danych wzdłuż wierszy (oś=0) lub wzdłuż kolumn (oś=1). W tym artykule zobaczymy, jak możemy połączyć lub dodać dwa lub więcej Ramka danych Pandy .

Połącz dwie lub więcej ramek danych Pand w języku Python

Istnieją różne metody łączenia ramek danych w pionie lub poziomie. Tutaj omawiamy niektóre powszechnie stosowane metody łączenia ramek danych w pionie lub poziomie. są to następujące.

  • Łączenie ramki danych dwóch pand
  • Using> pd.merge()> do połączenia dwóch ramek danych
  • pd.DataFrame.reindex()> dla łączenia pionowego z wyrównaniem indeksu
  • Using pd.concat()> z sort=False> dla szybszego łączenia
  • Używanie pandas.concat() do łączenia dwóch ramek danych
  • Połącz wiele ramek danych za pomocą pandy.concat()
  • Za pomocą pandy.join() aby połączyć dwie ramki danych
  • Za pomocą DataFrame.append() do połączenia dwóch ramek danych

Utwórz przykładową ramkę danych

Utwórz dwie ramki danych, które teraz połączymy. Do tworzenia ramek danych będziemy używać Numpy i pandy.

Python3




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

Wyjście:

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 

Połącz dwie ramki danych Pandy w pionie i poziomie

Przekażemy dwie ramki danych do pd.concat() metodę w formie listy i zaznacz w której osi chcesz konkatować, czyli np. oś=0 łączyć wzdłuż rzędów, oś=1 łączyć wzdłuż kolumn.

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

Wyjście:

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 

Łączenie ramek danych za pomocą pd.merge() w celu połączenia dwóch ramek danych

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

Wyjście :

   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()> dla łączenia pionowego z wyrównaniem indeksu

Metoda pd.DataFrame.reindex() służy do pionowego łączenia ramek danych w pandach. Wyrównuje indeksy DataFrames, zapewniając prawidłowe układanie. Jest to kluczowy krok podczas łączenia DataFrames w pionie za pomocą konkatenacji w pandach.

Przykład: W tym przykładzie kod łączy dwie ramki danych pand, df1> I df> , ignorując ich oryginalne indeksy i zapisuje wynik w zmiennej result> . Następnie resetuje indeks połączonej ramki DataFrame

Python3




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

Wyjście :

   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()> z sort=False> dla szybszego łączenia

Metoda ` pd.concat() ` w bibliotece pandas Pythona służy do łączenia ramek danych w pionie (wzdłuż wierszy) lub w poziomie (wzdłuż kolumn). Parametr „sort=False” służy do zwiększenia szybkości łączenia poprzez wyłączenie sortowania wynikowej ramki danych.

Przykład : W tym przykładzie kod używa biblioteki pandas do połączenia dwóch ramek danych, df1 i df, wzdłuż ich wierszy (oś = 0). Parametr sort=False zapobiega sortowaniu wynikowej ramki danych według nazw kolumn.

Python3




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

Wyjście :

   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 

Połącz dwie lub więcej ramek danych Pand w Pythonie za pomocą pandas.concat()

`pandas.concat()` łączy dwie ramki danych w pionie lub poziomie, układając je jedna na drugiej lub obok siebie, zapewniając elastyczny sposób łączenia danych wzdłuż określonych osi.

Przykład :W tym przykładzie pd.concat()> Funkcja służy do łączenia tych ramek danych w pionie, tworząc nową ramkę danych o nazwie result> , I ignore_index=True> służy do resetowania indeksu. Wynik końcowy jest drukowany.

Python3




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

Wyjście:

   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 

Połącz wiele ramek danych w Pythonie za pomocą pandas.concat()

Metoda pandas.concat() służy do łączenia ramek danych w pionie (wzdłuż wierszy) lub w poziomie (wzdłuż kolumn). Pobiera listę ramek danych jako dane wejściowe i łączy je w oparciu o określoną oś (0 dla pionu, 1 dla poziomu).

Przykład : W tym przykładzie zastosowano pandy do utworzenia trzech ramek danych ( df> , df1> , I df2> ) reprezentujący informacje o kursach, opłatach, czasie trwania i zniżkach. Następnie łączy te ramki danych w pionie, używając pd.concat()> , tworząc nową ramkę danych o nazwie result> z indeksem resetowania, a wynikowa ramka danych jest drukowana.

Python3




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

Wyjście:

   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 

Pandy Połącz dwie ramki danych za pomocą pandas.join() w celu połączenia dwóch ramek danych

The pandas.join()> Metoda służy do łączenia ramek danych w pionie lub poziomie w oparciu o określone kolumny, wykonując złączenie w stylu SQL. Łączy wiersze lub kolumny z dwóch ramek danych w oparciu o wspólne wartości kolumn, umożliwiając łączenie wewnętrzne, zewnętrzne, lewe lub prawe.

Przykład : W tym przykładzie join> Metoda służy do łączenia tych ramek danych w oparciu o ich indeksy, w wyniku czego powstaje nowa ramka danych o nazwie result> , który jest drukowany.

Python3




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

Wyjście:

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

Połącz dwie ramki danych w Pythonie za pomocą DataFrame.append()

` DataFrame.append() Metoda ` w pandach służy do łączenia dwóch ramek danych w pionie, dodając wiersze jednej ramki danych poniżej drugiej. Zwraca nową ramkę DataFrame z połączonymi danymi. Upewnij się, że obie ramki danych mają te same kolumny.

Przykład : W tym przykładzie używamy append()> metodę, w wyniku czego powstaje nowa ramka danych o nazwie result> z indeksem resetowania, który jest drukowany.

Python3




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

Wyjście:

   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