散布図、箱ひげ図、ヒストグラムを用いて外れ値を見る
外れ値は平均などの統計量に影響を与えてしまう。
外れ値を見るために散布図を見る
#必要なライブラリのインポート
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
%matplotlib inline
sns.set(style="darkgrid")
最後はseabornの図のスタイル
#散布図
sns.scatterplot(data=df,x="Age",y="Fare")
外れ値の判断基準として二つある
1、箱ひげ図による四分位範囲で判定
#箱ヒゲ図
plt.figure(figsize=(10,8))
sns.boxplot(data=titanic,x="Pclass",y="Age")
図の黒い点が外れ値だけどPclass以外の分類で見ると変わってくるため目安程度に考える。
2、上位、下位n%のクリッピング
n%は自分で決めるが散布図やヒストグラムを参考にする
#統計量を見てみる
titanic["Fare"].describe()
出力結果
count 891.000000
mean 32.204208
std 49.693429
min 0.000000
25% 7.910400
50% 14.454200
75% 31.000000
max 512.329200
Name: Fare, dtype: float64
平均が32、75%が31に対して最大値が大きすぎる
#ヒストグラム表示
plt.figure(figsize=(10,5))
sns.distplot(titanic["Fare"])
右裾が長いので50以上をクリッピング
#クリッピング&ヒストグラム表示
titanic=titanic[titanic["Fare"]<50]
sns.distplot(titanic["Fare"])