(mean, stdev)
| 119416 | return p * x; |
| 119417 | } |
| 119418 | function gaussian(mean, stdev) { |
| 119419 | let mu, sigma; |
| 119420 | const dist = { |
| 119421 | mean (_) { |
| 119422 | if (arguments.length) { |
| 119423 | mu = _ || 0; |
| 119424 | return dist; |
| 119425 | } else return mu; |
| 119426 | }, |
| 119427 | stdev (_) { |
| 119428 | if (arguments.length) { |
| 119429 | sigma = _ == null ? 1 : _; |
| 119430 | return dist; |
| 119431 | } else return sigma; |
| 119432 | }, |
| 119433 | sample: ()=>sampleNormal(mu, sigma), |
| 119434 | pdf: (value)=>densityNormal(value, mu, sigma), |
| 119435 | cdf: (value)=>cumulativeNormal(value, mu, sigma), |
| 119436 | icdf: (p)=>quantileNormal(p, mu, sigma) |
| 119437 | }; |
| 119438 | return dist.mean(mean).stdev(stdev); |
| 119439 | } |
| 119440 | function kde(support, bandwidth) { |
| 119441 | const kernel = gaussian(); |
| 119442 | let n = 0; |
no test coverage detected