- 江崎 貴裕, 2023: (指標・特徴量の設計から始める) データ可視化学入門 — データを洞察につなげる技術。ソシム, 269 pp. ISBN 978-4-8026-1444-3.
2023年12月の新刊、A5判 横書きのペーパーバック。わたしは2024年3月、「データ可視化学」という本があるという情報を知って大きい本屋の理工系の売り場に行ったら、新刊の棚で表紙を見せて陳列されていたのだが、表紙 (外カバー) の青の地に白の文字で大きく書いてある字のうちまず「化学」が目にはいったので、一瞬、もとめている本ではないとおもってしまった。「可視化学」の4文字が表紙の横幅いっぱいに、その上に同じ大きさの字で「データ」が書いてあったのだった。
データを2次元平面上の図形で表現する技法の教科書的な本だ。データの可視化には「探索志向」と「説明志向」があって、のぞましい特徴がちがうのだ、ということをことわったうえで、両方を想定して技法を紹介している。
はじめの第1, 2章と、おわりの第8章は、人が見てデータの特徴がわかるような図形表現をするという「可視化」の観点がつよいとおもう。あいだの第3-7章は、統計学の分野で開発されてきた概念を応用するという観点がつよいとおもう。
たくさんの図 (その多くが多色) がふくまれていて、そのほとんどは、Python のプログラムでデータを可視化したものだ。ただし、そのプログラムは印刷されていない。(もし印刷したら膨大なページ数をくうだろう。) 著者の GitHub サイトに置かれている。本書には、巻末の付録として、Python 言語と、グラフ作図のための matplotlib とseaborn、データをデータフレームという構造で操作するための pandas、統計学的な計算をするための scipy のうちの stats のライブラリが簡単に紹介されている。Python 言語で作図をした経験のある人ならば、本書の図を再現することはできそうだ。(著者が著作権をもっていないデータはダミーデータにおきかえられているそうだが。) しかし、それで本書の技法を身につけられるとはかならずしもいえないだろう。とくに、「統計量」や「指標」については、統計学の教科書などで勉強する必要がありそうだ。やや専門的な概念についての参考書は脚注にあげられている。
「比例尺度、間隔尺度、順序尺度、名義尺度」というデータの性質による分類が、本のまんなかの5.2節の「図5.2.6」に (本書は表も「図」としてかぞえている)、「Stevens 1946」の文献への参照なしにでてくる。 (わたしは [別ブログ 2021-02-04 の記事] の 4節でふれた。) これは、本のはやい段階でだしておいて、それぞれの手法を紹介する際に、どの類のデータにつかえるものかをのべたほうがよかったとおもう。
折りかえしのあとに 目次をつける。
===== 目次 =====
まえがき
目次
第1章 データ可視化の本質
– 1.1 データを可視化するということ
– – データを「視える」ようにする
– – 探索志向型データ可視化と説明志向型データ可視化
– – 可視化が機能するとき
– – データ解釈は「ロジック」のあてはめ
– – 指標化によるロジックのあてはめ
– – 本書で扱わないこと
– 1.2 可視化の効果を考える
– – 文字情報と視覚情報
– – 数値把握が容易になる
– – パターンの発見が容易になる
– – 追加の情報と紐づける
– 1.3 可視化で読み取れるロジック
– – 大小・遠近・多寡
– – 変数間の関係性の存在
– – 現象ダイナミクスの特徴
– – 理論ロジックとの紐づけ
– 第1章まとめ
第2章 数量を把握するデータ可視化
– 2.1 数量と図形の大きさを紐づける
– – 二次元的な大きさ
– – 要素数が多い場合に全体像をとらえる
– 2.2 大きさを比較する
– – 棒グラフについて考える
– – 棒グラフの機能と見せ方
– – 必ずしも棒グラフにこだわる必要はない
– 2.3 標本を視えるようにする
– – グループ同士の比較を行なう
– – データのまとまりを描画する方法
– 第2章まとめ
第3章 メカニズムをとらえるデータ可視化
– 3.1 分布の特徴をとらえる
– – 分布の特徴・着目するポイント
– – 理論分布と比較する
– – 累積分布で当てはめる
– 3.2 線で特徴をとらえる
– – 折れ線・エリアチャート
– – 沢山のものを比べる
– – スロープグラフ
– – 変化のパターンを考える
– 3.3 2変数の関係をとらえる
– – 散布図・ペアプロット
– – 相関を見るフィッティング
– – 特定の関係性からの散らばり具合を見る
– – 情報の多いデータを散布図にする
– 第3章まとめ
第4章 多変数をとらえるデータ可視化
– 4.1 三つ以上の変数の可視化
– – レーダーチャートは限定的な場面で使える
– – パラレルプロットで特徴をとらえる
– – ヒートマップ
– 4.2 ネットワークをとらえる
– – ネットワーク・グラフ
– – 有向きネットワークと階層構造
– – ネットワーク可視化のポイント
– 4.3 「まとめる」可視化
– – クラスタリング
– – 次元圧縮
– – 時系列でクラスタリングを使う
– 第4章まとめ
第5章 データの分布をとらえる指標化
– 5.1 分布と統計量
– – 統計量について考える
– – 統計量と分布の相性
– – 統計量に残る情報・残らない情報
– 5.2 ばらつきをとらえる
– – 単位当たりの指標と規格化
– – データのばらつきをとらえる指標
– – ばらつきの度合いを比べる
– – 尺度と利用可能な指標
– 5.3 分布の形をとらえる
– – 歪みの度合いを測る
– – 情報エントロピー指標
– – 不平等の指標
– 第5章まとめ
第6章 関係性をとらえる指標化
– 6.1 「近いか遠いか」をとらえる
– – 距離を測る指標
– – マハラノビス距離で集団からの逸脱度を測る
– – 配列の間の距離を測る
– – ネットワーク上における距離
– 6.2 分布同士の距離を測る
– – コルモゴロフ・スミルノフ統計量
– – 全変動距離とワッサースタイン距離
– – 情報量で分布の距離を測る (KL/JS情報量)
– – 分布間距離の指標を比較する
– 6.3 ペアになった分布間の距離指標
– – 相関係数で類似度を測る
– – フィッシャー変換による相関係数の正規化
– – 偏相関係数で実効的な相関を測る
– – コサイン類似度
– – 誤差を測る指標
– 6.4 「つながり」をとらえる
– – 相互情報量で観る変数間のつながり
– – 移動エントロピー
– – つながりからネットワークへ
– 第6章まとめ
第7章 パターンをとらえる指標化
– 7.1 時間的なパターンをとらえる
– – 離散変数の時系列パターンの定量化
– – 自己相関
– – 周波数特性を測る
– – 指標としての応用: 心拍データ分析
– 7.2 空間データのパターンをとらえる
– – ボロノイ分割による空間の定量化
– – カーネル密度推定
– – 画像のパターンを定量化する: グレイレベル共起行列
– 7.3 ネットワークのパターンをとらえる
– – リンクやノードを特徴付ける指標
– – ネットワーク全体を特徴付ける指標
– – ネットワーク指標の利用
– 第7章まとめ
第8章 データ指標化・可視化のプロセス
– 8.1 効果的な可視化のテクニック
– – 図の見やすさを向上させるテクニック
– – 差を視るための図の拡大・縮小
– – 情報を「探させない」可視化
– – 何の可視化なのかが伝わるようにする
– 8.2 指標化から可視化の戦略を考える
– – 可視化方針の決め方
– – 「良い指標」とは
– – 指標の運用の落とし穴
– – 指標化の恣意性に対処する
– 8.3 可視化されたデータの解釈学
– – 仮説を立てることの重要性
– – 統計学的有意性と効果
– – 分析プロセス全体として可視化をとらえる
– 第8章まとめ
Appendix. Pythonデータ可視化コーディング入門
– A.1 Pytyonデータ可視化の基本知識
– – おすすめの環境構築
– – Matplotlib の説明
– – Matplotlib における図の各構成要素
– – グラフの描画と他ライブラリとの連携
– A.2 可視化プログラムの開発・運用テクニック
– – わかりやすいコーディングのポイント
– – 変数に何が入っているかを明示する
– – どこで何をしているのかわかりやすくする
– A.3 付録コードの利用の仕方
– – 付録コードについて
– – よく登場する基本ライブラリ
あとがき
索引
著者紹介
==========