<s> """<STR_LIT>""" <EOL> from __future__ import division , print_function , absolute_import <EOL> import warnings <EOL> import numpy as np <EOL> from numpy import nan <EOL> import numpy . ma as ma <EOL> from numpy . ma import masked , nomask <EOL> import scipy . stats . mstats as mstats <EOL> from scipy import stats <EOL> from common_tests import check_named_results <EOL> from numpy . testing import TestCase , run_module_suite <EOL> from numpy . testing . decorators import skipif <EOL> from numpy . ma . testutils import ( assert_equal , assert_almost_equal , <EOL> assert_array_almost_equal , assert_array_almost_equal_nulp , assert_ , <EOL> assert_allclose , assert_raises , assert_array_equal ) <EOL> class TestMquantiles ( TestCase ) : <EOL> def test_mquantiles_limit_keyword ( self ) : <EOL> data = np . array ( [ [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT:1.> ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , - <NUM_LIT> ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , - <NUM_LIT> ] , <EOL> [ <NUM_LIT> , - <NUM_LIT> , - <NUM_LIT> ] , <EOL> [ <NUM_LIT> , - <NUM_LIT> , - <NUM_LIT> ] , <EOL> [ <NUM_LIT> , - <NUM_LIT> , - <NUM_LIT> ] , <EOL> [ <NUM_LIT> , - <NUM_LIT> , - <NUM_LIT> ] , <EOL> [ <NUM_LIT> , - <NUM_LIT> , - <NUM_LIT> ] ] ) <EOL> desired = [ [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> ] ] <EOL> quants = mstats . mquantiles ( data , axis = <NUM_LIT:0> , limit = ( <NUM_LIT:0> , <NUM_LIT:50> ) ) <EOL> assert_almost_equal ( quants , desired ) <EOL> class TestGMean ( TestCase ) : <EOL> def test_1D ( self ) : <EOL> a = ( <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ) <EOL> actual = mstats . gmean ( a ) <EOL> desired = np . power ( <NUM_LIT:1> * <NUM_LIT:2> * <NUM_LIT:3> * <NUM_LIT:4> , <NUM_LIT:1.> / <NUM_LIT> ) <EOL> assert_almost_equal ( actual , desired , decimal = <NUM_LIT> ) <EOL> desired1 = mstats . gmean ( a , axis = - <NUM_LIT:1> ) <EOL> assert_almost_equal ( actual , desired1 , decimal = <NUM_LIT> ) <EOL> assert_ ( not isinstance ( desired1 , ma . MaskedArray ) ) <EOL> a = ma . array ( ( <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ) , mask = ( <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> ) ) <EOL> actual = mstats . gmean ( a ) <EOL> desired = np . power ( <NUM_LIT:1> * <NUM_LIT:2> * <NUM_LIT:3> , <NUM_LIT:1.> / <NUM_LIT> ) <EOL> assert_almost_equal ( actual , desired , decimal = <NUM_LIT> ) <EOL> desired1 = mstats . gmean ( a , axis = - <NUM_LIT:1> ) <EOL> assert_almost_equal ( actual , desired1 , decimal = <NUM_LIT> ) <EOL> @ skipif ( not hasattr ( np , '<STR_LIT>' ) , '<STR_LIT>' ) <EOL> def test_1D_float96 ( self ) : <EOL> a = ma . array ( ( <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ) , mask = ( <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> ) ) <EOL> actual_dt = mstats . gmean ( a , dtype = np . float96 ) <EOL> desired_dt = np . power ( <NUM_LIT:1> * <NUM_LIT:2> * <NUM_LIT:3> , <NUM_LIT:1.> / <NUM_LIT> ) . astype ( np . float96 ) <EOL> assert_almost_equal ( actual_dt , desired_dt , decimal = <NUM_LIT> ) <EOL> assert_ ( actual_dt . dtype == desired_dt . dtype ) <EOL> def test_2D ( self ) : <EOL> a = ma . array ( ( ( <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ) , ( <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ) , ( <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ) ) , <EOL> mask = ( ( <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> ) , ( <NUM_LIT:1> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> ) , ( <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:0> ) ) ) <EOL> actual = mstats . gmean ( a ) <EOL> desired = np . array ( ( <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ) ) <EOL> assert_array_almost_equal ( actual , desired , decimal = <NUM_LIT> ) <EOL> desired1 = mstats . gmean ( a , axis = <NUM_LIT:0> ) <EOL> assert_array_almost_equal ( actual , desired1 , decimal = <NUM_LIT> ) <EOL> actual = mstats . gmean ( a , - <NUM_LIT:1> ) <EOL> desired = ma . array ( ( np . power ( <NUM_LIT:1> * <NUM_LIT:2> * <NUM_LIT:3> * <NUM_LIT:4> , <NUM_LIT:1.> / <NUM_LIT> ) , <EOL> np . power ( <NUM_LIT:2> * <NUM_LIT:3> , <NUM_LIT:1.> / <NUM_LIT> ) , <EOL> np . power ( <NUM_LIT:1> * <NUM_LIT:4> , <NUM_LIT:1.> / <NUM_LIT> ) ) ) <EOL> assert_array_almost_equal ( actual , desired , decimal = <NUM_LIT> ) <EOL> class TestHMean ( TestCase ) : <EOL> def test_1D ( self ) : <EOL> a = ( <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ) <EOL> actual = mstats . hmean ( a ) <EOL> desired = <NUM_LIT> / ( <NUM_LIT:1.> / <NUM_LIT:1> + <NUM_LIT:1.> / <NUM_LIT:2> + <NUM_LIT:1.> / <NUM_LIT:3> + <NUM_LIT:1.> / <NUM_LIT:4> ) <EOL> assert_almost_equal ( actual , desired , decimal = <NUM_LIT> ) <EOL> desired1 = mstats . hmean ( ma . array ( a ) , axis = - <NUM_LIT:1> ) <EOL> assert_almost_equal ( actual , desired1 , decimal = <NUM_LIT> ) <EOL> a = ma . array ( ( <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ) , mask = ( <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> ) ) <EOL> actual = mstats . hmean ( a ) <EOL> desired = <NUM_LIT> / ( <NUM_LIT:1.> / <NUM_LIT:1> + <NUM_LIT:1.> / <NUM_LIT:2> + <NUM_LIT:1.> / <NUM_LIT:3> ) <EOL> assert_almost_equal ( actual , desired , decimal = <NUM_LIT> ) <EOL> desired1 = mstats . hmean ( a , axis = - <NUM_LIT:1> ) <EOL> assert_almost_equal ( actual , desired1 , decimal = <NUM_LIT> ) <EOL> @ skipif ( not hasattr ( np , '<STR_LIT>' ) , '<STR_LIT>' ) <EOL> def test_1D_float96 ( self ) : <EOL> a = ma . array ( ( <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ) , mask = ( <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> ) ) <EOL> actual_dt = mstats . hmean ( a , dtype = np . float96 ) <EOL> desired_dt = np . asarray ( <NUM_LIT> / ( <NUM_LIT:1.> / <NUM_LIT:1> + <NUM_LIT:1.> / <NUM_LIT:2> + <NUM_LIT:1.> / <NUM_LIT:3> ) , <EOL> dtype = np . float96 ) <EOL> assert_almost_equal ( actual_dt , desired_dt , decimal = <NUM_LIT> ) <EOL> assert_ ( actual_dt . dtype == desired_dt . dtype ) <EOL> def test_2D ( self ) : <EOL> a = ma . array ( ( ( <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ) , ( <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ) , ( <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ) ) , <EOL> mask = ( ( <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> ) , ( <NUM_LIT:1> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> ) , ( <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:0> ) ) ) <EOL> actual = mstats . hmean ( a ) <EOL> desired = ma . array ( ( <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ) ) <EOL> assert_array_almost_equal ( actual , desired , decimal = <NUM_LIT> ) <EOL> actual1 = mstats . hmean ( a , axis = - <NUM_LIT:1> ) <EOL> desired = ( <NUM_LIT> / ( <NUM_LIT:1> / <NUM_LIT:1.> + <NUM_LIT:1> / <NUM_LIT> + <NUM_LIT:1> / <NUM_LIT> + <NUM_LIT:1> / <NUM_LIT> ) , <EOL> <NUM_LIT> / ( <NUM_LIT:1> / <NUM_LIT> + <NUM_LIT:1> / <NUM_LIT> ) , <EOL> <NUM_LIT> / ( <NUM_LIT:1> / <NUM_LIT:1.> + <NUM_LIT:1> / <NUM_LIT> ) <EOL> ) <EOL> assert_array_almost_equal ( actual1 , desired , decimal = <NUM_LIT> ) <EOL> class TestRanking ( TestCase ) : <EOL> def __init__ ( self , * args , ** kwargs ) : <EOL> TestCase . __init__ ( self , * args , ** kwargs ) <EOL> def test_ranking ( self ) : <EOL> x = ma . array ( [ <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> , <NUM_LIT:5> , <NUM_LIT:5> , <NUM_LIT:6> , ] ) <EOL> assert_almost_equal ( mstats . rankdata ( x ) , <EOL> [ <NUM_LIT:1> , <NUM_LIT:3> , <NUM_LIT:3> , <NUM_LIT:3> , <NUM_LIT:5> , <NUM_LIT:6> , <NUM_LIT:7> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT:10> ] ) <EOL> x [ [ <NUM_LIT:3> , <NUM_LIT:4> ] ] = masked <EOL> assert_almost_equal ( mstats . rankdata ( x ) , <EOL> [ <NUM_LIT:1> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:4> , <NUM_LIT:5> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT:8> ] ) <EOL> assert_almost_equal ( mstats . rankdata ( x , use_missing = True ) , <EOL> [ <NUM_LIT:1> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT:4> , <NUM_LIT:5> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT:8> ] ) <EOL> x = ma . array ( [ <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:5> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:4> , <NUM_LIT:3> , <NUM_LIT:5> , <NUM_LIT:1> , <NUM_LIT:6> , ] ) <EOL> assert_almost_equal ( mstats . rankdata ( x ) , <EOL> [ <NUM_LIT:1> , <NUM_LIT:3> , <NUM_LIT> , <NUM_LIT:3> , <NUM_LIT:5> , <NUM_LIT:7> , <NUM_LIT:6> , <NUM_LIT> , <NUM_LIT:3> , <NUM_LIT:10> ] ) <EOL> x = ma . array ( [ [ <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:2> ] , [ <NUM_LIT:3> , <NUM_LIT:4> , <NUM_LIT:5> , <NUM_LIT:5> , <NUM_LIT:6> , ] ] ) <EOL> assert_almost_equal ( mstats . rankdata ( x ) , <EOL> [ [ <NUM_LIT:1> , <NUM_LIT:3> , <NUM_LIT:3> , <NUM_LIT:3> , <NUM_LIT:5> ] , [ <NUM_LIT:6> , <NUM_LIT:7> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT:10> ] ] ) <EOL> assert_almost_equal ( mstats . rankdata ( x , axis = <NUM_LIT:1> ) , <EOL> [ [ <NUM_LIT:1> , <NUM_LIT:3> , <NUM_LIT:3> , <NUM_LIT:3> , <NUM_LIT:5> ] , [ <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT:5> ] ] ) <EOL> assert_almost_equal ( mstats . rankdata ( x , axis = <NUM_LIT:0> ) , <EOL> [ [ <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> ] , [ <NUM_LIT:2> , <NUM_LIT:2> , <NUM_LIT:2> , <NUM_LIT:2> , <NUM_LIT:2> , ] ] ) <EOL> class TestCorr ( TestCase ) : <EOL> def test_pearsonr ( self ) : <EOL> x = ma . arange ( <NUM_LIT:10> ) <EOL> with warnings . catch_warnings ( ) : <EOL> warnings . simplefilter ( "<STR_LIT:error>" , RuntimeWarning ) <EOL> assert_almost_equal ( mstats . pearsonr ( x , x ) [ <NUM_LIT:0> ] , <NUM_LIT:1.0> ) <EOL> assert_almost_equal ( mstats . pearsonr ( x , x [ : : - <NUM_LIT:1> ] ) [ <NUM_LIT:0> ] , - <NUM_LIT:1.0> ) <EOL> x = ma . array ( x , mask = True ) <EOL> pr = mstats . pearsonr ( x , x ) <EOL> assert_ ( pr [ <NUM_LIT:0> ] is masked ) <EOL> assert_ ( pr [ <NUM_LIT:1> ] is masked ) <EOL> x1 = ma . array ( [ - <NUM_LIT:1.0> , <NUM_LIT:0.0> , <NUM_LIT:1.0> ] ) <EOL> y1 = ma . array ( [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:3> ] ) <EOL> r , p = mstats . pearsonr ( x1 , y1 ) <EOL> assert_almost_equal ( r , np . sqrt ( <NUM_LIT:3> ) / <NUM_LIT:2> ) <EOL> assert_almost_equal ( p , <NUM_LIT:1.0> / <NUM_LIT:3> ) <EOL> mask = [ False , False , False , True ] <EOL> x2 = ma . array ( [ - <NUM_LIT:1.0> , <NUM_LIT:0.0> , <NUM_LIT:1.0> , <NUM_LIT> ] , mask = mask ) <EOL> y2 = ma . array ( [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:3> , - <NUM_LIT:1> ] , mask = mask ) <EOL> r , p = mstats . pearsonr ( x2 , y2 ) <EOL> assert_almost_equal ( r , np . sqrt ( <NUM_LIT:3> ) / <NUM_LIT:2> ) <EOL> assert_almost_equal ( p , <NUM_LIT:1.0> / <NUM_LIT:3> ) <EOL> def test_spearmanr ( self ) : <EOL> ( x , y ) = ( [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> ] , [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> ] ) <EOL> assert_almost_equal ( mstats . spearmanr ( x , y ) [ <NUM_LIT:0> ] , - <NUM_LIT> ) <EOL> ( x , y ) = ( [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , np . nan ] , [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , np . nan ] ) <EOL> ( x , y ) = ( ma . fix_invalid ( x ) , ma . fix_invalid ( y ) ) <EOL> assert_almost_equal ( mstats . spearmanr ( x , y ) [ <NUM_LIT:0> ] , - <NUM_LIT> ) <EOL> x = [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT:1.0> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> ] <EOL> y = [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT:0.0> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT:1.0> , <NUM_LIT> , <NUM_LIT> ] <EOL> assert_almost_equal ( mstats . spearmanr ( x , y ) [ <NUM_LIT:0> ] , <NUM_LIT> ) <EOL> x = [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT:1.0> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , np . nan ] <EOL> y = [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT:0.0> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT:1.0> , <NUM_LIT> , <NUM_LIT> , np . nan ] <EOL> ( x , y ) = ( ma . fix_invalid ( x ) , ma . fix_invalid ( y ) ) <EOL> assert_almost_equal ( mstats . spearmanr ( x , y ) [ <NUM_LIT:0> ] , <NUM_LIT> ) <EOL> res = mstats . spearmanr ( x , y ) <EOL> attributes = ( '<STR_LIT>' , '<STR_LIT>' ) <EOL> check_named_results ( res , attributes , ma = True ) <EOL> def test_kendalltau ( self ) : <EOL> x = ma . fix_invalid ( [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , np . nan ] ) <EOL> y = ma . fix_invalid ( [ <NUM_LIT> , <NUM_LIT> , - <NUM_LIT> , <NUM_LIT> , np . nan ] ) <EOL> z = ma . fix_invalid ( [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , np . nan ] ) <EOL> assert_almost_equal ( np . asarray ( mstats . kendalltau ( x , y ) ) , <EOL> [ + <NUM_LIT> , <NUM_LIT> ] ) <EOL> assert_almost_equal ( np . asarray ( mstats . kendalltau ( x , z ) ) , <EOL> [ - <NUM_LIT> , <NUM_LIT> ] ) <EOL> x = ma . fix_invalid ( [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:20> , <NUM_LIT:20> , <NUM_LIT:0> , <NUM_LIT> , <NUM_LIT:0> , <NUM_LIT:20> , <EOL> <NUM_LIT:10> , <NUM_LIT:10> , <NUM_LIT:0> , <NUM_LIT> , <NUM_LIT:0> , <NUM_LIT:20> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , np . nan ] ) <EOL> y = ma . fix_invalid ( [ <NUM_LIT:0> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT:10> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT:0> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT:0> , <NUM_LIT:10> , <NUM_LIT> , np . nan , <NUM_LIT:0> ] ) <EOL> result = mstats . kendalltau ( x , y ) <EOL> assert_almost_equal ( np . asarray ( result ) , [ - <NUM_LIT> , <NUM_LIT> ] ) <EOL> res = mstats . kendalltau ( x , y ) <EOL> attributes = ( '<STR_LIT>' , '<STR_LIT>' ) <EOL> check_named_results ( res , attributes , ma = True ) <EOL> def test_kendalltau_seasonal ( self ) : <EOL> x = [ [ nan , nan , <NUM_LIT:4> , <NUM_LIT:2> , <NUM_LIT:16> , <NUM_LIT> , <NUM_LIT:5> , <NUM_LIT:1> , <NUM_LIT:5> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:1> ] , <EOL> [ <NUM_LIT:4> , <NUM_LIT:3> , <NUM_LIT:5> , <NUM_LIT:3> , <NUM_LIT:2> , <NUM_LIT:7> , <NUM_LIT:3> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:5> , <NUM_LIT:3> ] , <EOL> [ <NUM_LIT:3> , <NUM_LIT:2> , <NUM_LIT:5> , <NUM_LIT:6> , <NUM_LIT> , <NUM_LIT:4> , <NUM_LIT:9> , <NUM_LIT:1> , <NUM_LIT:1> , nan , <NUM_LIT:1> , <NUM_LIT:1> , nan ] , <EOL> [ nan , <NUM_LIT:6> , <NUM_LIT:11> , <NUM_LIT:4> , <NUM_LIT> , nan , <NUM_LIT:6> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:5> , <NUM_LIT:1> , <NUM_LIT:1> ] ] <EOL> x = ma . fix_invalid ( x ) . T <EOL> output = mstats . kendalltau_seasonal ( x ) <EOL> assert_almost_equal ( output [ '<STR_LIT>' ] , <NUM_LIT> , <NUM_LIT:3> ) <EOL> assert_almost_equal ( output [ '<STR_LIT>' ] . round ( <NUM_LIT:2> ) , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> ] ) <EOL> def test_pointbiserial ( self ) : <EOL> x = [ <NUM_LIT:1> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:0> , <EOL> <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> , - <NUM_LIT:1> ] <EOL> y = [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <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> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT:0.5> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT:0.1> , np . nan ] <EOL> assert_almost_equal ( mstats . pointbiserialr ( x , y ) [ <NUM_LIT:0> ] , <NUM_LIT> , <NUM_LIT:5> ) <EOL> res = mstats . pointbiserialr ( x , y ) <EOL> attributes = ( '<STR_LIT>' , '<STR_LIT>' ) <EOL> check_named_results ( res , attributes , ma = True ) <EOL> class TestTrimming ( TestCase ) : <EOL> def test_trim ( self ) : <EOL> a = ma . arange ( <NUM_LIT:10> ) <EOL> assert_equal ( mstats . trim ( a ) , [ <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> , <NUM_LIT:5> , <NUM_LIT:6> , <NUM_LIT:7> , <NUM_LIT:8> , <NUM_LIT:9> ] ) <EOL> a = ma . arange ( <NUM_LIT:10> ) <EOL> assert_equal ( mstats . trim ( a , ( <NUM_LIT:2> , <NUM_LIT:8> ) ) , [ None , None , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> , <NUM_LIT:5> , <NUM_LIT:6> , <NUM_LIT:7> , <NUM_LIT:8> , None ] ) <EOL> a = ma . arange ( <NUM_LIT:10> ) <EOL> assert_equal ( mstats . trim ( a , limits = ( <NUM_LIT:2> , <NUM_LIT:8> ) , inclusive = ( False , False ) ) , <EOL> [ None , None , None , <NUM_LIT:3> , <NUM_LIT:4> , <NUM_LIT:5> , <NUM_LIT:6> , <NUM_LIT:7> , None , None ] ) <EOL> a = ma . arange ( <NUM_LIT:10> ) <EOL> assert_equal ( mstats . trim ( a , limits = ( <NUM_LIT:0.1> , <NUM_LIT> ) , relative = True ) , <EOL> [ None , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> , <NUM_LIT:5> , <NUM_LIT:6> , <NUM_LIT:7> , None , None ] ) <EOL> a = ma . arange ( <NUM_LIT:12> ) <EOL> a [ [ <NUM_LIT:0> , - <NUM_LIT:1> ] ] = a [ <NUM_LIT:5> ] = masked <EOL> assert_equal ( mstats . trim ( a , ( <NUM_LIT:2> , <NUM_LIT:8> ) ) , <EOL> [ None , None , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> , None , <NUM_LIT:6> , <NUM_LIT:7> , <NUM_LIT:8> , None , None , None ] ) <EOL> x = ma . arange ( <NUM_LIT:100> ) . reshape ( <NUM_LIT:10> , <NUM_LIT:10> ) <EOL> expected = [ <NUM_LIT:1> ] * <NUM_LIT:10> + [ <NUM_LIT:0> ] * <NUM_LIT> + [ <NUM_LIT:1> ] * <NUM_LIT:20> <EOL> trimx = mstats . trim ( x , ( <NUM_LIT:0.1> , <NUM_LIT> ) , relative = True , axis = None ) <EOL> assert_equal ( trimx . _mask . ravel ( ) , expected ) <EOL> trimx = mstats . trim ( x , ( <NUM_LIT:0.1> , <NUM_LIT> ) , relative = True , axis = <NUM_LIT:0> ) <EOL> assert_equal ( trimx . _mask . ravel ( ) , expected ) <EOL> trimx = mstats . trim ( x , ( <NUM_LIT:0.1> , <NUM_LIT> ) , relative = True , axis = - <NUM_LIT:1> ) <EOL> assert_equal ( trimx . _mask . T . ravel ( ) , expected ) <EOL> x = ma . arange ( <NUM_LIT> ) . reshape ( <NUM_LIT:11> , <NUM_LIT:10> ) <EOL> x [ <NUM_LIT:1> ] = masked <EOL> expected = [ <NUM_LIT:1> ] * <NUM_LIT:20> + [ <NUM_LIT:0> ] * <NUM_LIT> + [ <NUM_LIT:1> ] * <NUM_LIT:20> <EOL> trimx = mstats . trim ( x , ( <NUM_LIT:0.1> , <NUM_LIT> ) , relative = True , axis = None ) <EOL> assert_equal ( trimx . _mask . ravel ( ) , expected ) <EOL> trimx = mstats . trim ( x , ( <NUM_LIT:0.1> , <NUM_LIT> ) , relative = True , axis = <NUM_LIT:0> ) <EOL> assert_equal ( trimx . _mask . ravel ( ) , expected ) <EOL> trimx = mstats . trim ( x . T , ( <NUM_LIT:0.1> , <NUM_LIT> ) , relative = True , axis = - <NUM_LIT:1> ) <EOL> assert_equal ( trimx . T . _mask . ravel ( ) , expected ) <EOL> def test_trim_old ( self ) : <EOL> x = ma . arange ( <NUM_LIT:100> ) <EOL> assert_equal ( mstats . trimboth ( x ) . count ( ) , <NUM_LIT> ) <EOL> assert_equal ( mstats . trimtail ( x , tail = '<STR_LIT:r>' ) . count ( ) , <NUM_LIT> ) <EOL> x [ <NUM_LIT:50> : <NUM_LIT> ] = masked <EOL> trimx = mstats . trimboth ( x ) <EOL> assert_equal ( trimx . count ( ) , <NUM_LIT> ) <EOL> assert_equal ( trimx . _mask , [ <NUM_LIT:1> ] * <NUM_LIT:16> + [ <NUM_LIT:0> ] * <NUM_LIT> + [ <NUM_LIT:1> ] * <NUM_LIT:20> + [ <NUM_LIT:0> ] * <NUM_LIT> + [ <NUM_LIT:1> ] * <NUM_LIT:16> ) <EOL> x . _mask = nomask <EOL> x . shape = ( <NUM_LIT:10> , <NUM_LIT:10> ) <EOL> assert_equal ( mstats . trimboth ( x ) . count ( ) , <NUM_LIT> ) <EOL> assert_equal ( mstats . trimtail ( x ) . count ( ) , <NUM_LIT> ) <EOL> def test_trimmedmean ( self ) : <EOL> data = ma . array ( [ <NUM_LIT> , <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> assert_almost_equal ( mstats . trimmed_mean ( data , <NUM_LIT:0.1> ) , <NUM_LIT> , <NUM_LIT:0> ) <EOL> assert_almost_equal ( mstats . trimmed_mean ( data , ( <NUM_LIT:0.1> , <NUM_LIT:0.1> ) ) , <NUM_LIT> , <NUM_LIT:0> ) <EOL> assert_almost_equal ( mstats . trimmed_mean ( data , ( <NUM_LIT> , <NUM_LIT> ) ) , <NUM_LIT> , <NUM_LIT:0> ) <EOL> def test_trimmed_stde ( self ) : <EOL> data = ma . array ( [ <NUM_LIT> , <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> assert_almost_equal ( mstats . trimmed_stde ( data , ( <NUM_LIT> , <NUM_LIT> ) ) , <NUM_LIT> , <NUM_LIT:5> ) <EOL> assert_almost_equal ( mstats . trimmed_stde ( data , <NUM_LIT> ) , <NUM_LIT> , <NUM_LIT:5> ) <EOL> def test_winsorization ( self ) : <EOL> data = ma . array ( [ <NUM_LIT> , <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> assert_almost_equal ( mstats . winsorize ( data , ( <NUM_LIT> , <NUM_LIT> ) ) . var ( ddof = <NUM_LIT:1> ) , <EOL> <NUM_LIT> , <NUM_LIT:1> ) <EOL> data [ <NUM_LIT:5> ] = masked <EOL> winsorized = mstats . winsorize ( data ) <EOL> assert_equal ( winsorized . mask , data . mask ) <EOL> class TestMoments ( TestCase ) : <EOL> testcase = [ <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ] <EOL> testmathworks = ma . fix_invalid ( [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , - <NUM_LIT> , <EOL> np . nan ] ) <EOL> testcase_2d = ma . array ( <EOL> np . array ( [ [ <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> mask = np . array ( [ [ True , False , False , True , False ] , <EOL> [ True , True , True , False , True ] , <EOL> [ False , False , False , False , False ] , <EOL> [ True , True , True , True , True ] , <EOL> [ False , False , True , False , False ] ] , dtype = bool ) ) <EOL> def test_moment ( self ) : <EOL> y = mstats . moment ( self . testcase , <NUM_LIT:1> ) <EOL> assert_almost_equal ( y , <NUM_LIT:0.0> , <NUM_LIT:10> ) <EOL> y = mstats . moment ( self . testcase , <NUM_LIT:2> ) <EOL> assert_almost_equal ( y , <NUM_LIT> ) <EOL> y = mstats . moment ( self . testcase , <NUM_LIT:3> ) <EOL> assert_almost_equal ( y , <NUM_LIT:0.0> ) <EOL> y = mstats . moment ( self . testcase , <NUM_LIT:4> ) <EOL> assert_almost_equal ( y , <NUM_LIT> ) <EOL> def test_variation ( self ) : <EOL> y = mstats . variation ( self . testcase ) <EOL> assert_almost_equal ( y , <NUM_LIT> , <NUM_LIT:10> ) <EOL> def test_skewness ( self ) : <EOL> y = mstats . skew ( self . testmathworks ) <EOL> assert_almost_equal ( y , - <NUM_LIT> , <NUM_LIT:10> ) <EOL> y = mstats . skew ( self . testmathworks , bias = <NUM_LIT:0> ) <EOL> assert_almost_equal ( y , - <NUM_LIT> , <NUM_LIT:10> ) <EOL> y = mstats . skew ( self . testcase ) <EOL> assert_almost_equal ( y , <NUM_LIT:0.0> , <NUM_LIT:10> ) <EOL> def test_kurtosis ( self ) : <EOL> y = mstats . kurtosis ( self . testmathworks , <NUM_LIT:0> , fisher = <NUM_LIT:0> , bias = <NUM_LIT:1> ) <EOL> assert_almost_equal ( y , <NUM_LIT> , <NUM_LIT:10> ) <EOL> y = mstats . kurtosis ( self . testmathworks , fisher = <NUM_LIT:0> , bias = <NUM_LIT:0> ) <EOL> assert_almost_equal ( y , <NUM_LIT> , <NUM_LIT:10> ) <EOL> y = mstats . kurtosis ( self . testcase , <NUM_LIT:0> , <NUM_LIT:0> ) <EOL> assert_almost_equal ( y , <NUM_LIT> ) <EOL> correct_2d = ma . array ( np . array ( [ - <NUM_LIT> , - <NUM_LIT> , - <NUM_LIT> , <NUM_LIT:0.> , <EOL> - <NUM_LIT> ] ) , <EOL> mask = np . array ( [ False , False , False , True , <EOL> False ] , dtype = bool ) ) <EOL> assert_array_almost_equal ( mstats . kurtosis ( self . testcase_2d , <NUM_LIT:1> ) , <EOL> correct_2d ) <EOL> for i , row in enumerate ( self . testcase_2d ) : <EOL> assert_almost_equal ( mstats . kurtosis ( row ) , correct_2d [ i ] ) <EOL> correct_2d_bias_corrected = ma . array ( <EOL> np . array ( [ - <NUM_LIT> , - <NUM_LIT> , - <NUM_LIT> , <NUM_LIT:0.> , - <NUM_LIT> ] ) , <EOL> mask = np . array ( [ False , False , False , True , False ] , dtype = bool ) ) <EOL> assert_array_almost_equal ( mstats . kurtosis ( self . testcase_2d , <NUM_LIT:1> , <EOL> bias = False ) , <EOL> correct_2d_bias_corrected ) <EOL> for i , row in enumerate ( self . testcase_2d ) : <EOL> assert_almost_equal ( mstats . kurtosis ( row , bias = False ) , <EOL> correct_2d_bias_corrected [ i ] ) <EOL> assert_array_almost_equal_nulp ( mstats . kurtosis ( self . testcase_2d [ <NUM_LIT:2> , : ] ) , <EOL> stats . kurtosis ( self . testcase_2d [ <NUM_LIT:2> , : ] ) , <EOL> nulp = <NUM_LIT:4> ) <EOL> def test_mode ( self ) : <EOL> a1 = [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:3> , <NUM_LIT:3> , <NUM_LIT:3> , <NUM_LIT:4> , <NUM_LIT:5> , <NUM_LIT:6> , <NUM_LIT:7> ] <EOL> a2 = np . reshape ( a1 , ( <NUM_LIT:3> , <NUM_LIT:5> ) ) <EOL> a3 = np . array ( [ <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> , <NUM_LIT:5> , <NUM_LIT:6> ] ) <EOL> a4 = np . reshape ( a3 , ( <NUM_LIT:3> , <NUM_LIT:2> ) ) <EOL> ma1 = ma . masked_where ( ma . array ( a1 ) > <NUM_LIT:2> , a1 ) <EOL> ma2 = ma . masked_where ( a2 > <NUM_LIT:2> , a2 ) <EOL> ma3 = ma . masked_where ( a3 < <NUM_LIT:2> , a3 ) <EOL> ma4 = ma . masked_where ( ma . array ( a4 ) < <NUM_LIT:2> , a4 ) <EOL> assert_equal ( mstats . mode ( a1 , axis = None ) , ( <NUM_LIT:3> , <NUM_LIT:4> ) ) <EOL> assert_equal ( mstats . mode ( a1 , axis = <NUM_LIT:0> ) , ( <NUM_LIT:3> , <NUM_LIT:4> ) ) <EOL> assert_equal ( mstats . mode ( ma1 , axis = None ) , ( <NUM_LIT:0> , <NUM_LIT:3> ) ) <EOL> assert_equal ( mstats . mode ( a2 , axis = None ) , ( <NUM_LIT:3> , <NUM_LIT:4> ) ) <EOL> assert_equal ( mstats . mode ( ma2 , axis = None ) , ( <NUM_LIT:0> , <NUM_LIT:3> ) ) <EOL> assert_equal ( mstats . mode ( a3 , axis = None ) , ( <NUM_LIT:1> , <NUM_LIT:1> ) ) <EOL> assert_equal ( mstats . mode ( ma3 , axis = None ) , ( <NUM_LIT:2> , <NUM_LIT:1> ) ) <EOL> assert_equal ( mstats . mode ( a2 , axis = <NUM_LIT:0> ) , ( [ [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:1> ] ] , [ [ <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> ] ] ) ) <EOL> assert_equal ( mstats . mode ( ma2 , axis = <NUM_LIT:0> ) , ( [ [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:1> ] ] , [ [ <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> ] ] ) ) <EOL> assert_equal ( mstats . mode ( a2 , axis = - <NUM_LIT:1> ) , ( [ [ <NUM_LIT:0> ] , [ <NUM_LIT:3> ] , [ <NUM_LIT:3> ] ] , [ [ <NUM_LIT:3> ] , [ <NUM_LIT:3> ] , [ <NUM_LIT:1> ] ] ) ) <EOL> assert_equal ( mstats . mode ( ma2 , axis = - <NUM_LIT:1> ) , ( [ [ <NUM_LIT:0> ] , [ <NUM_LIT:1> ] , [ <NUM_LIT:0> ] ] , [ [ <NUM_LIT:3> ] , [ <NUM_LIT:1> ] , [ <NUM_LIT:0> ] ] ) ) <EOL> assert_equal ( mstats . mode ( ma4 , axis = <NUM_LIT:0> ) , ( [ [ <NUM_LIT:3> , <NUM_LIT:2> ] ] , [ [ <NUM_LIT:1> , <NUM_LIT:1> ] ] ) ) <EOL> assert_equal ( mstats . mode ( ma4 , axis = - <NUM_LIT:1> ) , ( [ [ <NUM_LIT:2> ] , [ <NUM_LIT:3> ] , [ <NUM_LIT:5> ] ] , [ [ <NUM_LIT:1> ] , [ <NUM_LIT:1> ] , [ <NUM_LIT:1> ] ] ) ) <EOL> a1_res = mstats . mode ( a1 , axis = None ) <EOL> attributes = ( '<STR_LIT>' , '<STR_LIT:count>' ) <EOL> check_named_results ( a1_res , attributes , ma = True ) <EOL> class TestPercentile ( TestCase ) : <EOL> def setUp ( self ) : <EOL> self . a1 = [ <NUM_LIT:3> , <NUM_LIT:4> , <NUM_LIT:5> , <NUM_LIT:10> , - <NUM_LIT:3> , - <NUM_LIT:5> , <NUM_LIT:6> ] <EOL> self . a2 = [ <NUM_LIT:3> , - <NUM_LIT:6> , - <NUM_LIT:2> , <NUM_LIT:8> , <NUM_LIT:7> , <NUM_LIT:4> , <NUM_LIT:2> , <NUM_LIT:1> ] <EOL> self . a3 = [ <NUM_LIT> , <NUM_LIT:4> , <NUM_LIT:5> , <NUM_LIT:10> , - <NUM_LIT:3> , - <NUM_LIT:5> , - <NUM_LIT:6> , <NUM_LIT> ] <EOL> def test_percentile ( self ) : <EOL> x = np . arange ( <NUM_LIT:8> ) * <NUM_LIT:0.5> <EOL> assert_equal ( mstats . scoreatpercentile ( x , <NUM_LIT:0> ) , <NUM_LIT:0.> ) <EOL> assert_equal ( mstats . scoreatpercentile ( x , <NUM_LIT:100> ) , <NUM_LIT> ) <EOL> assert_equal ( mstats . scoreatpercentile ( x , <NUM_LIT:50> ) , <NUM_LIT> ) <EOL> def test_2D ( self ) : <EOL> x = ma . array ( [ [ <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> ] , <EOL> [ <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> ] , <EOL> [ <NUM_LIT:4> , <NUM_LIT:4> , <NUM_LIT:3> ] , <EOL> [ <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> ] , <EOL> [ <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> ] ] ) <EOL> assert_equal ( mstats . scoreatpercentile ( x , <NUM_LIT:50> ) , [ <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> ] ) <EOL> class TestVariability ( TestCase ) : <EOL> """<STR_LIT>""" <EOL> testcase = ma . fix_invalid ( [ <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> , np . nan ] ) <EOL> def test_signaltonoise ( self ) : <EOL> with warnings . catch_warnings ( ) : <EOL> warnings . simplefilter ( "<STR_LIT:ignore>" , DeprecationWarning ) <EOL> y = mstats . signaltonoise ( self . testcase ) <EOL> assert_almost_equal ( y , <NUM_LIT> ) <EOL> def test_sem ( self ) : <EOL> y = mstats . sem ( self . testcase ) <EOL> assert_almost_equal ( y , <NUM_LIT> ) <EOL> n = self . testcase . count ( ) <EOL> assert_allclose ( mstats . sem ( self . testcase , ddof = <NUM_LIT:0> ) * np . sqrt ( n / ( n - <NUM_LIT:2> ) ) , <EOL> mstats . sem ( self . testcase , ddof = <NUM_LIT:2> ) ) <EOL> def test_zmap ( self ) : <EOL> y = mstats . zmap ( self . testcase , self . testcase ) <EOL> desired_unmaskedvals = ( [ - <NUM_LIT> , - <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> ] ) <EOL> assert_array_almost_equal ( desired_unmaskedvals , <EOL> y . data [ y . mask == False ] , decimal = <NUM_LIT:12> ) <EOL> def test_zscore ( self ) : <EOL> y = mstats . zscore ( self . testcase ) <EOL> desired = ma . fix_invalid ( [ - <NUM_LIT> , - <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT> , np . nan ] ) <EOL> assert_almost_equal ( desired , y , decimal = <NUM_LIT:12> ) <EOL> class TestMisc ( TestCase ) : <EOL> def test_obrientransform ( self ) : <EOL> args = [ [ <NUM_LIT:5> ] * <NUM_LIT:5> + [ <NUM_LIT:6> ] * <NUM_LIT:11> + [ <NUM_LIT:7> ] * <NUM_LIT:9> + [ <NUM_LIT:8> ] * <NUM_LIT:3> + [ <NUM_LIT:9> ] * <NUM_LIT:2> + [ <NUM_LIT:10> ] * <NUM_LIT:2> , <EOL> [ <NUM_LIT:6> ] + [ <NUM_LIT:7> ] * <NUM_LIT:2> + [ <NUM_LIT:8> ] * <NUM_LIT:4> + [ <NUM_LIT:9> ] * <NUM_LIT:9> + [ <NUM_LIT:10> ] * <NUM_LIT:16> ] <EOL> result = [ <NUM_LIT:5> * [ <NUM_LIT> ] + <NUM_LIT:11> * [ <NUM_LIT> ] + <NUM_LIT:9> * [ <NUM_LIT> ] + <NUM_LIT:3> * [ <NUM_LIT> ] + <NUM_LIT:2> * [ <NUM_LIT> ] + <NUM_LIT:2> * [ <NUM_LIT> ] , <EOL> [ <NUM_LIT> ] + <NUM_LIT:2> * [ <NUM_LIT> ] + <NUM_LIT:4> * [ <NUM_LIT> ] + <NUM_LIT:9> * [ <NUM_LIT> ] + <NUM_LIT:16> * [ <NUM_LIT> ] ] <EOL> assert_almost_equal ( np . round ( mstats . obrientransform ( * args ) . T , <NUM_LIT:4> ) , <EOL> result , <NUM_LIT:4> ) <EOL> def test_kstwosamp ( self ) : <EOL> x = [ [ nan , nan , <NUM_LIT:4> , <NUM_LIT:2> , <NUM_LIT:16> , <NUM_LIT> , <NUM_LIT:5> , <NUM_LIT:1> , <NUM_LIT:5> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:1> ] , <EOL> [ <NUM_LIT:4> , <NUM_LIT:3> , <NUM_LIT:5> , <NUM_LIT:3> , <NUM_LIT:2> , <NUM_LIT:7> , <NUM_LIT:3> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:5> , <NUM_LIT:3> ] , <EOL> [ <NUM_LIT:3> , <NUM_LIT:2> , <NUM_LIT:5> , <NUM_LIT:6> , <NUM_LIT> , <NUM_LIT:4> , <NUM_LIT:9> , <NUM_LIT:1> , <NUM_LIT:1> , nan , <NUM_LIT:1> , <NUM_LIT:1> , nan ] , <EOL> [ nan , <NUM_LIT:6> , <NUM_LIT:11> , <NUM_LIT:4> , <NUM_LIT> , nan , <NUM_LIT:6> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:5> , <NUM_LIT:1> , <NUM_LIT:1> ] ] <EOL> x = ma . fix_invalid ( x ) . T <EOL> ( winter , spring , summer , fall ) = x . T <EOL> assert_almost_equal ( np . round ( mstats . ks_twosamp ( winter , spring ) , <NUM_LIT:4> ) , <EOL> ( <NUM_LIT> , <NUM_LIT> ) ) <EOL> assert_almost_equal ( np . round ( mstats . ks_twosamp ( winter , spring , '<STR_LIT:g>' ) , <NUM_LIT:4> ) , <EOL> ( <NUM_LIT> , <NUM_LIT> ) ) <EOL> assert_almost_equal ( np . round ( mstats . ks_twosamp ( winter , spring , '<STR_LIT:l>' ) , <NUM_LIT:4> ) , <EOL> ( <NUM_LIT> , <NUM_LIT> ) ) <EOL> def test_friedmanchisq ( self ) : <EOL> args = ( [ <NUM_LIT> , <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> , <NUM_LIT> ] , <EOL> [ <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> ] ) <EOL> result = mstats . friedmanchisquare ( * args ) <EOL> assert_almost_equal ( result [ <NUM_LIT:0> ] , <NUM_LIT> , <NUM_LIT:4> ) <EOL> assert_almost_equal ( result [ <NUM_LIT:1> ] , <NUM_LIT> , <NUM_LIT:6> ) <EOL> x = [ [ nan , nan , <NUM_LIT:4> , <NUM_LIT:2> , <NUM_LIT:16> , <NUM_LIT> , <NUM_LIT:5> , <NUM_LIT:1> , <NUM_LIT:5> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:1> ] , <EOL> [ <NUM_LIT:4> , <NUM_LIT:3> , <NUM_LIT:5> , <NUM_LIT:3> , <NUM_LIT:2> , <NUM_LIT:7> , <NUM_LIT:3> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:5> , <NUM_LIT:3> ] , <EOL> [ <NUM_LIT:3> , <NUM_LIT:2> , <NUM_LIT:5> , <NUM_LIT:6> , <NUM_LIT> , <NUM_LIT:4> , <NUM_LIT:9> , <NUM_LIT:1> , <NUM_LIT:1> , nan , <NUM_LIT:1> , <NUM_LIT:1> , nan ] , <EOL> [ nan , <NUM_LIT:6> , <NUM_LIT:11> , <NUM_LIT:4> , <NUM_LIT> , nan , <NUM_LIT:6> , <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:5> , <NUM_LIT:1> , <NUM_LIT:1> ] ] <EOL> x = ma . fix_invalid ( x ) <EOL> result = mstats . friedmanchisquare ( * x ) <EOL> assert_almost_equal ( result [ <NUM_LIT:0> ] , <NUM_LIT> , <NUM_LIT:4> ) <EOL> assert_almost_equal ( result [ <NUM_LIT:1> ] , <NUM_LIT> , <NUM_LIT:4> ) <EOL> attributes = ( '<STR_LIT>' , '<STR_LIT>' ) <EOL> check_named_results ( result , attributes , ma = True ) <EOL> def test_regress_simple ( ) : <EOL> x = np . linspace ( <NUM_LIT:0> , <NUM_LIT:100> , <NUM_LIT:100> ) <EOL> y = <NUM_LIT> * np . linspace ( <NUM_LIT:0> , <NUM_LIT:100> , <NUM_LIT:100> ) + <NUM_LIT:10> <EOL> y += np . sin ( np . linspace ( <NUM_LIT:0> , <NUM_LIT:20> , <NUM_LIT:100> ) ) <EOL> slope , intercept , r_value , p_value , sterr = mstats . linregress ( x , y ) <EOL> assert_almost_equal ( slope , <NUM_LIT> ) <EOL> assert_almost_equal ( intercept , <NUM_LIT> ) <EOL> res = mstats . linregress ( x , y ) <EOL> attributes = ( '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ) <EOL> check_named_results ( res , attributes , ma = True ) <EOL> def test_theilslopes ( ) : <EOL> slope , intercept , lower , upper = mstats . theilslopes ( [ <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:1> ] ) <EOL> assert_almost_equal ( slope , <NUM_LIT:0.5> ) <EOL> assert_almost_equal ( intercept , <NUM_LIT:0.5> ) <EOL> y = np . ma . array ( [ <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:100> , <NUM_LIT:1> ] , mask = [ False , False , True , False ] ) <EOL> slope , intercept , lower , upper = mstats . theilslopes ( y ) <EOL> assert_almost_equal ( slope , <NUM_LIT:1.> / <NUM_LIT:3> ) <EOL> assert_almost_equal ( intercept , <NUM_LIT> / <NUM_LIT:3> ) <EOL> x = [ <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> , <NUM_LIT:10> , <NUM_LIT:12> , <NUM_LIT> ] <EOL> y = [ <NUM_LIT:9> , <NUM_LIT:15> , <NUM_LIT> , <NUM_LIT:20> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> ] <EOL> slope , intercept , lower , upper = mstats . theilslopes ( y , x , <NUM_LIT> ) <EOL> assert_almost_equal ( slope , <NUM_LIT:4> ) <EOL> assert_almost_equal ( upper , <NUM_LIT> , decimal = <NUM_LIT:2> ) <EOL> assert_almost_equal ( lower , <NUM_LIT> , decimal = <NUM_LIT:2> ) <EOL> def test_plotting_positions ( ) : <EOL> pos = mstats . plotting_positions ( np . arange ( <NUM_LIT:3> ) , <NUM_LIT:0> , <NUM_LIT:0> ) <EOL> assert_array_almost_equal ( pos . data , np . array ( [ <NUM_LIT> , <NUM_LIT:0.5> , <NUM_LIT> ] ) ) <EOL> class TestNormalitytests ( ) : <EOL> def test_vs_nonmasked ( self ) : <EOL> x = np . array ( ( - <NUM_LIT:2> , - <NUM_LIT:1> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> ) * <NUM_LIT:4> ) ** <NUM_LIT:2> <EOL> assert_array_almost_equal ( mstats . normaltest ( x ) , <EOL> stats . normaltest ( x ) ) <EOL> assert_array_almost_equal ( mstats . skewtest ( x ) , <EOL> stats . skewtest ( x ) ) <EOL> assert_array_almost_equal ( mstats . kurtosistest ( x ) , <EOL> stats . kurtosistest ( x ) ) <EOL> funcs = [ stats . normaltest , stats . skewtest , stats . kurtosistest ] <EOL> mfuncs = [ mstats . normaltest , mstats . skewtest , mstats . kurtosistest ] <EOL> x = [ <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ] <EOL> for func , mfunc in zip ( funcs , mfuncs ) : <EOL> assert_raises ( ValueError , func , x ) <EOL> assert_raises ( ValueError , mfunc , x ) <EOL> def test_axis_None ( self ) : <EOL> x = np . array ( ( - <NUM_LIT:2> , - <NUM_LIT:1> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> ) * <NUM_LIT:4> ) ** <NUM_LIT:2> <EOL> assert_allclose ( mstats . normaltest ( x , axis = None ) , mstats . normaltest ( x ) ) <EOL> assert_allclose ( mstats . skewtest ( x , axis = None ) , mstats . skewtest ( x ) ) <EOL> assert_allclose ( mstats . kurtosistest ( x , axis = None ) , <EOL> mstats . kurtosistest ( x ) ) <EOL> def test_maskedarray_input ( self ) : <EOL> x = np . array ( ( - <NUM_LIT:2> , - <NUM_LIT:1> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> ) * <NUM_LIT:4> ) ** <NUM_LIT:2> <EOL> xm = np . ma . array ( np . r_ [ np . inf , x , <NUM_LIT:10> ] , <EOL> mask = np . r_ [ True , [ False ] * x . size , True ] ) <EOL> assert_allclose ( mstats . normaltest ( xm ) , stats . normaltest ( x ) ) <EOL> assert_allclose ( mstats . skewtest ( xm ) , stats . skewtest ( x ) ) <EOL> assert_allclose ( mstats . kurtosistest ( xm ) , stats . kurtosistest ( x ) ) <EOL> def test_nd_input ( self ) : <EOL> x = np . array ( ( - <NUM_LIT:2> , - <NUM_LIT:1> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> ) * <NUM_LIT:4> ) ** <NUM_LIT:2> <EOL> x_2d = np . vstack ( [ x ] * <NUM_LIT:2> ) . T <EOL> for func in [ mstats . normaltest , mstats . skewtest , mstats . kurtosistest ] : <EOL> res_1d = func ( x ) <EOL> res_2d = func ( x_2d ) <EOL> assert_allclose ( res_2d [ <NUM_LIT:0> ] , [ res_1d [ <NUM_LIT:0> ] ] * <NUM_LIT:2> ) <EOL> assert_allclose ( res_2d [ <NUM_LIT:1> ] , [ res_1d [ <NUM_LIT:1> ] ] * <NUM_LIT:2> ) <EOL> def test_normaltest_result_attributes ( self ) : <EOL> x = np . array ( ( - <NUM_LIT:2> , - <NUM_LIT:1> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> ) * <NUM_LIT:4> ) ** <NUM_LIT:2> <EOL> res = mstats . normaltest ( x ) <EOL> attributes = ( '<STR_LIT>' , '<STR_LIT>' ) <EOL> check_named_results ( res , attributes , ma = True ) <EOL> def test_kurtosistest_result_attributes ( self ) : <EOL> x = np . array ( ( - <NUM_LIT:2> , - <NUM_LIT:1> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> ) * <NUM_LIT:4> ) ** <NUM_LIT:2> <EOL> res = mstats . kurtosistest ( x ) <EOL> attributes = ( '<STR_LIT>' , '<STR_LIT>' ) <EOL> check_named_results ( res , attributes , ma = True ) <EOL> class TestFOneway ( ) : <EOL> def test_result_attributes ( self ) : <EOL> a = np . array ( [ <NUM_LIT> , <NUM_LIT> ] , dtype = np . uint16 ) <EOL> b = np . array ( [ <NUM_LIT> , <NUM_LIT> ] , dtype = np . uint16 ) <EOL> res = mstats . f_oneway ( a , b ) <EOL> attributes = ( '<STR_LIT>' , '<STR_LIT>' ) <EOL> check_named_results ( res , attributes , ma = True ) <EOL> class TestMannwhitneyu ( ) : <EOL> def test_result_attributes ( self ) : <EOL> x = np . array ( [ <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> ] ) <EOL> y = np . array ( [ <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <EOL> <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT> , <NUM_LIT:1.> , <NUM_LIT:1.> , <EOL> <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> , <NUM_LIT:1.> ] ) <EOL> res = mstats . mannwhitneyu ( x , y ) <EOL> attributes = ( '<STR_LIT>' , '<STR_LIT>' ) <EOL> check_named_results ( res , attributes , ma = True ) <EOL> class TestKruskal ( ) : <EOL> def test_result_attributes ( self ) : <EOL> x = [ <NUM_LIT:1> , <NUM_LIT:3> , <NUM_LIT:5> , <NUM_LIT:7> , <NUM_LIT:9> ] <EOL> y = [ <NUM_LIT:2> , <NUM_LIT:4> , <NUM_LIT:6> , <NUM_LIT:8> , <NUM_LIT:10> ] <EOL> res = mstats . kruskal ( x , y ) <EOL> attributes = ( '<STR_LIT>' , '<STR_LIT>' ) <EOL> check_named_results ( res , attributes , ma = True ) <EOL> class TestTtest_rel ( ) : <EOL> def test_vs_nonmasked ( self ) : <EOL> np . random . seed ( <NUM_LIT> ) <EOL> outcome = np . random . randn ( <NUM_LIT:20> , <NUM_LIT:4> ) + [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:2> ] <EOL> res1 = stats . ttest_rel ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] ) <EOL> res2 = mstats . ttest_rel ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] ) <EOL> assert_allclose ( res1 , res2 ) <EOL> res1 = stats . ttest_rel ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] , axis = None ) <EOL> res2 = mstats . ttest_rel ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] , axis = None ) <EOL> assert_allclose ( res1 , res2 ) <EOL> res1 = stats . ttest_rel ( outcome [ : , : <NUM_LIT:2> ] , outcome [ : , <NUM_LIT:2> : ] , axis = <NUM_LIT:0> ) <EOL> res2 = mstats . ttest_rel ( outcome [ : , : <NUM_LIT:2> ] , outcome [ : , <NUM_LIT:2> : ] , axis = <NUM_LIT:0> ) <EOL> assert_allclose ( res1 , res2 ) <EOL> res3 = mstats . ttest_rel ( outcome [ : , : <NUM_LIT:2> ] , outcome [ : , <NUM_LIT:2> : ] ) <EOL> assert_allclose ( res2 , res3 ) <EOL> def test_fully_masked ( self ) : <EOL> np . random . seed ( <NUM_LIT> ) <EOL> outcome = ma . masked_array ( np . random . randn ( <NUM_LIT:3> , <NUM_LIT:2> ) , <EOL> mask = [ [ <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> ] , [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> ] ] ) <EOL> with warnings . catch_warnings ( ) : <EOL> warnings . filterwarnings ( '<STR_LIT:ignore>' ) <EOL> assert_array_equal ( mstats . ttest_rel ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] ) , <EOL> ( np . nan , np . nan ) ) <EOL> assert_array_equal ( mstats . ttest_rel ( [ np . nan , np . nan ] , [ <NUM_LIT:1.0> , <NUM_LIT> ] ) , <EOL> ( np . nan , np . nan ) ) <EOL> def test_result_attributes ( self ) : <EOL> np . random . seed ( <NUM_LIT> ) <EOL> outcome = np . random . randn ( <NUM_LIT:20> , <NUM_LIT:4> ) + [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:2> ] <EOL> res = mstats . ttest_rel ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] ) <EOL> attributes = ( '<STR_LIT>' , '<STR_LIT>' ) <EOL> check_named_results ( res , attributes , ma = True ) <EOL> def test_invalid_input_size ( self ) : <EOL> assert_raises ( ValueError , mstats . ttest_rel , <EOL> np . arange ( <NUM_LIT:10> ) , np . arange ( <NUM_LIT:11> ) ) <EOL> x = np . arange ( <NUM_LIT> ) <EOL> assert_raises ( ValueError , mstats . ttest_rel , <EOL> x . reshape ( <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ) , x . reshape ( <NUM_LIT:2> , <NUM_LIT:4> , <NUM_LIT:3> ) , axis = <NUM_LIT:1> ) <EOL> assert_raises ( ValueError , mstats . ttest_rel , <EOL> x . reshape ( <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:4> ) , x . reshape ( <NUM_LIT:2> , <NUM_LIT:4> , <NUM_LIT:3> ) , axis = <NUM_LIT:2> ) <EOL> def test_empty ( self ) : <EOL> res1 = mstats . ttest_rel ( [ ] , [ ] ) <EOL> assert_ ( np . all ( np . isnan ( res1 ) ) ) <EOL> def test_zero_division ( self ) : <EOL> t , p = mstats . ttest_ind ( [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> ] , [ <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> ] ) <EOL> with warnings . catch_warnings ( ) : <EOL> warnings . filterwarnings ( '<STR_LIT:ignore>' ) <EOL> assert_equal ( ( np . abs ( t ) , p ) , ( np . inf , <NUM_LIT:0> ) ) <EOL> assert_array_equal ( mstats . ttest_ind ( [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> ] , [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> ] ) , <EOL> ( np . nan , np . nan ) ) <EOL> class TestTtest_ind ( ) : <EOL> def test_vs_nonmasked ( self ) : <EOL> np . random . seed ( <NUM_LIT> ) <EOL> outcome = np . random . randn ( <NUM_LIT:20> , <NUM_LIT:4> ) + [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:2> ] <EOL> res1 = stats . ttest_ind ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] ) <EOL> res2 = mstats . ttest_ind ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] ) <EOL> assert_allclose ( res1 , res2 ) <EOL> res1 = stats . ttest_ind ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] , axis = None ) <EOL> res2 = mstats . ttest_ind ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] , axis = None ) <EOL> assert_allclose ( res1 , res2 ) <EOL> res1 = stats . ttest_ind ( outcome [ : , : <NUM_LIT:2> ] , outcome [ : , <NUM_LIT:2> : ] , axis = <NUM_LIT:0> ) <EOL> res2 = mstats . ttest_ind ( outcome [ : , : <NUM_LIT:2> ] , outcome [ : , <NUM_LIT:2> : ] , axis = <NUM_LIT:0> ) <EOL> assert_allclose ( res1 , res2 ) <EOL> res3 = mstats . ttest_ind ( outcome [ : , : <NUM_LIT:2> ] , outcome [ : , <NUM_LIT:2> : ] ) <EOL> assert_allclose ( res2 , res3 ) <EOL> res4 = stats . ttest_ind ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] , equal_var = True ) <EOL> res5 = mstats . ttest_ind ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] , equal_var = True ) <EOL> assert_allclose ( res4 , res5 ) <EOL> res4 = stats . ttest_ind ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] , equal_var = False ) <EOL> res5 = mstats . ttest_ind ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] , equal_var = False ) <EOL> assert_allclose ( res4 , res5 ) <EOL> def test_fully_masked ( self ) : <EOL> np . random . seed ( <NUM_LIT> ) <EOL> outcome = ma . masked_array ( np . random . randn ( <NUM_LIT:3> , <NUM_LIT:2> ) , mask = [ [ <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> ] , [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> ] ] ) <EOL> with warnings . catch_warnings ( ) : <EOL> warnings . filterwarnings ( '<STR_LIT:ignore>' ) <EOL> assert_array_equal ( mstats . ttest_ind ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] ) , <EOL> ( np . nan , np . nan ) ) <EOL> assert_array_equal ( mstats . ttest_ind ( [ np . nan , np . nan ] , [ <NUM_LIT:1.0> , <NUM_LIT> ] ) , <EOL> ( np . nan , np . nan ) ) <EOL> def test_result_attributes ( self ) : <EOL> np . random . seed ( <NUM_LIT> ) <EOL> outcome = np . random . randn ( <NUM_LIT:20> , <NUM_LIT:4> ) + [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:2> ] <EOL> res = mstats . ttest_ind ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] ) <EOL> attributes = ( '<STR_LIT>' , '<STR_LIT>' ) <EOL> check_named_results ( res , attributes , ma = True ) <EOL> def test_empty ( self ) : <EOL> res1 = mstats . ttest_ind ( [ ] , [ ] ) <EOL> assert_ ( np . all ( np . isnan ( res1 ) ) ) <EOL> def test_zero_division ( self ) : <EOL> t , p = mstats . ttest_ind ( [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> ] , [ <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> ] ) <EOL> with warnings . catch_warnings ( ) : <EOL> warnings . filterwarnings ( '<STR_LIT:ignore>' ) <EOL> assert_equal ( ( np . abs ( t ) , p ) , ( np . inf , <NUM_LIT:0> ) ) <EOL> assert_array_equal ( mstats . ttest_ind ( [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> ] , [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> ] ) , <EOL> ( np . nan , np . nan ) ) <EOL> t , p = mstats . ttest_ind ( [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> ] , [ <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> ] , equal_var = False ) <EOL> with warnings . catch_warnings ( ) : <EOL> warnings . filterwarnings ( '<STR_LIT:ignore>' ) <EOL> assert_equal ( ( np . abs ( t ) , p ) , ( np . inf , <NUM_LIT:0> ) ) <EOL> assert_array_equal ( mstats . ttest_ind ( [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> ] , [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> ] , <EOL> equal_var = False ) , <EOL> ( np . nan , np . nan ) ) <EOL> class TestTtest_1samp ( ) : <EOL> def test_vs_nonmasked ( self ) : <EOL> np . random . seed ( <NUM_LIT> ) <EOL> outcome = np . random . randn ( <NUM_LIT:20> , <NUM_LIT:4> ) + [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:2> ] <EOL> res1 = stats . ttest_1samp ( outcome [ : , <NUM_LIT:0> ] , <NUM_LIT:1> ) <EOL> res2 = mstats . ttest_1samp ( outcome [ : , <NUM_LIT:0> ] , <NUM_LIT:1> ) <EOL> assert_allclose ( res1 , res2 ) <EOL> res1 = stats . ttest_1samp ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] , axis = None ) <EOL> res2 = mstats . ttest_1samp ( outcome [ : , <NUM_LIT:0> ] , outcome [ : , <NUM_LIT:1> ] , axis = None ) <EOL> assert_allclose ( res1 , res2 ) <EOL> res1 = stats . ttest_1samp ( outcome [ : , : <NUM_LIT:2> ] , outcome [ : , <NUM_LIT:2> : ] , axis = <NUM_LIT:0> ) <EOL> res2 = mstats . ttest_1samp ( outcome [ : , : <NUM_LIT:2> ] , outcome [ : , <NUM_LIT:2> : ] , axis = <NUM_LIT:0> ) <EOL> assert_allclose ( res1 , res2 ) <EOL> res3 = mstats . ttest_1samp ( outcome [ : , : <NUM_LIT:2> ] , outcome [ : , <NUM_LIT:2> : ] ) <EOL> assert_allclose ( res2 , res3 ) <EOL> def test_fully_masked ( self ) : <EOL> np . random . seed ( <NUM_LIT> ) <EOL> outcome = ma . masked_array ( np . random . randn ( <NUM_LIT:3> ) , mask = [ <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> ] ) <EOL> with warnings . catch_warnings ( ) : <EOL> warnings . filterwarnings ( '<STR_LIT:ignore>' ) <EOL> assert_array_equal ( mstats . ttest_1samp ( outcome , <NUM_LIT:0.0> ) , <EOL> ( np . nan , np . nan ) ) <EOL> assert_array_equal ( mstats . ttest_1samp ( ( np . nan , np . nan ) , <NUM_LIT:0.0> ) , <EOL> ( np . nan , np . nan ) ) <EOL> def test_result_attributes ( self ) : <EOL> np . random . seed ( <NUM_LIT> ) <EOL> outcome = np . random . randn ( <NUM_LIT:20> , <NUM_LIT:4> ) + [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:2> ] <EOL> res = mstats . ttest_1samp ( outcome [ : , <NUM_LIT:0> ] , <NUM_LIT:1> ) <EOL> attributes = ( '<STR_LIT>' , '<STR_LIT>' ) <EOL> check_named_results ( res , attributes , ma = True ) <EOL> def test_empty ( self ) : <EOL> res1 = mstats . ttest_1samp ( [ ] , <NUM_LIT:1> ) <EOL> assert_ ( np . all ( np . isnan ( res1 ) ) ) <EOL> def test_zero_division ( self ) : <EOL> t , p = mstats . ttest_1samp ( [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> ] , <NUM_LIT:1> ) <EOL> with warnings . catch_warnings ( ) : <EOL> warnings . filterwarnings ( '<STR_LIT:ignore>' ) <EOL> assert_equal ( ( np . abs ( t ) , p ) , ( np . inf , <NUM_LIT:0> ) ) <EOL> assert_array_equal ( mstats . ttest_1samp ( [ <NUM_LIT:0> , <NUM_LIT:0> , <NUM_LIT:0> ] , <NUM_LIT:0> ) , <EOL> ( np . nan , np . nan ) ) <EOL> class TestCompareWithStats ( TestCase ) : <EOL> """<STR_LIT>""" <EOL> def get_n ( self ) : <EOL> """<STR_LIT>""" <EOL> return [ <NUM_LIT:1000> , <NUM_LIT:100> , <NUM_LIT:10> , <NUM_LIT:5> ] <EOL> def generate_xy_sample ( self , n ) : <EOL> np . random . seed ( <NUM_LIT> ) <EOL> x = np . random . randn ( n ) <EOL> y = x + np . random . randn ( n ) <EOL> xm = np . ones ( len ( x ) + <NUM_LIT:5> ) * <NUM_LIT> <EOL> ym = np . ones ( len ( y ) + <NUM_LIT:5> ) * <NUM_LIT> <EOL> xm [ <NUM_LIT:0> : len ( x ) ] = x <EOL> ym [ <NUM_LIT:0> : len ( y ) ] = y <EOL> mask = xm > <NUM_LIT> <EOL> xm = np . ma . array ( xm , mask = mask ) <EOL> ym = np . ma . array ( ym , mask = mask ) <EOL> return x , y , xm , ym <EOL> def generate_xy_sample2D ( self , n , nx ) : <EOL> x = np . ones ( ( n , nx ) ) * np . nan <EOL> y = np . ones ( ( n , nx ) ) * np . nan <EOL> xm = np . ones ( ( n + <NUM_LIT:5> , nx ) ) * np . nan <EOL> ym = np . ones ( ( n + <NUM_LIT:5> , nx ) ) * np . nan <EOL> for i in range ( nx ) : <EOL> x [ : , i ] , y [ : , i ] , dx , dy = self . generate_xy_sample ( n ) <EOL> xm [ <NUM_LIT:0> : n , : ] = x [ <NUM_LIT:0> : n ] <EOL> ym [ <NUM_LIT:0> : n , : ] = y [ <NUM_LIT:0> : n ] <EOL> xm = np . ma . array ( xm , mask = np . isnan ( xm ) ) <EOL> ym = np . ma . array ( ym , mask = np . isnan ( ym ) ) <EOL> return x , y , xm , ym <EOL> def test_linregress ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> res1 = stats . linregress ( x , y ) <EOL> res2 = stats . mstats . linregress ( xm , ym ) <EOL> assert_allclose ( np . asarray ( res1 ) , np . asarray ( res2 ) ) <EOL> def test_pearsonr ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> r , p = stats . pearsonr ( x , y ) <EOL> rm , pm = stats . mstats . pearsonr ( xm , ym ) <EOL> assert_almost_equal ( r , rm , decimal = <NUM_LIT> ) <EOL> assert_almost_equal ( p , pm , decimal = <NUM_LIT> ) <EOL> def test_spearmanr ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> r , p = stats . spearmanr ( x , y ) <EOL> rm , pm = stats . mstats . spearmanr ( xm , ym ) <EOL> assert_almost_equal ( r , rm , <NUM_LIT> ) <EOL> assert_almost_equal ( p , pm , <NUM_LIT> ) <EOL> def test_gmean ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> r = stats . gmean ( abs ( x ) ) <EOL> rm = stats . mstats . gmean ( abs ( xm ) ) <EOL> assert_allclose ( r , rm , rtol = <NUM_LIT> ) <EOL> r = stats . gmean ( abs ( y ) ) <EOL> rm = stats . mstats . gmean ( abs ( ym ) ) <EOL> assert_allclose ( r , rm , rtol = <NUM_LIT> ) <EOL> def test_hmean ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> r = stats . hmean ( abs ( x ) ) <EOL> rm = stats . mstats . hmean ( abs ( xm ) ) <EOL> assert_almost_equal ( r , rm , <NUM_LIT:10> ) <EOL> r = stats . hmean ( abs ( y ) ) <EOL> rm = stats . mstats . hmean ( abs ( ym ) ) <EOL> assert_almost_equal ( r , rm , <NUM_LIT:10> ) <EOL> def test_skew ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> r = stats . skew ( x ) <EOL> rm = stats . mstats . skew ( xm ) <EOL> assert_almost_equal ( r , rm , <NUM_LIT:10> ) <EOL> r = stats . skew ( y ) <EOL> rm = stats . mstats . skew ( ym ) <EOL> assert_almost_equal ( r , rm , <NUM_LIT:10> ) <EOL> def test_moment ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> r = stats . moment ( x ) <EOL> rm = stats . mstats . moment ( xm ) <EOL> assert_almost_equal ( r , rm , <NUM_LIT:10> ) <EOL> r = stats . moment ( y ) <EOL> rm = stats . mstats . moment ( ym ) <EOL> assert_almost_equal ( r , rm , <NUM_LIT:10> ) <EOL> def test_signaltonoise ( self ) : <EOL> with warnings . catch_warnings ( ) : <EOL> warnings . simplefilter ( "<STR_LIT:ignore>" , DeprecationWarning ) <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> r = stats . signaltonoise ( x ) <EOL> rm = stats . mstats . signaltonoise ( xm ) <EOL> assert_almost_equal ( r , rm , <NUM_LIT:10> ) <EOL> r = stats . signaltonoise ( y ) <EOL> rm = stats . mstats . signaltonoise ( ym ) <EOL> assert_almost_equal ( r , rm , <NUM_LIT:10> ) <EOL> def test_betai ( self ) : <EOL> np . random . seed ( <NUM_LIT> ) <EOL> for i in range ( <NUM_LIT:10> ) : <EOL> a = np . random . rand ( ) * <NUM_LIT> <EOL> b = np . random . rand ( ) * <NUM_LIT> <EOL> with warnings . catch_warnings ( ) : <EOL> warnings . filterwarnings ( '<STR_LIT:ignore>' , category = DeprecationWarning ) <EOL> assert_equal ( stats . betai ( a , b , <NUM_LIT:0.> ) , <NUM_LIT:0.> ) <EOL> assert_equal ( stats . betai ( a , b , <NUM_LIT:1.> ) , <NUM_LIT:1.> ) <EOL> assert_equal ( stats . mstats . betai ( a , b , <NUM_LIT:0.> ) , <NUM_LIT:0.> ) <EOL> assert_equal ( stats . mstats . betai ( a , b , <NUM_LIT:1.> ) , <NUM_LIT:1.> ) <EOL> x = np . random . rand ( ) <EOL> assert_almost_equal ( stats . betai ( a , b , x ) , <EOL> stats . mstats . betai ( a , b , x ) , decimal = <NUM_LIT> ) <EOL> def test_zscore ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> zx = ( x - x . mean ( ) ) / x . std ( ) <EOL> zy = ( y - y . mean ( ) ) / y . std ( ) <EOL> assert_allclose ( stats . zscore ( x ) , zx , rtol = <NUM_LIT> ) <EOL> assert_allclose ( stats . zscore ( y ) , zy , rtol = <NUM_LIT> ) <EOL> assert_allclose ( stats . zscore ( x ) , stats . mstats . zscore ( xm [ <NUM_LIT:0> : len ( x ) ] ) , <EOL> rtol = <NUM_LIT> ) <EOL> assert_allclose ( stats . zscore ( y ) , stats . mstats . zscore ( ym [ <NUM_LIT:0> : len ( y ) ] ) , <EOL> rtol = <NUM_LIT> ) <EOL> def test_kurtosis ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> r = stats . kurtosis ( x ) <EOL> rm = stats . mstats . kurtosis ( xm ) <EOL> assert_almost_equal ( r , rm , <NUM_LIT:10> ) <EOL> r = stats . kurtosis ( y ) <EOL> rm = stats . mstats . kurtosis ( ym ) <EOL> assert_almost_equal ( r , rm , <NUM_LIT:10> ) <EOL> def test_sem ( self ) : <EOL> a = np . arange ( <NUM_LIT:20> ) . reshape ( <NUM_LIT:5> , <NUM_LIT:4> ) <EOL> am = np . ma . array ( a ) <EOL> r = stats . sem ( a , ddof = <NUM_LIT:1> ) <EOL> rm = stats . mstats . sem ( am , ddof = <NUM_LIT:1> ) <EOL> assert_allclose ( r , <NUM_LIT> , atol = <NUM_LIT> ) <EOL> assert_allclose ( rm , <NUM_LIT> , atol = <NUM_LIT> ) <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> assert_almost_equal ( stats . mstats . sem ( xm , axis = None , ddof = <NUM_LIT:0> ) , <EOL> stats . sem ( x , axis = None , ddof = <NUM_LIT:0> ) , decimal = <NUM_LIT> ) <EOL> assert_almost_equal ( stats . mstats . sem ( ym , axis = None , ddof = <NUM_LIT:0> ) , <EOL> stats . sem ( y , axis = None , ddof = <NUM_LIT:0> ) , decimal = <NUM_LIT> ) <EOL> assert_almost_equal ( stats . mstats . sem ( xm , axis = None , ddof = <NUM_LIT:1> ) , <EOL> stats . sem ( x , axis = None , ddof = <NUM_LIT:1> ) , decimal = <NUM_LIT> ) <EOL> assert_almost_equal ( stats . mstats . sem ( ym , axis = None , ddof = <NUM_LIT:1> ) , <EOL> stats . sem ( y , axis = None , ddof = <NUM_LIT:1> ) , decimal = <NUM_LIT> ) <EOL> def test_describe ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> r = stats . describe ( x , ddof = <NUM_LIT:1> ) <EOL> rm = stats . mstats . describe ( xm , ddof = <NUM_LIT:1> ) <EOL> for ii in range ( <NUM_LIT:6> ) : <EOL> assert_almost_equal ( np . asarray ( r [ ii ] ) , <EOL> np . asarray ( rm [ ii ] ) , <EOL> decimal = <NUM_LIT:12> ) <EOL> def test_describe_result_attributes ( self ) : <EOL> actual = mstats . describe ( np . arange ( <NUM_LIT:5> ) ) <EOL> attributes = ( '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , <EOL> '<STR_LIT>' ) <EOL> check_named_results ( actual , attributes , ma = True ) <EOL> def test_rankdata ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> r = stats . rankdata ( x ) <EOL> rm = stats . mstats . rankdata ( x ) <EOL> assert_allclose ( r , rm ) <EOL> def test_tmean ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> assert_almost_equal ( stats . tmean ( x ) , stats . mstats . tmean ( xm ) , <NUM_LIT> ) <EOL> assert_almost_equal ( stats . tmean ( y ) , stats . mstats . tmean ( ym ) , <NUM_LIT> ) <EOL> def test_tmax ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> assert_almost_equal ( stats . tmax ( x , <NUM_LIT> ) , <EOL> stats . mstats . tmax ( xm , <NUM_LIT> ) , <NUM_LIT:10> ) <EOL> assert_almost_equal ( stats . tmax ( y , <NUM_LIT> ) , <EOL> stats . mstats . tmax ( ym , <NUM_LIT> ) , <NUM_LIT:10> ) <EOL> assert_almost_equal ( stats . tmax ( x , upperlimit = <NUM_LIT> ) , <EOL> stats . mstats . tmax ( xm , upperlimit = <NUM_LIT> ) , <NUM_LIT:10> ) <EOL> assert_almost_equal ( stats . tmax ( y , upperlimit = <NUM_LIT> ) , <EOL> stats . mstats . tmax ( ym , upperlimit = <NUM_LIT> ) , <NUM_LIT:10> ) <EOL> def test_tmin ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> assert_equal ( stats . tmin ( x ) , stats . mstats . tmin ( xm ) ) <EOL> assert_equal ( stats . tmin ( y ) , stats . mstats . tmin ( ym ) ) <EOL> assert_almost_equal ( stats . tmin ( x , lowerlimit = - <NUM_LIT:1.> ) , <EOL> stats . mstats . tmin ( xm , lowerlimit = - <NUM_LIT:1.> ) , <NUM_LIT:10> ) <EOL> assert_almost_equal ( stats . tmin ( y , lowerlimit = - <NUM_LIT:1.> ) , <EOL> stats . mstats . tmin ( ym , lowerlimit = - <NUM_LIT:1.> ) , <NUM_LIT:10> ) <EOL> def test_zmap ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> z = stats . zmap ( x , y ) <EOL> zm = stats . mstats . zmap ( xm , ym ) <EOL> assert_allclose ( z , zm [ <NUM_LIT:0> : len ( z ) ] , atol = <NUM_LIT> ) <EOL> def test_variation ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> assert_almost_equal ( stats . variation ( x ) , stats . mstats . variation ( xm ) , <EOL> decimal = <NUM_LIT:12> ) <EOL> assert_almost_equal ( stats . variation ( y ) , stats . mstats . variation ( ym ) , <EOL> decimal = <NUM_LIT:12> ) <EOL> def test_tvar ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> assert_almost_equal ( stats . tvar ( x ) , stats . mstats . tvar ( xm ) , <EOL> decimal = <NUM_LIT:12> ) <EOL> assert_almost_equal ( stats . tvar ( y ) , stats . mstats . tvar ( ym ) , <EOL> decimal = <NUM_LIT:12> ) <EOL> def test_trimboth ( self ) : <EOL> a = np . arange ( <NUM_LIT:20> ) <EOL> b = stats . trimboth ( a , <NUM_LIT:0.1> ) <EOL> bm = stats . mstats . trimboth ( a , <NUM_LIT:0.1> ) <EOL> assert_allclose ( np . sort ( b ) , bm . data [ ~ bm . mask ] ) <EOL> def test_tsem ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> assert_almost_equal ( stats . tsem ( x ) , stats . mstats . tsem ( xm ) , decimal = <NUM_LIT> ) <EOL> assert_almost_equal ( stats . tsem ( y ) , stats . mstats . tsem ( ym ) , decimal = <NUM_LIT> ) <EOL> assert_almost_equal ( stats . tsem ( x , limits = ( - <NUM_LIT> , <NUM_LIT> ) ) , <EOL> stats . mstats . tsem ( xm , limits = ( - <NUM_LIT> , <NUM_LIT> ) ) , <EOL> decimal = <NUM_LIT> ) <EOL> def test_skewtest ( self ) : <EOL> for n in self . get_n ( ) : <EOL> if n > <NUM_LIT:8> : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> r = stats . skewtest ( x ) <EOL> rm = stats . mstats . skewtest ( xm ) <EOL> assert_allclose ( r [ <NUM_LIT:0> ] , rm [ <NUM_LIT:0> ] , rtol = <NUM_LIT> ) <EOL> def test_skewtest_result_attributes ( self ) : <EOL> x = np . array ( ( - <NUM_LIT:2> , - <NUM_LIT:1> , <NUM_LIT:0> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> ) * <NUM_LIT:4> ) ** <NUM_LIT:2> <EOL> res = mstats . skewtest ( x ) <EOL> attributes = ( '<STR_LIT>' , '<STR_LIT>' ) <EOL> check_named_results ( res , attributes , ma = True ) <EOL> def test_skewtest_2D_notmasked ( self ) : <EOL> x = np . random . random ( ( <NUM_LIT:20> , <NUM_LIT:2> ) ) * <NUM_LIT> <EOL> r = stats . skewtest ( x ) <EOL> rm = stats . mstats . skewtest ( x ) <EOL> assert_allclose ( np . asarray ( r ) , np . asarray ( rm ) ) <EOL> def test_skewtest_2D_WithMask ( self ) : <EOL> nx = <NUM_LIT:2> <EOL> for n in self . get_n ( ) : <EOL> if n > <NUM_LIT:8> : <EOL> x , y , xm , ym = self . generate_xy_sample2D ( n , nx ) <EOL> r = stats . skewtest ( x ) <EOL> rm = stats . mstats . skewtest ( xm ) <EOL> assert_equal ( r [ <NUM_LIT:0> ] [ <NUM_LIT:0> ] , rm [ <NUM_LIT:0> ] [ <NUM_LIT:0> ] ) <EOL> assert_equal ( r [ <NUM_LIT:0> ] [ <NUM_LIT:1> ] , rm [ <NUM_LIT:0> ] [ <NUM_LIT:1> ] ) <EOL> def test_normaltest ( self ) : <EOL> np . seterr ( over = '<STR_LIT>' ) <EOL> for n in self . get_n ( ) : <EOL> if n > <NUM_LIT:8> : <EOL> with warnings . catch_warnings ( ) : <EOL> warnings . filterwarnings ( '<STR_LIT:ignore>' , category = UserWarning ) <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> r = stats . normaltest ( x ) <EOL> rm = stats . mstats . normaltest ( xm ) <EOL> assert_allclose ( np . asarray ( r ) , np . asarray ( rm ) ) <EOL> def test_find_repeats ( self ) : <EOL> x = np . asarray ( [ <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:3> , <NUM_LIT:3> , <NUM_LIT:4> , <NUM_LIT:4> , <NUM_LIT:4> , <NUM_LIT:4> ] ) . astype ( '<STR_LIT:float>' ) <EOL> tmp = np . asarray ( [ <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:2> , <NUM_LIT:3> , <NUM_LIT:3> , <NUM_LIT:3> , <NUM_LIT:4> , <NUM_LIT:4> , <NUM_LIT:4> , <NUM_LIT:4> , <NUM_LIT:5> , <NUM_LIT:5> , <NUM_LIT:5> , <NUM_LIT:5> ] ) . astype ( '<STR_LIT:float>' ) <EOL> mask = ( tmp == <NUM_LIT> ) <EOL> xm = np . ma . array ( tmp , mask = mask ) <EOL> x_orig , xm_orig = x . copy ( ) , xm . copy ( ) <EOL> r = stats . find_repeats ( x ) <EOL> rm = stats . mstats . find_repeats ( xm ) <EOL> assert_equal ( r , rm ) <EOL> assert_equal ( x , x_orig ) <EOL> assert_equal ( xm , xm_orig ) <EOL> _ , counts = stats . mstats . find_repeats ( [ ] ) <EOL> assert_equal ( counts , np . array ( <NUM_LIT:0> , dtype = np . intp ) ) <EOL> def test_kendalltau ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> r = stats . kendalltau ( x , y ) <EOL> rm = stats . mstats . kendalltau ( xm , ym ) <EOL> assert_almost_equal ( r [ <NUM_LIT:0> ] , rm [ <NUM_LIT:0> ] , decimal = <NUM_LIT:10> ) <EOL> assert_almost_equal ( r [ <NUM_LIT:1> ] , rm [ <NUM_LIT:1> ] , decimal = <NUM_LIT:7> ) <EOL> def test_obrientransform ( self ) : <EOL> for n in self . get_n ( ) : <EOL> x , y , xm , ym = self . generate_xy_sample ( n ) <EOL> r = stats . obrientransform ( x ) <EOL> rm = stats . mstats . obrientransform ( xm ) <EOL> assert_almost_equal ( r . T , rm [ <NUM_LIT:0> : len ( x ) ] ) <EOL> if __name__ == "<STR_LIT:__main__>" : <EOL> run_module_suite ( ) </s>
