WeeklyAlteryxTips#37 集計ツールのカウントとレコードカウントツールの違いについて

Alteryx

今回は比較的よくしている話です。

レコードのカウントを取るときになんのツールを使っているでしょうか?集計ツールでしょうか?それともレコードカウントツールでしょうか?

この2つのツールには明確に違いがあるので、今回はそのお話をしたいと思います。

集計ツールのカウントとレコードカウントツールは何が違うの?

ずばり答えを言うと、「レコード数が0のときの挙動が異なる」です。「レコードが0のときに、0と表示してくれるのがレコードカウントツール。表示せずカウント自体が行われないのが集計ツール」です。この違いはワークフローを作る上で大きな違いとなります。

例:データを読み込んだときのカウント数を取得したい

ファイルやデータベースからデータを読み込んだ際にレコード数に応じて挙動を変えるとします。特に、レコード数が0の時はエラーとして表現したい、とします。

このようなケースではレコードカウントツールを使います。

試しに比べてみましょう。比較専用のワークフローですが、以下のようになります。

メッセージツールはレコードのカウントが0のときにエラーが出るように設定しています。つまり、以下のように設定しています。

データが読み込めれば以下のようになります。

もちろん、メッセージツールはエラーを出しません。

それでは、空っぽのCSVファイルを読んでみましょう。

レコードカウントツール側のメッセージツールだけエラーが出ています。

閲覧ツールを見てみると以下のようになっています。

確かにレコードカウントツールはカウントが0でもカウントしていますが、集計ツールはそもそもカウントしていません。

複数カテゴリのアイテムのカウントに対して0を出力できませんか?

レコードカウントツールは0もカウントできる有用なツールということがわかりました。それでは、以下のようにカテゴリをカウントしたときに、0件でも出るようにできませんか?

答え:できません

レコードカウントツールはグループ化してカウントすることはできないため、グループ化しつつ0件なのかどうか、といったカウントはできません。総数であれば0というカウントはできますが、そもそもフィールド内にどんなレコードがあるのかわからない状況で各アイテムのカウントが0であるかどうか、といった判断はできません。このようなケースではあらかじめマスターを持っておき、それと比較するようにしましょう。

例えば、以下のようなワークフローが考えられます。

テキスト入力ツールでは、以下のようなカテゴリに対してあらかじめ0を入れたデータを用意しておきます。

これにより、以下のように出力されます。

※実は、レコードカウントツールはマクロですが、同じような方式となっています

まとめ

  • レコードカウントツールと集計ツールの違いを紹介しました
  • レコードカウントツールは0をカウントしますが、集計ツールはレコードが0の場合はカウントしません

サンプルワークフローダウンロード

次回

未定です。

コメント

タイトルとURLをコピーしました