Cumulative standard deviation: Difference between revisions

m
Line 1,907:
 
<lang Haskell>import Data.List (mapAccumL)
 
 
-------------- CUMULATIVE STANDARD DEVIATION -------------
 
cumulativeStdDevns :: [Float] -> [Float]
cumulativeStdDevns xs = snd $. mapAccumL go (0, 0) $. zip [1.0 ..] xs
where
go (s, q) (i, x) =
Line 1,917 ⟶ 1,918:
_q = q + (x ^ 2)
in ((_s, _q), sqrt ((_q / i) - ((_s / i) ^ 2)))
 
 
 
--------------------------- TEST -------------------------
main :: IO ()
9,655

edits