本記事では、データ解析ツールのAlteryxについて説明します。
Alteryxの機能や特徴、デモ操作を通して簡単に解説いたします。
デモ操作については、コチラにあるので、Alteryxの雰囲気についていち早く知りたい方は、そこまで飛んでください!
- データ解析ツールをお探しの方
- Alteryxは認知しているが、操作方法が気になる方
Contents
Alteryxとは
Alteryxとは、一言で表すとノーコードのデータ解析ツールです。
カタカナで書くと「アルタリクス」、「アルテリックス」、「アルテリクス」となります。
Alteryxの公式HPは下記画像をクリックしてください。

近年のデータサイエンスブームで、様々な企業がデータ解析を導入していると思います。その中で、Alteryxはマウスで操作可能で、日本語にも対応しており注目されています。
そんなAlteryxについて、本記事ではご紹介いたします。
動画で何となく知りたいという方にはこちらの動画をどうぞ。
Alteryxの特徴
Alteryxには様々な特徴があります。その特徴について下記に説明いたします。
特徴➊:コーディングが必要ない
Alteryxでは、コードを書く必要がありません。通常のデータ解析では、RやPythonでコードを書いて進めていきます。RやPythonを扱えると非常に便利ですが、習得するまでに時間がかかるというデメリットがあります。しかし、Alteryxのようにノーコードで解析が可能なら、ITに疎い方でも効果検証をできます。
また、思いついてから実装まで素早く実行できます。私は普段からR・Pythonを用いてデータ解析を行うことが多いです。そんなR・Pythonに慣れている私でも、Alteryxの方が素早く操作を行うことができます。

特徴➋:実行内容を理解しやすい
Alteryxは、実行内容の理解がしやすいです。これは主に3つのパターンがあります。
- やりたいことを個人的に思いついたとき
- 自分の操作を、他者(特に非プログラマー)に説明するとき
- 他者の操作を、自分が確認するとき
まず1つ目は、「やりたいことを個人的に思いついたとき」です。RやPythonではやりたいことを上から順に実行していくため、作業が一方向です。Alteryxは実行内容を二次元に置けるため、個人的にイメージした通りに実行できます。
2つ目は、「自分の操作を、他者(特に非プログラマー)に説明するとき」です。非プログラマーに伝える時は、言うまでもないと思います。ただ、相手がプログラマーでも理解はしやすいです。多くの企業ではコード規則を設けたり、コメントアウトで内容の補足をしていると思います。ALteryxを導入することで、そういった手間を省くことができます。
3つ目は、「他者の操作を、自分が確認するとき」です。これは2つ目とは反対の場合です。プログラマーの方は、ご理解いただけると思いますが、他人のコードを読むことは結構疲れます。全体像が見えず、変数名も何が入っているのかわからず、私は結構骨が折れる作業だと思っています。Alteryxなら、全体像から把握できるので、かなり理解しやすいです。
特徴❸:様々なデータを入出力できる
Alteryxは、様々なデータタイプに適応しております。Excelなどの構造化済みデータはもちろん、GISやSalesforce、Tableauを読み込むことができます。また入力だけでなく出力をすることもできます。例えば、wordやpptとして落とすことも可能で、非常に便利です。
RやPythonで、データを読み込むすることも可能です。しかし、毎回様々なライブラリをインポートする必要があります。結構面倒ですし、あまり使わないライブラリは忘れてしまいます。
少し古い情報ですが、コチラに一覧でまとめられておりました。良かったら参考にしてみてください
特徴❹:多くの操作ができる
Alteryxは、多くの操作が実行できます。データの前処理や機械学習だけでなく、空間データの処理やテキストマイニングも可能です。商圏分析など、地図を活用するような解析はPythonでもかなり苦労する操作です。そういった操作が直感的にできることはかなり魅力的です。
Alteryxの各操作については、少し古い情報ですがコチラに一覧でまとめられております。
Alteryxの様々な解析は、下記サイトが丁寧に説明をしてくれています。

Alteryxの価格
Alteryxの利用料金は65万円/(年・ユーザー)です。詳しくはコチラにまとめてあります。
正直、簡単に申し込みができるような値段ではないです。しかし、Alteryxには、一か月間の無料トライアルがあります。興味のある方は、無料トライアルを通してAlteryxの雰囲気を試してみましょう。

デモ操作
本章では、デモ画面を通してAlteryxの操作をご紹介いたします。また、AlteryxとR・Pythonの比較を行い、Alteryxの強みを確認します。
操作内容の説明
ここでは、下記のAlteryxやR・Pythonでどういった操作をするか説明いたします。
- Excel.CustomerLocationData.xlsとExcel.CustomerResponderData.xlsxを読み込む
- 顧客IDをキーとして2つの表を結合する
- 顧客IDをソートして表を並び替える
- アウトプットとして出力
Excel.CustomerLocationData.xls

1行目にCustomerIDからLonと9つのカラム名が入っています。カラム名を除くと、2678行9列のデータが入っています。
この表示ではデータの型が見れませんが、全ての型が文字列で入ってます。ゆえに、数字が文字列になってしまっているという課題があります。
Excel.CustomerResponderData.xlsx

1行目にカラム名はなく、データの内容が直接入っています。このエクセルには、1000行4列のデータが入っています。カラム名が付いていないためわかりづらいのですが、1列目が顧客IDになっています。
この表示ではデータの型が見れませんが、Excel.CustomerLocationData.xls同様、全ての型が文字で入ってます。
アウトプットのシート

上記がデモ操作を実行した結果として出力される結果のスプレッドシートです。
Excel.CustomerLocationData.xlsとExcel.CustomerResponderData.xlsxが結合されています。データは1行目を除くと1000行12列で、CustomerResponderDataと同じ行数となっています。
Alteryxの場合
Alteryxのデモ画面を作成致しました。下記の濃い青の場所がクリックできるので、試してみたい方は是非クリックしてみてください。
また、全画面で表示したい方はコチラをどうぞ
Rの場合
Rでは下記のようにコードを書くことで実行できます。Rのtidyverseというパッケージを活用し、可読性を高く書いてみたつもりです。
library(tidyverse)
df_Loc <- readxl::read_xls('Excel.CustomerLocationData.xls') %>% # read data
transform(CustomerID = as.numeric(CustomerID)) # chr to num
df_Res <- readxl::read_xlsx('Excel.CustomerResponderData.xlsx',col_names = F) %>% # read data
set_names('CustomerID', 'Store Number', 'Customer Segment', 'Responder') %>% # exchange colname
transform(CustomerID = as.numeric(CustomerID)) # chr to num
df_Output <- inner_join(df_Loc, df_Res, by = 'CustomerID') %>% # join
arrange(CustomerID) # sort ascending
df_Output %>% head() # check
write.csv(df_Output, 'Output.csv', row.names = F) # save
Pythonの場合
Pythonでは下記のようにコードを書くことで実行できます。Pythonのpandasというパッケージを活用し、コードを示してみました。
import pandas as pd
df_Loc = pd.read_excel('Excel.CustomerLocationData.xls') # read data
df_Res = pd.read_excel('Excel.CustomerResponderData.xlsx', header=None) # read data
df_Res.columns = ['CustomerID', 'Store Number', 'Customer Segment', 'Responder'] # exchange colname
df_Output = pd.merge(df_Loc, df_Res, on='CustomerID', how='inner') # join
df_Output = df_Output.sort_values('CustomerID') # sort ascending
df_Output.head() # check
df_Output.to_csv('Output.csv', index=False) # save
Alteryx, R, Python比較結果
Alteryx, R, Pythonの比較をしてみました。個人的な感想としては、Alteryxは見たまんまの操作が可能で実行しやすいです。私は普段からR・Pythonを書いているため、問題なくプログラミングでも書けます。しかし、プログラミングに慣れていない方であれば、Alteryxの方が書きやすいのではないでしょうか。
そして、プログラミングに慣れている私でも、Alteryxの方が短い作業時間で書くことができました。この点はAlteryxに圧倒的なメリットです。また、習得までにかかる時間もAlteryxの方が短いと思います。
一方で、最新の機械学習手法や、自分で研究した手法は実装が難しいので、R・Pythonの方が良いかもしれません。
Twitterでの声
Twitter上のAlteryxの声をまとめてみました。新しい技術として注目されていることや、使いやすいことが声が上がっているようですね。
まとめ
以上でAlteryxについての説明を終わりにします。
素早く実行でき、使いやすいので、興味のある方は是非試してみてください。