こんにちは,shun(@datasciencemore)です!!
今回はconcatについて学習していきます.
concatは,縦横結合をするメソッドです.
concatを使用することで前回やったキー結合とは違うやりかたで,2つのデータフレームを1つに結合することができます.
どういう風に結合するかといいますと,ただ単にデータフレームをガッチャンコするだけです.
縦結合するには,concatの引数であるaxisを0に,横結合するにはaxisを1にすればOKです.
このうち,縦結合については,さらに引数 ignore_index=Trueとするのがオススメです.
ignore_index=Trueとすると,インデックスの結合を無視し,出力されるデータフレームのインデックスが0からの連番になります.
0.準備
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# パッケージ読み込み import pandas as pd import numpy as np import seaborn as sns # データフレームの表示行数を指定 pd.set_option('display.max_rows', 5) # 名前のデータフレーム 1 df_name_1 = pd.DataFrame( { "key":[1, 2], "name":["asuka", "rina"] } ) # 名前のデータフレーム 2 df_name_2 = pd.DataFrame( { "key":[1, 2, 3], "name":["hinako", "yui", "kyouko"] } ) # グループのデータフレーム df_group = pd.DataFrame( { "group":["nogi", "sakura", "nogi", "sakura", "hinata"] } ) |
1.縦横結合
こちらが縦横結合の具体的なイメージとなります.
1.縦結合
1 2 3 4 5 6 |
# good:df_name_1とdf_name_2を縦結合(ignore_indexを使用する.) df_name = pd.concat( [df_name_1, df_name_2], axis=0, ignore_index=True ) |
1 |
df_name |
ignore_indexを使用しないと,出力されるデータフレームのインデックスが連番になりません.
データ分析をする際,データフレームのインデックスが連番でないと都合が悪いことが多いので,できるだけインデックスが連番になるように処理するようにしましょう.
2.横結合
1 2 |
# df_nameとdf_groupを横結合 df_name_group = pd.concat([df_name, df_group], axis=1) |
1 |
df_name_group |
まとめ
今回は縦横結合について学習しました.
縦横結合をするにはconcatを使用します.
縦結合するには,concatの引数であるaxisを0に,横結合するにはaxisを1にすればOKです.
縦結合する際,出力されるデータフレームのインデックスを連番にするには,ignore_index=TrueとすればOKです.
それでは,お疲れさまでした!!
次回
-
【pandas】groupby:グルーピング【データフレーム処理】
こんにちは,shun(@datasciencemore)です!! 今回はgroupbyについて学習していきます. groupbyは,グルーピングをするメソッドです. グルーピングというのは,データを特 ...
続きを見る