[Haskell-cafe] operating on a hundred files at once
Jefferson Heard
jeff at renci.org
Tue Apr 10 10:15:00 EDT 2007
Thanks, Ketil. I knew I could calcuate the mean in constant space, but
I didn't think about the variance. Much appreciated.
On Tue, 2007-04-10 at 08:30 +0200, Ketil Malde wrote:
> On Tue, 2007-04-10 at 13:16 +1000, Duncan Coutts wrote:
>
> > Note, that like in your original we read each file twice, once for the
> > mean and once for the variance.
>
> As an aside, you can calculate both mean and variance in one pass (and
> constant space) by calculating the sum of elements 'x', the sum of
> squared elements 'x2', and keeping track of the number of elements 'n'.
>
> mean = x/n
> var = (x2-mean*mean*n)/(n-1)
>
> If you track the sum of cubed elements (x3) and the powers of four (x4),
> you also get kurtosis and skew in a similar manner.
>
> -k
More information about the Haskell-Cafe
mailing list