【応用編】Alteryx：検索置換ツールを使ったデータ整形フロー作成を解説してみた

<h1>はじめに</h1>

ここでは、初級編で解説した「検索置換」ツールを使って、
フローの作成とその結果がどうなるのかについて見ていきたいと思います。

:::note info
「検索置換」ツールの初級編については、
[「検索置換」ツールの基本的な使い方](https://qiita.com/Anna-Fukushima/items/2a0dfc884aa38907f7f4)を参照ください。
:::

今回使用するデータについては、下記となっています。

<B>■ 取引データ</B>：取り扱っている商品の売上に関する情報
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/8745945f-00cc-673e-208a-b14c20ce2b5f.png)

<B>■ 地方データ</B>：全都道府県が属する地方名称の情報
<img width="10%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/292e717d-5ab5-2037-73b7-4a7a660dce20.png">


また、作成するにあたって以下を実現する必要があることとしています。

　・「取引データ」の項目：都道府県がどの地方に属しているのかを確認したい
　・関東地方については取引が多いため都道府県のままで確認したい
　・上記を1つの項目として確認したい

　
読者の皆様が上記のような要望をいただき、
もしExcelでデータ整形を行う場合は、VLOOKUP関数を使用することが多いのではないでしょうか。

Alteryx Designer では、同様の処理を「検索置換」ツールで実現が可能となっていますので、実際に作成していきたいと思います。

　
最終的に下記のようなフローを作成します。
<img width="60%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/be8a3deb-e3f0-aa86-ddfa-6572353b21bc.png">

　
それでは、作成していきたいと思います。

<h1>Alteryx Designer フロー作成</h1>
<h3>① データの読込</h3>

　まずは、使用する2つのデータを読み込みます。
　読込については、「データ入力」ツールを配置しましょう。
　<img width="90%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/f70cad11-f562-5e05-f708-4ba33728160c.png">

　データを２種類読込ませると、このようになります。
　<img width="90%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/85e8b76d-5bf6-778b-7f80-7ddf85d4147e.png">

<h3>② データの置換</h3>

　<B>都道府県がどの地方に属しているのかを確認する</B>必要があるため、
　読み込んだ２つのデータの紐づけをしていきたいと思います。

　紐づけをするにあたって、
　ここでは「検索置換」ツールを使用していきますので、配置しましょう。
　<img width="90%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/c5646374-3271-1203-1c42-6447dfd63d22.png">


　配置ができたら、設定をしていきます。

　検索する項目の箇所については、「フィールド全体」を選択。

　検索対象フィールドに「取引データ」の項目：都道府県を、
　検索する値に「地方データ」の項目：都道府県を設定します。

　この設定で、都道府県の値が完全に一致するデータを紐づけできるようになります。

　<img width="90%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/2ae812dc-5bfe-77d5-6ad6-9ad7ad32f4eb.png">

　次に置換に関する設定をしていきます。

　今回はそのまま項目の値を置換していきたいと思いますので、
　「見つかったテキストを次のフィールドの値に置換」を選択し、
 　置換対象項目として「地方データ」の項目：地方を設定しましょう。

　<img width="90%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/f43c5136-c550-cd80-0e55-087760cb4541.png">

　これで、「検索置換」ツールに関する設定は完了となります。
　最後に処理結果の確認のため、「閲覧」ツールを配置して「検索置換」ツールと結びつけます。

　<img width="90%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/5feca1fa-163c-a856-4a6a-aa463fd97b1e.png">
 
　<img width="90%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/686a4dbe-8c6b-c0fc-7c6a-2443ab4efded.png">

　それでは、フローを実行してみます。
　実行すると「閲覧」ツールで結果の確認ができます。

　<img width="90%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/0ff9698c-651f-5c49-a078-a802cd9670ba.png">

　ここで、項目：都道府県の値が「地方データ」の項目：地方の値で、
　置換されていることが確認できますね。

　
　ですが、このままだと前提となっていた、
 　<B>関東地方については取引が多いため都道府県のままで確認する</B>ことができません。

　そのため、もう一つツールを配置してみましょう。

<h3>③ データの選択</h3>

　先ほどのフローに「フィルター」ツールを設定して、
　「地方データ」から関東を除外していきたいと思います。

　<img width="90%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/65306951-780e-a43c-1dd2-11dfca0e8e61.png">

　ここで、項目：地方が"関東"と"等しくない"データを取得するように設定していきましょう。

　<img width="90%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/4c1327a7-dc76-7d0a-0c6c-8695738bc59f.png">

　設定が終わったら、再度フローを実行してみます。

　<img width="90%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/894b85c2-43c1-25d4-c307-23de1abd5bfc.png">

　これで、1つの項目上で関東圏の都道府県名とその他の圏が確認できるようになりました。


<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