R中的经验CDF与理论CDF

问题描述 投票:0回答:1

我想使用R来检查“概率积分变换”定理。假设X是带有lambda = 5的指数随机变量。我想检查随机变量U = F_X = 1 - exp(-5*X)是否具有均匀的(0,1)分布。你会怎么做?

我将以这种方式开始:

nsample <- 1000
lambda <- 5
x <- rexp(nsample, lambda) #1000 exponential observation
u <- 1- exp(-lambda*x) #CDF of x 

然后,我需要找到u的CDF并将其与Uniform(0,1)的CDF进行比较。

对于您的经验CDF,我可以使用ECDF函数:

ECDF_u <- ecdf(u) #empirical CDF of U

现在,我应该创建均匀(0,1)的理论CDF,并将其绘制在ECDF的同一图形上,以便比较这两个图形。

您能提供代码帮助吗?

r probability theorem-proving cdf ecdf
1个回答
0
投票

您快到了。您无需自己计算ECDF – qqplot会处理这一问题。您只需要样本(u)和您要检查的分布中的数据即可。懒惰(不是很正确)的方法是检查从均匀分布中抽取的随机样本:

qqplot(runif(nsample), u)

但是,当然,最好根据理论分位数进行绘制:

# the actual plot
qqplot( qunif(ppoints(length(u))), u )
# add a line
qqline(u, distribution=qunif, col='red', lwd=2)

enter image description here

对我来说很好。

© www.soinside.com 2019 - 2024. All rights reserved.