特にないです

割と適当ですが、たまにTableauに関することなどをつぶやきます

【Tableau個人的Tips】ポケモンデータを扱ってみる(④データ加工編その2)

今回からはTableau Desktopをやっていきます。

Tableau Desktop上でもいくつか加工作業をしているのでまずそこから説明していこうと思います。

 

日本語化

 

実はここまでのデータがすべて「英語」のデータという最大の問題があります。

英語名 日本語名
BUG むし
DARK あく
DRAGON ドラゴン
ELECTRIC でんき
FAIRY フェアリー
FIGHTING かくとう
FIRE ほのお
FLYING ひこう
GHOST ゴースト
GRASS くさ
GROUND じめん
ICE こおり
NORMAL ノーマル
POISON どく
PSYCHIC エスパー
ROCK いわ
STEEL はがね
WATER みず

 

タイプが18個しかないのでここは気合で日本語化しました。

このシートはほかのポケモンデータにも使えそうなので別CSVファイルとして保存し、

Desktop上で結合して利用しようと思います。

 

結合イメージ

結合イメージ

 

3つ結合していると思いますが、基本的に「攻撃タイプ」「防御タイプ1」「防御タイプ2」のデータが前回のPrep上での操作でできているためこのレコードにそれぞれ結合していきます。

 

 

【Tableau個人的Tips】ポケモンデータを扱ってみる(③データ加工編その1)

今回からはTableauPrep上で加工をしていきます。

 

まず「TypeChart」シートのおさらいをすると

Attack 攻撃側タイプ  
Defense 防御側タイプ  
Effectiveness 効果(英語)  
Multiplier 乗数 こうかがばつぐんだ(2.0)
こうかがないようだ・・・(0)
といったように攻撃したときのタイプ相性を数字で表示しています。

 

 

Tableau上でやろうとしているのが

タイプ1「みず」・タイプ2「じめん」といった感じでプルダウンを選ぶと

それぞれの値が持っている乗算(×2・×1・・・)をすべてかけ合わせて

タイプ相性をそれぞれ出す仕組みにしたいです。

 

なので、いまこのようにある「TypeChart」に対して・・・

攻撃タイプ 防御タイプ 乗算
くさ じめん 2
くさ みず 2
くさ ほのお 0.5
くさ ノーマル 1

 

同じシートを攻撃タイプをキーに左外部結合でくっつ合わせることで

数の通り乗算×乗算2の計算で複合タイプの相性を出すことができます。

攻撃タイプ2 防御タイプ2 乗算2 攻撃タイプ 防御タイプ 乗算
くさ じめん 2 くさ じめん 2
くさ じめん 2 くさ みず 2
くさ じめん 2 くさ ほのお 0.5
くさ じめん 2 くさ ノーマル 1

 

 

結合画面

結合画面

 

pprep全体像

一応全体的な絵を描くと

 ①結合1:タイプチャート同士を「攻撃タイプ」をキーに左外部結合し、複合タイプに対応できるようにする。

 ②ユニオン:単タイプに対応するためにもう1回タイプチャートをくっつける。

 

あと合わせて、

 ・防御タイプ同士が同じレコードを削除

 ・単タイプ用にユニオンした後NULLとなるレコードを任意の値で埋める。

  (→ 検索時にNULLを選択し上に表示させないため)

といった感じの細かい処理も併せて実施しています。

 

こういった感じでTableauに食わせるためのデータを作成しました。

次の回からは実際にTableau上でどうやったかを説明しようと思います。

 

【Tableau個人的Tips】ポケモンデータを扱ってみる(②データの中身編)

前回の続きです。

データ自体の中身を見るとこんなかんじになってるかと思います。

 

Pokemonシート

ポケモンごとが持っている攻撃や防御の基礎数値である『種族値』の一覧です。

 

# ポケモン図鑑番号 ポケモン図鑑の番号(データは全国版)※1
Name 名前(英語)  
Type タイプ(英語)  
HP HP  
Attack こうげき  
Defense ぼうぎょ  
Special Attack とくこう  
Special Defense とくぼう  
Speed すばやさ  

 

Movesシート

わざの一覧です。

 

Name 名前(英語)  
Type タイプ(英語)  
Cat. カテゴリ 攻撃(Attack)
特殊攻撃(Special)
ステータスへの変化(Status)他
Power 攻撃力  
Acc. 命中率  
PP PP  
TM 技マシン番号  
Effect 効果  
Prob. (%) 追加効果の確率  

 

Evolutionシート

進化するポケモンの進化の条件やレベルなどが書かれています。

 

Evolving from 進化前  
Evolving to 進化後  
Level 進化レベル  
Condition 進化条件 どういった条件下で進化するか
(例)Daytime(日中帯)
   holding 3DS upside down
   (3DSを逆に持つ)
  などなど
Evolution Type 進化種類 進化のタイプ
(例)Level(レベルアップ)
   Stone(進化の石)
   Trade(通信交換)などなど

 

 

TypeChartシート

ポケモンのタイプ相性が書かれています。

 

Attack 攻撃側タイプ  
Defense 防御側タイプ  
Effectiveness 効果(英語)  
Multiplier 乗数

こうかがばつぐんだ(2.0)
こうかがないようだ・・・(0)
といったように攻撃したときのタイプ相性を

数字で表示しています。

 

 

こういった感じでポケモンに関するデータがある程度まとめられています。

今回は「TypeChart」シートを活用してやっていこうかと思います。

 

タイプ相性という罠

ポケモンにおいて最も厄介なのが複数タイプを多くのポケモンが兼ねているという点です。

 

例:くさタイプの技でトリトドンみずじめん)に攻撃した場合

    みず・じめんともにくさが弱点(×2)のため

    くさ → みず・じめん ×4 (2×2=4)

 

例:じめんタイプのの技でエモンガでんきひこう)に攻撃した場合

     じめんはでんきに対して弱点(×2)だが、ひこうに対して無効(×0)

    → 無効 ×0 (2×0=0) 

 

純粋なタイプ相性では、複合タイプに対してあまり役に立たないので

Tableau上で2個タイプを選んでそれに対する全タイプの攻撃相性を表示できる仕組みを作ろうかと思います。

 

(例)イメージ 

a

a



そうすると「TypeChart」のシートそのままでは、複合タイプに対応できないのでTableauPrepで加工してあげる必要が出てきました。

次の回からはTableauPrepでどう加工したかを説明いたします。

【Tableau個人的Tips】ポケモンデータを扱ってみる①

とりあえずTableau系の記事をこれから書いていこうと思います。

 

tableau的には「Makeover Monday」や「Workout Wednesday」などのデータがありますがさすがにそれだけだとつまらないこともあるのでTableau Public上に公開されているポケモンリストを使ってTableauを遊び倒してみようと思います

public.tableau.com

 

 

とりあえずまずやってみたのが、タイプ相性の一覧です。

 

public.tableau.com

 

ポケモンを知らない人向けに説明するとポケモンにはタイプの考え方があり、

タイプによっては攻撃が2倍になったり、無効になったりします。

 

イメージとしては、攻撃タイプと防御タイプが行列になっていて

「こうかはばつぐんだ」「こうかはいまひとつのようだ」「こうかはないようだ」といった相性が可視化できるようになれればと思います。

 

www.pokemon.co.jp

 

とりあえずデータを加工するところが始めようかと思います。