らふのプログラミングメモ

プログラミングメモです。

Python:pandasのDataFrame同士をくっつける(列を結合させる)

先日の続きで、

rafu.hatenablog.jp

列をDataFrame同士で結合させる方法をやってみたいと思います。

DataFrame同士をくっつける(列を結合)とは?

dfのイメージ図

name age add
aaa 18 Tokyo
bbb 20 Osaka
ccc 22 Nagoya

df2のイメージ図

English math
80 90
85 80
90 85

dfとdf2をくっつけて以下のようなDataFrameを作るイメージです。

name age add English math
aaa 18 Tokyo 80 90
bbb 20 Osaka 85 80
ccc 22 Nagoya 90 85

下準備

dfとdf2を準備します。

import pandas as pd

#df用
data = {"name":["aaa","bbb","ccc"],"age":["18","20","22"],"add":["Tokyo","Osaka","Nagoya"]}
#df2用
data2 = {"English":["80","85","90"],"math":["90","80","85"]}

#dfとdf2にdataをいれる
df = pd.DataFrame(data)
df2 = pd.DataFrame(data2)

concat()を使って結合させてみよう

#pd.concat(objs,axis=1) 
df_data = pd.concat([df,df2],axis = 1)
  • 今回使用した引数の説明
    objs:結合したいDataFrameを記述します。
    axis:今回は列方向で結合したいため、1を入力
    (デフォルトは0で行方向で結合する)

df_dataのイメージ図

name age add English math
0 aaa 18 Tokyo 80 90
1 bbb 20 Osaka 85 80
2 ccc 22 Nagoya 90 85

引数はこれら以外にも、ラベルを変更したり
インデックスの名前を付け直したりすることもできるようです。

<最終更新日:2021/08/18>
2021/08/18 投稿