-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Find the rank product of a data set.
--   
--   Find the rank product of a data set and get the p-value from a
--   permutation test.
@package rank-product
@version 0.2.0.1

module Statistics.Types
newtype Permutations
Permutations :: Int -> Permutations
newtype Entity
Entity :: [Double] -> Entity
[unEntity] :: Entity -> [Double]
newtype RankEntity
RankEntity :: [Double] -> RankEntity
[unRankEntity] :: RankEntity -> [Double]
newtype RankProductEntity
RankProductEntity :: Double -> RankProductEntity
[unRankProductEntity] :: RankProductEntity -> Double
newtype PValue
PValue :: Double -> PValue
[unPValue] :: PValue -> Double
data Sort
Ascending :: Sort
Descending :: Sort
instance GHC.Show.Show Statistics.Types.Sort
instance GHC.Read.Read Statistics.Types.Sort
instance GHC.Classes.Ord Statistics.Types.Sort
instance GHC.Classes.Eq Statistics.Types.Sort
instance GHC.Show.Show Statistics.Types.PValue
instance GHC.Show.Show Statistics.Types.RankProductEntity
instance GHC.Show.Show Statistics.Types.RankEntity
instance GHC.Show.Show Statistics.Types.Entity

module Statistics.RankProduct

-- | Rank transform a list.
rankList :: (Ord a) => Sort -> [a] -> [Double]

-- | Get the rank product of a list of Entity. Ascending ranks the lowest
--   value as 1 while Descending ranks the highest value as 1.
rankProduct :: Sort -> [Entity] -> [RankProductEntity]

-- | Get the rank product of a pre-ranked data set [[ranked values for a
--   gene in different data sets]].
prerankProduct :: [RankEntity] -> [RankProductEntity]

-- | Get the rank product of a list of Entity as well as the permutation
--   p-value. Ascending ranks the lowest value as 1 while Descending ranks
--   the highest value as 1.
rankProductPermutation :: Permutations -> Sort -> [Entity] -> IO [(RankProductEntity, PValue)]
