数据类似于分布式伽玛。
复制数据将是这样的:
a)首先找到分布。真实数据的参数:
fitdist(datag, "gamma", optim.method="Nelder-Mead")
b)使用参数shape,rate,scale来模拟数据:
data <- rgamma(10000, shape=0.6, rate=4.8, scale=1/4.8)
要使用r中的qgamma函数查找分位数,只需:
编辑:
qgamma(c(seq(1,0.1,by=-0.1)), shape=0.6, rate =4.8, scale = 1/4.8, log = FALSE)
如何为真实数据找到分位数(不用rgamma模拟)?
请注意,分位数r函数返回真实数据(datag)的所需分位数,但正如我所理解的那样假设数据是正态分布的。正如你所看到的,他们显然不是。
quantile(datag, seq(0,1, by=0.1), type=7)
r中使用什么函数或者如何统计获得高度偏斜数据的分位数?
另外,这有点意义吗?但仍然没有得到更低的价值!
Fn <- ecdf(datag)
Fn(seq(0.1,1,by=0.1))
答案 0 :(得分:5)
“q”函数返回分位数,在本例中为qgamma
。对于您的数据,眼球整合表明大部分数据位于0.2的左侧,如果我们要求0.8分位数,我们会看到估计分布中80%的数据位于左侧:
qgamma(.8, shape=0.6, rate=4.8)
#[1] 0.20604
似乎同意你所绘制的内容。如果您想要样本中的0.8分位数,那么只需:
quantile(datag, 0.8)