L i@ ddlZddlZddlmZmZmZddlmZddl m Z ddl m Z m Z ddlmZmZddlmZddlmZmZmZmZddlmcmZd Zej6j9d gd ej6j9d gd dZej6j9d gd dZej6j9d gd ej6j9d gd ej6j9dddgdZej6j@ej6jCdej6j9d gd dZ"dddd Z#ej6j9de#jIdZ%dZ&dZ'dddd Z(ej6j@ej6j9de(jIdZ)d d!d"Z*ej6j@ej6j9de*jId#Z+ej6j9d d$d%gej6j9d dd&gd'Z,ej6jCd(ej6j9d gd ej6j9d dd&gd)Z-ej6j9d gd d*Z.ej6j9d gd d+Z/d,Z0ej6j9d-dd.gd/Z1ej6jCd0ej6j9d gd d1Z2d2Z3ej6j9d3d4d5gd6Z4ej6j9d7gd8ej6j9d gd d9Z5d:Z6ej6j9d gd d;Z7ej6j@ej6j9d gd d<Z8ej6j@ej6jsd=d>Z:d?Z;Gd@dAZ<GdBdCZ=GdDdEZ>dFZ?ej6j9dGgdHdIZ@GdJdKZAy)LN)assert_allclose assert_equalsuppress_warnings) rng_integers)is_numpy)xp_assert_closexp_assert_equal)statsspecial)root) bootstrapmonte_carlo_testpermutation_testpowerc d}tjt|5tdtj dddd}tjt|5tt tj dddd}tjt|5tgddgftj dddd}tjt|5tgdgdftj d dddd }tjt|5tdtj d dddd}tjt|5tgdftj ddddd}tjt|5tgdftj ddddd}tjt|5tgdftj ddddd}tjt|5tgdftj ddddd}tjt|5tgdftj ddddd}tjt|5tgdftj ddddd}tjt|5tgdftj d dddd}tjt|5tgdftj ddddd}tjt|5tgdftj d dddd!}tjt|5tgdftj d"#dddy#1swYxYw#1swYxYw#1swYaxYw#1swY&xYw#1swYxYw#1swYxYw#1swYxYw#1swYIxYw#1swYxYw#1swYxYw#1swYxYw#1swYixYw#1swY1xYw#1swYxYw#1swYyxYw)$Nz%`data` must be a sequence of samples.matchz(`data` must contain at least one sample.z>each sample in `data` must contain two or more observations...rz=When `paired is True`, all samples must have the same length rrrT)paired0`vectorized` must be `True`, `False`, or `None`.ekki vectorized`axis` must be an integer.?axisz!could not convert string to floatni)confidence_levelz-`n_resamples` must be a non-negative integer. n_resamplesD@+`batch` must be a positive integer or None.batchz`method` must be inmethodz?`bootstrap_result` must have attribute `bootstrap_distribution' )bootstrap_resultz5Either `bootstrap_result.bootstrap_distribution.size`r,SeedSequence expects int or sequence of intsherringrng)pytestraises ValueErrorr npmeantuple TypeError)messages g/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/scipy/stats/tests/test_resampling.pytest_bootstrap_ivr=s5G z 1!RWW9G z 1$%'277#$OG z 1-9qc"BGG,-OG z 1C9l+RWWTBCAG z 11!RWW01+G z 139,c232G z 1@9,$?@>G z 1<9,U;<>G z 1=9,V<=9,"=>FG z 189,Q78=G y 089,Y788q$$--CC1133@@<<==667788>>8888sP #P& P%+#P23P?5 Q : Q? Q& Q3 R R  R R' R4" S PP"%P/2P<?Q  QQ#&Q03Q=R  RR$'R14R=S r-)basic percentileBCar"rrrc :tjjd}|jddd}t |ftj d|d|d}tjjd}t |ftj d||d|}t |jj|jjt |jj|jjt |j|jy)Nrr. d)r+r- random_stater"r')r+r-r"r'rF) r7random RandomStaterandr r8rconfidence_intervallowhighstandard_error)r-r"r3xres1res2s r<test_bootstrap_batchrQOs ))   "C RA aT277$v"#$C AD ))   "C aT277"VCc CD))--t/G/G/K/KL))..0H0H0M0MN$$d&9&9:c tjjd}d}|j||j| ddd fd }tjt }t |f|d}t  fdd}t|j|jt|j|jy) NrrEc2||z dzj|S)Nrr!r8rNyr"s r< my_statisticz+test_bootstrap_paired..my_statisticjs1qD))rRc.|}|}||}|SN)ir"abresrXrNrWs r<my_paired_statisticz2test_bootstrap_paired..my_paired_statisticms& aD aD1a  rRr2T)rr3) r7rGrHrIarangelenr rrJrM) r-r3nr`r\rOrPrXrNrWs @@@r<test_bootstrap_pairedrfbs ))   "C A  A  A* #a&A aT.A 6D aV\$A >DD,,d.F.FGD'')<)<=rRrTFc tjjd}dd}d}||}|j|}|j|}|j|} t ||| f|||ddd} | j j | jj dzk(sJgd} || |<tj|j| |}tj|j| |}tj| j| |} t ||| f|||d|d} t| jj| jjt| jj| jjt| j| jt|} | j|t!| jjj | t!| jjj | t!| jj | y) Nrcr|j||j|z|j|zSNr!rU)rNrWzr"s r<rXz/test_bootstrap_vectorized..my_statistics3vv4v 166t6#44qvv4v7HHHrR)r.rCrDrE)rr-r3r"r')rE)rrrra)r7rGrHrIr bootstrap_distributionshaperM broadcast_toreshaperrJrKrLlistpopr)r-r"rr3rXrl n_samplesrNrWrjrOrnrP result_shapes r<test_bootstrap_vectorizedrs|s ))   "CI Ed I A A A aAY VF 5D  ' ' - -""((61 23 2GGDM  '*E2A  '*E2A  '*E2A aAY VF3 8DD,,00,,002D,,11,,113D'')<)<=;LT))--33\B))..44lC$$**L9rRz#MemoryError with BCa observed in CIctjjd}tjj ddd|}d}tj t|dz tj|tj|}|j| }|j}t|ftjd|| }tdi|d |i}t|j|d t|j |d|j#td|tdi||dd}t|jj$|j'|d |j#td|tdi||dd}t|jj(|j'd|z d y)Nl)ICbX r)locscalesizerFffffff?r)dfrwrx) confidence)data statisticr'r-r3r$gMb@?rtolga2U0*3?atolrr'r/lessr$ alternativegreaterr[)r7rG default_rngr normrvstrdr8semintervalstddictr rrJrMupdaterLppfrK) r-r3r}alphadistexpected_interval expected_seconfigr_s r<test_bootstrap_against_theoryrsc ))   3 4C ::>>aqt#> FD E 77c$ikrwwt}EIIdO LD  7((*K w"''tS*F  5f 5u 5CC++->TJC&& $? MM$1s;<  If Iu& ICC++00$((5/M MM$1s;<  Lf Lu) LCC++//!E'1BNrR)gQ7@gHzS@)g\(<@g= ףp U@)gHz'@@gQV@zmethod, expectedctjgd}t|ftjd|d}t |j |dy)N)r.rD)@rg+@"2QYyi@Br)r'r-r3g{Gzt?r)r7arrayr r8rrJ)r-expectedrNr_s r<test_bootstrap_against_RrsD" 5 6A QD"''wv CC++XEBrRc`gd}gd}d}tjjd}tj||f|dd|}tj||f|dd|}tj||f|d d|}tj |j }tj |j }tj |j } d } || z t| z } || z t| z } | | z t| z } | d ksJ| d kDsJt| d ksJy)N)gbF?gp?g|Hܿgxy[e}u׿g*g_?ggi6g2?)gF?gK?g&F}/?g?g(iC?g}$ץ?ghu?gfj}!?chtj||}tj||}||z Sri)r skew)rNrWr"s1s2s r<r~z1test_multisample_BCa_against_R..statistics+ ZZ % ZZ %BwrRltg y 4r>rE)r-r+r3r?bcag1*g333333ÿg333333?Q?)r7rGrr r r8rJabs)rNrWr~r3 res_basic res_percentres_bca mid_basic mid_percentmid_bca mid_wboot diff_basic diff_percentdiff_bcas r<test_multisample_BCa_against_Rrs3  .A 9A  ))   2 3CA '&)s4I//1a&)L(+6Kooq!fi$'S2G 556I''+99:Kggg112GIi'Y7J)+S^;L)#S^3H    $   x=4  rRctjgd}tjgd}dd}||g}tj||}d}d}|j}d}t j ||||||\} } } t| dy) N) r.(.r4h)r&^cc`tj||tj||z Srir7r8)rjrWr"s r<r~z:test_BCa_acceleration_against_reference..statistic&s#wwqt$rwwqt'<<r?c 8tjjd}d}d}d}d}dd}tjdd }tjd d } |j | j z } d } |j | |f| } | j | |f| } t| | f|||d |d|}|j}tj|d| k| |dkz}||k(sJtj|| |j}|d kDsJy)NrrExrrrbchtj||}tj||}||z Srir)data1data2r"mean1mean2s r<my_statz4test_bootstrap_against_itself_2samp..my_statws,D)D)u}rRrrrrr)r~r$r'r+r-r"rFra) r7rGrHr rr8rr rJrrr)r-rr3n1n2r'r$rdist1dist2rrrrr_rrrs r<#test_bootstrap_against_itself_2samprgs3 ))   "C B BK JJ1A &E JJ3a (E uzz|+IN IINB/cI BE IINB/cI BE UEN%%5 +!!$ &C Bvvr!uy0YA5FGH x '' '__-~-//5v C<r?rc  ddd fd}tjjd}|jdd}|jdd}|jdd}t |||f d|d|d }t |||f|d |d|d }t |j |j t |j|jy) Nrr!c,tfd|DS)Nc3@K|]}|jywrZrU.0sampler"s r< zEtest_bootstrap_vectorized_3samp..statistic..86;;t$8rr"r}s` r<r~z2test_bootstrap_vectorized_3samp..statistic84888rRcD|D]}|jdk(rJ|ddiSNrr"rndimr}rr~s r< statistic_1dz5test_bootstrap_vectorized_3samp..statistic_1d4 $F;;!# ## $$'Q''rRrruTrE)rr"r'r-r3Fr7rGrHrIr rrJrM) r-r"rr3rNrWrjrOrPr~s @r<test_bootstrap_vectorized_3samprs 9( ))   "C AA AA AA aAY dCA GD aAY CA GDD,,d.F.FGD'')<)<=rRz'Failure is not concerning; see gh-14107c Jd dfd}tjjd}|jdd}t |fd|dd|d}t |f|d |dd |d}t |j |j t |j|jy) Nrc&|j|SrirUrNr"s r<r~z2test_bootstrap_vectorized_1samp..statisticsvv4v  rRc:|jdk(sJ|dSNrrr!r)rNr~s r<rz5test_bootstrap_vectorized_1samp..statistic_1ds vv{{##rRrruTrE)rr"r'r+r-r3Fr.rr)r-r"rr3rNrOrPr~s @r<test_bootstrap_vectorized_1samprs!$ ))   "C AA aT9D!$D D aT?##Q'  H H H Hs$(D AC7D7D <DD c Vtjjd}tjdd}|j d|}|f}t |tj|dtjjd}t |tj|dtjjdd }t|j|jt|j|jt|jtjsJy) NlE<1 rrrrEri[%r-r'r3F)r-r'r3r) r7rGrr rrr rrrJrM isinstancefloat64)r-r3rr}r_refs r<test_bootstrap_gh15678rs ))   0C ::!1 %D 8838 /D 7D D%**V --d3 5C D%**V --d3 GCC++S-D-DEC&&(:(:; c(("** 55 5rRc tjjd}tjdd}|j d|}tj |}|f}t|tj ddtjjd }||jjk(sJttj| tjddtjjd }t|jj |jjt|jj |jjy) Nln!|'x`5rrrrErr@ifr)r7rGrr rrminr rJrKrmaxrrL)r3rr}true_minr_rPs r<test_bootstrap_minrs ))   0 1C ::!1 %D 8838 /Dvvd|H 7D D"&&C --d3 5C s..22 22 2 bhhtn_bffU..t4 6DS,,000,,113S,,111,,002rRadditional_resamplesrc ztjjd}|jd}d}|}||z}tjjd}tj|ftj ||dd}tj|ftj ||d d | }tjjd}tj|ftj ||d d }t |j|jd t |j|jd y)Nl ]4MrEryrlmdpi4 rzr?)r'r3r$r-rr@)r'r3r$r-r/+=r) r7rGrr r r8rrMrJ)rr3rNrrn3r_rs r<test_re_bootstrapr$s ))   0 1C  A B B " "B ))   2 3C //1$RS+/  FC //1$RS+/+. 0C ))   2 3C //1$RS+/ ?CC&&(:(:GC++S-D-D rRzSensible to machine precisionctjjd}tjdd}|j d|f}t |tj|d}tjdi|d d i}|jt d | tjdi|d dd}tjdi|d dd}t|jj|jjdt|jj|jjdtj|jjsJtj|jjsJt!j"t$d5tjdi|ddidddy#1swYyxYw)Nl@QixtrrrrErrb)r}r~r3r"r$rrrrzrrrr"rz`alternative` must be one ofrrz ekki-ekkir[)r7rGrr rrrrr rrrJrLrKisneginfisposinfr4r5r6)r-r3rr}rrlgs r<test_bootstrap_alternativer*sm ))   3 4C ::!1 %D HH3cH 2 4D trvv3R @F 7&737A MM$1q9: L&L4VLA O&O4YOAA))..0E0E0J0J A))--q/D/D/H/H ;;q,,00 11 1 ;;q,,11 22 2 z)G H; :&:k:;;;s .GGcd}tjjdtjj|}t t j |}t|dD]<}|d|ddf}tj||d}tj||r>"a  rRrng_namerHrcttj|d}|tj|d|d}|d}d}d}tjj dtjj |}tj|||}t|D]?}|d|ddf} t|d|d|d} |d| f} tj| | r?Jy)Nz not available.rr.r,r2.rb) getattrr7rGr4skipr/rIr_bootstrap_resampler2rr4) r9r3rng1rng2r'rlrNrWr\r6jsrs r<test_bootstrap_resamplerAEs "))Xt ,C { xj01 q6D q6DK EIINN1 A'';DAA ; -Q l $59eBi 8S"W:~~c8,,,-rRscore)r?rcd}tjjdtjj|}t j ||d}d}|||ddz }t ||dy)N)r.rrbr!cNtjtj|||SrZ)r7apply_along_axisr percentileofscore)r]rBr"s r<vectorized_posz0test_percentile_of_score..vectorized_posgs""5#:#:D!UKKrRrEV瞯<)r7rGr/rIr_percentile_of_scorer)rBr"rlrNprJp2s r<test_percentile_of_scorerO_sf EIINN1 A((E;AL 5r *3 .BAr5!rRc@d}tjjd}|j|}|j|dddz}t j ||}t |dD]2}||}tj||||d}t||d4y)N)r.rErrbrEr!rK) r7rGrHrIr_percentile_along_axisr2r?r)rlr3rNqrWr\r_rs r<test_percentile_along_axisrSos E ))   "C%A%*#A**1a0A 58_.d==1qt"5Xu-.rRc8 d fd}tj|}tjj d}|j ddd}|j ddd}|j ddd} ||||}|||||}t ||y) Nc,tfd|DS)Nc3@K|]}|jywrZrUrs r<rz>test_vectorize_statistic..statistic..rrrrs` r<r~z+test_vectorize_statistic..statisticrrRcD|D]}|jdk(rJ|ddiSrrrs r<rz.test_vectorize_statistic..statistic_1drrRrrrur-rr!)r_vectorize_statisticr7rGrHrIr) r"r statistic2r3rNrWrjrOrPr~s @r<test_vectorize_statisticrZs9(11,?J ))   "C AqA AqA AqA Q14 (D aAD )DD$rRc tjjd}d}tjj |d|d}d}t |f||ddd| }tj|jjj|k|jjj|kDzd }tj|d k\sJtj|d ksJ|jjjdk(sJ|jjjdk(sJ|jjdk(sJ|jjdk(sJy)Nls:)rrC)rErErctjtj||tj||dgS)Nr)ddof)r7asarrayr8r)r}r"s r<r~z/test_vector_valued_statistic..statistics5zz2774.66$1578 8rRrb')r-r"r'r+rFrr!ZrErrE)rrEr_)r7rGrr rrr rrJrKTrLallrlrMrk)r-r3paramsrr~r_countss r<test_vector_valued_statisticrgsD ))   +C F ZZ^^V*3 GF8 VIyb $Cc CCVVS,,0022V;..3355>@F 66&B,   66&C-   " " & & , , 88 8  " " ' ' - - 99 9    # #x // /  % % + +~ == =rRzignore::RuntimeWarningctjjd}dfdfd}gdgdgdgdgd g}tj|j}t |||d }t ||d }t |jjd |jjd t |jjd |jjd y)Nl\Qc|j|}|j|}||dz ||dz zj|}d|z|j||j|z||z dzzz S)N).Nr)r8var)rNrWr"xmymcovs r< concordancez9test_vector_valued_statistic_gh17715..concordancest VVD\ VVD\ByM!a"Y-&78>>tDCAEE$K!%%+5bQFGGrRcR||z}||z}tj|||SrZ)r7 nan_to_num)tptnfpfnr"actualrrns r<r~z7test_vector_valued_statistic_gh17715..statistics-b7}}[4@AArRc>g||tjdfS)N.)r7newaxis)r"argsr~s r<statistic_extradimz@test_vector_valued_statistic_gh17715..statistic_extradims#%$%%bjj#o66rR)rrrr)rrrr)rr-rr)rr-rr)rrrT)r3rrrKr) r7rGrrrcr rrJrKrL)r3ryr}r_rrnr~s @@r<$test_vector_valued_statistic_gh17715r{s ))   2 3CH B 7       D 88D>  D D,#d CC D)T :CC++//2++//e=C++003++00u>rRcjtjjd}|jd}|jd}d}tj||f|tj|j |j f|dd}t jt|5tj||dd d ff|dddtj||dd d dff|tj|j |j d ddd ff|dy#1swYbxYw) NiF|)r.r)rCrcFtj|||jSrir ttest_indr~rVs r<r~z test_gh_20850..statisticsq!$/999rRrr!/Array shapes are incompatible for broadcasting.rr.r) r7rGrr r rcr4r5r6)r3rNrWr~r;s r< test_gh_20850rs ))   +C 7A 7A: OOQFI& OOQSS!##J 2@G z 13 Acrc1fI 23 OOQ#2#qs( $i0 OOQSS!##ac3B3h-()!<33s ( D))D2c 4eZdZdZdefdZdZdZdZe jjdZ e jjded d d Ze jjd d dZe jj"e jjd de jjdej$ddddZe jjdej*ej,fe jjd de jjdej$ddddZe jjdej0dd dZe jje jjdej$ddddZe jj"e jjdde jjdeddZd Zd!Zd"Ze jj?de jjAd#d$Z!y)%TestMonteCarloHypothesisTest皙?NcfdS)Nc:j|di|S)NrFdtype)r^)rxkwdsrrsrvs_inxps r<z6TestMonteCarloHypothesisTest.get_rvs..s*RZZ0V20VQU0V6;&0&=rRr[)selfrrrrs ````r<get_rvsz$TestMonteCarloHypothesisTest.get_rvss = =rRcfd}|S)Ncj||}j||d}|j|}|||z dzz S)Nr!r)r" correctionrC)r8rjrl)rNr"mvrers r<r~z=TestMonteCarloHypothesisTest.get_statistic..statisticsH%Aqt2A A!cz> !rRr[)rrr~s ` r< get_statisticz*TestMonteCarloHypothesisTest.get_statistics " rRc jgd}d#fd }d}jdjdf}tjjtjjf}t j t|5t||dd dddd }t j t|5t|tjj|d dddd }t j t|5t|tjj|d dddd}t j t|5t|d|dddt j t|5jddgddgg}t|ddg|dddd}t j t|5jgdg}t|ddg|dddd}t j t|5t|tjjddddd}t j t|5t|tjj|ddddd}t j t|5t|tjj|ddddd}t j t|5t|tjj|ddddd}t j t|5t|tjj|ddddd}t j t|5t|tjj|d dddd!}fd"} t||jy#1swYYxYw#1swYxYw#1swYxYw#1swYxYw#1swYuxYw#1swY7xYw#1swYxYw#1swYxYw#1swYyxYw#1swY9xYw#1swYxYw#1swYxYw#t$r&}t|j|sJYd}~yd}~wwxYw)$N?@@c*j||SrirU)rNr"rs r<statz@TestMonteCarloHypothesisTest.test_input_validation..stat s77147( (rRrrru)rrurcyNrr[rVs r<rzDTestMonteCarloHypothesisTest.test_input_validation..srRrbr!rr rr0`rvs` must be callable or sequence of callables.rrrg@c|SrZr[rNs r<rzDTestMonteCarloHypothesisTest.test_input_validation..!arRIf `rvs` is a sequence...c|SrZr[rs r<rzDTestMonteCarloHypothesisTest.test_input_validation..&rrRc|SrZr[rs r<rzDTestMonteCarloHypothesisTest.test_input_validation..&s1rRz`statistic` must be callable.)`n_resamples` must be a positive integer.r%r&r(r)r*`alternative` must be in...rrz!Signature inspection of statisticcbjtjj|S)Nr!)r^r rr)ryrs r<rz?TestMonteCarloHypothesisTest.test_input_validation..rvsBs!::ejjnn$n78 8rRrZ) r^zerosr rrr4r5r6rr:r8str startswith)rrr}rr;tempres ` r<test_input_validationz2TestMonteCarloHypothesisTest.test_input_validationszz,' )D "((6"23zz~~uzz~~. ]]:W 5 G T3(<2 F G/ ]]:W 5 C T5::>>4c B CE ]]:W 5 I T5::>>4C H IE ]]9G 4 / T4 . / ]]9G 4 >::Bx"b23D TK#6 = >. ]]:W 5 E::|n-D TK#=t D E2 ]]9G 4 9 T5::>>4 8 9> ]]:W 5 L T5::>>4U K L> ]]:W 5 M T5::>>4V L M@ ]]:W 5 F T5::>>4u E F@ ]]:W 5 G T5::>>4v F G0 ]]:W 5 M T5::>>4V L M6 9 . T3 0i G G C C I I / / > >  E E  9 9 L L M M F F G G M M .q6$$W- -- .sO6(P(PP(P*&P7'&Q2(Q?(Q (Q+(Q8&(RR6PP PP'*P47QQQQ(+Q58RR  R?R::R?cfd}d}jgd}tr&t|tjj |yt jt|5t|tjj |dddt jt|5t|tjj jddddy#1swY_xYw#1swYyxYw)Nc&j|SrZrU)rNrs r<non_vectorized_statisticzWTestMonteCarloHypothesisTest.test_input_validation_xp..non_vectorized_statisticJs771: rRz!`statistic` must be vectorized...rrFr) r^rrr rrr4r5r6r8)rrrr;rs ` r<test_input_validation_xpz5TestMonteCarloHypothesisTest.test_input_validation_xpIs 6L) B< VUZZ^^5M N  ]]:W 5 O VUZZ^^5M N O ]]:W 5 P VUZZ^^RWW O P P O O P Ps(&C,12C8,C58Dcxtjjd}j|j d}fdd_d_|ddd}jtjjtjjd  |d <tdd d i|}tj dtj d jtjjtjjd  |d <d_tdd di|}tj dtj djtjjtjjd  |d <d_tdi|}tj dtj dt|j|jt|j|jy)N)pr.r!c|jdk(rdn|jd}t|j_xjdz c_j ||Sr)rrlr batch_sizecounterr)rNr"rrr~rs r<r~z:TestMonteCarloHypothesisTest.test_batch..statistic_s\ffkqwwqzJ#&z93G3G#HI    " )4%%b)!$7 7rRrrT)rr~r'rirrr+rrrrr[)r7rGrr^standard_normalrrrr rrrrr r) rrr3rNrrOrPres3r~s `` @r< test_batchz'TestMonteCarloHypothesisTest.test_batchXsii##K0 JJs***3 4 8   )#49ll5::>>2993H3H3PUWlXU 0a040Y&&-Y))1-ll5::>>2993H3H3PUWlXU  1b1D1Y&&+Y))2.ll5::>>2993H3H3PUWlXU  '$'Y&&*Y))40 T[[1 T[[1rRr"rctjjd}gd}d||<|jdj}dt |vrdnd}t t|}t ||}|j||} tj| d | } |j| | } |j|} |jtjj||| } t| | | d d|} |j| j| }|j| j | }t#| j|t#| j ||j$y)Nit$rrrrEr64float32r)ryr)popmeanr"r)rrTi N)rr'r"r)r7rGrr^rrr;rr ttest_1samprrrrrr~rrr)rr"rr3ry dtype_default dtype_strdtype_nprrNrr~rr_ ref_statistic ref_pvalues r<test_axis_dtypez,TestMonteCarloHypothesisTest.test_axis_dtype~s:ii##G,T  2,, !%]);!;I) 2y)I&   T  :$$Q> JJqJ &&&r* ll5::>>3elCq#yT+0t= 8#5#5U C ZZuZ=  }5 JTYY?rRr) two-sidedrrc$tjjd}|jd}t j |d|}|j |}|j|}|jtjj||}t||||}t|j|j |jt|j|j |j|jy)N)rFr!rrrr)r7rGrrr rr^rrrrrrr~rr) rrrr3rNrr~rr_s r<test_alternativez-TestMonteCarloHypothesisTest.test_alternativesii##H-   R  (2;? JJqM&&r* ll5::>>32l6q#ykJ rzz#--'@A BJJszz$:KrR)rrr]grCrucvtjjd}tjj |d|}tj |tjj}fd}|jtjj |}t|||dd}t|j|jd k(r-t|j|j|j yd k(r0td |jz |j|j yy) NrrFr]ryrFrcztj|tjjdjSNasymp)moder)r ks_1samprcdfr~)rNrs r< statistic1dzGTestMonteCarloHypothesisTest.test_against_ks_1samp..statistic1ds+>>!UZZ^^'.9;;D9 ErRrFr'rrrrrr)r7rGrr skewnormrrrrrrrr~rr) rrr]r3rNrrnorm_rvsr_s ` r<test_against_ks_1sampz2TestMonteCarloHypothesisTest.test_against_ks_1samps ii##H- NN  #  >>>!UZZ^^M E<< 4q(K+/E+68  x'9'9: ) # CJJdii H F " AcjjL(// J#rRhypotestrrrr.rctjjd}tjj |d|}||}fd}|j tjj |}t|||d|} t| j|jt| j|j|jy) Ni rrc,||jSri)r~)rNr"rs r<r~zLTestMonteCarloHypothesisTest.test_against_normality_tests..statisticsAD)33 3rRTrrr) r7rGrr rrrrrrr~rr) rrrr]r3rNrr~rr_s ` r<test_against_normality_testsz9TestMonteCarloHypothesisTest.test_against_normality_testss ii##H- NN  3  ?A;7 4<< 4q(I$+68  x'9'9: HOO$))DrRctjjd}tjj |d|}tj |}d}|jtjj |}t|||dd}t|j|jt|j|j|jy) Ni!MrrcDtj||jSri)r normaltestr~rs r<r~zGTestMonteCarloHypothesisTest.test_against_normaltest..statistics##AD1;; ;rRTrrr)r7rGrr rrrrrrrr~rr)rr]r3rNrr~rr_s r<test_against_normaltestz4TestMonteCarloHypothesisTest.test_against_normaltestsii##H- NN  3  ?##A& <<< 4q(I$+46  x'9'9: HOO$))DrRctjjd}tjj |d|}tj |tjj}d}|jtjj |}t|||ddd}t|j|jt|j|j|j y) Ni rFrcrtj|tjjjSrZ)r cramervonmisesrrr~rs r<rzMTestMonteCarloHypothesisTest.test_against_cramervonmises..statistic1ds#''5::>>:DD DrRrFrrr)r7rGrr rrrrrrrrr~rr)rr]r3rNrrrr_s r<test_against_cramervonmisesz8TestMonteCarloHypothesisTest.test_against_cramervonmisessii##I. NN  #  >''5::>>: E<< 4q(K+/E+46  x'9'9: HOO$))DrR dist_name)rlogisticr\c fd}t5}|jtt|d}dddjsJ|j d}t jjd}tjj|d|}tj|} | j} | jdz } fd} |jt!tj|} t5}|jtt#|| | dd d }dddt%j| t%|j&| d |j(z y#1swY@xYw#1swYRxYw)Nctjjd}tjj |d|}tj |}|j|jz S)NxrEr) r7rGrr tukeylambdarandersonr~critical_values)r]r3rNrrr\s r<funz?TestMonteCarloHypothesisTest.test_against_anderson..funs`))'' 2C!!%%ac%DA~~a3H%%(@(@(CC CrRr)x0rrErcDtj|jSrZ)r rr~)rNrs r<rzGTestMonteCarloHypothesisTest.test_against_anderson..statistic1d&s>>!Y/99 9rRrFrrrr)rfilterRuntimeWarningr successrNr7rGrr rrrr~significance_levelrr;rrrr)rrr\rsupsolr]r3rNr expected_stat expected_prdist_rvsr_s `` r<test_against_andersonz2TestMonteCarloHypothesisTest.test_against_andersonsO D   "C JJ~ &sq/C "{{{ EE!Hii##I.    ! !!#C ! @>>!Y/ ** 003C7  :<<y 9 = =sC   LC JJ~ &"1h#.D.3LC L  }5 JQtyy[A5 " "& L Ls#E4 'F4E>F ctjjd}tjd}t ||jtj dd}|j dk(sJy)NlIL~QH(srETrrg-C6?)r7rGrrrr8r)rr3rNr_s r<test_p_never_zeroz.TestMonteCarloHypothesisTest.test_p_never_zero3sVii##$78 HHSMq#**bgg*.FDzzV###rRctjjd}|jd|jdf}|j|jf}d}t j |||d}t j |d|d gd}t|j|jt|j|jd y) NF:fmPrr!cFtj|||jSrir~rVs r<r~zFTestMonteCarloHypothesisTest.test_against_ttest_ind..statisticAs??1ad3== =rRrbr!rr{Gz?r) r7rGrnormalr rrrr~rrr3r}rr~r_rs r<test_against_ttest_indz3TestMonteCarloHypothesisTest.test_against_ttest_ind<sii##$67zzvz&  (::jj#**$ >$$T3 Cood1gQyr: s}}5 CJJT:rRctjjd}|jd|jd|jd|jdf}|j|j|j|jf}d}t j |||dd }t j |d di}t|j|jt|j|jd y)Nrrbr!)re)rf)rgc@tj|d|ijS)Nr")r f_onewayr~)r"rxs r<r~zETestMonteCarloHypothesisTest.test_against_f_oneway..statisticPs>>43d3== =rRrbrr"rr"{Gz?r) r7rGrr r rrrr~rr s r<test_against_f_onewayz2TestMonteCarloHypothesisTest.test_against_f_onewayIsii##$67  )3::8:+D  )3::8:+DFjj#**cjj#**< >$$T3 1:<nnd,, s}}5 CJJT:rRz2Statistic may not depend on sample order on 32-bitctjjdd}fd}|d}tj||tj d|}tj |j|jk}tj |j|jdzk}||k7sJ|j|dz|dzz k(sJy) NlU5.rvsbs'%044$S4QQ QrRrEr)rr'g?r) r7rGrr rrjrnull_distributionr~r)rr'rrNr_c0c1r3s @r<test_finite_precision_statisticzVVC))S]]: ; VVC))S]]G-DD ERxxzzb1f{Q7777rR)"__name__ __module__ __qualname__rr7rrrrr4markxslowr parametrizer2rrslowlinspacerr skewtest kurtosistestrrcrrrrr r fail_slowxfail_on_32bitrr[rRr<rrs D(,=@.D P [[#2#2J [[VU2q\2@3@@ [[],LMLNL& [[ [[],?@ [[S+"++dC";<K=AK, [[Z%..%:L:L)MN [[],LM [[S+"++b!Q"78E9NOE" [[S)"))B"23E4E" [[ [[S+"++dC";<E=E$ [[ [[[*>? [[S%(+(B,@(BT$ ;;" [[1 [[ TU8V8rRrceZdZdZej j dZej j dZdZ dZ y) TestPowerc tjjd}tj}|j |j f}d}d}t jt|5t|||ddddd}t jt|5t|d|dddt jt|5t||j df|dddd }t jt|5t||j f|dddt jt|5t||d dddd }t jt|5t|||d dddt jt|5t|||tjdd dddd}t jt|5t|||ddddd}t jt|5t||ddggdfdddt jt|5t||ddgddgfdgdidddd}t jt|5td||dddd}t jt|5t|||ddddt jt|5t|||ddddd}t jt|5t|||d dddt jt|5t|||d dddy#1swYxYw#1swYxYw#1swYxYw#1swYxYw#1swYixYw#1swYAxYw#1swYxYw#1swYxYw#1swYxYw#1swYxYw#1swY]xYw#1swY5xYw#1swYxYw#1swYxYw#1swYyxYw)!NlyB01)r.rDrrr rrrr)r.z3`significance` must contain floats between 0 and 1.r significancerbrz`kwargs` must be a dictionaryr)kwargsz+shape mismatch: objects cannot be broadcastr.rC)rD rDr/rNz`test` must be callablez(`n_resamples` must be a positive integerir&g%@z"`batch` must be a positive integerr*) r7rGrr rr r4r5r6rr:r$)rr3testrn_observationsr;s r<rzTestPower.test_input_validationpsii##$78zz3::&!D ]]:W 5 = $^ < =E ]]9G 4 . $n - . ]]9G 4 > $V,n = >. ]]:W 5 7 $ ~ 6 7 ]]:W 5 $ $U # $H ]]:W 5 = $^! < = ]]:W 5 N $^"++b!:L M N2 ]]9G 4 ? $^I > ?@ ]]:W 5 7 $r2h 5 6 7 ]]:W 5 L $r2hR13 :J K L, ]]9G 4 - $^ , -= ]]:W 5 > $^ = > ]]:W 5 ? $^ > ?7 ]]:W 5 8 $^3 7 8 ]]:W 5 9 $^4 8 9 9Y = = . . > > 7 7 $ $ = = N N ? ? 7 7 L L - - > > ? ? 8 8 9 9s'N N N# N0N=;O .$O7O$,O1#O>"P PP%=P20P> NN #N-0N:=O OO!$O.1O;>P PP"%P/2P;>Qctjjd}fdd_d_t dd}tjjd}t d i||jdd}tjdtjdtjjd}d_t d i||jd d}tjd tjd tjjd}d_t d i||jdd}tjdtjdt|j |j t|j |j y) Nrc|jdk(rdn t|}t|j_xjdz c_t j |d|jSr)rrdrrrr rr)rNr"rr1s r<r1z"TestPower.test_batch..testsSffks1vJ!*doo>DO LLA L$$Q5<< .testsF "xuQQR ?S9T U $$Q(9{*.0 0rR)r.rrErrErr)rr皙?rr-r.c6tj||S)Nr)r r)rNr" alternative_i popmean_is r<test2z+TestPower.test_vectorization..test2s!#(#4#4Q AN$PPrRr,rr)rrra) r7rGrrr^rwr rr appendrnrlr)rr3r1nxr.r-r_rsignificance_inx_ir@tmpr>r?r:s @@@r<test_vectorizationzTestPower.test_vectorizations3ii##N388QH% 0ZZ- .q"**} =!ABzz":; kk$ B\!')* .N .%+M%:.M%-. P$kk%T7EG 399-.. . .jjciioo.  3T=rRctjjd}tj}|j ddd}|j |j f}tjgd}tj||||}tj|ddtjf|jj}t|j|d y) N&(r.rE)rr.r!)rr;rr,rr) r7rGrr rintegersr r^rrmrwrlr)rr3r1r2rr-r_s r<test_ttest_ind_nullzTestPower.test_ttest_ind_nullsii##O4b#G<jj#**$zz"34 kk$^,O|ArzzM'BCIIOOT  %>N <3rRr*c eZdZdZdZdZejjde jje jjgejjdgddZ ejjde jje jjgejjdd ejd d zfd d ej dd fgdZdZejj'dZdZejjdddZejjdddZejjdddZdZejj5ejjdddZejj&ejjdddZejjdddZdZejjdddZejj5ejjdd d!Z gd"gd#d$d%d&d'd(d)d*Z!gd+gd,d-d.d/d0d1d2d*Z"ejj5ejjd3e!e"fd4Z#ejj&ejjd5d6d7Z$ejjd8d9d:Z%e&d;d gfe&dd gd<gd=gfe&d>d gd<gd=dd?ggfgZ'ejjd@e'dAZ(ejjSd dBZ*yC)DTestPermutationTestr"cLtjjd|_y)Nl F)r7rGrr3)rs r< setup_methodz TestPermutationTest.setup_methods99(()<=rRcd}d}tjt|5tgddgf|dddd}tjt|5td|dddtjt|5td|dddd}tjt|5tgdgdf|d dddd }tjt|5tgdgdf|d dddd}tjt|5tgdgdf|d dddd}tjt|5tgdgdf|ddddd}tjt|5tgdgdf|ddddd}tjt|5tgdgdf|ddddd}tjt|5tgdgdf|ddddd}tjt|5tgdgdf|d dddd}tjt|5tgdgdf|ddddy#1swYwxYw#1swYRxYw#1swY/xYw#1swYxYw#1swYxYw#1swYxYw#1swY{xYw#1swYNxYw#1swY!xYw#1swYxYw#1swYxYw#1swYyxYw)NcFtj||f|jSrZr~rVs r<rz:TestPermutationTest.test_permutation_test_iv..stat"s??Aq640:: :rRz2each sample in `data` must contain two or more ...rrrz6`data` must be a tuple containing at least two samples)rrr r!z `permutation_type` must be in...r)permutation_typerrrr%r&r(r)r*rrr0r1r2)r4r5r6rr:)rrr;s r<test_permutation_test_ivz,TestPermutationTest.test_permutation_test_iv s ;G ]]:W 5 5 i!-t 4 5K ]]:W 5 ) T4 ( ) ]]9G 4 & Q % &/ ]]:W 5 E i3T D E5 ]]:W 5 6 i3T.4 6 6E ]]:W 5 K i3Tc J K> ]]:W 5 N i3Tu M N> ]]:W 5 O i3Tv N O@ ]]:W 5 H i3T G H@ ]]:W 5 I i3T H I0 ]]:W 5 O i3Tv N OA ]]9G 4 J i3Ty I J JW 5 5 ) ) & & E E 6 6  K K N N O O H H I I O O J JsJ( J5 K:K4K.K)(K6"LLLL) L5(J25J?K KK&)K36LL LL&)L25L>rFrS)pairingssamples independentc |jjd}|jjd} fd d _d _d|dd}t j ||f fd|dd|}t jd t jdd _t j ||f fd |dd|}t jd t jd d _t j ||f fd|dd|}t jd t jdt |j|jt |j|jy) Nr.c|jdk(rdn t|}t|j_xjdz c_t j ||t j ||z SNrr!)rrdrrrr7r8)rNrWr"rr~s r<r~z1TestPermutationTest.test_batch..statistic`s_ffks1vJ#&z93G3G#HI    " 7714(27714+@@ @rRrrT)r'rSrr)r+rFrrrr)r3rGrrr rrr) rrSrFrNrWrrOrPrr~s @r<rzTestPermutationTest.test_batchVsx HHOOB  HHOOB  A   #9I"$%%q!fiLq3??LFJLY&&-Y))1- %%q!fiLr3??LFJLY&&+Y))2. %%q!fiLt3??LFJLY&&*Y))40T[[$++.T[[$++.rRzpermutation_type, exact_sizerUrr)rVrzrWr-cv|jjd}|jjd}d}|dd}tj||f|fd|dd|}t |j j dtj||f|fi|}t |j j |y)Nrc`tj||tj||z SrirrVs r<r~z8TestPermutationTest.test_permutations..statistic#7714(27714+@@ @rRT)rSrr)r'rF)r3rGr rrrry) rrS exact_sizerFrNrWr~rr_s r<test_permutationsz%TestPermutationTest.test_permutationss HHOOA  HHOOA  A%5"$$$aVYKA2>q/KEIKS**//3$$aVY?$?S**//.statisticr]rRTrWrErrSr+rr3r'rr) r binomr rrrr7infr~rr rrr3rBny permutationsrNrWr}r~rr_rPs r<'test_randomized_test_against_exact_bothz;TestPermutationTest.test_randomized_test_against_exact_boths% S*B }}R"Wb)L888 JJNNN # JJNNN #!t A# [FtY'L'!%'iLRVVLtL}}... DKKd;rRcd\}}d\}}}d|z|kDsJtjj|}tjj|}||f}d} ddd||d } t|| fd |i| } t|| fd tj i| } | j | j k(sJt| j| jd y) N)rN)rri}rr!c6tj||z |SrirrVs r<r~zQTestPermutationTest.test_randomized_test_against_exact_samples..statistics771q5t, ,rRTrVrErcr'rr) r rrrr7rer~rrrfs r<*test_randomized_test_against_exact_samplesz>TestPermutationTest.test_randomized_test_against_exact_sampless + S,B "u|### JJNNN # JJNNN #!t -# [FtY'L'!%'iLRVVLtL}}... DKKd;rRc d|j}}d\}}}tj||kDsJtjj |}tjj | |g} fd}t j|} ddd||d} t|| fd |i| } t|| fd tji| } | j| jk(sJt| j| jd y) Nr)rzrzi@r!c6tj|dSNrr pearsonrrNrWs r<rzTTestPermutationTest.test_randomized_test_against_exact_pairings..statistic1ds>>!Q'* *rRTrVrErcr'rr)r3r factorialr rrrrXrr7rer~rr)rrr3rBrgrhrNr}rr~rr_rPrWs @r<+test_randomized_test_against_exact_pairingsz?TestPermutationTest.test_randomized_test_against_exact_pairingss'S *B   $|333 JJNNN # JJNNN #s + 44[A " [FtY'L'!%'iLRVVLtL}}... DKKd;rRrrc|jjdd}|jjddd}tj||d}fd }t ||f|t j d |j }t|j|j|j t|j|j|j y) Nrrryrxrur)ryrwrxexact)rrcJtj||djSr)r ks_2sampr~rNrWrs r<rz>TestPermutationTest.test_against_ks_2samp..statistic1ds#>>!QW.9;;D9 ErRrr'rr3r) r3r r ryrr7rerr~rr)rrrNrWrrr_s ` r<test_against_ks_2sampz)TestPermutationTest.test_against_ks_2samps HHOO!O , HHOOO 3>>!QKgN E 1v{+4$((D  x'9'9 J HOO$))DrRc|jjdd}|jjdd}dddd }||}tj||| }d }t ||f|t j ||j }t|j|j|j t|j|j|j y)NrrrvrurrrrrrcBtj||jSrZr ansarir~rrs r<rz.statistic1d<<1%// /rRr{r) r3r r rrr7rerr~rr) rrrNrWalternative_correspondencealternative_scipyrrr_s r<test_against_ansariz'TestPermutationTest.test_against_ansaris HHOO!O , HHOO!O ,/8173>&@"7{C<<12CD 01v{+6DHHF  x'9'9 J HOO$))DrRc tjjdd|j}tjjdd|j}tj||d|}d}t ||f|dt j|d|j }t|j|j|j t|j|j|j y) N)rrurrryrwrFr;rrcFtj|||jSri)r mannwhitneyur~rVs r<r~z@TestPermutationTest.test_against_mannwhitneyu..statistic!s%%a6@@ @rRT)rr'rr"r3r) r uniformrr3rrr7rerr~rr)rrrNrWrr~r_s r<test_against_mannwhitneyuz-TestPermutationTest.test_against_mannwhitneyus MM  9!$((  K MM  9$TXX  N%%a L A1vyT+-66{$%4885  x'9'9 J HOO$))DrRctjjdd|j}tjjddd|j}tj||d}d }t ||f|t jd |j }t|j|j|j t|j|j|j y) Nrr)ryrxrFrur)ryrwrxrFrwr,cFtj||djSN asymptoticr,)r cramervonmises_2sampr~rrs r<rz9TestPermutationTest.test_against_cvm..statistic1d2s#--a5ACCL9 MrRrr{r) r rrr3rrr7rerr~rr)rrNrWrrr_s r<test_against_cvmz$TestPermutationTest.test_against_cvm+s JJNNN B JJNNqN I--a7C M 1v{+4$((D  x'9'9 J HOO$))DrRr")rbrcXtjjd}|jd}|jd}|jd}|||f}d}d}tj|} tj|} tj |d} tj |d } tj |d } | | | | | }| | | | | }d |d d|j d}t||fdtji|}t||fddi|}t|j||jt|j|j|jt|j|dt|j|jdy)NlY}y!dhrr!)rrr)rrrc:tj|jSrZ)r kruskalr~r}s r<rzITestPermutationTest.test_vectorized_nsamp_ptype_both..statistic1dOs==$'11 1rRc:tj|jSrZ)r rrrs r<pvalue1dzFTestPermutationTest.test_vectorized_nsamp_ptype_both..pvalue1dRs==$'.. .rR)rrr)rrrrr!FrrWrr"rrSr3r'rrgQ?rr) r7rGrrrXrmr3rrerr~rr)rr"r3rNrWrjr}rrr~rx2r7z2expected_statisticexpected_pvaluerr_rPs r< test_vectorized_nsamp_ptype_bothz4TestPermutationTest.test_vectorized_nsamp_ptype_both=spii##$78 JJQJ  JJIJ & JJIJ &1ay 2 / 44[A 11(;__Q * __Q * __Q *&r2r= R$7$T)$1$((Dt[MbffMMkLtLtL  '9 J t~~DIIF O$? DKKd;rRctjjdd|j}tjjdd|j}d}d}fd}t j |}|||d }|d} |d} d dd |jt jd } t||z f|fi| } t||f|fi| } t| j| j|j dk7r"t| j| |j t| j| |j t| j| j|j y)N)rr-rrrr;cDtj|djSNrrr wilcoxonr~)rjs r<statistic_1samp_1dzETestPermutationTest.test_against_wilcoxon..statistic_1samp_1dvs>>!8BB BrRcFtj||djSrrrrs r<statistic_2samp_1dzETestPermutationTest.test_against_wilcoxon..statistic_2samp_1dzs>>!QF;EE ErRc4tj||S)Nr)r rrzs r<test_1dz:TestPermutationTest.test_against_wilcoxon..test_1d}s>>!QK@ @rRrr!FrV)rr"rrSr3r'rr) r rrr3rrXr7rerrr~rr)rrrNrWrrrr1rrrrrOrPs ` r<test_against_wilcoxonz)TestPermutationTest.test_against_wilcoxonms7 MM  9!$((  K MM  9$TXX  N C F A//811%  a[ #Q{$-dhh!vv' 1(:CdCA(:CdC TYYG + % DNNM J Zdii@ T[[tyyArRc d|jjddd}d||dk(<d d}||dd}}}tj||||}tj|f|d d t j |j| }t|j|j|j y)Nrrr.r!rbc6tj|dkD|S)Nrr!r7rrs r<r~z=TestPermutationTest.test_against_binomtest..statistics66!a%d+ +rRrCrTrV)rrSr'r3rrr) r3rIr rrr7rerrr) rrrNr~krerMrr_s r<test_against_binomtestz*TestPermutationTest.test_against_binomtests HH  a  ,!q&  ,A,Ca1??1a D$$aT96?13TXX1<>  HOO$))DrRc|jjd}||jjdztj|d}fd}t |f|dt j |j}t|j|j|jt|j|j|jy) Nr-r!rwr,cHtj|djSr)r kendalltaur~rrs r<rz@TestPermutationTest.test_against_kendalltau..statistic1ds##Aq>HH HrRrU)rSr'r3r) r3r r rrr7rerr~rr)rrNrrr_rWs @r<test_against_kendalltauz+TestPermutationTest.test_against_kendalltaus HHOOO # Q' '##Aq9 It[:+-66txxA  x'9'9 J HOO$))DrRcfd}tjjd}|jddkDjt}|jdd|zzdkDjtt j j|d}t|f|dtj||}t j|| }t|j|dy) Nc@tj|dk(dk(zSrrrrs r<r~z@TestPermutationTest.test_against_fisher_exact..statistics6616a1f-. .rRl (yM4rg333333?g?rrU)rSr'rr3r) r7rGrastypefloatr contingencycrosstabrre fisher_exactrr) rrr~r3rNtabr_rPrWs @r<test_against_fisher_exactz-TestPermutationTest.test_against_fisher_exacts /ii##$78 ZZ]S ( ( / ZZ]T!V #c ) 1 1% 8((A.q1tY+-66{#&(!!#;? DG,rR)r.rc|jjd}|jjd}|jjd}tj||}tj||}tj||}|d}|||f}d}d}t j |}t j |} |t j|d |i} | t j|d |i} d |d d dd } t||fdt ji| } t||fddi| }t| j| |jt| j|j|jt| j| |jt| j|jdy)N)rrrr!)rrr)rrrr!rcFtj|ddjS)NTrrankedr-)r page_trend_testr~rs r<rzLTestPermutationTest.test_vectorized_nsamp_ptype_samples..statistic1ds"((d0<>>Gi HrRcFtj|ddjS)NTrwr)r rrrs r<rzITestPermutationTest.test_vectorized_nsamp_ptype_samples..pvalue1ds"((d0799? @rRr"FrrUrr'rvrrr)r3rGr rankdatarrXr7broadcast_arraysrrerr~rr)rr"rNrWrjr}rrr~rrrrr_rPs r<#test_vectorized_nsamp_ptype_samplesz7TestPermutationTest.test_vectorized_nsamp_ptype_sampless HHOOO + HHOOO + HHOOO + NN14 ( NN14 ( NN14 ( aD1ay H @ 44[A 11(;&(;(;T(BNN ""5"5t"<H4H$T)$.q:t[MbffMMkLtLtL '9 J t~~DIIF O$))D DKKd;rRr)r rg@r6g?g&_?g@gd~$I"@glu?)rNrW expected_lessexpected_2sidedexpected_Pr_gte_S_meanr expected_avg expected_std)okrErrjml) rrrbirnrrgd?gd?gYo5?g@@@g{C@gDmFA@casec|d}|d}|d}|d}|d}|d}|d}|d} d } tjj5} | jtd t ||f| tj d } t ||f| tj d } dddt j||jt| j|dt j|dt| jj|dt| jj| d| j}| jj}t| j}tjtj | j|z tj ||z k\|z }t||y#1swYAxYw)a Results above from SAS PROC NPAR1WAY, e.g. DATA myData; INPUT X Y; CARDS; 1 1 1 2 1 3 1 4 2 1.5 2 2 2 2.5 ods graphics on; proc npar1way AB data=myData; class X; EXACT; run; ods graphics off; Note: SAS provides Pr >= |S-Mean|, which is different from our definition of a two-sided p-value. rNrWrrrrrrcBtj||jSrZrrrs r<rz7TestPermutationTest.test_with_ties..statistic1d0rrRz$Ties preclude use of exact statisticr)r'rrNrg|=rgư>)r7testingrr UserWarningrrerr~rrrr8rrdrr)rrrNrWrrrrrrrrr_rPSr8re Pr_gte_S_means r<test_with_tiesz"TestPermutationTest.test_with_ties s8 I I!"67_- 01!%&>!?N+ N+  0ZZ ) ) + =s JJ{$J K"Aq6;BFF/57C#QFKRVV0;=D  =  '9 J M> _5A..335|$O..224lN MM$$))+ %% &rvvc&;&;D&@A"$&&4. 12234 . >' = =s AGG(zalternative, expected_pvalue))rg?)rgOO?)rg.statistic1dbs??1a(22 2rRrU)rSr'rrgvIh%<=rN)rr7rerr~rr)rrrrNrrr_rWs @r<test_against_spearmanr_in_Rz/TestPermutationTest.test_against_spearmanr_in_RHsa( 1 0/ 3t[:+-66{L  '9 J O%@rRr+)rbrctjtd5tt j gd|dddy#1swYyxYw)Nz`batch` must be positive.rr)r4r5r6ror_batch_generator)rr+s r<test_batch_generator_ivz+TestPermutationTest.test_batch_generator_ivks? ]]:-H I A --i? @ A A As "AArrA)rrrurzrziterable, batch, expectedcPttj||}||k(sJyrZ)rorr)riterabler+rgots r<test_batch_generatorz(TestPermutationTest.test_batch_generatorts';//%@AhrRc gd}gd}d}tj||f|dd}|j|j|j}}}dt j ||dz k\zt|z }||cxk(rd k(sJJy) N)rrrr)rrr-rzc4tj||dSrorprrs r<r~zFTestPermutationTest.test_finite_precision_statistic..statistics>>!Q'* *rRFrU)rrSrr"gUUUUUU?)r rr~rrr7rrd) rrNrWr~r_rrnull correct_ps r<rz3TestPermutationTest.test_finite_precision_statisticzs   +$$aVY56@B--S5J5J46tq5y011CI= )c)))))rRN)+rrrrrPrTr4r r"r7rGrHrrr rsrdr_rir#rlrtr|rrrr!rrrrrr tie_case_1 tie_case_2rrrr2batch_generator_casesrr'rr[rRr<rNrNs@ D> 2Jl [[^bii.C.C.0ii.C.C.EF [[/CE"/EF"/J [[^bii.C.C.0ii.C.C.EF [[;)+<7+<+:??:?x [[ [[;>?A ? A< [[Wg.A/A$Ah2.#AhIy+AB#AhIy1a&+IJL [[8244 [[1**rRrNc vtjgdt}tj|}t }d}t j |D]Q}|dz }tj||dd}|jt|Dcgc] }t|c}Stjtt|dz Dcgc]3}tjt!||dt!||dzd5c}}t#||t#t||ycc}wcc}w)N)rrrrrrrb)r7rintcumsumsetr_all_partitions_concatenatedsplitaddr9 frozensetprodr2rdr rdrr)rencall_partitionsrpartition_concatenated partitioningr\rs r< test_all_partitions_concatenatedrs #&A 1BUNG"-"J"J1"MH1 xx 63B@ 5 !E1)A,!EFGH ww!&s1vax2 c!AB%j#a!g,?23H(#^$h/ "F2s D18D6fun_namer rrcVtjjdjdfd}fddfdd|d d }d d i}tt|}||}|j |fd }|d|dd||d|dd|d}|d|dd||d|dd|y)Nlr:r.r!cFtjj|S)Nr)r rrrs r<rz&test_parameter_vectorized..rvsszz~~4c~::rRr?)r}r3r-rV)r}r3rS)rrrr'rEc|jdkDstj|sJtj||SrZ)rr7r4r8)rNr"rs r<r~z,test_parameter_vectorized..statistics2vvzR^^Av666wwqt$$rR)r~rTcN|jdk(sJtj|Sr)rr7r8rs r<r~z,test_parameter_vectorized..statistics vv{{wwqzrRFr[)r7rGrr;r r) rr fun_optionscommon_optionsroptionsr~r3rs @@r<test_parameter_vectorizedrs ))   /C ZZRZ F;+13+7!917 #"%8)888)888)889)99rRceZdZdZy)TestMonteCarloMethodcd}tjjd}tjt |5t j|j|dddy#1swYyxYw)Nz.Use of `rvs` and `rng` are mutually exclusive.ir)rr3)r7rGrr4r5r6r MonteCarloMethod)rr;r3s r<test_rvs_and_random_statez.TestMonteCarloMethod.test_rvs_and_random_statesRBii##H- ]]:W 5 <  " "szzs ; < < rs JJ)*H LL--<8~#AB+;,C;"#AB>C>2#AB+D%=1(:2,C(:VAB#ABOCCO0#'  " +W]]_=C>C.7 t12(,,0%)+ +399;=#=#L(+,/1+399;=,=,^G\#:;!Q(>)<>.EF#AB!Q(>)CG>,#AB (C (#AB6C6"2&/!T; < 2;<#AB;C=;.!&m]%CD-E-2+.+ ",/ "."+ , 4#AB>C>>45!>6!>H=*u8u8p e3e3Ps *s *x0*NP:P:B<