散布図、箱ひげ図、ヒストグラムを用いて外れ値を見る

外れ値は平均などの統計量に影響を与えてしまう。

外れ値を見るために散布図を見る

 #必要なライブラリのインポート 
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")

画像1

図の黒い点が外れ値だけど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"])

画像2

右裾が長いので50以上をクリッピング

 #クリッピング &ヒストグラム表示
titanic=titanic[titanic["Fare"]<50]
sns.distplot(titanic["Fare"])

画像3


この記事が気に入ったらサポートをしてみませんか?