AWS Quicksightデータセット内でデータを結合する!
どもどーもmanebi開発クラ部の中の人、お馴染みのマネージャJですです!QuicksightのMagazineを設定して以来、逆に更新が止まってしまってたので、、、久々にMagazineを増やしたろう!と記事を書き始めます!
これまでは、Quicksightを利用する下地としてRDSに接続したり、MySQL内のデーブル構造を調べたり、とあるデータセットを単体で自動実行させるためのSQL修正をしたりといったことを紹介してきましたが、今度こそ?醍醐味?とも言えるJoinを使ってやろうと思います。
そもそもQuicksightの構造?
筆者なりに考えるに、Quicksightは、データを収集してプレパレーションする「データセット」、そのデータセットを使って様々な角度で分析を行う「分析」、分析した結果を確認する人のために公開する「ダッシュボード」で構成されていると思います。ざっくり図示すると以下のような感じでしょうか。
※違ってたらごめんなさい🤐
今回は、分析に利用するためのデータとして、異なるデータソースからのいくつかのものを結合(Join)して、様々な角度から確認ができるようにしてみたいと思います。
新しいデータセットの追加
いつものメニューから「新しいデータセット」を選択して、データソースを選びます。
今回は、エクセルデータ2つ、Salesforceデータ1つをガッチャンコしたいのでまずはエクセルデータから追加して行きます。
1つ目のデータセットが読み込まれますが、これだけで終わらないので「設定の編集とデータの準備」を選びます。
これで1つ目のデータが読み込まれ、図のようにフィールドとプレビューが出てきます。
ここで、想定していないデータ型(数値なのに文字列と認識されているとか)になっていたら、フィールド領域でデータ型を変更することができます。
これで分析を作りたくもありますが、まだ1つ目だけなので、右上のデータを追加を選択して、2つ目、3つ目のデータを同じ要領で追加します。
すると、以下の図のようにデータが揃っている状態になります。
※もし、読み込んだデータのうち、同じようなフィールド名(カラム名)が複数存在する場合は、分析でややこしくなるので、フィールド領域の「︙」からフィールド名をユニークな名前に変更しておくことをお薦めします。
データ同士の結合
データは3つ揃ったものの、上記の図のように互いの関係性がなく、このままだとプレビューすら出てきません。
そこで、データの結合(Join)の出番です。
まず、結合対象のデータ同士の接点を選び、結合対象となるフィールドを選びます。
ここでの注意点は、完全一致する値であること、結合対象のフィールドのデータ型が同じであることが挙げられます。
それができたら、次は結合タイプを選ぶ必要がありますが、データベースを知っている人じゃなかったら混乱するかもしれません。
以下のサイトがまとまっているので、どちらの向きにすべきか。参考に見てみてください。
※ちなみに、なんの関わりもないところですが、わかりやすかったので、リンクはらせて頂いてます。
この作業を2つの接点にそれぞれ行うと図のように結合が成功した接点となります。
ここまで成功したら、プレビュー領域も見えるようになりますし、加えて、左側のフィールド領域には、結合対象となっているすべてのデータのフィールドが表示されます。
※上述のフィールド名変更の注意書きはここで役に立ちます。似通ったフィールド名がたくさんある場合、こんがらがって何がなんだかわからなくなります。
筆者は癖で?データ名.フィールド名に変更しておくようにしています。
例)ID.名前、Rodo.金額、SF.都道府県・・・など
ここまで来たら、後は、このデータセットを保存して、可視化「分析」でグラフを作って遊べるようになりますね。
今回は異なるデータソースのデータを結合するやり方をやってみました。次は予測機能を使ってみたいと思います!
この記事が気に入ったらサポートをしてみませんか?