Python の pandas.concat() 関数

pandas.concat() 関数は、軸に沿って連結操作を実行するという重労働をすべて実行します。 パンダのオブジェクト 他の軸上のインデックス (存在する場合) のオプションのセット ロジック (和集合または交差) を実行しながら。

Pandas concat() 関数の構文

構文: concat(objs、軸、結合、ignore_index、キー、レベル、名前、verify_integrity、sort、copy)

パラメーター:

  • 観測点: Series または DataFrame オブジェクト
  • 軸: 連結する軸。デフォルト = 0
  • 参加する: 方法 他の軸のインデックスを処理するため。デフォルト = 「外側」
  • 無視_インデックス: True の場合、連結軸に沿ったインデックス値を使用しません。デフォルト = False
  • キー: 結果インデックスに識別子を追加するシーケンス。デフォルト = なし
  • レベル: MultiIndex の構築に使用する特定のレベル (固有の値)。デフォルト = なし
  • 名前: 結果として得られる階層インデックス内のレベルの名前。デフォルト = なし
  • verify_integrity: 新しい連結された軸に重複が含まれているかどうかを確認します。デフォルト = False
  • 選別: 結合が「外部」の場合に非連結軸がまだ整列していない場合は、非連結軸をソートします。デフォルト = False
  • コピー: False の場合、データを不必要にコピーしません。デフォルト = True

戻り値: objの種類(一連のDataFrame)

Pandas と例を使用して連結する

例 1: Python で DataFrame を連結する

この例では、デフォルトのパラメータを使用して 2 つのシリーズを連結しています。 パンダ

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

出力

例 2: インデックス = 1 で 2 つのデータフレームを水平に結合するパンダ

この例では、2 つの Pandas シリーズを作成します ( series1> そして series2> ) を使用して列 (axis=1) に沿ってそれらを連結します。 pd.concat()> 。結果として得られる DataFrame には両方の Series が列として含まれており、2 つの列を持つ新しい DataFrame が作成されます。

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

出力

例 3: 2 つの DataFrame を連結してキーを割り当てる

2 つの DataFrame を作成します ( df1> そして df2> ) を使用して、各データフレームに割り当てられたキーとともにそれらを連結します。 pd.concat()> 。結果として得られる DataFrame には、キー「key1」と「key2」を持つ階層インデックスがあり、データの各セットの起源を区別します。

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

出力

例 4: Pandas で DataFrame を axis = 1 で水平方向に連結する

2 つの DataFrame を作成します ( df1> そして df2> )、それらを列 (axis=1) に沿って連結します。 pd.concat()> 。結果として得られる DataFrame は、両方の列を結合します。 df1> そして 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({> 'C'> : [> 'C0'> ,> 'C1'> ,> 'C2'> ,> 'C3'> ],> > 'D'> : [> 'D0'> ,> 'D1'> ,> 'D2'> ,> 'D3'> ]})> display(> 'df2:'> , df2)> # concatenating> display(> 'After concatenating:'> )> display(pd.concat([df1, df2],> > axis> => 1> ))>

出力

例 5: ignore_index = True で 2 つの DataFrame を連結する

2 つの DataFrame を作成します ( df1> そして df2> ) は同一の列であり、それらを次を使用して垂直に連結します。 pd.concat()> ignore_index=True> 。結果として得られる DataFrame には連続インデックスがあり、元のインデックスは無視されます。 df1> そして 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> ))>

出力

例6: DataFrame とシリーズの連結

DataFrame を作成します ( df> ) とシリーズ ( series> )、次にそれらを列 (axis=1) に沿って連結します。 pd.concat()> 。結果として得られる DataFrame は、次の列を結合します。 df> とシリーズを並べて並べます。注: 表示ステートメントにタイプミスがあります ( df1> の代わりに 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> ))>

出力