<s> import scipy . stats . distributions as distributions <EOL> import numpy as np <EOL> import scipy as sp <EOL> import copy <EOL> def pbinom ( q , size , prob ) : <EOL> '''<STR_LIT>''' <EOL> dist = distributions . binom ( size , prob ) <EOL> return dist . cdf ( q ) <EOL> def qbinom ( p , size , prob ) : <EOL> '''<STR_LIT>''' <EOL> minq = <NUM_LIT:0> <EOL> maxq = size <EOL> minp = pbinom ( minq , size , prob ) <EOL> maxp = pbinom ( maxq , size , prob ) <EOL> if minp > p : return minq <EOL> if maxp < p : return maxq <EOL> while ( maxq > minq + <NUM_LIT:1> ) : <EOL> newq = ( minq + maxq ) / <NUM_LIT:2> <EOL> newp = pbinom ( newq , size , prob ) <EOL> if p > newp : <EOL> minp = newp <EOL> minq = newq <EOL> else : <EOL> maxp = newp <EOL> maxq = newq <EOL> return maxq <EOL> def cibinom ( size , success , alpha = <NUM_LIT> ) : <EOL> '''<STR_LIT>''' <EOL> goal = <NUM_LIT:0.5> * alpha <EOL> lower_prob = <NUM_LIT:0.0> <EOL> upper_prob = <NUM_LIT:1.0> <EOL> for _ in range ( <NUM_LIT:32> ) : <EOL> new_prob = ( lower_prob + upper_prob ) * <NUM_LIT:0.5> <EOL> new_p = pbinom ( success , size , new_prob ) <EOL> if new_p < goal : <EOL> upper_prob = new_prob <EOL> else : <EOL> lower_prob = new_prob <EOL> ub = upper_prob <EOL> success = size - success <EOL> lower_prob = <NUM_LIT:0.0> <EOL> upper_prob = <NUM_LIT:1.0> <EOL> for _ in range ( <NUM_LIT:64> ) : <EOL> new_prob = ( lower_prob + upper_prob ) * <NUM_LIT:0.5> <EOL> new_p = pbinom ( success , size , new_prob ) <EOL> if new_p < goal : <EOL> upper_prob = new_prob <EOL> else : <EOL> lower_prob = new_prob <EOL> lb = <NUM_LIT:1> - upper_prob <EOL> return ( lb , ub ) <EOL> def mcnemar_test ( sf , fs ) : <EOL> '''<STR_LIT>''' <EOL> def factorial ( n ) : <EOL> if n <= <NUM_LIT:1> : return <NUM_LIT:1> <EOL> else : return n * factorial ( n - <NUM_LIT:1> ) <EOL> low = min ( sf , fs ) <EOL> high = max ( sf , fs ) <EOL> n = low + high <EOL> pvalue = <NUM_LIT:0.0> <EOL> for i in range ( <NUM_LIT:0> , low + <NUM_LIT:1> ) : <EOL> pvalue += ( <NUM_LIT:0.5> ** n ) * factorial ( n ) / float ( factorial ( i ) * factorial ( n - i ) ) <EOL> for i in range ( high , n + <NUM_LIT:1> ) : <EOL> pvalue += ( <NUM_LIT:0.5> ** n ) * factorial ( n ) / float ( factorial ( i ) * factorial ( n - i ) ) <EOL> return pvalue <EOL> def pdfWeibull ( x , shape , scale ) : <EOL> pdf = ( shape / scale ) * ( ( x / scale ) ** ( shape - <NUM_LIT:1> ) ) * np . exp ( - ( x / scale ) ** shape ) <EOL> return pdf <EOL> def cdfWeibull ( x , shape , scale ) : <EOL> cdf = <NUM_LIT:1.0> - np . exp ( - ( x / scale ) ** shape ) <EOL> return cdf <EOL> def fitWeibull ( x , ilog = None ) : <EOL> '''<STR_LIT>''' <EOL> x = np . array ( x ) <EOL> assert x . min ( ) >= <NUM_LIT:0.0> <EOL> n = len ( x ) <EOL> def nll ( params ) : <EOL> '''<STR_LIT>''' <EOL> shape , scale = params <EOL> mask = x > <NUM_LIT:0> <EOL> pdf = pdfWeibull ( x , shape , scale ) <EOL> ll = np . log ( pdf [ mask ] ) . sum ( ) <EOL> t1 = ( ~ mask ) . sum ( ) <EOL> ll += t1 * np . log ( <NUM_LIT> ) <EOL> return - ll / len ( x ) <EOL> tmp = sp . optimize . fmin ( nll , [ <NUM_LIT:1.0> , np . mean ( x ) ] , disp = <NUM_LIT:0> ) <EOL> shape , scale = tmp <EOL> if ilog != None : <EOL> order = x . argsort ( ) <EOL> x = x [ order ] <EOL> del order <EOL> points = [ <NUM_LIT:0> , <NUM_LIT:0> ] <EOL> points = [ [ <NUM_LIT:0> , <NUM_LIT:0> ] ] + [ [ x [ i ] , float ( i ) / n ] for i in range ( n ) ] <EOL> plot = pv . Plot ( title = "<STR_LIT>" ) <EOL> plot . points ( points ) <EOL> lines = [ [ <NUM_LIT:0> , <NUM_LIT:0> ] ] + [ [ x [ i ] , cdfWeibull ( x [ i ] , shape , scale ) ] for i in range ( n ) ] <EOL> plot . lines ( lines ) <EOL> ilog ( plot , "<STR_LIT>" ) <EOL> plot = pv . Plot ( title = "<STR_LIT>" ) <EOL> y = pdfWeibull ( x , shape , scale ) <EOL> points = np . array ( [ x , y ] ) . reshape ( <NUM_LIT:2> , n ) . T <EOL> plot . lines ( points , color = '<STR_LIT>' , width = <NUM_LIT:3> ) <EOL> hist , bins = np . histogram ( x , <NUM_LIT:5> , normed = True ) <EOL> t1 = <NUM_LIT:0.5> * ( bins [ : - <NUM_LIT:1> ] + bins [ <NUM_LIT:1> : ] ) <EOL> points = np . array ( [ t1 , hist ] ) . reshape ( <NUM_LIT:2> , <NUM_LIT:5> ) . T <EOL> plot . lines ( points , color = '<STR_LIT>' , width = <NUM_LIT:3> ) <EOL> ilog ( plot , "<STR_LIT>" ) <EOL> return shape , scale <EOL> def cov ( x , y = None ) : <EOL> '''<STR_LIT>''' <EOL> if y == None : <EOL> y = x <EOL> x = copy . deepcopy ( x ) <EOL> y = copy . deepcopy ( y ) <EOL> nx , dx = x . shape <EOL> n , dy = y . shape <EOL> assert nx == n <EOL> mx = x . mean ( axis = <NUM_LIT:0> ) . reshape ( <NUM_LIT:1> , dx ) <EOL> my = y . mean ( axis = <NUM_LIT:0> ) . reshape ( <NUM_LIT:1> , dy ) <EOL> x -= mx <EOL> y -= my <EOL> s = <NUM_LIT:1.0> / ( n - <NUM_LIT:1> ) <EOL> return s * np . dot ( x . T , y ) <EOL> def cor ( x , y = None ) : <EOL> '''<STR_LIT>''' <EOL> if y == None : <EOL> y = x <EOL> x = copy . deepcopy ( x ) <EOL> y = copy . deepcopy ( y ) <EOL> nx , dx = x . shape <EOL> n , dy = y . shape <EOL> assert nx == n <EOL> mx = x . mean ( axis = <NUM_LIT:0> ) . reshape ( <NUM_LIT:1> , dx ) <EOL> my = y . mean ( axis = <NUM_LIT:0> ) . reshape ( <NUM_LIT:1> , dy ) <EOL> sx = x . std ( axis = <NUM_LIT:0> , ddof = <NUM_LIT:1> ) . reshape ( <NUM_LIT:1> , dx ) <EOL> sy = y . std ( axis = <NUM_LIT:0> , ddof = <NUM_LIT:1> ) . reshape ( <NUM_LIT:1> , dy ) <EOL> x = ( x - mx ) / sx <EOL> y = ( y - my ) / sy <EOL> s = <NUM_LIT:1.0> / ( n - <NUM_LIT:1> ) <EOL> return s * np . dot ( x . T , y ) <EOL> def cov2cor ( v ) : <EOL> '''<STR_LIT>''' <EOL> r , c = v . shape <EOL> assert r == c <EOL> s = <NUM_LIT:1.0> / np . sqrt ( np . diag ( v ) ) <EOL> v *= s . reshape ( r , <NUM_LIT:1> ) <EOL> v *= s . reshape ( <NUM_LIT:1> , c ) <EOL> return v <EOL> class SummaryStats : <EOL> def __init__ ( self , x , name = "<STR_LIT>" , alpha = <NUM_LIT> ) : <EOL> '''<STR_LIT>''' <EOL> self . name = name <EOL> x = np . array ( x , '<STR_LIT:d>' ) <EOL> self . alpha = alpha <EOL> self . n = len ( x ) <EOL> self . mean = x . mean ( ) <EOL> self . var = ( ( x - self . mean ) * ( x - self . mean ) ) . sum ( ) / ( self . n - <NUM_LIT:1> ) <EOL> self . std = np . sqrt ( self . var ) <EOL> self . ste = self . std / np . sqrt ( self . n ) <EOL> self . df = self . n - <NUM_LIT:1> <EOL> tci = distributions . t . ppf ( <NUM_LIT:1> - alpha / <NUM_LIT:2> , self . df ) <EOL> lcim = self . mean - tci * self . ste <EOL> ucim = self . mean + tci * self . ste <EOL> self . mean_ci = [ lcim , ucim ] <EOL> tci = distributions . t . ppf ( <NUM_LIT:1> - alpha / <NUM_LIT:2> , self . df ) <EOL> lci = self . mean - tci * self . std <EOL> uci = self . mean + tci * self . std <EOL> self . ci = [ lci , uci ] <EOL> self . median = np . median ( x ) <EOL> def __str__ ( self ) : <EOL> data = self . asTable ( ) <EOL> title = "<STR_LIT>" % self . name <EOL> key_length = <NUM_LIT:0> <EOL> value_length = <NUM_LIT:0> <EOL> formatted_data = [ ] <EOL> for key , value in data : <EOL> key_length = max ( key_length , len ( key ) ) <EOL> if isinstance ( value , int ) : <EOL> value = "<STR_LIT>" % value <EOL> elif isinstance ( value , str ) : <EOL> value = "<STR_LIT>" % value <EOL> elif isinstance ( value , float ) : <EOL> if value < <NUM_LIT> and value > <NUM_LIT:0.0> : <EOL> value = "<STR_LIT>" <EOL> else : <EOL> value = "<STR_LIT>" % value <EOL> else : <EOL> raise TypeError ( "<STR_LIT>" ) <EOL> value_length = max ( value_length , len ( value ) ) <EOL> formatted_data . append ( [ key , value ] ) <EOL> row_format = "<STR_LIT>" % ( key_length , value_length ) <EOL> row_length = <NUM_LIT:7> + key_length + value_length <EOL> rows = [ ] <EOL> rows . append ( title ) <EOL> rows . append ( '<STR_LIT:->' * row_length ) <EOL> for key , value in formatted_data : <EOL> rows . append ( row_format % ( key , value ) ) <EOL> rows . append ( '<STR_LIT:->' * row_length ) <EOL> result = "<STR_LIT>" <EOL> for each in rows : <EOL> result += each <EOL> result += '<STR_LIT:\n>' <EOL> return result <EOL> def asTable ( self ) : <EOL> data = [ ] <EOL> data . append ( [ '<STR_LIT:N>' , self . n ] ) <EOL> data . append ( [ '<STR_LIT>' , self . mean ] ) <EOL> if self . alpha == <NUM_LIT> : <EOL> data . append ( [ '<STR_LIT>' , self . mean_ci [ <NUM_LIT:0> ] ] ) <EOL> data . append ( [ '<STR_LIT>' , self . mean_ci [ <NUM_LIT:1> ] ] ) <EOL> elif self . alpha == <NUM_LIT> : <EOL> data . append ( [ '<STR_LIT>' , self . mean_ci [ <NUM_LIT:0> ] ] ) <EOL> data . append ( [ '<STR_LIT>' , self . mean_ci [ <NUM_LIT:1> ] ] ) <EOL> elif self . alpha == <NUM_LIT:0.1> : <EOL> data . append ( [ '<STR_LIT>' , self . mean_ci [ <NUM_LIT:0> ] ] ) <EOL> data . append ( [ '<STR_LIT>' , self . mean_ci [ <NUM_LIT:1> ] ] ) <EOL> elif self . alpha == <NUM_LIT> : <EOL> data . append ( [ '<STR_LIT>' , self . mean_ci [ <NUM_LIT:0> ] ] ) <EOL> data . append ( [ '<STR_LIT>' , self . mean_ci [ <NUM_LIT:1> ] ] ) <EOL> else : <EOL> data . append ( [ '<STR_LIT>' % ( <NUM_LIT:1.> - self . alpha , ) , self . mean_ci [ <NUM_LIT:0> ] ] ) <EOL> data . append ( [ '<STR_LIT>' % ( <NUM_LIT:1.> - self . alpha , ) , self . mean_ci [ <NUM_LIT:1> ] ] ) <EOL> data . append ( [ '<STR_LIT>' , self . var ] ) <EOL> data . append ( [ '<STR_LIT>' , self . std ] ) <EOL> data . append ( [ '<STR_LIT>' , self . ste ] ) <EOL> if self . alpha == <NUM_LIT> : <EOL> data . append ( [ '<STR_LIT>' , self . ci [ <NUM_LIT:0> ] ] ) <EOL> data . append ( [ '<STR_LIT>' , self . ci [ <NUM_LIT:1> ] ] ) <EOL> elif self . alpha == <NUM_LIT> : <EOL> data . append ( [ '<STR_LIT>' , self . ci [ <NUM_LIT:0> ] ] ) <EOL> data . append ( [ '<STR_LIT>' , self . ci [ <NUM_LIT:1> ] ] ) <EOL> elif self . alpha == <NUM_LIT:0.1> : <EOL> data . append ( [ '<STR_LIT>' , self . ci [ <NUM_LIT:0> ] ] ) <EOL> data . append ( [ '<STR_LIT>' , self . ci [ <NUM_LIT:1> ] ] ) <EOL> elif self . alpha == <NUM_LIT> : <EOL> data . append ( [ '<STR_LIT>' , self . ci [ <NUM_LIT:0> ] ] ) <EOL> data . append ( [ '<STR_LIT>' , self . ci [ <NUM_LIT:1> ] ] ) <EOL> else : <EOL> data . append ( [ '<STR_LIT>' % ( <NUM_LIT:1.> - self . alpha , ) , self . ci [ <NUM_LIT:0> ] ] ) <EOL> data . append ( [ '<STR_LIT>' % ( <NUM_LIT:1.> - self . alpha , ) , self . ci [ <NUM_LIT:1> ] ] ) <EOL> data . append ( [ '<STR_LIT>' , self . median ] ) <EOL> return data <EOL> import unittest <EOL> import pyvision as pv <EOL> class _TestStats ( unittest . TestCase ) : <EOL> def setUp ( self ) : <EOL> self . normal_data = [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , - <NUM_LIT> , <EOL> <NUM_LIT> , - <NUM_LIT> , <NUM_LIT> , - <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , - <NUM_LIT> , - <NUM_LIT> , - <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , - <NUM_LIT> , <NUM_LIT> , - <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> - <NUM_LIT> , - <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> ] <EOL> self . longley = [ [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , ] , ] <EOL> self . longley = np . array ( self . longley ) <EOL> def test_summarystats ( self ) : <EOL> stats = SummaryStats ( self . normal_data , name = "<STR_LIT>" ) <EOL> self . assertEquals ( stats . n , <NUM_LIT:50> ) <EOL> self . assertAlmostEqual ( stats . mean , <NUM_LIT> , places = <NUM_LIT:6> ) <EOL> self . assertAlmostEqual ( stats . var , <NUM_LIT> , places = <NUM_LIT:6> ) <EOL> self . assertAlmostEqual ( stats . std , <NUM_LIT> , places = <NUM_LIT:6> ) <EOL> self . assertAlmostEqual ( stats . ste , <NUM_LIT> , places = <NUM_LIT:6> ) <EOL> self . assertAlmostEqual ( stats . ci [ <NUM_LIT:0> ] , - <NUM_LIT> , places = <NUM_LIT:6> ) <EOL> self . assertAlmostEqual ( stats . ci [ <NUM_LIT:1> ] , <NUM_LIT> , places = <NUM_LIT:6> ) <EOL> self . assertAlmostEqual ( stats . mean_ci [ <NUM_LIT:0> ] , <NUM_LIT> , places = <NUM_LIT:6> ) <EOL> self . assertAlmostEqual ( stats . mean_ci [ <NUM_LIT:1> ] , <NUM_LIT> , places = <NUM_LIT:6> ) <EOL> self . assertAlmostEqual ( stats . median , <NUM_LIT> , places = <NUM_LIT:5> ) <EOL> def test_pbinom ( self ) : <EOL> self . assertAlmostEquals ( pbinom ( <NUM_LIT:50> , <NUM_LIT:100> , <NUM_LIT:0.5> ) , <NUM_LIT> ) <EOL> self . assertAlmostEquals ( pbinom ( <NUM_LIT> , <NUM_LIT:100> , <NUM_LIT> ) , <NUM_LIT> ) <EOL> self . assertAlmostEquals ( pbinom ( <NUM_LIT:20> , <NUM_LIT:100> , <NUM_LIT:0.1> ) , <NUM_LIT> ) <EOL> self . assertAlmostEquals ( pbinom ( <NUM_LIT:8> , <NUM_LIT:100> , <NUM_LIT> ) , <NUM_LIT> ) <EOL> self . assertAlmostEquals ( pbinom ( <NUM_LIT:0> , <NUM_LIT:100> , <NUM_LIT> ) , <NUM_LIT> ) <EOL> self . assertAlmostEquals ( pbinom ( <NUM_LIT:100> , <NUM_LIT:100> , <NUM_LIT> ) , <NUM_LIT> ) <EOL> def test_qbinom ( self ) : <EOL> self . assertEquals ( qbinom ( <NUM_LIT:0.5> , <NUM_LIT:100> , <NUM_LIT:0.5> ) , <NUM_LIT:50> ) <EOL> self . assertEquals ( qbinom ( <NUM_LIT:0.1> , <NUM_LIT:100> , <NUM_LIT> ) , <NUM_LIT:0> ) <EOL> self . assertEquals ( qbinom ( <NUM_LIT:1.0> , <NUM_LIT:100> , <NUM_LIT> ) , <NUM_LIT:100> ) <EOL> self . assertEquals ( qbinom ( <NUM_LIT> , <NUM_LIT:100> , <NUM_LIT> ) , <NUM_LIT> ) <EOL> self . assertEquals ( qbinom ( <NUM_LIT> , <NUM_LIT:100> , <NUM_LIT> ) , <NUM_LIT> ) <EOL> def test_cibinom ( self ) : <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT:100> , <NUM_LIT:50> ) [ <NUM_LIT:0> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT:100> , <NUM_LIT:50> ) [ <NUM_LIT:1> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT:1000> , <NUM_LIT:50> ) [ <NUM_LIT:0> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT:1000> , <NUM_LIT:50> ) [ <NUM_LIT:1> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT> , <NUM_LIT:50> ) [ <NUM_LIT:0> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT> , <NUM_LIT:50> ) [ <NUM_LIT:1> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT:1> , <NUM_LIT:1> ) [ <NUM_LIT:0> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT:1> , <NUM_LIT:1> ) [ <NUM_LIT:1> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT:10> , <NUM_LIT:10> ) [ <NUM_LIT:0> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT:10> , <NUM_LIT:10> ) [ <NUM_LIT:1> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT:100> , <NUM_LIT:100> ) [ <NUM_LIT:0> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT:100> , <NUM_LIT:100> ) [ <NUM_LIT:1> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT:1> , <NUM_LIT:0> ) [ <NUM_LIT:0> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT:1> , <NUM_LIT:0> ) [ <NUM_LIT:1> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT:10> , <NUM_LIT:0> ) [ <NUM_LIT:0> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT:10> , <NUM_LIT:0> ) [ <NUM_LIT:1> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT:100> , <NUM_LIT:0> ) [ <NUM_LIT:0> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( cibinom ( <NUM_LIT:100> , <NUM_LIT:0> ) [ <NUM_LIT:1> ] , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> def test_mcnemar ( self ) : <EOL> self . assertAlmostEqual ( mcnemar_test ( <NUM_LIT:16> , <NUM_LIT> ) , <NUM_LIT> , places = <NUM_LIT:3> ) <EOL> self . assertAlmostEqual ( mcnemar_test ( <NUM_LIT:64> , <NUM_LIT> ) , <NUM_LIT> , places = <NUM_LIT:3> ) <EOL> def test_fitWeibull ( self ) : <EOL> ilog = None <EOL> data = [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , ] <EOL> shape , scale = fitWeibull ( data , ilog = ilog ) <EOL> self . assertAlmostEqual ( shape , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( scale , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> data = [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> ] <EOL> shape , scale = fitWeibull ( data , ilog = ilog ) <EOL> self . assertAlmostEqual ( shape , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( scale , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> data = [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> ] <EOL> shape , scale = fitWeibull ( data , ilog = ilog ) <EOL> self . assertAlmostEqual ( shape , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> self . assertAlmostEqual ( scale , <NUM_LIT> , places = <NUM_LIT:4> ) <EOL> if ilog != None : <EOL> ilog . show ( ) <EOL> def test_cov ( self ) : <EOL> cov ( self . longley ) <EOL> def test_cor2cov ( self ) : <EOL> v = cov ( self . longley ) <EOL> cov2cor ( v ) <EOL> def test_cor ( self ) : <EOL> cor ( self . longley ) </s>
