diff options
| author | Will Hawkins <[email protected]> | 2022-11-07 18:27:00 -0500 |
|---|---|---|
| committer | Will Hawkins <[email protected]> | 2022-11-07 18:30:47 -0500 |
| commit | d88338dcf0a53ef48eb0a8064da6e284395f5d29 (patch) | |
| tree | 726a49e0ce6fd98975117fd097d601c208d04ff3 /ms/ms.go | |
| parent | 4a0fd25ae07063361a83d5bfda55306eaf3e426e (diff) | |
[Refactor] Change standard-deviation calculation API slightly
Diffstat (limited to 'ms/ms.go')
| -rw-r--r-- | ms/ms.go | 11 |
1 files changed, 8 insertions, 3 deletions
@@ -80,7 +80,7 @@ func (ma *MathematicalSeries[T]) AllSequentialIncreasesLessThan(limit float64) ( /* * N.B.: Overflow is possible -- use at your discretion! */ -func (ma *MathematicalSeries[T]) StandardDeviationLessThan(limit T) (bool, T) { +func (ma *MathematicalSeries[T]) StandardDeviation() (bool, T) { // If we have not yet accumulated a complete set of intervals, // we are always false. @@ -117,11 +117,16 @@ func (ma *MathematicalSeries[T]) StandardDeviationLessThan(limit T) (bool, T) { sd := T(math.Sqrt(variance)) //sd := T(variance) - return T(sd) < limit, sd + return true, sd } func (ma *MathematicalSeries[T]) IsNormallyDistributed() bool { - _, stddev := ma.StandardDeviationLessThan(0.0) + valid, stddev := ma.StandardDeviation() + // If there are not enough values in our series to generate a standard + // deviation, then we cannot do this calculation either. + if !valid { + return false + } avg := float64(ma.CalculateAverage()) fstddev := float64(stddev) |
