Python で歪度と尖度を計算する方法
統計学では、歪度と尖度は分布の形状を測定する 2 つの方法です。
歪度は、分布の歪度の尺度です。この値は正または負の値にすることができます。
- 負の歪度は、裾が分布の左側にあり、より負の値に向かって広がっていることを示します。
- 正の歪みは、裾が分布の右側にあり、より正の値に向かって広がっていることを示します。
- 値 0 は、分布に非対称性がないことを示し、分布が完全に対称であることを意味します。
尖度は、正規分布と比較して分布の裾が重いか軽いかを示す尺度です。
- 正規分布の尖度は 3 です。
- 特定の分布の尖度が 3 未満の場合、その分布はplaykurticであると言われます。これは、正規分布よりも極端な外れ値が少なくなる傾向があることを意味します。
- 特定の分布の尖度が 3 を超える場合、その分布はレプトクリティであると言われます。これは、正規分布よりも外れ値が多くなる傾向があることを意味します。
注:一部の式 (フィッシャーの定義) では、正規分布との比較を容易にするために、尖度から 3 が減算されます。この定義を使用すると、尖度値が 0 より大きい分布の尖度は正規分布よりも大きくなります。
このチュートリアルでは、Python で特定のデータセットの歪度と尖度の両方を計算する方法について説明します。
例: Python での歪度と平坦化
次のデータセットがあるとします。
data = [88, 85, 82, 97, 67, 77, 74, 86, 81, 95, 77, 88, 85, 76, 81]
このデータセットのサンプルの歪度と尖度を計算するには、Scipy Stata ライブラリのskew()関数とkurt()関数を次の構文で使用できます。
- バイアス (値の配列、バイアス = false)
- kurt (値の配列、バイアス = false)
引数bias=Falseを使用して、母集団の歪度と尖度ではなくサンプルの歪度と尖度を計算します。
特定のデータセットに対してこれらの関数を使用する方法は次のとおりです。
data = [88, 85, 82, 97, 67, 77, 74, 86, 81, 95, 77, 88, 85, 76, 81] #calculate sample skewness skew(data, bias= False ) 0.032697 #calculate sample kurtosis kurtosis(data, bias= False ) 0.118157
歪度は0.032697 、尖度は0.118157であることがわかります。
これは、分布がわずかにプラスに偏っており、正規分布と比較して裾野に多くの値があることを意味します。
追加リソース: 歪度と尖度の計算ツール
統計的歪度と尖度の計算ツール を使用して、特定のデータセットの歪度を計算することもできます。これにより、特定のデータセットの歪度と尖度が自動的に計算されます。