ホームページ >バックエンド開発 >Python チュートリアル >標準偏差を使用して Pandas データフレーム内の外れ値を検出して除外するにはどうすればよいですか?

標準偏差を使用して Pandas データフレーム内の外れ値を検出して除外するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-11 10:26:16909ブラウズ

How Can I Detect and Exclude Outliers in a Pandas DataFrame Using Standard Deviations?

標準偏差を使用した Pandas DataFrame の外れ値の検出と除外

外れ値とは、データ内の残りのデータから大きく逸脱しているデータ ポイントです。分布。外れ値を特定して除外すると、偏った観測値やノイズの多い観測値が除去され、データ分析が向上します。 Pandas には、標準偏差の使用など、異常値を処理するためのいくつかの方法が用意されています。

平均から一定の標準偏差を超える値を持つ行を除外するには、scipy.stats.zscore 関数を利用できます。この関数は、各データ ポイントの Z スコアを計算し、平均から離れている標準偏差の数を表します。

import pandas as pd
import numpy as np
from scipy import stats

# Create a sample dataframe
df = pd.DataFrame({'Vol': [1200, 1230, 1250, 1210, 4000]})

# Calculate Z-score for the 'Vol' column
zscores = stats.zscore(df['Vol'])

# Exclude rows with Z-score greater than 3
filtered_df = df[np.abs(zscores) < 3]

このアプローチでは、特に「Vol」列の外れ値を検出して除外します。柔軟性を高めるために、このフィルターを複数の列に同時に適用できます。

# Calculate Z-scores for all columns
zscores = stats.zscore(df)

# Exclude rows with any column Z-score greater than 3
filtered_df = df[(np.abs(zscores) < 3).all(axis=1)]

しきい値 (この場合は 3) を調整することで、外れ値の除外レベルを制御できます。しきい値を小さくすると、より保守的な外れ値の検出が行われ、しきい値を大きくすると、より多くの潜在的な外れ値が除外されます。

このアプローチを使用すると、Pandas DataFrame の分析を歪める可能性のある外れ値を効果的に特定して削除できます。

以上が標準偏差を使用して Pandas データフレーム内の外れ値を検出して除外するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。