[R]尖度の計算
資料の分布のとがり具合の度合いを表すものに尖度というものがある。
Rに標準で組み込まれている組み込み関数に尖度を計算させるものはないため、計算するには組み込み関数を組み合わせて計算する必要がある。
以下は自作をした尖度を計算する関数。第1仮引数valに尖度を計算させたい分布を数値ベクトルで与えると、尖度を関数の戻り値としている。
kurtosis <- function(val) {
n <- length(val)
var1 <- var(val) * (n - 1) / n # 不偏分散から標本分散を求める
sd1 <- sqrt(var1) # 標本分散の平方根
r <- sum((val - mean(val)) ^ 4) / (n * sd1 ^ 4)
return(r)
}
なお、求めた尖度をa4とすると、a4の値により、資料の分布について以下のことが言える。
a4 > 3 →分布は正規分布よりとがっている
a4 = 3 →分布は正規分布と同じような形をしている
a4 < 3 →分布は正規分布よりなだらか
« [R]関数をコンパイルして動作を速くする | トップページ | [R]プロット点の縁と中を別々の色で塗りつぶす »
「R(数値計算)」カテゴリの記事
- [R]複数のパラメーターと定数を持つ関数の値が最大・最小となるパラメーターを求める(2026.03.30)
- [R]重み付き線形最小二乗法を行う(2026.03.20)
- [R]重み付き非線形最小二乗法を行う(2026.03.06)
- [R]計算機イプシロンを求める(2025.10.29)
- [R]複数の引数を持つ関数の値の最小値(最大値)を求める(2024.12.07)

コメント