Safe Haskell | Safe-Infered |
---|
A list of items with relative frequencies of appearance.
- data Frequency a
- uniformFreq :: String -> [a] -> Frequency a
- toFreq :: String -> [(Int, a)] -> Frequency a
- scaleFreq :: Show a => Int -> Frequency a -> Frequency a
- filterFreq :: (a -> Bool) -> Frequency a -> Frequency a
- rollFreq :: Show a => Frequency a -> StdGen -> (a, StdGen)
- nullFreq :: Frequency a -> Bool
- runFrequency :: Frequency a -> [(Int, a)]
The Frequency
type
The frequency distribution type.
Construction
uniformFreq :: String -> [a] -> Frequency aSource
Uniform discrete frequency distribution.
toFreq :: String -> [(Int, a)] -> Frequency aSource
Takes a name and a list of frequencies and items into the frequency distribution.
Transformation
scaleFreq :: Show a => Int -> Frequency a -> Frequency aSource
Scale frequecy distribution, multiplying it by a positive integer constant.
filterFreq :: (a -> Bool) -> Frequency a -> Frequency aSource
Leave only items that satisfy a predicate.
Consumption
rollFreq :: Show a => Frequency a -> StdGen -> (a, StdGen)Source
Randomly choose an item according to the distribution.
runFrequency :: Frequency a -> [(Int, a)]Source
give acces to raw frequency values