2つ以上の画像を比較したい時等、Pythonであれば簡単に画像を横と縦に連結させることができます。ここではOpenCVのhconcatとvconcatを使って画像連結をする方法を紹介します。 pd.merge(df1, df2, how = inner/left/right/outer, on = ”結合キー”). Pythonに画像処理ライブラリのOpenCVを使って、2つの画像を合成したり重ねたりする方法を見ていきたいと思います。addWeighted()での合成や、関心領域(ROI)とbitwise演算を使った合成の方法を見て … Copyright © 2018 code-graffiti.com All Rights Reserved. 11. 動画といってもフレームの集合体であるため、この空間連結を実現させる方法はいたって簡単で、フレーム毎の処理を行う時に画像同士を結合すれば良いのです。 この方法は既に過去記事として「Python データを分析する上では、通常は1つのDataFrameだけではなく、複数のDataFrameを組み合わせて、データを確認・分析していく必要があります。その際に必要となるのが、結合の処理です。, DataFrameの結合方法を、データベースにおけるSQLでのテーブルの結合方法に例えると、結合には行単位の連結であるUNION(ユニオン)と、列単位の連結であるJOIN(ジョイン)の2種類があり、それぞれ次のようなものになります。, この記事では、DataFrameの結合方法の1つである列単位の結合(JOIN)について学んでいきましょう。Pandasではmerge()を利用して、DataFrameに対して様々な結合(JOIN)を実現することができます。, 行単位の連結(UNION)の詳しい説明は、「図解!Pandas DataFrameの結合(UNION)」を参照ください。, またPandasのもう1つのデータ構造であるSeriesの結合方法については、「Pandas Seriesを徹底解説!」を参照ください。, JOINとは、2つのDataFrameを結合するキー(結合キー)となる列を元に、DataFrameを繋ぎ合わせる方法です。結合キー以外の列については、2つのDataFrameで異なっていても問題ありません。, JOINには大きく分けて内部結合と外部結合の2つの種類があり、外部結合はさらに3つに分けることができます。, Pandasにおいて、DataFrameのJOIN(内部結合・外部結合)にはmerge()を使います。2つのDataFrameをそれぞれ、df1、df2とすると、以下のように記述します。, 引数howでは、結合の方法を指定します。結合方法とhowでの指定方法は次のとおりです。, 引数onでは、結合するキーを指定します。結合キーが1つの場合、on = “結合キー” と指定し、2つ以上の場合、on = [“結合キー1”, “結合キー2”, …] というようにリストで指定します。   リストの詳しい説明は、「リスト(List)/配列の使い方」を参照ください。, 内部結合とは、2つのDataFrameについて、両方のDataFrameに存在するある項目を結合キーとしてDataFrameを結合させる際に、その項目の値が両方のDataFrameで一致する行のみを抽出する結合方法です。, 例えば、次のような2つのDataFrame、売上情報ヘッダ(df_sales_header)と顧客マスタ(df_customer)にそれぞれ顧客ID(Customer_ID)がある場合、顧客ID(Customer_ID)を元に2つのDataFrameを結合させる時に使います。   結合させることで、売上情報ヘッダ(df_sales_header)に顧客マスタ(df_customer)の顧客名(Customer_Name)を追加することができます。, 内部結合(INNER JOIN)における各DataFrameの項目の流れを、もう少し詳しく見ていきましょう。   df_sales_headerとdf_customerを結合キーCustomer_IDで内部結合させる場合、Customer_IDが2つのDataFrameで一致するC04、C06、C01の行のみが抽出されます。   結合後のDataFrameにはそれぞれ元のDataFrameの項目が持ち込まれます。つまりdf_saales_headerからはSales_No、Sales_Dateが、df_customerからはCustomer_Nameの値が新しいDataFrameに追加されます。, それでは、先ほど出てきました下記の例を元に、実際にコーディングしながらmergeを用いてDataFrameを内部結合(INNER JOIN)する方法を確認していきます。, まずは、df_sales_header、df_customerのデータを作成します。   最初に、売上情報ヘッダが格納されているCSVファイル「T_Sales_Header2」からデータを読み込みdf_sales_headerに格納します。(※CSVファイルは上のリンクから取得してください。), またCSVファイルの読み込みに関する詳しい説明は、「Pandas Excel、CSVファイルの読み込み、書き込み(出力)」を参照ください。, 次に顧客マスタが格納されているCSVファイル「M_Customer2」からデータを読み込みdf_customerに格納します。(※CSVファイルは上のリンクから取得してください。)その際に日本語の名称が文字化けしないようにread_csvの引数encodingに"SHIFT-JIS"を渡します。, こうして作成した2つのDataFrame df_sales_header、df_customerを内部結合していきます。merge()の引数として、2つのDataFrame、howには"inner"(内部結合)、onには結合キーとなる"Customer_ID"を渡します。, 想定された結果どおり、Customer_IDが2つのDataFrameで一致するC04、C06、C01の行のみが抽出されました。   またdf_saales_headerからはSales_No、Sales_Dateが、df_customerからはCustomer_Nameの列の値が、新しいDataFrameに追加されています。, 外部結合とは、2つのDataFrameについて、両方のDataFrameに存在するある項目を結合キーとしてDataFrameを結合させる際に、基準となるDataFrameは全ての行を出力し、もう一方のDataFrameについては、その項目の値が両方のDataFrameで一致する行のみを抽出する結合方法です。   基準となるDataFrameは全ての行を出力するという点が内部結合との違いになります。   外部結合は、その基準となるDataFrameの違いにより、以下の3つに分けられます。, 先ほどと同様、2つのDataFrame、df_sales_headerとdf_customerの例で違いを確認していきましょう。, 黄色で囲った所が前回の内部結合との違いになります。   df_sales_headerとdf_customerを結合キーCustomer_IDで左外部結合させた場合、Customer_IDにかかわらず、左側のdf_sales_headerの行は全て出力されます。   ここでは結合キーが一致していないCustomer_IDがC03の行も表示されています。   df_customerにはCustomer_IDがC03の行は存在していないので、結合後のCustomer_Nameは欠損値を示すNaN(Not a number)と表示されています。, こちらも黄色で囲った所が内部結合との違いになります。df_sales_headerとdf_customerを結合キーCustomer_IDで右外部結合させた場合、Customer_IDにかかわらず、右側のdf_customerの行は全て出力されます。   ここでは結合キーが一致していないCustomer_IDがC02、C05の行も表示されています。   df_sales_headerにはCustomer_IDがC02、C05の行は存在していないので、結合後のCustomer_No、Sales_Dateは欠損値を示すNaN(Not a number)と表示されています。, 同様に黄色で囲った所が内部結合との違いになります。   df_sales_headerとdf_customerを結合キーCustomer_IDで完全外部結合させた場合、Customer_IDにかかわらず、両方のDataFrameの行は全て出力されます。   ここでは結合キーが一致していないCustomer_IDがC03、C02、C05の行も表示されています。   結合キーがそれぞれのDataFrameに存在しない行の項目の値は、欠損値を示すNaN(Not a number)と表示されています。, 最初は左外部結合からです。df_sales_headerとdf_customerを左外部結合します。引数howに対して”left”を渡します。, 次はdf_sales_headerとdf_customerを右外部結合します。引数howに対して”right”を渡します。, 最後はdf_sales_headerとdf_customerを完全外部結合します。引数howに対して”outer”を渡します。, 関連記事です。 Pandasの中心となるDataFrame(データフレーム)については、次の記事で詳しく解説しております。.

.

クレスト ホワイトニング 危険性 34, ジオラマ 海 作り方 18, Dahon K3 クランク交換 5, ザ トラッド ラジオ 4, 焼肉の匂い 消す方法 部屋 7, 志尊淳 自宅 住所 37, Access クエリ 結合 あいまい 6,