「このデータは、数学のテストの結果で」
「このデータは、英語のテストの結果で」
このようなデータフレームはまとめたいデータだと思います。
このようなデータを一つに結合させることができれば、情報がより分かりやすくなりますよね。
その時に用いる関数がmerge
関数です
これはそれぞれのデータを横方向に結合させることができる関数です。
ちなみに今回の記事の範囲外になりますが、同じ種類のデータを結合させたいとき
つまり縦方向にデータを結合させたいときは、pandasライブラリにあるpandas.concat
メソッドです。
では実際に、merge関数を使用していきましょう。
import pandas as pd
import numpy as np
df01 = pd.DataFrame( {'name':['A', 'B', 'C'],
'math':[60, 70, 80]})
df01
name math
0 A 60
1 B 70
2 C 80
df02 = pd.DataFrame( {'name':['A', 'B', 'C', 'D'],
'english':[100, 90, 80, 70]})
df02
name english
0 A 100
1 B 90
2 C 80
3 D 70
このような二つのデータには共通してname
というカラムが存在します。これを主キーとも呼びます。
これを紐づけながらデータ加工をします。
pd.merge(df01 , df02 , how="inner" , on="name")
結合方法(how)には、様々存在しますが、今回は内部結合というものを使っていきました。
name math english
0 A 60 100
1 B 70 90
2 C 80 80
このように、二つのデータが上手く結合できました。
今回は以上になります。ありがとうございました。