見出し画像

SQL分析データ準備と基礎統計#03:集約変数

変数を作成する典型的なパターンの1つとして時系列のデータを集約する場合があります。一定の期間単位(月、年、セッション)における指標を集約し、それを変数としてそのまま使う場合もありますし、その後2期間における比較を行う場合もありますが、いずれにしてもまずは集約します。以下に代表例を示します。例として月別の売上金額を集約することを考えます。

  • sum: 売上金額合計月

  • avg: 売上金額平均月

  • min: 売上金額最小月

  • max: 売上金額最大月

  • count: 売上回数月

  • stddev_pop: 売上金額標準偏差月

  • stddev_pop / avg: 売上金額変動係数月

また、2つの売上カテゴリーがあるとして、これを織り交ぜて変数を作る場合の例だとこんな感じになります。

  • カテゴリーA割合: sum(case when カテゴリー='A' then 売上金額 else 0 end) / nullifzero(cast(sum(売上金額金額) as float))

  • カテゴリーBの売上を8がけに: sum(case when カテゴリー='A' then 売上金額 else 0.8*売上金額 end)

  • それぞれを横持(カテゴリーA): max(case when カテゴリー='A' then 売上金額 else 0 end)

  • それぞれを横持(カテゴリーB): max(case when カテゴリー='B' then 売上金額 else 0 end)

SQLにすると以下のような感じになります。

 ///

#sql #teradata #analytics  

いいなと思ったら応援しよう!