zスコアで外れ値を見つける
正規分布は自然界で広く見られる最も一般的な分布です。だからこそ、zスコア法は外れ値検出の手早い方法の一つになり得ます。
ビデオで紹介した経験則を思い出してください。標本が平均から標準偏差で3以上離れていれば、極端な値とみなせます。
ただし、zスコア法は慎重に使う必要があります。この方法は、データが正規分布に従うと自信を持って言える場合にのみ適切です。そうでないと、結果が誤解を招くことがあります。
prices の分布はあらかじめ読み込まれています。
この演習はコースの一部です
Anomaly Detection in Python
演習の手順
- 関連する
scipyモジュールからzscore関数をインポートします。 pricesの zスコアを計算してscoresに保存します。scoresの絶対値が 3 より大きいかを判定するブールマスクis_over_3を作成します。- そのマスクを使って、外れ値となる
pricesを抽出します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Import the zscores function
from scipy.____ import ____
# Find the zscores of prices
scores = ____(____)
# Check if the absolute values of scores are over 3
is_over_3 = ____
# Use the mask to subset prices
outliers = ____[____]
print(len(outliers))