いわば守りのデータ準備とも言えるデータクリーニングの次は、攻めのデータ準備とも言える新しい特徴量の作成を行なってみましょう。ここではその基本的な手法として以下の2つをご紹介します
合成変数を追加する
すでにデータ内に存在する列データを組み合わせてあたらしい合成変数を作成する、というのは最も基本的な特徴量エンジニアリングの一つです。例えば、「全口座残高」と「年収入」をもとに、「貯蓄性向」を算出して新しい列データとして追加する際の操作は以下のようになります:
![スクリーンショット 2020-07-12 18.25.04.png スクリーンショット 2020-07-12 18.25.04.png](https://community.datarobot.com/t5/image/serverpage/image-id/4666iC7D7471D0DBFF63A/image-size/medium?v=v2&px=400)
次の例では、ある日付列内の日付からその時点までの経過日数を計算しています。
![スクリーンショット 2020-07-12 18.26.45.png スクリーンショット 2020-07-12 18.26.45.png](https://community.datarobot.com/t5/image/serverpage/image-id/4667i6CA126F8AE9AB4D9/image-size/large?v=v2&px=999)
複数テーブルをマージする
もう一つの代表的な手法は、他のテーブルデータをマージするというものです。例えば、顧客マスター、商品マスターなどをマージすることで顧客や商品に関する属性情報を追加したい、といった場合が考えられます。
![スクリーンショット 2020-07-12 18.30.26.png スクリーンショット 2020-07-12 18.30.26.png](https://community.datarobot.com/t5/image/serverpage/image-id/4668iC74011773BBA7446/image-size/medium?v=v2&px=400)
テーブルをマージするときには「結合キー」を指定する必要がありますが、データソースを管理している管理者でない限り、どの列が結合キーに適しているのか判断がつかないケースもあるでしょう。IDのような列は一つのテーブル内に複数ある場合もあり見分けがつかないケースも想定されます。
DataRobot Data Prepでは、自動的に結合キーのペアを検出する機能があります。これにより一致率の高い列の組み合わせを自動的に見つけることができます。
![スクリーンショット 2020-07-12 18.30.59.png スクリーンショット 2020-07-12 18.30.59.png](https://community.datarobot.com/t5/image/serverpage/image-id/4669iE1287027C7294218/image-size/large?v=v2&px=999)