Tableauの関数を全て試してみる〜数値関数編その2〜 #tableau
はじめに
こんにちは。DI部のtamaです。
当エントリはTableau - Function Advent Calendar 2017の2日目のエントリです。 昨日のエントリはTableauの関数を全て試してみる〜数値関数編その1〜でした。
今回は引き続き、数値関係の関数を見ていきます。
- 使用するTableauのバージョンは一貫して10.4.1です。
- 各関数の説明で引用しているのは、Tableauの公式リファレンスからの引用です。
- TableauHelp 関数
目次
検証環境
作業環境
- MacOS High Sierra 10.13.1
- Tableau 10.4.1
使用データ
- (原則)Tableau付属のサンプルスーパーストア
- (場合によって)関数グラフ描画用データ
- -1〜1の範囲で、0.01毎に値が並んでいるデータ
- 上記の値をディメンション「X軸」とし、その上に色々な関数をプロットする。
- 参考:Tableau 関数グラフの描画 | Developers.IO
DEGREES(number)
概要
ラジアン単位の指定された数値を度単位に変換します。
- 弧度を度数(45°とか90°とか)に変換します。
使ってみた
とりあえず、すごく適当な数値を入れてみます。
DEGREES(1.159)
1.159は66.41°だそうです。
どういう時に使う?
- 三角関数絡みの関数(ASIN、COS等)を使用している場合、算出される値は弧度なので、どちらかと言えば馴染みのある度数形式で出したいとき
参考文献
DIV(integer1, integer2)
概要
integer1 を integer2 で割った除算演算の整数部分を返します。
- 割り算します。余りは無視されます。
- 引数に使えるのは整数のみです、浮動小数点は指定できません。
使ってみた
全ての関数の言えることですが、メジャーやディメンション自体を組み込むことも可能です。(関数によって使用できる項目は異なる。)
DIV(10,[数量])
計算は1レコード毎に実行されているので、計算された数値がメーカー別に集計されています。
どういう時に使う?
- 例えば、「○○率」というものを出したい時
- 表計算を駆使して算出することもできますが、DIV関数で計算フィールドを一つ作っておくと、後はそれをドラッグアンドドロップすれば、分析するにあたって色々と便利です。
参考文献
- C言語関数辞典 - div
- プログラミング言語でもよくある関数ですね。
EXP(number)
概要
指定された数値で累乗した e の値を返します。
- 定数e (約2.71828)に対して、指定した値の累乗を返します。
使ってみた
これに関しては、関数グラフ描画用データにて、グラフを描写してみたいと思います。
どういう時に使う?
- ビジネス系の分析では、あまり使うことはないと思われます。
- 研究・科学よりの分析で活躍すると思います。
- 凝ったVizを作りたいとき、この関数を利用して図形を描く、という利用方法がありそうです。
- Data + Science
参考文献
FLOOR(number)
概要
数字を、同等またはより小さい値である最も近い整数に丸めます。
- いわゆる「床関数」
- 引数以下の中で、最大の整数を返します。
使ってみた
前回エントリのCEILING関数同様、円周率を入れてみます。
切り捨てられて3になりました。
どういう時に使う?
- 金額計算における端数の処理などで利用できるかもしれません。
使用できるデータソース
FLOOR関数は、接続しているデータソースによっては使用することができません。 各データソースにおける対応可否は、Tableau公式リファレンスを参照してください。
参考文献
HEXBINX (number, number)
概要
x、y 座標を最も近い六角形のビンの x 座標にマップします。ビンの横幅は 1 です。入力時には適切に拡大縮小する必要があります
※下記HEXBINY関数と一緒に見ていきます。
HEXBINY(number, number)
概要
x、y 座標を最も近い六角形のビンの y 座標にマップします。ビンの横幅は 1 です。入力時には適切に拡大縮小する必要があります。 HEXBINX と HEXBINY は六角形のビン用のビニング関数とプロット関数です。六角形のビンは、マップなどの x/y 平面内でデータを可視化するための効率的で洗練されたオプションです。ビンは六角形なので、各ビンは円に近似し、データ点からビンの中心への距離のばらつきを最小限に抑えます。これにより、クラスタリングがより正確かつ有益なものになります。
- 「ヘキサゴナル ビニング」という可視化方法を使う際に使用する関数です。
使ってみた
- 以下を参考にヘキサゴナルビニングを再現してみたいと思います。
- ヘキサゴナル ビニングを用いた地震発生源ヒートマップの作成 |Tableau Community
- 他と違って、少々特殊な関数のため、別途データを用意します。
- 位置参照情報ダウンロードサービス
- 上記サイトより、奈良県の市区町村の緯度経度データをダウンロードしました。
そして、HEXBIN関数を使います。
HEXBINX([経度] * [スケール係数], [緯度] * [スケール係数]) / [スケール係数]
HEXBINY([経度] * [スケール係数], [緯度] * [スケール係数]) / [スケール係数]
HEXBINに地理的役割を与えてシェルフに配置し、スケールを調整すると下記のようになりました。
どういう時に使う?
- 地域別に何らかのデータをプロットする場合、単純に丸や四角形を使うよりも、見やすく、インパクトもあるため、とても有用かと思います。
参考文献
- Hexagonal Binning – a new method of visualization for data analysis – Meccanismo Complesso
- ビニングと呼ばれる可視化と、それに六角形を用いることについて解説されております。
参考文献
おわりに
今回も数値関係の関数を見てきました。特にHEXBIN関数は非常に面白いので、ぜひ自分で試してみてください!
次回はtamaによるTableauの関数を全て試してみる〜数値関数編その3〜です。