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