timeseries-0.3.0: src/Data/TimeSeries/Stats.hs
module Data.TimeSeries.Stats
( mean
, std
, variance
) where
import Prelude hiding (max, min)
import Data.TimeSeries.Series (Series)
-- | Return Time Series mean
mean :: Fractional a => Series a -> a
mean xs = sum xs / fromIntegral (length xs)
-- | Calculate Time Series variance
variance :: Floating a => Series a -> a
variance xs = sum (fmap (\x -> (x-mu)**2) xs) / fromIntegral (length xs)
where mu = mean xs
-- | Calculate Time Series Standard Deviation
std :: Floating a => Series a -> a
std = sqrt . variance