[R] Ignoring the domain of RV in punif()
er|cjberger @end|ng |rom gm@||@com
Tue Oct 23 11:21:16 CEST 2018
I disagree with your criticism.
For a random variable X
X: D - - - > R
its CDF F is defined by
F: R - - - > [0,1]
F(z) = Prob(X <= z)
The fact that you wrote a convenient formula for the CDF
F(z) = (z-a)/(b-a) a <= z <= b
in a particular range for z is your decision, and as you noted this formula
will give the wrong value for z outside the interval [a,b].
But the problem lies in your formula, not the definition of the CDF which
would be, in your case:
F(z) = 0 if z <= a
= (z-a)/(b-a) if a <= z <= b
= 1 if 1 <= z
On Tue, Oct 23, 2018 at 12:05 PM Hamed Ha <hamedhaseli using gmail.com> wrote:
> Hi All,
> I recently discovered an interesting issue with the punif() function. Let
> X~Uiform[a,b] then the CDF is defined by F(x)=(x-a)/(b-a) for (a<= x<= b).
> The important fact here is the domain of the random variable X. Having said
> that, R returns CDF for any value in the real domain.
> I understand that one can justify this by extending the domain of X and
> assigning zero probabilities to the values outside the domain. However,
> theoretically, it is not true to return a value for the CDF outside the
> domain. Then I propose a patch to R function punif() to return an error in
> this situations.
> > punif(10^10)
>  1
> [[alternative HTML version deleted]]
> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> PLEASE do read the posting guide
> and provide commented, minimal, self-contained, reproducible code.
[[alternative HTML version deleted]]
More information about the R-help