Tableauナレッジ - INSIGHT LAB

TabPy入門【数式】

作成者: BI LAB編集室|2018年12月04日

この記事は、『Tableau Knowledge Advent Calendar 2018』の第4回の記事です。
今日のテーマは『TabPy入門【数式】』です。

TabPyを使ってみる

前回まででTabPyの環境構築は済みましたので、実際にTabPy使ってみましょう!
しかし、いきなり難しいことをやってもなかなか理解できないと思いますので、まずはTabPyで足し算の処理をさせてみましょう。

今日やってみるのは、以下の画像のように、売上+10,000をTabPyにさせる処理です。
実際、この処理でしたらTabPyを使う必要は全くないのですが、あくまでも導入ということでここからはじめます。

計算式

↑の画像で処理している計算式は以下となります。

文字に起こすと以下の計算式になります。
① SCRIPT_REAL('
② import numpy as np
③ narg1 = np.array(_arg1)
④ sum = narg1 + 10000
⑤ return sum.tolist()',
⑥ SUM([売上]))

では、1行ずつ何をしているのか解説していきます。

① SCRIPT_REAL('

まずPythonからの返り値のデータ型によって、SCRIPT_XXXを指定します。
整数型ならSCRIPT_INT、実数ならSCRIPT_REALとなります。今回は実数としました。
その他にも、ブール型のSCRIPT_BOOL、文字列型のSCRIPT_STRがあります。

② import numpy as np

数列計算をするためにNumpyというライブラリをインポートします。
これでベクトル同士の足し算が可能になります。

③ narg1 = np.array(_arg1)

Tableau からの入力(詳細レベルで区切られた[売上]の数列)をARRAYに変換し、narg1オブジェクトに格納します。

④ sum = narg1 + 10000

ここで計算。③で定義したnarg1に10000を足します。

⑤ return sum.tolist()',

tolistメソッドでARRAYListに変換してTableauに返します。
Listに変換しないとエラーになってしまいます)

⑥ SUM([売上]))

Tableauから入力する数値を集計関数として指定します。_arg1オブジェクトに格納されます。

以上、TabPy入門【数式】でした。
簡単な例でしたが、なんとなくTabPyの使い方が分かっていただけましたでしょうか。

引き続き、TabPy入門は続きますので、どうぞよろしくお願いします。