# クロスJoinを行う方法
このノートでは2つのデータフレームを利用してクロスJoinを行う方法を紹介します。
例えば、上記のように1行が一意な値になっているような2つのデータフレームを使って、クロスJoinを行うと全ての値の組み合わせを持つデータを作ることが可能です。
今回は以下のような2つのデータフレームを使います。
製品テーブル
色テーブル
今回の2つのデータには共通するキーが存在していないため、今のデータのままでは、結合のしようがありません。
そこでクロスJoinを行うときは、全ての列に同じ値が入ったダミーの列をそれぞれのデータフレームに追加し、それらのダミーのキー列を利用して、左外部結合(Left Join)を行います。
そこでまずは製品のデータフレームにダミーの結合キー列を追加します。
任意の列ヘッダーメニューから「計算の作成(Mutate)」を選択します。
計算の作成(Mutate)ダイアログが表示されたら、任意の数字ないしは、文字をタイプします。(今回は数字の「1」をタイプしています)
このとき、新しく列を作成にチェックを付けて任意の列名を設定し、実行します。
ダミーのキー列が作成できました。
全く同じ処理を色のデータフレームでも行いため、ダミーのキー列を追加したステップをコピーします。
ステップがコピーできたら、色のデータフレームに移動し、ステップを貼り付けます。
色のデータフレームにもダミーのキー列を追加することができました。
2つのデータフレームにダミーのキー列を追加することができたので、製品のデータフレームに移動して、「dummy_key」の列ヘッダーメニューから「結合(列を追加する/Join)」を選択します。
結合タイプに「左外部結合(Left Join)」を選択し、結合先データフレームを選択し、実行します。
なお今回、ダミーのキー列は、2つデータフレームで同じ列名になっているので、自動的に結合先のキー列は選択されます。
製品と色の全ての組み合わせを作成することができました。
最後に不要なダミーのキー列を削除します。
ダミーのキー列のヘッダーメニューから、「列を選択/削除」を選択します。
列を選択のダイアログが表示されたら、取り除くにチェックを付けて 実行します。
不要な列を取り除き、全ての製品と色の組み合わせを作成することができました。