web解析・ウェブマーケティングに便利なRegEX(正規表現)ツール

データ分析が、ドラッグ&ドロップ中心で簡単にできる”Alteryx”

Alteryxにも「正規表現」ツールがあり、こちらは
web解析やwebスクレイピングを行う際に大変便利です。

今日はそのツールの使い方についてご紹介いたします。

こんにちは、PR担当Saoriです。

”Alteryx”は、処理ツールをドラッグ&ドロップし、
線をつなげていくことで「ワークフロー」という処理の履歴を構築し、再生ボタンを押すことで、処理が実行できるため、
とても分かりやすいのが強みの統計ツール

正規表現と聞くと、今まで難しい感じがして拒否していました。

ですがAlteryxだと簡単に使うことが出来ます。

今ではちょっとしたデータ抽出はこのRegEX(正規表現)ツールを使って処理しています。

今日はそのツールの使い方について、ご紹介いたします。

※今回ご紹介している設定画面のキャプチャは、 AlteryxDesigner2019.1 日本語版 を利用しています。

Alteryx RegEX 正規表現 ツール アイコン画像RegEX(正規表現)ツール

正規表現(Regular expression)とは

そもそも、正規表現とは何か?をここでご説明いたします。

正規表現とは、特定の文字列を使い、パターンを表現することです。
その表現をするためのルールを使い、複数の条件や幅のある条件のデータを1つのツールで簡単に取り出したり、検索を行うことが出来ます。

記号を使って複数条件のデータを取り出せるため、初心者には使いづらい印象はあるかと思いますが、
(特に複数条件を組み合わせた正規表現はさながら暗号のようです。)
これだけたくさんのエンジニアが様々なアプリケーションに使っていると思うと、
大変便利な処理方法かと思います。

Alteryxの正規表現(RegEX)ツール

正規表現の構文を使って、データを解析・照合・置換するためのツールです。

出力する方法は大きく4つになります。

  • パース(解析):式を新しいフィールドに区切って、出力フィールド名、 フィールドタイプ、サイズ、式を指定できるようにします。
  • 置換:検索した式を2番目の式で置き換えます。
  • トークン化:正規表現を使用してデータを分割します。列または行に分割することが可能です。
  • 一致:致メソッドは、式が文字列と一致するかどうかに基づいて1または0のいずれかを割り当てます

 

また、正規表現は本当にいろいろありますし、ルールやパターンを覚えるのも大変なのでは・・・となりますが、
AlteryxDesignerのRegEX(正規表現)ツールは、設定画面のプルダウンをクリックすると、よく使われる表現について説明をしてくれます。

Alteryx RegEX 正規表現ツール 説明画面

 “+”マークをクリックすると内容をご確認いただけます。 
RegEX(正規表現)ツールのサポート表現一覧
記号 意味
. 任意の一文字
* 0回またはそれ以上の繰り返し
+ 1回またはそれ以上の繰り返し
\< 単語の始まり
\> 単語の終わり
^ ラインの始まり
$ ラインの終わり
\n 改行
\t タブ
\s 空白文字(スペース)
\ エスケープ特殊文字
\d 数値
\l 小文字
\u 大文字
[[:alpha:]] 任意の(非数値)文字
\w 単語文字
\W 非単語文字
\<\w+\> 単語全体
[] セット内のいずれか1つのキャラクター
[^] セットにない任意の一文字
| または
() マークされたグループ
(?:) マークされていないグループ

 

RegEXツールを使った具体的な事例

それでは、具体的な使い方を2つご紹介いたします。

①英数字を”文字”と”数字”に分割

会員番号や商品番号など、英数字で表現している場合に分割したい。
という場合に使います。
特に桁数が必ずしも一緒ではないような、会員番号など、”条件”が行ごとに変わる場合のデータを取り出すのに
大変便利です。

例えばこちらの変換はRegEX(正規表現)のワークフローはこのようになります。
とてもシンプルです。
※正規表現ツール1つで実現することも可能かと思いますが、簡単な方法で今回はご紹介しております。

Alteryx RegEX 正規表現ツール 事例 ワークフロー英数字分割

設定画面もどのフィールドに対して何をするのか?をシンプルに指定するのみです。

なお、今回利用した正規表現は、以下です。

英文字:¥u (英語を1文字取り出す”¥u”)
数字:¥d+ (数字を1文字取り出す”¥d”と繰り返す意味の”+”)

Alteryx RegEX 正規表現ツール 事例 設定画面 英数字分割

これにより、

元々あった英数字が英語と数字に分かれています。

すごくシンプルで簡単です。

 

Alteryx RegEX 正規表現ツール 事例 出力画面 After 英数字分割

②URLを使ったユーザー分析

会員様がどのサイトにアクセスしたのか、また特定の情報を何個選択したのか?などの
webマーケティングを行う際にURLに入っている情報を元に集計や分析を行うことが
あるかと思います。
その際、URLに複数条件が入っている場合があるかと思います。

例)複数条件のURLとは・・・
Aさんが希望地域の選択画面で、「東京都・神奈川県・埼玉県」って選択した場合に、
URLが wwknfirirkddldl/district=13,14,15
となる。

また見た目は同じサイトでも、そのページへアクセスするまでには
複数の方法があります。
・商品名を具体的に入力して検索する人
・条件をクリックしてたどり着く人
・広告からアクセスしてくださる人
等。
その場合、どこからのアクセスだったか分かるように、URLにその情報が付記されることがあるかと思います。

そこでの情報も、複数のルールを使うことなく、1つのツールで必要な情報を取り出すことが出来ます。


では、実際に分析してみます。

以下のような会員IDとアクセスURLがあります、これをflgから先の部分だけ取り出して、
会員IDごと、flgごとに何回選択されたか?を集計したいと思います。

Alteryx RegEX 正規表現ツール 事例 出力画面 Before URL解析

flgの数字は桁数もバラバラ、選択している数もバラバラです。
その際、Alteryx RegEX 正規表現 ツール アイコン画像RegEX(正規表現)ツールは大変便利です。その条件を考慮する必要がないからです。

では、今回使った正規表現をご紹介します。

flg=(.*)   flg=の先にある任意の一文字を意味する”.”を”*”で繰り返して取得する。

設定画面は以下のようになります。

Alteryx RegEX 正規表現ツール 事例 設定画面 URL解析

実行を押すと、このように取り出せています。
Alteryx RegEX 正規表現ツール 事例 出力画面 After2 URL解析

その後、Text To Columns Tool Alteryx アイコン画像 列へのテキストText to columns(列分割ツール※行分割も可能です)とSummarize サマライズ Tool Alteryx アイコン画像Summarize(集計)ツールとSort Tool Alteryx アイコン画像Sort(並べ替えツール)を使うことで・・

Alteryx RegEX 正規表現ツール 事例 ワークフロー URL解析

 

Alteryx RegEX 正規表現ツール 事例 出力画面 After URL解析

一度出来ると、次からも使ってみたくので、より複雑なデータからも必要情報を取り出すことが出来ますよ。

まとめ

今回ご紹介した使い方以外にも、
・webスクレイピングを行い、日ごとに変わる情報をワンクリックで取得
・住所や文章の中に決まった単語が入っているかどうかの判別
・特定文字の置換(また、その文字が1文章に何個入っているか分からない)
・1カラムに姓名が入っている単語を「姓」と「名」の2カラムに分割

という使い方も可能です。

正規表現は、覚えると大変便利です。
簡単なルールから、使ってみていただければ幸いです。

より詳しい使い方は AlteryxCommunity のTool MasteryのRegEXツール(こちら)にて、紹介されています。
そちらも参考にされてください。

Alteryx(アルタリクス/アルテリックス)を14日間無料でご体験いただけます。
日本語または英語版、お好みの言語で利用が可能です。
トライアル期間中もサポートいたします、ご不明な点がございましたらお気軽にお問い合わせください。
14日間のフリートライアルはこちらから

Alteryx(アルタリクス/アルテリックス)のお見積りや、データ分析に関するご相談は「問い合わせページ」にて承っております。お気軽にご相談ください。
お見積もり依頼などのご相談はこちらから

 

関連記事

  1. Alteryx機能紹介 Preparation(準備)

  2. Alteryx 全種類 機能説明 TOP画像

    Alteryx機能紹介 In-DB(データベース入力)

  3. 事例 | Alteryxからメッセージをリアルタイムに投稿する

  4. Alteryx機能紹介 Parse(解析)

  5. データ分析はじめの一歩②【データの中身】

  6. Alteryx Server 画像

    AlteryxServer/Connect/Promote のご紹介

フリートライアル(14日間の無料試用)