Rで四分位を見つける


33

私はRを学習しながら統計の教科書を読んでいますが、次の例で障害に遭遇しました:

ここに画像の説明を入力してください

見た後、?quantile私は次のようにしてRでこれを再作成しようとしました:

> nuclear <- c(7, 20, 16, 6, 58, 9, 20, 50, 23, 33, 8, 10, 15, 16, 104)
> quantile(nuclear)
   0%   25%   50%   75%  100% 
  6.0   9.5  16.0  28.0 104.0 

テキストとRの結果が異なることを考えると、Rが1番目と3番目の四分位数の計算で中央値を利用していることを収集しています。

質問:

1番目と3番目の四分位数の計算に中央値を含める必要がありますか?

より具体的には、教科書またはRにこれは正しいですか?教科書にこれが正しい場合、Rでこれを適切に達成する方法はありますか?

前もって感謝します。

r  quantiles 

6
ここのいくつかのスレッドでは、変位値を計算または推定できる多くの方法について説明しています。ここに信頼できる答えがあるものがありますが、他のものは私たちのサイトを検索することで利用可能です。簡単に言えば、教科書は四分位数の非標準的な計算方法を示しているように見えますが、quantileタイプ1、2、および6は、この特定のサイズのデータ​​セットに対してそれら再現しますいずれR方法は、あなたの教科書に対応していません。(このテキストの品質について疑問に思う人は...)
whuber

@whuberこのコメントをありがとう、さまざまなタイプが何をしているのかを正確に区別するための技術的背景がまだないのではないかと思うので、それは大いに役立ったquantile

@whuber:これは明らかに非標準です(おそらく本のどこかに記載されています)が、直感的ではありません。数学的に間違っていると思いますか?
マイケルM

6
n

1
Rは変位値の9つの異なる定義を使用します(デフォルトでは定義7を使用します)。参照してください?quantile
Glen_b -Reinstate Monica

回答:


43

あなたの教科書は混乱しています。 このように四分位数を定義する人やソフトウェアはほとんどありません。(最初の四分位が小さすぎ、3番目の四分位が大きすぎる傾向があります。)

quantile関数は、変位値を計算する9つの異なる方法をR実装します!それらのうちどれがこのメソッドに対応するかを確認するには、実装から始めましょう。説明から、アルゴリズムを最初に数学的に記述し、次に記述することができます。R

  1. x1x2xn

  2. データのセットでは、奇数の値がある場合、中央値はその中間値です。それ以外の場合は、偶数の値がある場合の2つの中間値の平均です。 Rmedian関数はこれを計算します。

    中央の値のインデックスはです。整数でない場合、xm=(n+1)/2(バツl+バツあなたは/2lあなたはmmバツml=m1あなたは=m+1lあなたは

  3. バツlバツあなたは

これが実装です。この教科書で演習を行うのに役立ちます。

quart <- function(x) {
  x <- sort(x)
  n <- length(x)
  m <- (n+1)/2
  if (floor(m) != m) {
    l <- m-1/2; u <- m+1/2
  } else {
    l <- m-1; u <- m+1
  }
  c(Q1=median(x[1:l]), Q3=median(x[u:n]))
}

たとえば、の出力は次quart(c(6,7,8,9,10,15,16,16,20,20,23,33,50,58,104))のテキストと一致します。

Q1 Q3 
 9 33 

10個すべてのメソッドを使用して、いくつかの小さなデータセットの四分位数を計算しましょう:9種類の方法Rと教科書の方法:

y <- matrix(NA, 2, 10)
rownames(y) <- c("Q1", "Q3")
colnames(y) <- c(1:9, "Quart")
for (n in 3:5) {
  j <- 1
  for (i in 1:9) {
    y[, i] <- quantile(1:n, probs=c(1/4, 3/4), type=i)
  }
  y[, 10] <- quart(1:n)
  cat("\n", n, ":\n")
  print(y, digits=2)
}

これを実行して確認すると、教科書の値が3つのサンプルサイズすべての出力のいずれとも一致していないRことがわかります (不一致のパターンは期間3のサイクルで継続し、サンプルがどれほど大きくても問題が持続することを示しています。)

9.528


3
このような詳細な回答と、独自に作業を行い、さまざまな方法を評価するためのツールを提供してくれたことに感謝します。ここでそれらを起動し、より詳細に説明します。

2

統計の分野(私は教えていますが、私は研究者ではありません)では、四分位計算は特にあいまいです(より一般的には、分位数に必ずしも当てはまるわけではありません)。これには、標準偏差のチェックまたは代替として、外れ値の影響を受けない四分位範囲(IQR)の使用(およびおそらく乱用)が原因で、多くの歴史があります。Q1とQ3を計算するための3つの特徴的な方法が共通であるため、オープンコンテストのままです。

よくあることですが、ウィキペディアの記事には合理的な要約があります。https : //en.m.wikipedia.org/wiki/Quartile ラーソンとファーバーのテキストは、ほとんどの基本的な統計テキストと同様に、ウィキペディアの記事で「方法1.」上記の説明に従えば、rは「方法3」を使用します。自分の分野で標準的に適切なものを自分で決める必要があります。


あなたは良い点(+1)を作ります。しかし、「方法1」の参照はTI-83計算機とExcel(信頼性の欠如はよく知られています)であり、この方法は明らかに偏っていて、Tukeyのヒンジよりも計算が難しいことを考えると、その使用を正当化または推奨することは難しいようです。
whuber
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.