【初級編】Alteryx検索置換ツールの基本的な使い方や設定方法について解説してみた

<h1>はじめに</h1>

読者の皆様はExcelで大量のデータ集計をする場合、
以下の点に悩まされた事はありませんか？

・ファイルサイズ
・データソース間のデータ収集、および結合
・処理のエラーハンドリング
・データ更新タイミングでの再集計
・集計結果の外部ツール連携

データソースの種類が多岐に渡ることで集計処理に時間が掛かるという課題を抱えている方は多いようです。

こういったケースの場合、
Alteryx Designer に置き換える事で作業の効率化・省力化を図る事が可能になります。

この記事では、
検索置換ツールについて勉強していきます。

<h2>検索置換ツール</h2>

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/427c956e-1a3d-5cdb-354e-8e2a36f32168.png)
この「検索置換」ツールは、1 つの項目値を指定値に置き換えることが可能となっています。
これは、Excelのvlookup関数に該当する機能となっており、検索結果を新たな列として追加するときにも使用できます。

このツールについては、以下のいずれかの方法でワークフローに追加が可能となっています。

・ツール一覧から結合カテゴリにある検索置換ツールを選択し、キャンバスにドラッグする。
・右上の検索画面にて"find"と入力し、検索置換ツールを選択する。

:::note info
<B>ツールコンポーネント</B>

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/3a48e722-bcf3-c899-aee0-ba94517d7505.png)

<dl>
フィルターツールには3つのアンカーがあります。 
  <dt>　■ 入力アンカー</dt>
    <dd>・Ｆアンカー：置換（または追加）される側の情報です。（"F" は "Find (検索)"）</dd>
    <dd>・Ｒアンカー：置換（または追加）に使用するデータの情報です。（"R" は "Replace (置換)"）</dd>
  <dt>　■ 出力アンカー</dt>
    <dd>検索置換ツールの結果が表示されます。</dd>
</dl>
:::

それでは、設定についてみていきましょう。

<h2>ツールの設定</h2>

この検索置換ツールは、「検索」と「置換」という2つのセクションで構成されています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/a615c3cb-2dc2-27d9-480e-de3adae85161.png)

<h3>セクション：検索</h3>

検索対象項目と検索条件を指定するセクションとなっています。

<B>■ 検索対象項目</B>
　どの項目を使用して検索を行うのかを設定する必要があります。
　<img width="63%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/6fe3cfa9-64ca-8922-b98c-f303c1b7fcbe.png">
　・検索対象のフィールド：
　　　検索対象となるＦアンカーの項目を選択します。
　・検索する値：
　　　「検索対象のフィールド」と同じ値が格納されているＲアンカーの項目を選択します。

::: note warn
<B>vlookup関数との類似性①</B>
上記で記載した検索対象項目の設定は、vlookup関数の下記に該当します。

■Excel：vlookup関数
　=vlookup（<font color="red">検索値</font>，<font color="red">範囲</font>，列番号，検索方法）

・検索値：（Ｆアンカーの項目）検索対象のフィールド
・範囲　：（Ｒアンカーの項目）検索する値
:::

<B>■ 検索条件</B>
　このツールでは、「検索する値」がどのように含まれているか細かい設定が可能です。
　<img width="63%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/4913450b-4daa-a283-e7cf-26106eb326aa.png">
　・フィールドの先頭：
　　　「検索する値」で設定した項目値が先頭に存在するものを対象とする
　・フィールドの任意の部分：
　　　「検索する値」で設定した項目値が任意の部分（どこでも可）に存在するものを対象とする
　・フィールド全体：
　　　「検索する値」で設定した項目値が完全に一致するものを対象とする

　・検索時に大文字と小文字を区別しない：
　　　検索文字の大文字と小文字を区別しなくなります。
　・単語全体一致のみ：
　　　先頭と末尾にスペースがある箇所を単体の文字列として認識し、
　　　その部分のみを検索対象として使用できるようになります。

::: note warn
<B>vlookup関数との類似性②</B>
上記で記載した検索対象項目の設定は、vlookup関数の下記に該当します。

■Excel：vlookup関数
　=vlookup（検索値, 範囲，列番号，<font color="red">検索方法</font>）

vlookup関数では、検索方法は"近似一致"か"完全一致"しか指定できないのに対し、
検索置換ツールの方が、より詳細な設定が可能となっていることが分かります。
:::

<hr/>

<h3>セクション：置換</h3>

　検索した結果を対象で置換する項目の追加をするか指定するセクションとなっています。
　<img width="63%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/8034f712-f7db-f49d-d43b-67dae5ff003d.png">
　・見つかったテキストを次のフィールドの値に置換
　　　「検索対象のフィールド」の値を置換する場合に選択します。

　　　この場合、
　　　プルダウンで選択したＲアンカーの項目の値を使用して、対象項目の値が置換されます。

　・フィールドをレコードに追加
　　　Ｒ入力アンカーの対象項目を列として追加する場合に選択します。

　　　この場合、
　　　検索対象が存在するレコードにのみ、Ｒアンカーの項目の値が追加された列に設定されます。
　　　※検索結果として該当なしとなったレコードについては、Nullが設定される。

::: note warn
<B>vlookup関数との類似性③</B>
上記で記載した検索対象項目の設定は、vlookup関数の下記に該当します。

■Excel：vlookup関数
　=vlookup（検索値, 範囲，<font color="red">列番号</font>，検索方法）

vlookup関数では、列の追加のみなのに対し
検索置換ツールは置換も行えるため、項目を増やさず集計の粒度の変更が可能となります。
:::

<h2>結合ツールとの違いについて</h2>

検索置換ツールでは、列を追加すると言う結合ツールと同様の機能があります。
そのため、どのような違いがあるかについてまとめていきます。

まずは、結合条件の指定についてです。

| 概要 | 結合ツール | 検索置換ツール |
|:---------------------|:-----------------------|:-----------------------|
|条件指定（項目）　　　|複数項目の指定可能　　　|単一項目のみ指定可能　　|
|条件指定（方法）　　　|完全一致のみ　　　　　　|部分一致も可能　　　　　|

結合ツールでは、
条件として指定できる項目は複数選択することはできますが、
そのすべてが完全に一致する場合しか列の追加（結合）はされません。

検索置換ツールでは、
逆に条件として指定できる項目は単一の項目しか選択することはできますが、
部分一致と言った特殊なケースの場合でもレコードの列の追加（結合）が行えます。
　
　
次に、結合の結果についてです。
ここでは、Ｒアンカーに該当レコードが複数ある場合を記載します。
| 概要 | 結合ツール | 検索置換ツール |
|:-----------|:------------|:-------------|
|結合の結果（単一）|正常に列が追加される|正常に列が追加される|
|結合の結果（複数）|重複した分レコードが増える|最終レコード情報のみ設定される|
|結合の結果（なし）|結合されない|Nullが設定される|

結合の結果が単一となる場合、どちらのツールでも結果は変わりありませんが、
それ以外の場合は、結果に違いが出てきます。

これらの違いは、使用目的によって影響が出る可能性がありますので注意してください。

<h1>ワークフロー作成（イメージ）</h1>

実際にAlteryx Designer上で対象ツールを使用したワークフローを作成していきたいと思います。

<h5>①配置</h5>
結合カテゴリから検索置換ツールを選択し、キャンバスエリアにドラッグし配置します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/3e83e45b-9a06-e8a9-f512-36155ee887f8.png)

<h5>②設定</h5>
検索置換ツールの設定をします。<br>
※設定方法については、前段の「ツール設定」を参照

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/4eea76ff-d81a-d187-705e-fbed02c8c62c.png)

<h5>③実行</h5>
「実行」ボタンを押下することで作成したワークフローが実行され、<br>
ツールに設定した内容で出力されていることを結果ウィンドウにて確認できます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/0e0167ce-0ffa-44e4-1ddc-607a321d09dd.png)

<h1>おわりに</h1>

ここでは、データソースからのデータ収集をAlteryx Designer ではどのように設定するかについて説明しました。

今回の内容は以下のタグでツール毎に紹介していますので、よければ他のツールについてもご参照いただければ幸いです。

<h1>仲間募集</h1>
NTTデータ テクノロジーコンサルティング事業本部 では、以下の職種を募集しています。

<details>
<summary>1. クラウド技術を活用したデータ分析プラットフォームの開発・構築(ITアーキテクト/クラウドエンジニア)</summary>
クラウド／プラットフォーム技術の知見に基づき、DWH、BI、ETL領域におけるソリューション開発を推進します。<br>
<a href="https://enterprise-aiiot.nttdata.com/recruitment/career_sp/cloud_engineer">https://enterprise-aiiot.nttdata.com/recruitment/career_sp/cloud_engineer</a>
</details>

<details>
<summary>2. データサイエンス領域（データサイエンティスト／データアナリスト）</summary>
データ活用／情報処理／AI／BI／統計学などの情報科学を活用し、よりデータサイエンスの観点から、データ分析プロジェクトのリーダーとしてお客様のDX／デジタルサクセスを推進します。<br>

https://enterprise-aiiot.nttdata.com/recruitment/career_sp/datascientist
</details>

<details>
<summary>3.お客様のAI活用の成功を推進するAIサクセスマネージャー</summary>
DataRobotをはじめとしたAIソリューションやサービスを使って、
お客様のAIプロジェクトを成功させ、ビジネス価値を創出するための活動を実施し、
お客様内でのAI活用を拡大、NTTデータが提供するAIソリューションの利用継続を推進していただく人材を募集しています。<br>

https://nttdata.jposting.net/u/job.phtml?job_code=804
</details>

<details>
<summary>4.DX／デジタルサクセスを推進するデータサイエンティスト《管理職/管理職候補》</summary>
データ分析プロジェクトのリーダとして、正確な課題の把握、適切な評価指標の設定、分析計画策定や適切な分析手法や技術の評価・選定といったデータ活用の具現化、高度化を行い分析結果の見える化・お客様の納得感醸成を行うことで、ビジネス成果・価値を出すアクションへとつなげることができるデータサイエンティスト人材を募集しています。<br>

https://nttdata.jposting.net/u/job.phtml?job_code=898
</details>

<h1>ソリューション紹介</h1>

<details>
<summary>Trusted Data Foundationについて</summary>
～データ資産を分析活用するための環境をオールインワンで提供するソリューション～<br>

https://enterprise-aiiot.nttdata.com/tdf/<br>

最新のクラウド技術を採用して弊社が独自に設計したリファレンスアーキテクチャ（Datalake+DWH+AI/BI）を顧客要件に合わせてカスタマイズして提供します。
可視化、機械学習、DeepLearningなどデータ資産を分析活用するための環境がオールインワンで用意されており、これまでとは別次元の量と質のデータを用いてアジリティ高くDX推進を実現できます。
</details>

<details>
<summary>TDFⓇ-AM（Trusted Data Foundation - Analytics Managed Service）について</summary>
～データ活用基盤の段階的な拡張支援（Quick Start) と保守運用のマネジメント（Analytics Managed）をご提供することでお客様のDXを成功に導く、データ活用プラットフォームサービス～<br>

https://enterprise-aiiot.nttdata.com/service/tdf/tdf_am<br>

TDFⓇ-AMは、データ活用をQuickに始めることができ、データ活用の成熟度に応じて段階的に環境を拡張します。プラットフォームの保守運用はNTTデータが一括で実施し、お客様は成果創出に専念することが可能です。また、日々最新のテクノロジーをキャッチアップし、常に活用しやすい環境を提供します。なお、ご要望に応じて上流のコンサルティングフェーズからAI/BIなどのデータ活用支援に至るまで、End to Endで課題解決に向けて伴走することも可能です。
</details>

<details>
<summary>NTTデータとTableauについて</summary>
ビジュアル分析プラットフォームのTableauと2014年にパートナー契約を締結し、自社の経営ダッシュボード基盤への採用や独自のコンピテンシーセンターの設置などの取り組みを進めてきました。さらに2019年度にはSalesforceとワンストップでのサービスを提供開始するなど、積極的にビジネスを展開しています。

これまでPartner of the Year, Japanを4年連続で受賞しており、2021年にはアジア太平洋地域で最もビジネスに貢献したパートナーとして表彰されました。
また、2020年度からは、Tableauを活用したデータ活用促進のコンサルティングや導入サービスの他、AI活用やデータマネジメント整備など、お客さまの企業全体のデータ活用民主化を成功させるためのノウハウ・方法論を体系化した「デジタルサクセス」プログラムを提供開始しています。

https://enterprise-aiiot.nttdata.com/service/tableau
</details>

<details>
<summary>NTTデータとAlteryxについて</summary>
Alteryxは、業務ユーザーからIT部門まで誰でも使えるセルフサービス分析プラットフォームです。
Alteryx導入の豊富な実績を持つNTTデータは、最高位にあたるAlteryx Premiumパートナーとしてお客さまをご支援します。

導入時のプロフェッショナル支援など独自メニューを整備し、特定の業種によらない多くのお客さまに、Alteryxを活用したサービスの強化・拡充を提供します。

https://enterprise-aiiot.nttdata.com/service/alteryx
</details>

<details>
<summary>NTTデータとDataRobotについて</summary>
DataRobotは、包括的なAIライフサイクルプラットフォームです。
NTTデータはDataRobot社と戦略的資本業務提携を行い、経験豊富なデータサイエンティストがAI・データ活用を起点にお客様のビジネスにおける価値創出をご支援します。

https://enterprise-aiiot.nttdata.com/service/datarobot
</details>

<details>
<summary>NTTデータとInformaticaについて</summary>
データ連携や処理方式を専門領域として10年以上取り組んできたプロ集団であるNTTデータは、データマネジメント領域でグローバルでの高い評価を得ているInformatica社とパートナーシップを結び、サービス強化を推進しています。

https://enterprise-aiiot.nttdata.com/service/informatica
</details>

<details>
<summary>NTTデータとSnowflakeについて</summary>
NTTデータでは、Snowflake Inc.とソリューションパートナー契約を締結し、クラウド・データプラットフォーム「Snowflake」の導入・構築、および活用支援を開始しています。
NTTデータではこれまでも、独自ノウハウに基づき、ビッグデータ・AIなど領域に係る市場競争力のあるさまざまなソリューションパートナーとともにエコシステムを形成し、お客さまのビジネス変革を導いてきました。
Snowflakeは、これら先端テクノロジーとのエコシステムの形成に強みがあり、NTTデータはこれらを組み合わせることでお客さまに最適なインテグレーションをご提供いたします。

https://enterprise-aiiot.nttdata.com/service/snowflake
</details>


タグ：Alteryx