2

我被要求手动计算这些数据的 IQR

-1,400 -1,000 -0,600 0,400 1,000 1,700 2,300 2,600 3,300 3,700 4,400 4,600 7,000 7,500 7,700 13,500 18,500

结果是

中位数 3.300
1 四分位数 1
3 四分位数 7
Q3-Q1=IQR = 7-1=6

我的结果也得到了 R 的证实。

x <- c(-1.400,-1.000,-0.600,0.400,1.000,1.700,2.300,2.600,3.300,3.700,4.400,4.600,7.000,7.500,7.700,13.500,18.500)
summary(x)
#   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
# -1.400   1.000   3.300   4.424   7.000  18.500 

问题是他们期望的是这个值。

1 四分位数 0.7
3 四分位数 7.25
IQR= 6.55

有人可以解释发生了什么吗?我的误判或误用在哪里?

4

1 回答 1

2

R中的函数实现了 9 种不同的计算分位数的方法quantile。您可以通过执行来阅读这些方法,?quantile并通过执行以下操作在向量上测试它们:

 t(sapply(1:9, function(i) quantile(x, c(0.25, 0.75), type = i)))
#>          25%      75%
#>  [1,] 1.0000 7.000000
#>  [2,] 1.0000 7.000000
#>  [3,] 0.4000 7.000000
#>  [4,] 0.5500 6.400000
#>  [5,] 0.8500 7.125000
#>  [6,] 0.7000 7.250000
#>  [7,] 1.0000 7.000000
#>  [8,] 0.8000 7.166667
#>  [9,] 0.8125 7.156250

你可以看到你的方法是 1、2 或 7,(R 的默认是方法 7),而“预期”的答案是方法 6。如果只是要求你计算第一和第三四分位数,你应该是给出了预期方法的指导。

于 2020-12-11T12:43:38.413 回答