
【 Alteryx One 】 Designer Cloud の Window関数ツールを使用して移動平均を算出してみた
こんにちは、MDSチームのikumiです。
今回は、Alteryx One の Designer Cloud 上で利用できる Window関数ツール(rolling window) を使用してみましたので、その内容について記載していきます。
Window関数ツール(rolling window)について
Window関数ツールは、Designer CloudでLiveQueryを使用している場合に利用できるツールです。
Window関数は、SQL集計でも一般的に利用される集計の方法の一つで、「自分の行だけでなく、その前後の行を含めた範囲(窓)で集計を行う」ことの出来るツールです。通常の集計ツール(Summarize)がデータ全体やグループごとに行数を減らして計算するのに対し、Window関数ツールは行数を維持したまま、各行に対して「直近3行の平均」や「累計」などを計算できるのが特徴です。
これは個人的な感想ですが、Designer Cloud版はDesigner Desktop版と比較すると、利用できるツールが少ないですが、LiveQueryでは独自のツールが利用出来るなど、Cloud版ならではの使い方もできるので、どんどん使いやすくなってきている印象です。
Window関数ツールで使える集計オプション
Window関数ツールでは、以下の集計オプションが利用できます。詳しい構成ステップについては、ぜひドキュメントも併せて参照ください。

| 関数名 | 内容(何を計算するか) |
|---|---|
| Sum | 合計。範囲内の数値をすべて足し合わせる。 |
| Avg | 平均。合計を個数で割った値を算出する。 |
| Count | データ数。行の数を数える。 |
| Max | 最大値。範囲内で最も大きい値を出す。 |
| Min | 最小値。範囲内で最も小さい値を出す。 |
| Mode | 最頻値。最も出現回数が多い値を出す。 |
| StdDev | 標準偏差。データのバラつき度合いを出す。 |
| Variance | 分散。偏差の2乗。データの散らばり具合。 |
検証環境
- Alteryx One Enterprise
- 接続先:BigQuery LiveQuery ※現在はパブリックプレビュー
なお、BigQueryの接続方法については以下のブログを参考にしてください
使ってみた
今回は、以下の2つのケースでWindow関数ツールを使ってみました。
- 7日間移動平均の算出
- 売上構成比の算出
データは小売の売上データを使用しました。

7日間移動平均の算出
- まずは通常の集計ツールで日別の売上合計を算出します

- 続いて、Window関数ツールを接続し、以下の通り構成することで、7日間移動平均の算出ができました
- Create New Culmun
- New Culumn Name :
7日間移動平均 - Aggregate Function:
Avg - Culmun to Aggregate:
Sum_SALES - Set Window Range :
N Rows Before Current Row※現在の行からN行遡って計算する - Number of Rows Before Current Row :
6 - Sort By :
ORDER_DATE

- 設定は以上となります。
- Set Window Rangeの設定について、慣れるまでは色々動かしながら正しい設定をしていくことになるかもしれませんが、Desktop版だと、複数行フォーミュラツールで複雑な計算を作ったり、Pythonツールなどで実装したりしていたので、かなりかなり便利ですよね✨
売上構成比の算出
- 今回のケースでは、
L_CATEGORY内での、M_CATEGORYの売上構成比を計算していきます - まずは、通常の集計ツールでカテゴリごとの売上合計を算出します

- 続いて、Window関数ツールを接続し、以下の通り構成し
L_CATEGORY全体の売上を算出します- Create New Culmun
- New Culumn Name :
Lカテ合計 - Aggregate Function:
SUM - Culmun to Aggregate:
Sum_SALES - Set Window Range :
N Rows Before Current Row Until Last Row※現在の行からN行前~最後の行まで計算する - Number of Rows Before Current Row :
10※カテゴリ数分だけカバーできる数値に設定 - Sort By :
ORDER_DATE - Group By :
L_CATEGORY

- 最後に、フォーミュラツールで構成比の計算をして以上となります

- こちらについても、Designer Desktop版で実装する場合は、L_CATEGORY全体の売上とM_CATEGORYごとの売上を分けて計算してから結合を行うなど、フローが煩雑になるような実装が必要でしたので、Window関数ツールを使用してスッキリと計算することができました
さいごに
いかがでしたでしょうか。今回は、Desiner CloudのWindow関数ツールを試してみましたので、どなたかの参考になれば幸いです。










