On Fri, Jan 20, 2006 at 04:54:00PM -0700, Michael Fuhr wrote:
> On Sat, Jan 21, 2006 at 12:00:49AM +0100, SunWuKung wrote:
> > Does somebody have/know of a function for pg returning the standard 
> > normal cumulative distribution for a Z score?
> 
> Are you looking for something like this?
> 
> test=> SELECT z, cdf_ugaussian_p(z) FROM generate_series(-3, 3) AS g(z);

You can also do this with the R language, which you can access from
PostgreSQL via PL/R.

http://www.r-project.org/
http://www.joeconway.com/plr/

CREATE FUNCTION pnorm(z double precision) RETURNS double precision AS $$
return(pnorm(z))
$$ LANGUAGE plr IMMUTABLE STRICT;

SELECT z, pnorm(z) FROM generate_series(-3, 3) AS g(z);
 z  |        pnorm        
----+---------------------
 -3 | 0.00134989803163009
 -2 |  0.0227501319481792
 -1 |   0.158655253931457
  0 |                 0.5
  1 |   0.841344746068543
  2 |   0.977249868051821
  3 |    0.99865010196837

-- 
Michael Fuhr

---------------------------(end of broadcast)---------------------------
TIP 1: if posting/reading through Usenet, please send an appropriate
       subscribe-nomail command to [EMAIL PROTECTED] so that your
       message can get through to the mailing list cleanly

Reply via email to