Mercurial > hg > octave-lyh
comparison scripts/statistics/distributions/laplace_cdf.m @ 4859:265d566cc770
[project @ 2004-04-08 23:52:45 by jwe]
author | jwe |
---|---|
date | Thu, 08 Apr 2004 23:52:45 +0000 |
parents | 38c61cbf086c |
children | 4c8a2e4e0717 |
comparison
equal
deleted
inserted
replaced
4858:499d2ca46982 | 4859:265d566cc770 |
---|---|
30 | 30 |
31 if (nargin != 1) | 31 if (nargin != 1) |
32 usage ("laplace_cdf (x)"); | 32 usage ("laplace_cdf (x)"); |
33 endif | 33 endif |
34 | 34 |
35 [r, c] = size (x); | 35 cdf = zeros (size (x)); |
36 s = r * c; | |
37 x = reshape (x, 1, s); | |
38 cdf = zeros (1, s); | |
39 | 36 |
40 k = find (isnan (x)); | 37 k = find (isnan (x)); |
41 if (any (k)) | 38 if (any (k)) |
42 cdf(k) = NaN * ones (1, length (k)); | 39 cdf(k) = NaN; |
43 endif | 40 endif |
44 | 41 |
45 k = find (x == Inf); | 42 k = find (x == Inf); |
46 if (any (k)) | 43 if (any (k)) |
47 cdf(k) = ones (1, length (k)); | 44 cdf(k) = 1; |
48 endif | 45 endif |
49 | 46 |
50 k = find ((x > -Inf) & (x < Inf)); | 47 k = find ((x > -Inf) & (x < Inf)); |
51 if (any (k)) | 48 if (any (k)) |
52 cdf(k) = (1 + sign (x(k)) .* (1 - exp (- abs (x(k))))) / 2; | 49 cdf(k) = (1 + sign (x(k)) .* (1 - exp (- abs (x(k))))) / 2; |
53 endif | 50 endif |
54 | 51 |
55 cdf = reshape (cdf, r, c); | |
56 | |
57 endfunction | 52 endfunction |