LoginSignup
1
0

More than 1 year has passed since last update.

Alteryxで項目ごとにグループ番号を付与する

Last updated at Posted at 2022-12-19

1. はじめに

Alteryxで項目ごとにグループ番号を付与するフローを作りました。
画像1.png

2. ワークフロー

まずは全体像です。
画像2.png

マクロ(青い丸)のフローです。
画像3.png

2.1 全体像の説明

画像4.png

①インプットデータ
今回はポケモンの新作ゲームに登場するポケモンのデータを使用

②インプットデータ
「名前、分類、タイプ、特性」の順に4項目を1グループとしたいので、グループの先頭となる「名前」を先頭カラム名としてセット

③マクロ
マクロで処理をすると「group_ID」という列が追加される

④クロスタブツール
クロスタブツールでデータを横持ちにする

⑤閲覧ツール
データ整形の完成!!!

2.2 マクロの説明

画像9.png

①マクロ入力ツール
2.1 全体像の説明の①インプットデータが入る

②セレクトツール
項目とデータの列は文字列なので、型は「V_Wstring」、サイズは「1073741823」にセット
画像10.png

③レコードIDツール
後の処理でデータの順番が混ざらないようにレコードIDを追加する

④フィルターツール
「項目」列から「名前」というレコードをTrueへ、それ以外のレコードをFalseへ分ける
画像11.png

⑤コントロールパラメータとアクションツール
コントロールパラメータには2.1 全体像の説明の②インプットデータが入る
アクションツールを図のような設定にする
※インプットデータが④フィルターツールの「名前の欄」に設定することができる
※今回は「名前」をグループの先頭に指定しているが、他の項目でも対応可
画像12.png
[#1]はインプットデータの「名前」が入る
画像15.png

⑥フォーミュラツール
「名前」というレコードをグループの先頭にしたいので、dummy列を追加し「1」を設定する

⑦レコードIDツール
名前のレコードに1から番号を追加する

⑧フォーミュラツール
「名前以外」のレコードにdummy列を追加し「2」を設定する

⑨ユニオンツール
⑦と⑧のレコードを結合する

⑩ソートツール
RecordID列を昇順、dummy列を昇順に並び替える

⑪複数行フォーミュラツール
「group_ID」にデータがなければ、「1つ上のgroup_IDのデータ」を設定
「group_ID」にデータがあれば、そのまま
というif文を書く
画像16.png

⑫セレクトツール
必要のない列を消してマクロの処理は完了!!!

おわりに

Alteryxで項目ごとにグループ番号を付与するフローをご紹介しました。
よく使うフローはマクロにすると呼び出すだけなので楽ちんですね。

参考

ポケモンのデータ

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0