statistics-0.16.1.2: A library of statistical types, data, and functions
Copyright (c) 2009 2010 Bryan O'Sullivan
License BSD3
Maintainer bos@serpentine.com
Stability experimental
Portability portable
Safe Haskell None
Language Haskell2010

Statistics.Resampling

Description

Resampling statistics.

Synopsis

Data types

newtype Resample Source #

A resample drawn randomly, with replacement, from a set of data points. Distinct from a normal array to make it harder for your humble author's brain to go wrong.

Instances

Instances details
Eq Resample Source #
Instance details

Defined in Statistics.Resampling

Data Resample Source #
Instance details

Defined in Statistics.Resampling

Methods

gfoldl :: ( forall d b. Data d => c (d -> b) -> d -> c b) -> ( forall g. g -> c g) -> Resample -> c Resample Source #

gunfold :: ( forall b r. Data b => c (b -> r) -> c r) -> ( forall r. r -> c r) -> Constr -> c Resample Source #

toConstr :: Resample -> Constr Source #

dataTypeOf :: Resample -> DataType Source #

dataCast1 :: Typeable t => ( forall d. Data d => c (t d)) -> Maybe (c Resample ) Source #

dataCast2 :: Typeable t => ( forall d e. ( Data d, Data e) => c (t d e)) -> Maybe (c Resample ) Source #

gmapT :: ( forall b. Data b => b -> b) -> Resample -> Resample Source #

gmapQl :: (r -> r' -> r) -> r -> ( forall d. Data d => d -> r') -> Resample -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> ( forall d. Data d => d -> r') -> Resample -> r Source #

gmapQ :: ( forall d. Data d => d -> u) -> Resample -> [u] Source #

gmapQi :: Int -> ( forall d. Data d => d -> u) -> Resample -> u Source #

gmapM :: Monad m => ( forall d. Data d => d -> m d) -> Resample -> m Resample Source #

gmapMp :: MonadPlus m => ( forall d. Data d => d -> m d) -> Resample -> m Resample Source #

gmapMo :: MonadPlus m => ( forall d. Data d => d -> m d) -> Resample -> m Resample Source #

Read Resample Source #
Instance details

Defined in Statistics.Resampling

Show Resample Source #
Instance details

Defined in Statistics.Resampling

Generic Resample Source #
Instance details

Defined in Statistics.Resampling

ToJSON Resample Source #
Instance details

Defined in Statistics.Resampling

FromJSON Resample Source #
Instance details

Defined in Statistics.Resampling

Binary Resample Source #
Instance details

Defined in Statistics.Resampling

type Rep Resample Source #
Instance details

Defined in Statistics.Resampling

type Rep Resample = D1 (' MetaData "Resample" "Statistics.Resampling" "statistics-0.16.1.2-IkOne9g3oJ1vhHVSRLPUO" ' True ) ( C1 (' MetaCons "Resample" ' PrefixI ' True ) ( S1 (' MetaSel (' Just "fromResample") ' NoSourceUnpackedness ' NoSourceStrictness ' DecidedLazy ) ( Rec0 ( Vector Double ))))

data Bootstrap v a Source #

Constructors

Bootstrap

Fields

Instances

Instances details
Functor v => Functor ( Bootstrap v) Source #
Instance details

Defined in Statistics.Resampling

Foldable v => Foldable ( Bootstrap v) Source #
Instance details

Defined in Statistics.Resampling

Traversable v => Traversable ( Bootstrap v) Source #
Instance details

Defined in Statistics.Resampling

( Eq a, Eq (v a)) => Eq ( Bootstrap v a) Source #
Instance details

Defined in Statistics.Resampling

( Typeable v, Data a, Data (v a)) => Data ( Bootstrap v a) Source #
Instance details

Defined in Statistics.Resampling

Methods

gfoldl :: ( forall d b. Data d => c (d -> b) -> d -> c b) -> ( forall g. g -> c g) -> Bootstrap v a -> c ( Bootstrap v a) Source #

gunfold :: ( forall b r. Data b => c (b -> r) -> c r) -> ( forall r. r -> c r) -> Constr -> c ( Bootstrap v a) Source #

toConstr :: Bootstrap v a -> Constr Source #

dataTypeOf :: Bootstrap v a -> DataType Source #

dataCast1 :: Typeable t => ( forall d. Data d => c (t d)) -> Maybe (c ( Bootstrap v a)) Source #

dataCast2 :: Typeable t => ( forall d e. ( Data d, Data e) => c (t d e)) -> Maybe (c ( Bootstrap v a)) Source #

gmapT :: ( forall b. Data b => b -> b) -> Bootstrap v a -> Bootstrap v a Source #

gmapQl :: (r -> r' -> r) -> r -> ( forall d. Data d => d -> r') -> Bootstrap v a -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> ( forall d. Data d => d -> r') -> Bootstrap v a -> r Source #

gmapQ :: ( forall d. Data d => d -> u) -> Bootstrap v a -> [u] Source #

gmapQi :: Int -> ( forall d. Data d => d -> u) -> Bootstrap v a -> u Source #

gmapM :: Monad m => ( forall d. Data d => d -> m d) -> Bootstrap v a -> m ( Bootstrap v a) Source #

gmapMp :: MonadPlus m => ( forall d. Data d => d -> m d) -> Bootstrap v a -> m ( Bootstrap v a) Source #

gmapMo :: MonadPlus m => ( forall d. Data d => d -> m d) -> Bootstrap v a -> m ( Bootstrap v a) Source #

( Read a, Read (v a)) => Read ( Bootstrap v a) Source #
Instance details

Defined in Statistics.Resampling

( Show a, Show (v a)) => Show ( Bootstrap v a) Source #
Instance details

Defined in Statistics.Resampling

Generic ( Bootstrap v a) Source #
Instance details

Defined in Statistics.Resampling

Associated Types

type Rep ( Bootstrap v a) :: Type -> Type Source #

( ToJSON a, ToJSON (v a)) => ToJSON ( Bootstrap v a) Source #
Instance details

Defined in Statistics.Resampling

( FromJSON a, FromJSON (v a)) => FromJSON ( Bootstrap v a) Source #
Instance details

Defined in Statistics.Resampling

( Binary a, Binary (v a)) => Binary ( Bootstrap v a) Source #
Instance details

Defined in Statistics.Resampling

type Rep ( Bootstrap v a) Source #
Instance details

Defined in Statistics.Resampling

type Rep ( Bootstrap v a) = D1 (' MetaData "Bootstrap" "Statistics.Resampling" "statistics-0.16.1.2-IkOne9g3oJ1vhHVSRLPUO" ' False ) ( C1 (' MetaCons "Bootstrap" ' PrefixI ' True ) ( S1 (' MetaSel (' Just "fullSample") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 a) :*: S1 (' MetaSel (' Just "resamples") ' NoSourceUnpackedness ' NoSourceStrictness ' DecidedLazy ) ( Rec0 (v a))))

data Estimator Source #

An estimator of a property of a sample, such as its mean .

The use of an algebraic data type here allows functions such as jackknife and bootstrapBCA to use more efficient algorithms when possible.

Resampling

resampleST Source #

Arguments

:: PrimMonad m
=> Gen ( PrimState m)
-> [ Estimator ]

Estimation functions.

-> Int

Number of resamples to compute.

-> Vector Double

Original sample.

-> m [ Bootstrap Vector Double ]

Single threaded and deterministic version of resample.

resample Source #

Arguments

:: GenIO
-> [ Estimator ]

Estimation functions.

-> Int

Number of resamples to compute.

-> Vector Double

Original sample.

-> IO [( Estimator , Bootstrap Vector Double )]

O(e*r*s) Resample a data set repeatedly, with replacement, computing each estimate over the resampled data.

This function is expensive; it has to do work proportional to e*r*s , where e is the number of estimation functions, r is the number of resamples to compute, and s is the number of original samples.

To improve performance, this function will make use of all available CPUs. At least with GHC 7.0, parallel performance seems best if the parallel garbage collector is disabled (RTS option -qg ).

resampleVector :: ( PrimMonad m, Vector v a) => Gen ( PrimState m) -> v a -> m (v a) Source #

Create vector using resamples

Jackknife

jackknife :: Estimator -> Sample -> Vector Double Source #

O(n) or O(n^2) Compute a statistical estimate repeatedly over a sample, each time omitting a successive element.

jackknifeMean :: Sample -> Vector Double Source #

O(n) Compute the jackknife mean of a sample.

jackknifeVariance :: Sample -> Vector Double Source #

O(n) Compute the jackknife variance of a sample.

jackknifeVarianceUnb :: Sample -> Vector Double Source #

O(n) Compute the unbiased jackknife variance of a sample.

jackknifeStdDev :: Sample -> Vector Double Source #

O(n) Compute the jackknife standard deviation of a sample.

Helper functions

splitGen :: Int -> GenIO -> IO [ GenIO ] Source #

Split a generator into several that can run independently.