|
|
|
@ -2,15 +2,12 @@
|
|
|
|
|
-- http://mathworld.wolfram.com/UniformDistribution.html
|
|
|
|
|
set client_min_messages to ERROR;
|
|
|
|
|
|
|
|
|
|
With dist As (
|
|
|
|
|
SELECT random()::numeric As val
|
|
|
|
|
FROM generate_series(1,50000) t
|
|
|
|
|
WITH dist AS (
|
|
|
|
|
SELECT generate_series(0,10000)::numeric / 10000.0 i
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
SELECT
|
|
|
|
|
-- does random dist values match within 1% of known values
|
|
|
|
|
abs(CDB_Kurtosis(array_agg(val)) + 1.20) < 1e-2 As kurtosis,
|
|
|
|
|
abs(CDB_Skewness(array_agg(val)) - 0) < 1e-2 As skewness
|
|
|
|
|
SELECT
|
|
|
|
|
abs(CDB_Kurtosis(array_agg(i)) + 1.2) < 1e-3 AS kurtosis,
|
|
|
|
|
abs(CDB_Skewness(array_agg(i))) < 1e-3 AS skewness
|
|
|
|
|
FROM dist;
|
|
|
|
|
|
|
|
|
|
set client_min_messages to NOTICE;
|
|
|
|
|