Data Analysis - Chapter two2. Capter Two - Outline
Jitter Plot
Histogram and KDE (Kernel Density Estimates)
CDF (Cumulative Distribution Function)
Rank Order Plots and Lift Charts
Numpy - Vector & Tensor
8. Jitter Plot の 3 つのポイン
ト
データの散布に影響を与えないように、垂直方向
にずらすときはランダムに行うようにする。
"jitter" する場合は必ずデータ点を水平線方向には
動かさないようにしよう
今回はデータ点に空洞の円を採用した。どの点を
打つ場合でも円の半径は同じだ。これによって、
データ点が重なった場合でもある程度見えやすく
なる。
15. Histogram の 3 つのポイント
標準化されたヒストグラムでは、ある瓶が全体のうちどのくらいの割合を占
めているのかが視覚的にわかる (* 標準化 : ある瓶の総量を全瓶の総量で割
ってから Histogram を表記する )
瓶内の数値のクラスターレベルに応じて瓶の幅を変えて表記すると、より細
かなクラスターの情報を視覚的に見ることができる
一つのデータ集合を観察するのにはとてもよい。ただし、 2 つ以上のデータ
集合を観察する際には不向きである
23. CDF の 5 つのポイン
ト
CDF は必ず x に沿って広義単調増加する
CDF はヒストグラムや KDE ほど増減が激しくないが、表示
しているデータはすべて同じものである
ヒストグラムのように「データの瓶」が含まれていない、デ
ータの情報が欠落している
x が 0 または -∞ に限りなく近づくと、 CDF は 0 になる
CDF はデータから一意に決まる
28. ROP & LC (1)
ROP: Rank-Order Plots ⇒ 先ほど昇順にした表の
データをグラフにしたもの
LC: Lift Charts ⇒ 累積分布。今回は加算によって
累積計算を行ったので CDF と同じ
31. vec3 = np.linspace( 0, 4, 5 )
vec4 = np.zeros( 5 )
for i in range( 5 ):
vec4[i] = i
vec5 = np.loadtxt( "data" )
Numpy の基本 (1) - ベクトルの作成
32. v1 = vec1 + vec2
v2 = np.zeros( 5 )
( 同じ方法だが真似しない方がいい )
↓
for i in range( 5 ):
v2[i] = vec1[i] + vec2[i]
vec1 += vec2
vec1 += vec2
vec1 += vec2
vec1 += vec2
vec1 += vec2
vec1 += vec2
vec1 += vec2
Numpy の基本 (2) - ベクトル演算
v3 = 2*vec3
v4 = vec4 + 3
v5 =
np.sin(vec5)
lst = v5.tolist()
33. NumPy の特徴
“ Broadcasting” & ”ufunc”
“Broadcasting” & ”ufunc”
“BroadCasting”: より大きなデータ構造に
合わせて (Broad) 、 一方のデータ構造を変
更する (Casting)
“ufunc”: スカラー値は NumPy のオブジェ
クトに変換される
34. Numpy を用いた KDE の計算プログ
ラム
from numpy import *
# z: position, w: bandwidth, xv: vector of points
def kde( z, w, xv ):
return sum( exp(-0.5*((z-xv)/w)**2)/sqrt(2*pi*w**2) )
d = loadtxt( "presidents", usecols=(2,) )
w = 2.5
for x in linspace( min(d)-w, max(d)+w, 1000 )
print x, kde( x, w, d )
35. Numpy の応用 - 行列
テキストのプログラムを参考に、 Numpy での行列
の扱い方を確認していく
36. 最後に ...
今回のまとめ:単一変数のデータは、 Jitter Plot
と Histogram 、 CDF で表すことができる
Histogram を見やすくするために KDE 、 CDF を
見やすくするために ROP と LC の技術を用いた
Option や Summary の部分は今回は省略した
(統計学の授業で何度もやった内容なので、自分
で読んでください)