probability 0.2.4 → 0.2.4.1
raw patch · 2 files changed
+10/−6 lines, 2 filesdep ~containersPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: containers
API changes (from Hackage documentation)
- Numeric.Probability.Example.Bayesian: e, bE, aE :: Probability
- Numeric.Probability.Example.Diagnosis: pDisease, pFalsePositive, pFalseNegative :: Probability
- Numeric.Probability.Example.Predator: g, e, s, d :: Float
- Numeric.Probability.Example.TreeGrowth: p1, p6, p5, p4, p3, p2 :: Vis
- Numeric.Probability.Example.TreeGrowth: sh2, st2 :: IO ()
- Numeric.Probability.Visualize: incr, decr :: (Ord a, Fractional a) => a -> a
+ Numeric.Probability.Example.Bayesian: aE :: Probability
+ Numeric.Probability.Example.Bayesian: bE :: Probability
+ Numeric.Probability.Example.Bayesian: e :: Probability
+ Numeric.Probability.Example.Diagnosis: pDisease :: Probability
+ Numeric.Probability.Example.Diagnosis: pFalseNegative :: Probability
+ Numeric.Probability.Example.Diagnosis: pFalsePositive :: Probability
+ Numeric.Probability.Example.Predator: d :: Float
+ Numeric.Probability.Example.Predator: e :: Float
+ Numeric.Probability.Example.Predator: g :: Float
+ Numeric.Probability.Example.Predator: s :: Float
+ Numeric.Probability.Example.TreeGrowth: p1 :: Vis
+ Numeric.Probability.Example.TreeGrowth: p2 :: Vis
+ Numeric.Probability.Example.TreeGrowth: p3 :: Vis
+ Numeric.Probability.Example.TreeGrowth: p4 :: Vis
+ Numeric.Probability.Example.TreeGrowth: p5 :: Vis
+ Numeric.Probability.Example.TreeGrowth: p6 :: Vis
+ Numeric.Probability.Example.TreeGrowth: sh2 :: IO ()
+ Numeric.Probability.Example.TreeGrowth: st2 :: IO ()
+ Numeric.Probability.Visualize: decr :: (Ord a, Fractional a) => a -> a
+ Numeric.Probability.Visualize: incr :: (Ord a, Fractional a) => a -> a
Files
probability.cabal view
@@ -1,5 +1,5 @@ Name: probability-Version: 0.2.4+Version: 0.2.4.1 License: BSD3 License-File: COPYRIGHT Author: Martin Erwig <erwig@eecs.oregonstate.edu>, Steve Kollmansberger@@ -14,7 +14,7 @@ but extends the List monad by a measure of probability. Small interface to R plotting. Tested-With: GHC==6.4.1, GHC==6.8.2, GHC==6.12.3-Tested-With: GHC==7.0.2, GHC==7.2.2+Tested-With: GHC==7.0.2, GHC==7.2.2, GHC==7.4.2, GHC==7.8.2 Cabal-Version: >=1.6 Build-Type: Simple Data-Files:@@ -28,7 +28,7 @@ Source-Repository this type: darcs location: http://code.haskell.org/~thielema/probability/- tag: 0.2.4+ tag: 0.2.4.1 Flag splitBase@@ -40,7 +40,7 @@ transformers >=0.0.1 && <0.4 If flag(splitBase) Build-Depends:- containers >=0.1 && <1,+ containers >=0.1 && <0.6, random >=1.0 && <2, base >=2 && <5 Else
src/Numeric/Probability/Distribution.hs view
@@ -8,10 +8,12 @@ import Control.Applicative (Applicative(..)) import Control.Monad (liftM, liftM2, join, ) +import qualified Data.Foldable as Fold import qualified Data.List.HT as ListHT import qualified Data.Map as Map import qualified Data.List as List import qualified Data.Maybe as Maybe+import Data.Tuple.HT (mapFst, ) import Data.Ord.HT (comparing, ) import Data.Eq.HT (equating, ) @@ -350,8 +352,10 @@ above :: (Num prob, Ord prob, Ord a) => prob -> T prob a -> T prob (Select a) above p (Cons d) =- let (d1,d2) = span (\(_,q)->q>=p) (sortP (norm' d))- in Cons (List.map (\(x,q)->(Case x,q)) d1++[(Other,sumP d2)])+ let (d1,d2) = Map.partition (>=p) $ Map.fromListWith (+) d+ in Cons $+ (Other, Fold.sum d2) :+ List.map (mapFst Case) (Map.toAscList d1) fromFreqs :: (Fractional prob) => [(a,prob)] -> T prob a fromFreqs xs = Cons (List.map (\(x,p)->(x,p/q)) xs)