Skip to content

Instantly share code, notes, and snippets.

@reinaldorauch
Created March 22, 2015 00:55
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save reinaldorauch/b382e95ed37c1f08b053 to your computer and use it in GitHub Desktop.
Save reinaldorauch/b382e95ed37c1f08b053 to your computer and use it in GitHub Desktop.
Funções básicas de estatística implementados em Haskell
import Data.List
media :: Fractional a => [a] -> a
media l= let (t,n) = foldl' (\(!b,!c) a -> (a+b,c+1)) (0,0) l in t / n
desvios :: Fractional a => [a] -> a -> [a]
desvios xs m = [ a - m | a <- xs ]
powtwo :: Fractional a => [a] -> [a]
powtwo xs = [ a ^ 2 | a <- xs ]
variancia :: Fractional a => [a] -> a
variancia xs = sum (powtwo (desvios xs (media xs))) / realToFrac(length xs - 1)
desvioPadrao :: Floating a => [a] -> a
desvioPadrao xs = sqrt (variancia xs)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment