Data update

This commit is contained in:
Ingy döt Net 2024-10-16 18:07:41 -07:00
parent 81fd053722
commit 52a6ef48dd
10248 changed files with 63654 additions and 6775 deletions

View file

@ -0,0 +1,10 @@
def 'seq rnd-nomal' [mean sdev] {
0.. | each { random float (-1)..1 } | window 2
| each { [($in.0 ** 2 + $in.1 ** 2) $in.1] }
| where { 0 < $in.0 and $in.0 < 1 }
| each { do {|q r| -2 * ($q | math ln) / $q | math sqrt | $sdev * $in * $r + $mean } ...$in }
}
let rand = seq rnd-nomal 1.0 0.5 | take 1000
$'mean: ($rand | math avg), standard deviation: ($rand | math stddev)'

View file

@ -0,0 +1,16 @@
const
n = 1000;
function randnormal(n: integer; mean, sd: real): array of real;
begin
var uniform1 := ArrRandomReal(n, 0, 1, 10);
var uniform2 := ArrRandomReal(n, 0, 1, 10);
result := uniform1.Zip(uniform2, (x, y) -> Cos(2 * PI * x) * Sqrt(-2 * Ln(y)) * sd + mean).ToArray;
end;
begin
var numbers := randnormal(n, 1, 0.5);
var mean := numbers.Average;
var std := numbers.Sum(x -> Sqr(x - mean) / n).Sqrt;
println('mean:', mean, 'stddev:', std);
end.