给定一个样本,然后将其拟合到正态分布,我如何找到落在10%尾部的观察结果?
说我有这10个观察结果:
x = c(68.9322859175383, 87.9226602406337, 118.63064982191, 63.9906406656306,
181.510804700138, 188.910377786055, 96.9295278315884, 86.2770354338514,
95.1169692997219, 82.1328861776944)
我把它们装到正常分布中:
MASS::fitdistr(x, 'normal')
返回mean
和sd
,但我不知道如何使用此信息来查找10%尾部的点数。
答案 0 :(得分:2)
如果
y <- MASS::fitdistr(x, 'normal')
然后低于10%的尾部由
给出tail <- qnorm(0.1, y$estimate[1], y$estimate[2])
tail
[1] 53.65485
然后您可以选择x[x<tail]
- 尽管在这种情况下没有
答案 1 :(得分:1)
您需要正常分配的Quantile function。它被称为qnorm
。使用参数mu
和sd
作为参数。
x = c(68.9322859175383, 87.9226602406337, 118.63064982191, 63.9906406656306,
181.510804700138, 188.910377786055, 96.9295278315884, 86.2770354338514,
95.1169692997219, 82.1328861776944)
p <- MASS::fitdistr(x, 'normal')
这是10%分位数:
q10 <- qnorm(0.1, mean = p$estimate["mean"], sd = p$estimate["sd"])
10%分位数中最多的值是什么?
x <= q10
这是90%的分位数:
q90 <- qnorm(0.9, mean = p$estimate["mean"], sd = p$estimate["sd"])
哪些值大于90%分位数?
x >= q90
答案 2 :(得分:1)
使用pnorm
获取估计估计分布下的累积概率。
pnorm(x,mean(x),sd(x))
[1] 0.1927437 0.3316693 0.6041455 0.1634492 0.9550798 0.9688933 0.4089801
[8] 0.3181819 0.3930217 0.2852975
目前尚不清楚你是否感兴趣的是左尾或右尾,没有一个适合尾部低10%(即p <= 0.1),但2个适合上部尾部(p> = 0.9)。