6

このデータから標準偏差または平均を計算するために、配列形式の販売統計データがあります。

stats = [100, 98, 102, 100, 108, 23, 120] 

+-20% の差は通常の状況ですが、23は明らかに特殊なケースです。

この異常な値を見つけるための最良のアルゴリズムは (任意の言語、疑似または任意の原則で)?

4

3 に答える 3

10

それらをZ スコアに変換して、外れ値を探すことができます。

>>> import numpy as np
>>> stats = [100, 98, 102, 100, 108, 23, 120]
>>> mean = np.mean(stats)
>>> std = np.std(stats)
>>> stats_z = [(s - mean)/std for s in stats]
>>> np.abs(stats_z) > 2
array([False, False, False, False, False,  True, False], dtype=bool)
于 2012-05-09T05:15:37.420 に答える
2

平均と標準偏差を計算します。平均から X 標準偏差を超える値を「異常」として扱います (X はおそらく 2.5 から 3.0 程度のどこかにあるでしょう)。

このテーマにはかなりのバリエーションがあります。本当に統計的に健全なものが必要な場合は、それらのいくつかを調べることをお勧めします。境界線として (たとえば) 2.7 標準偏差の恣意的な選択を擁護するようなものを排除できます。

于 2012-05-09T05:16:31.377 に答える
2

標準偏差を見つけて、3シグマまたは+-3シグマの外側にある値は法外な値です...

理論的には、+-3 シグマで 99 % を超える信頼値が得られます。

于 2012-05-09T05:18:07.520 に答える