【Alteryx Tips】Alteryxのマクロの作り方【マクロ概要説明編】

Alteryxのマクロ作成を行おう①(概要編)

Alteryxマクロとは?

Alteryxは非常に有用なツールです。ですが複雑な事を行う場合、ワークフローは長く複雑になりがちです。また同じ処理の繰り返しも発生しやすくなります。そこで、役に立つのが「Alteryxマクロ」です。標準のAlteryxツールにも幾つかAlteryxマクロが含まれています。ツールを右クリックして「マクロを開く」という項目が表示されるツールは全部マクロです。

試しにインピュテーションツールの中身を見てみると複雑なワークフローが組まれています。

マクロはこの様に複雑な処理を行うワークフローを、一つのツールとして提供することができます。

マクロの種類

Alteryxのマクロには以下の種類があります。

マクロの種類 内容
標準マクロ(Standard macro) 標準のマクロです。
バッチマクロ(Batch macro) 制御パラメータを用い、複数回のマクロ実行を1回のワークフロー上で行えるマクロです。
反復マクロ(Iterative macro) 設定された条件をクリアする、もしくは設定された繰り返し上限数まで処理を繰り返すマクロです。
位置最適化マクロ(Location Optimizer macro) 最適な場所を識別するためのマクロです。

マクロの基本

タイプの変更方法

マクロの種類の変更や、標準ワークフローからマクロに変更する場合は、ワークフロータブにてタイプをマクロに変更します。

もしくは次のツールをワークフローに配置すると、自動的にマクロに変更されます。

ツール名 対応するマクロの種類
マクロ入力(Macro Input ) 標準マクロ、反復マクロ、位置最適化マクロ。配置するとデフォルトは標準マクロになります。
マクロ出力(Macro Output ) 標準マクロ、反復マクロ、位置最適化マクロ。配置するとデフォルトは標準マクロになります。
コントロールパラメーター(Control Parameter) バッチマクロのみ。配置するとバッチマクロになります。

マクロの基本設定

マクロの基本設定はインターフェースデザイナーより行います(インターフェースデザイナーが画面上に開いていない場合は、メニューの「表示」から開いてください)。

標準マクロ

標準マクロの設定は、マクロ共通の設定のみです。

バッチマクロ

バッチマクロの設定は、出力モードの選択が追加されます。

反復マクロ

反復マクロは、マクロの処理で条件を満たさない場合に繰り返し処理を行うマクロです。

反復出力に設定されたマクロ出力ツールのレコードが、繰り返しの時に次の反復入力として用いられます。この時、反復入力と反復出力は同じフィールド構成でないといけません。

設定項目 内容
反復入力 反復入力に使う「マクロ入力」ツールを選択します。
反復出力 反復出力に使う「マクロ出力」ツールを選択します。
最大反復回数 反復回数の最大数を設定します。
最大反復回数に達したとき 最大反復回数に達しても、反復出力にレコードが存在している場合の処理を選択します。
出力モード マクロの出力を選択します。

また、マクロの定数として「IterationNumber」という定数が追加されます。繰り返す毎に「1」づつ追加される定数で関数などで利用できます。

位置最適化マクロ

位置最適化マクロは、複数の候補ポイントからスコアが最大、もしくは最小になるように指定された場所の選択を行うマクロです。スコアの評価方法が単純要素である場合は位置最適化マクロを使う必要は必要ありませんが、複雑な条件の場合は効果を発揮します。このマクロは条件が複雑であるほど効力を発揮するため複合マクロとして作成されることが多いです。

位置最適化マクロの設定は多い為、2画面に分かれています。

項目 内容
追加する場所の数 候補ポイントを選定する数を指定します。
速度/最適化 速い ワークフローを高速に実行しますが、精度が低下します。
バランスした 速度、精度のバランスを取ります。ワークフローは最初は低速高精度で実行され、それから高速処理になります。
正確 精度優先設定ですが、ワークフローの実行速度が低下します。
カスタム 手動で設定します。n世代以内にn%を設定します。
ランダムシード 自動 候補ポイントの選定に使用するランダムシードを自動で選定します。実行する度に選択されるランダムシードが変更されるため、最終結果が常に同じ結果になりません。
特定の 候補ポイントの選定に使用するランダムシードを指定します。最終結果は常に同じ結果になります。

項目 内容
可能性がある場所の入力 候補ポイントが接続される「マクロ入力」ツールを選択します。
スコアリング出力 算出されたスコアが出力される「マクロ出力」ツールを選択します。
より高いスコアリングのために最適化する スコアが高くなるように候補を選定します。
より低いスコアリングのために最適化する スコアが低くなるように候補を選定します。

 

別記事にて実例を交えて各マクロを説明します。

 

※Alteryx Version 2018.4.5時点での情報です

おすすめの記事