タブロー 相関の高低

タブロー 相関の高低

Pearson(ピアソン)相関

データ出典


政府統計の窓口、統計で見る日本
家計収支編 → 二人以上の世帯 → 詳細結果表 → 月次 → 2019年5月
<品目分類>1世帯当たり1か月間の支出金額,購入数量及び平均価格
4-1
都市階級・地方・都道府県庁所在市別
二人以上の世帯・勤労者世帯・無職世帯・二人市別

 元データは画像にようなエクセルです。
・タブローからデータへ接続すると品目分類がディメンションに
・各都市(全52都市)ごとの購入頻度と支出金額がメジャーになります。
 メジャーは全部で104種類になります。

抽出データ

 データをTableau Prepでクリーニングします。最終的に、都市と品目をディメンション、支出金額と購入頻度をメジャーにします。

・データにNULLがあるときは「0」ゼロに変換しておいてください。
 今回の分析の目的は支出金額と購入頻度の相関を明らかにすることです。

Pearson相関係数

・購入頻度を列シェルフへ
・支出金額を行シェルフへ
・品目を行シェルフへいれます。

 品目は692種類あるので、品目数ぶんの行数ができます。都市を詳細へドロップして傾向線を挿入します。これで散布図が完成しました。

 Pearson相関係数を返す計算式をつくります。

<計算式>
WINDOW_CORR(sum([支出金額]),sum([購入頻度]))


・「既定の表計算」をクリックします。
・計算の定義のなかの「次を使用して計算」の窓がデフォルトで「自動」になっています。
・窓をクリックして「都市」を選択してOKです。

Pearson判定

 Pearson相関係数の計算結果を判定します。Pearson相関係数は-1~1の範囲になります。値がマイナスのときは負の相関、値がプラスのときは正の相関になるように判別します。

<計算式>
IF [Pearson] <= 0.2 AND [Pearson] > -0.2
THEN '相関なし'
ELSEIF [Pearson] > 0.2 AND [Pearson] <= 0.4
THEN '低い相関(正)'
ELSEIF [Pearson] > 0.4 AND [Pearson] <= 0.7
THEN '相関あり(正)'
ELSEIF [Pearson] > 0.7
THEN '高い相関(正)'
ELSEIF [Pearson] < -0.2 AND [Pearson] >=- 0.4
THEN '低い相関(負)'
ELSEIF [Pearson] < -0.4 AND [Pearson] >= -0.7
THEN '相関あり(負)'
ELSEIF [Pearson] < -0.7
THEN '高い相関(負)'
END
散布図をととのえる

・Pearson判定を列シェルフへ入れて判定ごとの列をつくります。
・Pearson判定を色へドロップします。
・Pearson判定のNULLは除外します。

 これで完成です。相関係数の高低を列と色で判断することができるようになりました。今回のデータではPearson相関係数がマイナス値になる品目がないので4段階の判定結果になりました。

R2計算

R2計算式

 R2はPearson相関係数平方根です。Pearsonをコピペして「SQUARE」で囲めばOKです。

<計算式>
SQUARE(WINDOW_CORR(sum([支出金額]),sum([購入頻度])))


 Pearsonと同様に「既定の表計算」→「次を使用して計算」→「都市」に設定します。

R2判定

 R2値を判定します。R2はPearson相関係数の平方根ですからマイナスが消えて値は0~1の範囲になります。Pearson相関係数と違い負の相関を判別することができません。

<計算式>
IF [R2] <= 0.2
THEN '~0.2'
ELSEIF [R2] > 0.2 AND [R2] <= 0.4
THEN '0.2~0.4'
ELSEIF [R2] > 0.4 AND [R2] <= 0.6
THEN '0.4~0.6'
ELSEIF [R2] > 0.6 AND [R2] <= 0.8
THEN '0.6~0.8'
ELSEIF [R2] > 0.8
THEN '0.8~'
END
R2の散布図をととのえる

 この散布図をあとで使用します。
・アナリティクスタブからクラスターを散布図へドロップします。
・クラスター数は指定しません。空欄のままにしてください。
・都市をラベルへドロップします。

テキスト表をつくる

R2のLOD表現

 行シェルフへ品目をドロップしてR2を計算しようとしても計算できません。これはR2計算関数が「WINDOW_CORR」になっていて、都市を使用した計算式になっているからです。都市を行シェルフへ追加すれば計算できますが、品目だけで計算したいですね。


 R2の計算式を追加します。LOD表現の計算式をつくります。

SQUARE(CORR({FIXED[都市],[品目] :sum([支出金額])},{FIXED [都市],[品目]:sum([購入頻度])}))
R2(LOD)の判定式をつくる

 R2判定式と同じです[R2]を[R2(LOD)]に変更すれば出来上がりです。

<計算式>
IF [R2(LOD)] <= 0.2
THEN '~0.2'
ELSEIF [R2(LOD)] > 0.2 AND [R2(LOD)] <= 0.4
THEN '0.2~0.4'
ELSEIF [R2(LOD)] > 0.4 AND [R2(LOD)] <= 0.6
THEN '0.4~0.6'
ELSEIF [R2(LOD)] > 0.6 AND [R2(LOD)] <= 0.8
THEN '0.6~0.8'
ELSEIF [R2(LOD)] > 0.8
THEN '0.8~'
END
テキスト表をととのえる

 R2判定(LOD)をフィルターへいれてシートへ表示します。計算結果降順に並び替えます。

ダッシュボード

マップをつくる

 都市のマップをつくり、支出金額を色へドロップします。

ダッシュボードをつくる

 フィルターアクションを追加します。R2値が0.4~0.6あたりの品目をみるとおもしろいです。