On Mon, 3 Mar 2003 12:40:37 +0100
"Pfaff, Bernhard" <[EMAIL PROTECTED]> wrote:

> Dear R-List-Member,
> 
> is there a more elegant way to obtain p-values of a vector x, whose
> empirical density has been estimated with density(), than summing up the
> rectangles as an approximation of the area beneath the empirical
> distribution function and interpolating the values of x by using approx()?
> 
> pval.emp <- function(x)
>   {
>    df <- density(x,from=min(x),to=max(x),kernel="gaussian")
>    width <- df$x[2]-df$x[1]
>    rect <- df$y*width
>    cdf.emp <- cumsum(rect)
>    approx(df$x,cdf.emp,x)$y
>   }
> 
> Many thks in advance,
> Bernhard
> 
>

You may want to refer to this just as "probability" and not "p-values".  It may not be 
fruitful to fit a density if what you want is cumulative probabilities.   Just compute 
the empirical cumulative distribution function of the original x:

library(stepfun)
ecdf(x)

-- 
Frank E Harrell Jr              Prof. of Biostatistics & Statistics
Div. of Biostatistics & Epidem. Dept. of Health Evaluation Sciences
U. Virginia School of Medicine  http://hesweb1.med.virginia.edu/biostat

______________________________________________
[EMAIL PROTECTED] mailing list
http://www.stat.math.ethz.ch/mailman/listinfo/r-help

Reply via email to