+
    0i&                    :   R t ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIHt ^ RI	H
u Ht ^ RIt^ RIt^ RIHtHtHtHtHtHtHtHt ^ RIt^ RIHt ^ RIHtHtHtHt ^ RIt^ RI H!t! ^ RI"H!u H#t$ ^ RI%H&t& ^ RI'H(t( ^ R	I)H*t*H+t+ ^R
I,H-t- ^ RI.H/t/H0t0H1t1H2t2H3t3H4t4 ^ RI5H6t6H7t7H8t8H9t9H:t:H;t; ^ RI<H=t= ^ RI>H?t? ^ RI@HAtAHBtBHCtCHDtDHEtEHFtFHGtGHHtHHItIHJtJHKtK ^ RILHMtMHNtN ^ RIOHPu HQtR ]!.tS]P                  P                  tU]P                  P                  tV ]! . RO]W4      tX]! . RO]W4      tY]! . RO]W4      tZ]! . RO]W4      t[]! . RO]W4      t\]! . RO]W4      t]]! . RO]W4      t^ ! R R4      t_ ! R R4      t`]I! ]!P                  4       ! R R4      4       tb ! R R4      tc ! R R4      td ! R R4      te]P                  P                  RR 7      R! 4       tgR" thR# ti]P                  P                  RR 7      R$ 4       tj ! R% R&4      tkR' tlR( tmR) tnR* to ! R+ R,4      tpR- tqR. trR/ ts ! R0 R14      tt]I! ]!P                  4       ! R2 R34      4       tv]I! ]!P                  4       ! R4 R54      4       tx]I! ]!P                  4       ! R6 R74      4       tz]I! ]!P                  4       ! R8 R94      4       t|]I! ]!P                  4       ! R: R;4      4       t~]I! ]!P                  4       ! R< R=4      4       tR> t]I! ]!EP                  4       ! R? R@4      4       t]I! ]!EP                  4       ! RA RB4      4       t ! RC RD4      t]I! ]!EP                  4       ! RE RF]4      4       t]I! ]!EP                  4       ! RG RH]4      4       t]EP                  EP                  RI 4       t]I! ]!EP                  4       ! RJ RK4      4       t ! RL RM4      t]! RN. RPO4      t]! . ROR^ R^^^]EP$                  ! R4      ,          ^]EP$                  ! R4      ,          ,           ,          ^^]EP$                  ! R4      ,          ^]EP$                  ! R4      ,          ,           ,          RRP7      ]! . RO. RO^ R^^^]EP$                  ! R4      ,          ^]EP$                  ! R4      ,          ,           ^]EP$                  ! R4      ,          ,           ,          ^^]EP$                  ! R4      ,          ^]EP$                  ! R4      ,          ,           ^]EP$                  ! R4      ,          ,           ,          RRP7      ]! . RO^^ R^^^]EP$                  ! R4      ,          ^]EP$                  ! R4      ,          ,           ,          ^^]EP$                  ! R4      ,          ^]EP$                  ! R4      ,          ,           ,          RRP7      ]! . RO. RO^ ^ ^ ^ ^ ^ RP7      .t]! . R^ ^ ^ ^ ^ ^ RP7      ]! ]P6                  ! . . . .4      EP(                  R^ ^ . RO. RO. RO. RORP7      ]! ]P6                  ! . . . .4      R^ ^ . . . . RP7      .t]I! ]!EP,                  4       ! RQ RR4      4       t]I! ]!EP0                  4       ! RS RT4      4       t]I! ]!EP4                  4       ! RU RV4      4       t ! RW RX4      t]I! ]!EP:                  4       ! RY RZ4      4       t ! R[ R\4      tR] tR^ tR_ t]P                  EPG                  R`]EPH                  ! R4      R3]EPH                  ! R4      R3.4      Ra 4       tRb t]P                  EPG                  Rc. RO4      Rd 4       t]P                  EPG                  Re]!EP                  ]P8                  ! ^
4      ^ 33]!EPP                  ]P8                  ! ^
4      ]P8                  ! ^
4      33.4      Rf 4       tRRgR/Rh llt]I! ]!EPV                  ]!EPX                  4      Ri 4       tRj tRk t]P                  EPa                  Rl4       ! Rm Rn4      4       t ! Ro Rp4      t ! Rq Rr4      t]I! ]!EPV                  4       ! Rs Rt4      4       tRu t]I! ]!EPV                  4       ! Rv Rw4      4       t]I! ]!EPX                  4       ! Rx Ry4      4       t]P                  P                  RzR{R|7      ]P                  EPa                  R}4      ]P                  EPa                  R~4      R 4       4       4       tR t]P                  EPt                  ]P                  EPa                  R~4      ]P                  EPa                  R}4      ]I! ]!EP                  4      R 4       4       4       4       t]U! RzRR7      R 4       t]I! ]!EP                  4      ]P                  P                  RRR 7      R 4       4       t]I! ]!EP|                  4       ! R R4      4       t ! R R4      t]I! ]!EP                  4       ! R R]4      4       t]I! ]!EP                  4       ! R R]4      4       t]I! ]!EP                  4       ! R R]4      4       t ! R R4      t]I! ]!EP                  4       ! R R4      4       tR tR tRORRRRRRR/R ltR tR tR t]I! ]!EP                  4       ! R R4      4       t]I! ]!EP                  4       ! R R4      4       t]I! ]!EP                  4       ! R R4      4       t]I! ]!EP                  4       ! R R4      4       tR tR tR t ! R R4      t]I! ]!EP                  4       ! R R4      4       t]I! ]!EP                  4       ! R R4      4       t]I! ]!EP                  4       ! R R4      4       t]I! ]!EP                  4       ! R R4      4       t]I! ]!EP                  4       ! R R4      4       t]I! ]!EP                  4       ! R R4      4       t ! R R4      t ! R R4      t ! R R4      t ! R R4      t]I! ]!EP                  4       ! R R4      4       t ! R R4      t ! R R4      t]EP                  EP                  R4      t]EP                  ^
4      t]EP                  ^
4      t]P                  EPG                  R]!EP                  ]33]!EP:                  ]]!EP                  EP                  33]!EP                  ]]33]!EP                  ]]33.4      R 4       t ! R R4      t]I! ]!EP                  4       ! R R4      4       t ! R R4      t ! R R4      tR Et R# )zTest functions for stats module

WRITTEN BY LOUIS LUANGKESORN <lluang@yahoo.com> FOR THE STATS MODULE
BASED ON WILKINSON'S STATISTICS QUIZ
https://www.stanford.edu/~clint/bench/wilk.txt

Additional tests by a host of SciPy developers.
N)
namedtuple)product)assert_assert_equalassert_almost_equalassert_array_almost_equalassert_array_equalassert_approx_equalassert_allcloseassert_array_less)raises)arrayarangefloat32power)kolmogn)FuncData)optimizespecial)check_named_results)_broadcast_concatenateSmallSampleWarningtoo_small_nd_omittoo_small_nd_not_omittoo_small_1d_omittoo_small_1d_not_omit)_chk_asarray_momentLinregressResult_xp_mean_xp_var_SimpleChi2)	AxisError)skip_xp_invalid_arg)array_namespaceeager_warnsis_lazy_arrayis_numpyis_torchxp_default_dtypexp_sizeSCIPY_ARRAY_APImake_xp_test_casexp_ravelxp_swapaxes)xp_assert_closexp_assert_equal      ?      ?c                     a  ] tR t^Mt o ]P
                  ! ]P                  4      P                  t]	! ]
P                  4      R 4       t]	! ]
P                  4      ]P                  P!                  R4      R 4       4       t]	! ]
P$                  4      R 4       t]	! ]
P(                  4      R 4       t]! RRR7      R	 4       t]	! ]
P0                  4      R
 4       t]! RRR7      R 4       t]	! ]
P(                  ]
P0                  4      R 4       t]! RRR7      ]	! ]
P(                  ]
P0                  4      R 4       4       t]	! ]
P:                  4      R 4       tRtV t R# )TestTrimmedStatsc           	        \        V4      pVP                  \        VR 7      p\        P                  ! VRR4      p\        WAP                  R4      4       \        P                  ! VRRR7      p\        P                  ! VRR7      p\        WV4       VP                  VP                  R4      R4      p\        P                  ! VRR7      p\        WAP                  V4      4       \        P                  ! V^ R7      p\        WAP                  V^ R7      4       \        P                  ! V^R7      p\        WAP                  V^R7      4       \        P                  ! VRRR7      p\        WAP                  R	4      4       \        P                  ! VR^ R7      p. ROp\        WAP                  V4      4       \        P                  ! VRR^ R
7      p. ROp\        WAP                  V4      4       \        P                  ! V4      RRR13,          P                  VP                  RR7      p	\        P                  ! V	R^ R7      p^RRRVP                  VP                  VP                  .p\        WAP                  V4      4       \        P                  ! VR^R7      p^^
^^VP                  VP                  VP                  VP                  VP                  .	p\        WAP                  V4      4       \        P                  ! VRR^R
7      pR^
^^VP                  VP                  VP                  VP                  VP                  .	p\        WAP                  V4      4       R# )dtypeT      @limits	inclusiveNr:        O@axis)r:   r?   g     ?@)r:   r;   r?   )copy      @      @      @      TT)FF	      )rE   =   )rE      )         '@rI   
            TF)      %@rN   rI   rO   rP   rQ   rR   )   rR   FT)r)   asarrayXstatstmeanr/   reshaper   meanxpxatsetnan)
selfxpdefault_dtypexyy1y2x_2dy_truex_2d_with_nans
   &&        Z/var/www/html/photoedit/myenv/lib/python3.14/site-packages/scipy/stats/tests/test_stats.py
test_tmeanTestTrimmedStats.test_tmeanQ   ss   (,JJqJ.KK6<0::c?+[[6^D[[4(zz"))C.&1KK4(774=)KK1%774a701KK1%774a701KKW48::d+,KKW15.::f-.KKWAN0::f-.tRW-11"&&t1DKKgA>S#sBFFBFFBFF;::f-.KKW15RRH::f-.KKW"/a9r2r266266266266266J::f-.    z>ignore:invalid value encountered in divide:RuntimeWarning:daskc                   VP                  \        P                  4       4      p\        P                  ! VRRR7      p\        W1P                  R4      4       \        P                  ! VRR7      p\        W1P                  V^R7      4       VP                  VP                  R4      R4      p\        P                  ! VRR7      p\        W1P                  V^R7      4       \        P                  ! V^ R7      p\        W1P                  RR4      4       \        P                  ! V^R7      p\        W1P                  RR	4      4       \        P                  ! VR^RR
7      p\        V^ ,          VP                  R4      4       \        P                  ! VR^RR
7      p\        V^ ,          VP                  R4      4       \        V^,          VP                  VP                  4      4       R# )rE   r9   g@Nr<   
correctionr=   r>   g     v@g㪪@)r:   r?   r;         @g@rD   rG   rH   rJ   )rI   rW             )rY   rZ   tolistr[   tvarr/   varr]   r   fullr0   rb   )rc   rd   rf   rg   rj   s   &&   rm   	test_tvarTestTrimmedStats.test_tvar   sY   
 JJqxxz"JJq<@::&89:JJq&66!623zz"))C.&1JJt$'66$1656JJt!$774/0JJt!$77445 JJtFlK!bjjo. JJtFlK!bjj):;<!bjj01rp   c                   VP                  \        P                  4       4      p\        P                  ! VRR4      p\        W1P                  R4      4       \        P                  ! VRR7      p\        W1P                  V^R7      4       R# )rE   gBĆ/H@Nr<   rr   rD   rG   )rY   rZ   r{   r[   tstdr/   stdrc   rd   rf   rg   s   &&  rm   	test_tstdTestTrimmedStats.test_tstd   s_    JJqxxz"JJq&,/::&89:JJq&66!623rp   c           	     \   VP                  R 4      p\        \        P                  ! V4      VP	                  R4      4       \        \        P                  ! V^ R7      VP	                  R4      4       \        \        P                  ! V^ RR7      VP	                  R4      4       VP                  VR
4      p\        \        P                  ! V^ RR7      VP	                  RR.4      4       \        \        P                  ! V^R7      VP	                  . RO4      4       \        \        P                  ! VRR7      VP	                  R4      4       \        P                  ! VP                  R 4      ^	4      P                  VP                  4      p\        \        P                  ! V4      VP	                  VP                  4      4       VP                  VP                  ^4      R4      p\        P                  ! V^^R	7      p\        W1P	                  \        P                  ^^^.4      4       R# )      $@        
lowerlimitF)r   r;         ?       @r>   N)r   r?   rw   rE   )r   r         @      @       @   r   )r   r0   r[   tminrY   r]   r_   r`   ra   rb   nprc   rd   rf   ress   &&  rm   	test_tminTestTrimmedStats.test_tmin   si   IIcN

1rzz"~6

13RZZ^D

1eDbjjQSnUJJq&!

1eD

B8,	.

11-rzz:N/OP

140"**R.AFF299S>1%))"&&1

1rzz"&&'9: JJryy}f-jjqq1ZZAr(:;<rp   Tz4Only NumPy arrays support scalar input/`nan_policy`.np_onlyreasonc           	        \        \        P                  ! ^4      ^4       \        P                  ! R4      p\        P
                  V^	&   \        P                  ! 4       ;_uu_ 4        \        P                  ! RR\        4       \        \        P                  ! VRR7      R4       Rp\        \        VR7      ;_uu_ 4        \        P                  ! VR	R7       R
R
R
4       Rp\        \        VR7      ;_uu_ 4        \        P                  ! VRR7       R
R
R
4       R
R
R
4       R
#   + '       g   i     LV; i  + '       g   i     L-; i  + '       g   i     R
# ; i)r   r   ignoreinvalid valueomit
nan_policyr   The input contains nan valuesmatchraiseNnan_policy must be one of...foobar)r   r[   r   r   r   rb   warningscatch_warningsfilterwarningsRuntimeWarningassert_raises
ValueErrorrc   rd   rf   msgs   &&  rm   test_tmin_scalar_and_nanpolicy/TestTrimmedStats.test_tmin_scalar_and_nanpolicy        	UZZ]A&IIcNvv!$$&&##Ho~NA&92>1Cz55

11 60Cz55

12 6 '& 65 65 '&&=   'AED(	#E=D;	E(D83E;EEE	c                   VP                  R 4      p\        \        P                  ! V4      VP	                  R4      4       \        \        P                  ! V^	R7      VP	                  R4      4       \        \        P                  ! V^	RR7      VP	                  R4      4       VP                  VR4      p\        \        P                  ! V^	RR7      VP	                  RR.4      4       \        \        P                  ! V^R7      VP	                  . RO4      4       \        \        P                  ! VRR7      VP	                  R4      4       \        P                  ! VP                  R 4      ^	4      P                  VP                  4      p\        \        P                  ! V4      VP	                  VP                  4      4       \        P                  ! 4       ;_uu_ 4        \        P                  ! R	R
\        4       VP                  VP                  ^4      R4      p\        P                  ! V^^R7      p\        W1P	                  ^^^\        P                  .4      4       RRR4       R#   + '       g   i     R# ; i)r         "@
upperlimitF)r   r;   r         @r>   Nr   zAll-NaN slice encountered)r   r?   r   )r         @r8   r   r   r   )r   r0   r[   tmaxrY   r]   r_   r`   ra   rb   r   r   r   r   r   r   s   &&  rm   	test_tmaxTestTrimmedStats.test_tmax   s   IIcN

1rzz"~6

13RZZ^D

1eDbjjQSnUJJq&!

1eD

B8,	.

11-rzz:N/OP

140"**R.AFF299S>1%))"&&1

1rzz"&&'9: $$&&##5~G

299R=&1A**Q2A6CCQ2rvv,>!?@ '&&&s   #BI00J	c           	        \        \        P                  ! ^4      ^4       \        P                  ! R4      p\        P
                  V^&   \        P                  ! 4       ;_uu_ 4        \        P                  ! RR\        4       \        \        P                  ! VRR7      R4       Rp\        \        VR7      ;_uu_ 4        \        P                  ! VR	R7       R
R
R
4       Rp\        \        VR7      ;_uu_ 4        \        P                  ! VRR7       R
R
R
4       R
R
R
4       R
#   + '       g   i     LV; i  + '       g   i     L-; i  + '       g   i     R
# ; i)r   r   r   r   r   r   r   r   r   r   Nr   r   )r   r[   r   r   r   rb   r   r   r   r   r   r   r   s   &&  rm   test_tmax_scalar_and_nanpolicy/TestTrimmedStats.test_tmax_scalar_and_nanpolicy   r   r   c                   VP                  VP                  ^
VP                  R7      R4      P                  p\	        V4      '       d   \        V4      MVP                  p\        \        P                  ! V4      VP                  ^ ^.VR7      4       \        \        P                  ! V4      VP                  ^^	.VR7      4       \        \        P                  ! V^R7      VP                  VP                  R.4      4       \        \        P                  ! V^R7      VP                  RVP                  .4      4       R# )rO   r6   r   r   r   r   NrE   rw   )r]   r   int16Tr&   r)   r7   r0   r[   r   rY   r   rb   )rc   rd   rf   expect_dtypes   &&  rm   test_tmin_tmax_int_dtype)TestTrimmedStats.test_tmin_tmax_int_dtype   s    JJryy288y4f=??
 0=Q/?/?'+QWW

1rzz1a&z'MN

1rzz1a&z'MN 	

13RZZ5MN

13RZZRVV5MNrp   z%Only with data-dependent output dtype
eager_onlyr   c                    VP                  RR4      p\        \        P                  ! VR,          4      V4       \        \        P                  ! VR,          4      V4       R# )rE   Nl            l   
        )NNNN)r   r0   r[   r   r   rc   rd   rf   s   && rm   test_gh_22626TestTrimmedStats.test_gh_22626
  sB     IIeX&

1W:.2

1W:.2rp   c                ~   VP                  \        P                  4       4      p\        P                  ! VRRR7      pVP                  . RO4      p\        W1P                  V^R7      \        V4      R,          ,          4       \        \        P                  ! VR	^
.R7      \        P                  ! VRR7      4       R# )
   r9   rr   r1   r<   N)r   rF   rX   )r   r8   r   r   r   rU   )rY   rZ   r{   r[   tsemr/   r   r*   )rc   rd   rf   rg   y_refs   &&   rm   	test_tsemTestTrimmedStats.test_tsem  s~    JJqxxz"JJq=A

/066%A669LLM

1b"X6

1T8RSrp    N)!__name__
__module____qualname____firstlineno__r   finfofloat64	precisiondprecr,   r[   r\   rn   r|   pytestmarkr   r   r   r   r   r   skip_xp_backendsr   r   r   r   r   r   r   r   __static_attributes____classdictcell____classdict__s   @rm   r4   r4   M   s    HHRZZ **Eu{{#,/ $,/\ uzz"[[H2 #28 uzz"4 #4 uzz"= #=* dSU3U3 uzz"A #A0 dSU3U3 uzz5::.O /O .UVuzz5::.3 / W3 uzz"T #Trp   r4   c                      a  ] tR tRt o RtR tR tR tR tR t	R t
R	 tR
 tR tR tR tR tR tR tR tR tR tR tR tR tR tRtV tR# )TestPearsonrWilkinsoni     W.II.D. Compute a correlation matrix on all the variables.

All the correlations, except for ZERO and MISS, should be exactly 1.
ZERO and MISS should have undefined or missing correlations with the
other variables.  The same should go for SPEARMAN correlations, if
your program has them.
c                n    \         P                  ! \        \        4      pV^ ,          p\        VR4       R# ry   r   N)r[   pearsonrrZ   r	   rc   rg   rs   &  rm   test_pXXTestPearsonrWilkinson.test_pXX%  s%    NN1QaDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   r   rZ   BIGr	   r   s   &  rm   
test_pXBIG TestPearsonrWilkinson.test_pXBIG*  s%    NN1S!aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   r   rZ   LITTLEr	   r   s   &  rm   test_pXLITTLE#TestPearsonrWilkinson.test_pXLITTLE/  s%    NN1V$aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   r   rZ   HUGEr	   r   s   &  rm   test_pXHUGE!TestPearsonrWilkinson.test_pXHUGE4  %    NN1T"aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   r   rZ   TINYr	   r   s   &  rm   test_pXTINY!TestPearsonrWilkinson.test_pXTINY9  r   rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   r   rZ   ROUNDr	   r   s   &  rm   test_pXROUND"TestPearsonrWilkinson.test_pXROUND>  s%    NN1U#aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\        VR4       R# r   )r[   r   r   r	   r   s   &  rm   test_pBIGBIG"TestPearsonrWilkinson.test_pBIGBIGC  s%    NN3s#aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   r   r   r   r	   r   s   &  rm   test_pBIGLITTLE%TestPearsonrWilkinson.test_pBIGLITTLEH  s%    NN3v&aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   r   r   r   r	   r   s   &  rm   test_pBIGHUGE#TestPearsonrWilkinson.test_pBIGHUGEM  %    NN3t$aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   r   r   r   r	   r   s   &  rm   test_pBIGTINY#TestPearsonrWilkinson.test_pBIGTINYR  r  rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   r   r   r  r	   r   s   &  rm   test_pBIGROUND$TestPearsonrWilkinson.test_pBIGROUNDW  s%    NN3u%aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\        VR4       R# r   )r[   r   r   r	   r   s   &  rm   test_pLITTLELITTLE(TestPearsonrWilkinson.test_pLITTLELITTLE\  s%    NN6&)aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   r   r   r   r	   r   s   &  rm   test_pLITTLEHUGE&TestPearsonrWilkinson.test_pLITTLEHUGEa  %    NN6$'aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   r   r   r   r	   r   s   &  rm   test_pLITTLETINY&TestPearsonrWilkinson.test_pLITTLETINYf  r  rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   r   r   r  r	   r   s   &  rm   test_pLITTLEROUND'TestPearsonrWilkinson.test_pLITTLEROUNDk  s%    NN6%(aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\        VR4       R# r   )r[   r   r   r	   r   s   &  rm   test_pHUGEHUGE$TestPearsonrWilkinson.test_pHUGEHUGEp  %    NN4%aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   r   r   r   r	   r   s   &  rm   test_pHUGETINY$TestPearsonrWilkinson.test_pHUGETINYu  r$  rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   r   r   r  r	   r   s   &  rm   test_pHUGEROUND%TestPearsonrWilkinson.test_pHUGEROUNDz  %    NN4&aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\        VR4       R# r   )r[   r   r   r	   r   s   &  rm   test_pTINYTINY$TestPearsonrWilkinson.test_pTINYTINY  r$  rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   r   r   r  r	   r   s   &  rm   test_pTINYROUND%TestPearsonrWilkinson.test_pTINYROUND  r+  rp   c                n    \         P                  ! \        \        4      pV^ ,          p\        VR4       R# r   )r[   r   r  r	   r   s   &  rm   test_pROUNDROUND&TestPearsonrWilkinson.test_pROUNDROUND  s%    NN5'aDAc"rp   r   N)r   r   r   r   __doc__r   r   r   r   r   r  r  r  r  r  r  r  r  r  r  r"  r&  r)  r-  r0  r3  r   r   r   s   @rm   r   r     sx     #
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
# #rp   r   c                   V  a  ] tR tRt o R tR tR tR tR t]	P                  P                  RRR	.4      R
 4       tR tR tR t]	P                  P!                  R4      ]	P                  P!                  R4      R 4       4       t]	P                  P!                  R4      ]	P                  P!                  R4      R 4       4       t]	P                  P!                  R4      R 4       t]! RR7      ]	P                  P                  R. R)O4      R 4       4       tR t]	P                  P!                  R4      R 4       tR t]	P                  P3                  ^
4      ]	P                  P5                  R4      ]	P                  P                  RR*4      ]	P                  P                  RR+4      R 4       4       4       4       t]	P                  P8                  ]	P                  P                  RR*4      R 4       4       t]	P                  P                  R ^ ^.4      R! 4       tR" tR# t ]	P                  P!                  R4      ]	P                  P!                  R4      R$ 4       4       t!R% t"]	P                  P                  R . R,O4      ]	P                  P                  R. R*O4      R' 4       4       t#R(t$V t%R&# )-TestPearsonri  c                    \         P                  ! \        \        4      pRp\        W4       \	        VP
                  VP                  4       R# correlationNr:  pvalue)r[   r   rZ   r   r   r:  	statisticrc   r   
attributess   &  rm   test_pearsonr_result_attributes,TestPearsonr.test_pearsonr_result_attributes  s1    nnQ".
C,S__cmm4rp   c           
     &   VP                  R 4      p\        P                  ! W"4      w  r4\        W1P	                  R4      RR7       \        WAP	                  R4      \
        P                  ! ^\
        P                  ! R4      ,          4      R7       R# )r   r   V瞯<atolr   Nr   r[   r   r/   rY   r   sqrtspacingrc   rd   ar   probs   &&   rm   test_r_almost_exactly_pos1'TestPearsonr.test_r_almost_exactly_pos1  s[    IIcN..&::c?7 	jjoBGGAbjjo<M4NOrp   c           
     (   VP                  R 4      p\        P                  ! W") 4      w  r4\        W1P	                  R4      RR7       \        WAP	                  R4      \
        P                  ! ^\
        P                  ! R4      ,          4      R7       R# )r   r   rC  rD  r   N      rF  rI  s   &&   rm   test_r_almost_exactly_neg1'TestPearsonr.test_r_almost_exactly_neg1  s^    IIcN..B'::d+%8 	jjoBGGAbjjo<M4NOrp   c                    VP                  . RO4      pVP                  . RO4      p\        P                  ! W#4      w  rE\        WAP                  R4      4       \        WQP                  R4      4       R# )rW   NrU   ry   rW   )ry   ry   r   LXz?UUUUUU?)rY   r[   r   r/   )rc   rd   rJ  br   rK  s   &&    rm   
test_basicTestPearsonr.test_basic  sQ     JJz"JJy!..&::h/0jjo.rp   c                   VP                  . RO4      pVP                  . RO4      pRp\        \        P                  WAR7      ;_uu_ 4        \        P                  ! W#4      w  rV\        WQP                  VP                  4      4       \        WaP                  VP                  4      4       RRR4       R#   + '       g   i     R# ; i)MbX?An input array is constantr   rd   NrZ  rZ  rZ  rh|?v/?gsh|??rY   r%   r[   ConstantInputWarningr   r/   rb   rc   rd   rf   rg   r   r   ps   &&     rm   test_constant_input TestPearsonr.test_constant_input  s     JJ,-JJ,-*333FF>>!'DAAzz"&&12Azz"&&12 GFFF   A!B77C	r7   r   r   c                   \        \        V4      p\        W4      pVP                  ^^^\        P                  ! ^VR7      ,           .VR7      pVP                  ^^^^\        P                  ! ^VR7      ,          ,           .VR7      pRp\	        \
        P                  WaR7      ;_uu_ 4        \
        P                  ! WE4       RRR4       R#   + '       g   i     R# ; i)rE   r6   z/An input array is nearly constant; the computedr\  N)getattrr   rY   rH  r%   r[   NearConstantInputWarningr   )rc   rd   r7   npdtyperf   rg   r   s   &&&    rm   test_near_constant_input%TestPearsonr.test_near_constant_input  s    "e$"JJ1a"**Qg">>?uJMJJ1a!BJJq$@"@@AJO?77sJJ NN1  KJJJs   .CC 	c                J   VP                  . ROVP                  R7      pVP                  . ROVP                  R7      p\        P                  ! W#4      w  rE\	        WAP                  RVP                  R7      4       \	        WQP                  RVP                  R7      4       R# )y)r?r6   ge;E?g3R?N)ro  gxd{s?gnp?g$9"o?ge =:k?)goȟg`
,gzg2l?g>??'rY   r   r[   r   r/   rc   rd   rf   rg   r   rd  s   &&    rm   test_very_small_input_values)TestPearsonr.test_very_small_input_values  s     JJVZZ  )JJNZZ  )~~a# 	::&8

:KL::&8

:KLrp   c                b   R VP                  . ROVP                  R7      ,          pR VP                  ^VP                  R7      ,          p\        P                  ! W#4      w  rE\        WAP                  RVP                  R7      4       \        WQP                  RVP                  R7      4       R# )gY)	kRr6   rT  g͗~-?N)ry   ry   ry   rW   rW   rW   rW   )rY   r   r   r[   r   r/   rq  s   &&    rm   test_very_large_input_values)TestPearsonr.test_very_large_input_values  s     1DD1BJJ//~~a# 	::&8

:KL::&:"**:MNrp   c                J   VP                  . ROVP                  R7      pVP                  . ROVP                  R7      p\        P                  ! W#4      w  rE\	        WAP                  RVP                  R7      4       \	        WQP                  RVP                  R7      4       R# )7	ir6   g*D{?gݣ?N)rx  gNig_b4igZbi)gDig<'(½igmQiZbtirp  rq  s   &&    rm   !test_extremely_large_input_values.TestPearsonr.test_extremely_large_input_values  sx     JJ9JLJJ;2::JN~~a# 	::&7rzz:JK::&7rzz:JKrp   4ignore:invalid value encountered:RuntimeWarning:dask5ignore:divide by zero encountered:RuntimeWarning:daskc                &   VP                  R R.4      pVP                  RR.4      p\        P                  ! W#4      pVw  rVVP                  R 4      p\        WW4       \        Wg4       VP	                  4       w  r\        W) 4       \        W4       R# )r   r   r   r8   NrY   r[   r   r0   confidence_interval
rc   rd   rf   rg   r   r   rd  onelowhighs
   &&        rm   test_length_two_pos1!TestPearsonr.test_length_two_pos1  s|    
 JJBx JJBx nnQ"jjn++-	T""rp   c                (   VP                  R R.4      pVP                  RR.4      p\        P                  ! W#4      pVw  rVVP                  R4      p\        WW) 4       \        Wg4       VP	                  4       w  r\        W) 4       \        W4       R# )r   r   r   r8   Nr  r  s
   &&        rm   test_length_two_neg1!TestPearsonr.test_length_two_neg1  s~    
 JJBx JJBx nnQ"jjn4 ++-	T""rp   *ignore:invalid value encountered in dividec                   VP                  R R .4      pVP                  RR.4      pRp\        \        P                  WAR7      ;_uu_ 4        \        P                  ! W#4      w  rV\        WQP                  VP                  4      4       \        WaP                  VP                  4      4       RRR4       R#   + '       g   i     R# ; i)rZ  r_  r`  r[  r\  Nra  rc  s   &&     rm   test_length_two_constant_input+TestPearsonr.test_length_two_constant_input  s    
 JJu~&JJu~&*333FF>>!'DAAzz"&&12Azz"&&12 GFFFrg  Tr   z$alternative, pval, rlow, rhigh, signc                (   . ROp\         P                  ! . RO4      V,          p\        P                  ! WxVR7      p	\	        V	P
                  RV,          RR7       \	        V	P                  VRR7       V	P                  4       p
\	        WV3RR7       R# )	rW   alternativeg?-q=rtolư>NrW   rE   r   r   )ry   rW   r1   rW   )r   r   r[   r   r
   r=  r<  r  )rc   r  pvalrlowrhighsignrd   rf   rg   resultcis   &&&&&&&    rm   test_basic_exampleTestPearsonr.test_basic_example(  sp     HH^$t++>((*<T*ANt$7'')5M5rp   c                &   VP                  R 4      pV) p\        P                  ! W#RR7      p\        P                  ! W#RR7      p\        VP                  VP                  R4      4       \        VP                  VP                  R4      RR7       R# )	r   greaterr  lessr   r   g#B;rD  N)r   r[   r   r/   r<  rY   )rc   rd   rf   rg   test_greater	test_lesss   &&    rm   (test_negative_correlation_pvalue_gh177955TestPearsonr.test_negative_correlation_pvalue_gh177959  sh    IIcNB~~a	BNN1V<	++RZZ^<	(("**R.uErp   c                <   VP                  . RO4      pVP                  . RO4      p\        P                  ! W#4      pVw  rVVP                  R 4      p\        WW) 4       \        V^ V,          RR7       VP	                  4       w  r\        W) 4       \        W4       R# )r   Hz>rD  Nr   r   r   )r8   g      g      *)rY   r[   r   r/   r  r0   r  s
   &&        rm   #test_length3_r_exactly_negative_one0TestPearsonr.test_length3_r_exactly_negative_oneA  s~    JJ|$JJ'nnQ" jjo4 1S5t,++-	T""rp   c                   . ROp^.pRp\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! W4       RRR4       . ROp^^.pRp\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! W4       RRR4       ^.p^.pRp\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! W4       RRR4       . ROp. ROpRp\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! W4       RRR4       Rp\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! ^^.^^.RR	7       RRR4       \        P                  ! ^^.^^.4      p\         P                  ! \        VR7      ;_uu_ 4        VP                  R
R	7       RRR4       R#   + '       g   i     EL; i  + '       g   i     ELe; i  + '       g   i     EL.; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)rW   z3`x` and `y` must have the same length along `axis`.r   N"`x` and `y` must be broadcastable.(`x` and `y` must have length at least 2.z+This function does not support complex dataz"`method` must be an instance of...
asymptoticmethodexactrW   rE   r   )             y              y             )r   r   r   r[   r   r  )rc   rf   rg   messager   s   &    rm   test_input_validation"TestPearsonr.test_input_validationP  s   CG]]:W55NN1  6 F6]]:W55NN1  6 CC<]]:W55NN1  6 ?]]:W55NN1  6 7]]:W55NNAq6Aq6,? 6 nnaVaV,]]:W55##7#3 655 655 655 655 65 65 655sG   G;G.HHH)=H<G+	.G?	H	H&	)H9	<I	z-Monte Carlo method needs > a few kB of memoryr  method_namec           	     D   \         P                  P                  R 4      pVR8X  d   RMRpVP                  VR7      pVP                  VR7      pR\        P
                  ! VR7      R\        P                  ! VP                  3^,          R7      R\        P                  ! RR7      /pWq,          p\        P                  ! WVW(RR7      p	\        P                  ! WVVRR	7      p
\        V	P                  V
P                  R
R7       \        V	P                  V
P                  RRR7       VR8X  ds   \        P                  ! RR7      p\        P                  ! WVW(RR7      p\        VP                  V	P                  4       \        VP                  V	P                  4       R# R# )l   o#[mpermutationsizerngmonte_carlorvsmonte_carlo2i  )r  r  r?   r  r?   rC  r  {Gz?MbP?r  rE  NrE   d   )rE     rU   )r   randomdefault_rngnormalr[   PermutationMethodMonteCarloMethodr   r
   r=  r<  r   )rc   r  r  r  r  rf   rg   methodsr  r   refres2s   &&&         rm   test_resampling_pvalue#TestPearsonr.test_resampling_pvaluer  s6    ii##$56&-7xYJJDJ!JJDJ! %"9"9c"B %"8"8cjj]1_"M!5#9#9d#CE %nnQ{PRSnnQ{Ds}}5A

CJJTE.(++5F>>!KUWXD7cjj1	 )rp   c                .   \         P                  P                  R 4      pVP                  R
R7      pVP                  R
R7      p\        P
                  ! W4VRR7      p\         P                  P                  R4      p\        P                  ! VR7      pVP                  VR7      pVP                  4       p\        WxRR7       \         P                  P                  R4      p\        P                  ! VR7      pVP                  VR7      p	\        W4       R	# )l   _Y F r  r  l   |#(AkPrandom_stater  gQ?rD  r  Nr  rU   )	r   r  r  r  r[   r   BootstrapMethodr  r
   )
rc   r  r  rf   rg   r   r  res_ciref_cires_ci2s
   &&        rm   test_bootstrap_ciTestPearsonr.test_bootstrap_ci  s     ii##$45JJHJ%JJHJ%nnQ{D ii##$67&&C8(((7((*V4 ii##$67&&3/)))8(rp   r?   c                   \         P                  P                  R 4      pRpVP                  RV,           R7      w  rE\        P
                  ! WEVR7      pVP                  4       pV^ 8X  d   VP                  VP                  rT\        VP                  ^ ,          4       F  p\        P
                  ! WH,          WX,          4      p	V	P                  4       p
\        VP                  V,          V	P                  4       \        VP                  V,          V	P                  4       \        VP                  V,          V
P                  4       \        VP                  V,          V
P                  4       K  	  R# )   I.v# r  r>   NrI   rO   rE   )r   r  r  r  r[   r   r  r   rangeshaper
   r=  r<  r  r  )rc   r?   r  r  rf   rg   r   r  ires_ici_is   &&         rm   test_axis01TestPearsonr.test_axis01  s    ii##K0zzte|z,nnQ-$$&1933qqwwqz"ANN14.E,,.DCMM!,eoo>CJJqM5<<8BFF1Itxx0BGGAJ		2 #rp   c                   \         P                  P                  R 4      pRpVP                  RV,           R7      w  r4\        P
                  ! W4RR7      pVP                  4       p\        P
                  ! VP                  4       VP                  4       4      pVP                  4       p\        VP                  VP                  4       \        VP                  VP                  4       \        Wh4       R# )r  r  Nr>   r  r  )r   r  r  r  r[   r   r  ravelr
   r=  r<  )	rc   r  r  rf   rg   r   r  r  ci_refs	   &        rm   test_axis_NoneTestPearsonr.test_axis_None  s    ii##K0zzte|z,nnQ-$$&nnQWWY	2((*s}}5

CJJ/#rp   c                   VP                  R4      ;r#Rp\        P                  ! \        VR7      ;_uu_ 4        \        P
                  ! W#RR7       RRR4       Rp\        P                  ! \        VR7      ;_uu_ 4        \        P
                  ! W!P                  R4      ^R7       RRR4       Rp\        P                  ! \        VR7      ;_uu_ 4        \        P
                  ! VP                  R4      VP                  R4      ^R7       RRR4       Rp\        P                  ! \        VR7      ;_uu_ 4        \        P
                  ! W!P                  R4      ^R7       RRR4       R	p\        V4      '       gl   VP                  ^
4      p\        P                  ! \        VR7      ;_uu_ 4        \        P
                  ! W"\        P                  ! 4       R
7       RRR4       R# R#   + '       g   i     EL; i  + '       g   i     ELa; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     R# ; i)rE   z`axis` must be an integer.r   r2   r>   Nz2`x` and `y` must have the same length along `axis`r  r  z:`method` must be `None` if arguments are not NumPy arrays.r  r   rE   rW   r   rw   )	onesr   r   r   r[   r   r'   r   r  )rc   rd   rf   rg   r  s   &&   rm   test_nd_input_validation%TestPearsonr.test_nd_input_validation  sk   .]]:W55NN1c* 6 G]]:W55NN1ggfoA6 6 =]]:W55NN2776?BGGFO!D 6 7]]:W55NN1ggfoA6 6 O||		"Az99qE,C,C,EF :9 ! 655 655 655 65 :99s;   G, (H 8H<(H(4,H;,G=	 H	H%	(H8	;I	c                   \         P                  P                  R 4      pVP                  R
4      VP                  R
4      rC^VR&   ^VR&   VP                  V4      VP                  V4      reRp\	        \
        P                  WqR7      ;_uu_ 4        \
        P                  ! WV^R7      pVP                  4       p	VP                  VP                  VP                  .VP                  R7      p
\        VP                  R,          V
4       \        VP                  R,          V
4       \        V	P                  R,          V
4       \        V	P                  R,          V
4       VP!                  VP#                  VP                  R,          4      4      '       g   Q hVP!                  VP#                  VP                  R,          4      4      '       g   Q hVP!                  VP#                  V	P                  R,          4      4      '       g   Q hVP!                  VP#                  V	P                  R,          4      4      '       g   Q h RRR4       RRuVR&   VR&   VP                  V4      VP                  V4      reRp\	        \
        P$                  WqR7      ;_uu_ 4        \
        P                  ! WV^R7       RRR4       VP                  ^^.^^.^^.^R	..4      pVP                  ^^.^^.^^.^R	..4      pVP'                  ^4      p\
        P                  ! WVRR7      pVP                  4       p	\)        VP                  VP                  . RO4      4       \)        VP                  V4       \)        V	P                  V) 4       \)        V	P                  V4       R#   + '       g   i     ELb; i  + '       g   i     EL; i)l   U!Jr[  r\  r>   r6   ry   rE   NrE   NNNz!An input array is nearly constantr   r   rw   )ry   .)rW   .g     ?g      @ry   ry   rW   rW   rU   )rW   rU   rU   r   )r   r  r  rY   r%   r[   rb  r   r  rb   r   r0   r=  r<  r  r  allisfiniterj  r  r/   )rc   rd   r  x0y0rf   rg   r  r   r  nansr  s   &&          rm   test_nd_special_cases"TestPearsonr.test_nd_special_cases  s    ii##N3F#SZZ%7B6
6
zz"~rzz"~1.337JJ..A.C((*B::rvvrvv.bjj:ADCMM#.5CJJsOT2BFF3K.BGGCL$/66"++cmmB&78999966"++cjjn5666666"++bffRj1222266"++bggbk23333 K '	4"T(zz"~rzz"~1577wNNNN1a( O JJAAAB89JJAAAB89wwqznnQ+$$&rzz/'BC

D)&&9 KJJ  ONNs+   D?N8N
8NNN3N0	3O	c                (   \         P                  P                  R 4      pVP                  R4      pVP                  ^
4      p\        P                  ! W4^R7      p\        P                  ! W4RR7      p\        VP                  VP                  4       R# )l   [LYr>   N)r   rO   rU   )r   r  r  r[   r   r   r=  rc   rd   r  rf   rg   r   r  s   &&     rm   test_different_dimensionality*TestPearsonr.test_different_dimensionality  sf     ii##$56JJwJJrNnnQ*nnQ+S]]CMM2rp   Nc                   \         P                  RR7      w  rE\        P                  ! VP	                  V4      VP	                  V4      W#R7      p\        P                  ! WEW#R7      p\        VP                  VP	                  VP                  4      4       \        VP                  VP	                  VP                  4      4       VP                  4       pVP                  4       p	\        VP                  VP	                  V	P                  4      4       \        VP                  VP	                  V	P                  4      4       R# )rE   r  r?   r  N)rE   rO   rP   )r  r  r[   r   rY   r/   r=  r<  r  r  r  )
rc   rd   r?   r  rf   rg   r   r  r  r  s
   &&&&      rm   test_array_apiTestPearsonr.test_array_api  s     zz{z+nnRZZ]BJJqM"&AnnQFrzz#--'@A

BJJszz$:;((*((*

BJJvzz$:;RZZ%<=rp   r   ))	two-sided?gmgƎ?rW   )r  K˅?rU   g?
?rW   )r  .?gդζrW   rW   )r  r  gfǎgl?rU   )r  r
  rO  gդζ?rU   )r  r	  g?
r   rU   r  r  r  )r  r  r  ry   rW   N)&r   r   r   r   r@  rL  rP  rW  re  r   r   parametrizerl  rr  ru  rz  r   r  r  r  r   r  r  r  r  	fail_slowxfail_on_32bitr  slowr  r  r  r  r  r  r  r   r   r   s   @rm   r7  r7    s    5PP/	3 [[Wy)&<=
! >
!MOL [[ VW[[ WX# Y X# [[ VW[[ WX# Y X# [[ LM
3 N
3& d#[[CHI6I $6F [[ WX# Y# 4D [[2[[ OP[[],LM[[]KM2M N Q 
2( [[[[],LM) N )& [[VaV,3 -3 
$G0 [[ VW[[ WX$' Y X$'L3$ [[V\2[[],LM> N 3>rp   r7  c                     a  ] tR tRt o RtR tR tR tR t]	P                  P                  R 4       tR tR	 tR
 tR t]	P                  P#                  R. RO4      R 4       tR t]	P                  P)                  ^
4      ]	P                  P                  4       R 4       4       t]	P                  P)                  ^
4      ]	P                  P                  4       R 4       4       t]	P                  P/                  4       R 4       tRtV tR# )TestFisherExacti  a  Some tests to show that fisher_exact() works correctly.

Note that in SciPy 0.9.0 this was not working well for large numbers due to
inaccuracy of the hypergeom distribution (see #1218). Fixed now.

Also note that R and SciPy have different argument formats for their
hypergeometric distribution functions.

R:
> phyper(18999, 99000, 110000, 39000, lower.tail = FALSE)
[1] 1.701815e-09
c                F   \         P                  pV! R R.RR..4      ^,          p\        VR^R7       V! ^d^.R^..4      ^,          p\        VR^R7       V! ^^.^^..4      ^,          p\        VR^R7       V! ^^.^
^
..4      ^,          p\        VR	^R7       V! ^^.^^..4      ^,          p\        VR
^R7       V! ^^.^^..4      ^,          p\        VR^R7       V! ^
^.^
^..4      ^,          p\        VR	^R7       V! ^^ .^^..4      ^,          p\        VR^R7       V! ^ ^.^^..4      ^,          p\        VR4       V! ^ ^.^^..4      ^,          p\        VR4       V! ^^.^^..4      p\        V^,          R^R7       \        V^ ,          R4       R# )8   N  0u  @  g؞Y?significantr  g,Ԛ?g2c?gY
A?g_?gO^M?gօa?r   ggE?Ng$I$I?)r[   fisher_exactr	   )rc   r  r   s   &  rm   rW  TestFisherExact.test_basic-  s   ))UENUEN;<Q?Ca8S!HtQi01!4CQ7QFQF+,Q/C:QFRH-.q1C:QGb"X./2C:QGb"X./2C:RGb!W-.q1C:QFQF+,Q/C;QFQF+,Q/C%QFQF+,Q/C.QFQF+,CFI1=CFH-rp   c                   ^d^.R^..R3^^.^^..R3^^.^
^
..R	3^^.^^..R
3^^.^^..R3^
^.^
^..R3^
^.^
^ ..R3^^ .^^..\         P                  R33^ ^.^^..R3^^.^ ^..\         P                  R33^ ^.^^..R3.pV F`  w  r#\        P                  ! \         P                  ! V4      4      p\         P
                  P                  V^,          V^,          ^RR7       Kb  	  R# )r  r  gaa?gaa?T)decimalverboseN)gAn&	?g}K
T?)g	7?g?)g!@j)A?)gU!a?gKY?)g7X?g~ltP?)gFu|?r  )r   gQN^?r   r   )r   infr[   r  rY   testingr   )rc   tablisttableres_rr   s   &    rm   test_preciseTestFisherExact.test_preciseH  s^    Ahq	"$TU!fq!fOP!fr2h!QR"gBx "RS"gBx "RS1gAw!QR1gAw!QR!fq!f(>?@!fq!fOP!fq!f(>?@!fq!fOP $LE$$RZZ%67CJJ**3q658R37 + 9 $rp   c                ,   ^^%.^l^..p\         P                  ! V4      p\        V^,          R4       ^^ .^ ^f..p\         P                  ! V4      p\        V^,          R4       ^^^0.RR..p\         P                  ! V4      p\        V^,          R4       R# )rz   gmt?g,:i  i\B  gNQ8Nr[   r  r
   rc   rf   r   s   &  rm   test_gh4130TestFisherExact.test_gh4130`  s     WsCj!  #A 12 !Wq#h  #A 56 "Xe}%  #A 56rp   c                l    R R.RR..p\         P                  ! V4      p\        V^,          ^ RR7       R# )iiX iV iW gѧRrD  Nr)  r*  s   &  rm   test_gh9231TestFisherExact.test_gh9231v  s8     w'7!34  #A/rp   c                    . ROp\        V. RO4       F5  w  r#\        P                  ! RR.RV..4      ^,          p\        WB^R7       K7  	  \        P                  ! RR.RR..4      ^,          p\        VR	^R7       R
# )?=i(E  i  i)  r  iPF  i8 r  i_ g^K=?N)r1  gNuP=gs=)K   L   M   )zipr[   r  r	   )rc   pvalsr  numr   s   &    rm   test_large_numbers"TestFisherExact.test_large_numbers}  sx     1UL1ID$$uclT3K%@A!DCq9 2   5%.5%.!AB1ECQ7rp   c                    R p\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! \
        P                  ! ^4      4       RRR4       R#   + '       g   i     R# ; i)z+The input `table` must have two dimensions.r   N)r   r   r   r[   r  r   r   rc   r  s   & rm   test_raisesTestFisherExact.test_raises  s=    ?]]:W55ryy|, 6555s   +AA-	c                    ^ ^ .^^
..^^
.^ ^ ..^ ^.^ ^
..^^ .^
^ ..3pV FA  p\         P                  ! V4      w  r4\        VR4       \        V\        P                  4       KC  	  R# r   )r[   r  r   r   rb   )rc   tablesr$  	oddsratior  s   &    rm   test_row_or_col_zero$TestFisherExact.test_row_or_col_zero  s    q6Ar7#r7QF#q6Ar7#q6B7#% E#007OIs#BFF+ rp   c                   ^^.^^..^^.^R..^^.^R..^R.^R..^ ^.^^ ..^^.^^..^^ .^^..^ ^.^^..^^ .^^..3	pRR.RR.RR	.R
R.RR.RR.RR.RR.RR.3	p\        W4       Fq  w  r4. pVP                  \        P                  ! VRR7      ^,          4       VP                  \        P                  ! VRR7      ^,          4       \	        WT^ RR7       Ks  	  R# )rE   i,  i  i   i  gI[?gq}!?r   g2\&gQp6g:O_?g a?皙?ffffff??333333?r  r  r  r  )rE  r  NUUUUUU?rU  )r5  appendr[   r  r
   )rc   r?  r6  r$  r  r   s   &     rm   test_less_greater!TestFisherExact.test_less_greater  sL    VaV1X3x "X4y!3Z#s$ VaVVaVVaVVaVVaV  "#56)*()	"#J#J#J3K$K v-KECJJu))%VDQGHJJu))%YGJKCAD9	 .rp   c                B    \         P                  ! ^^.^	R..4      w  rR# )rW   i"N)r[   r  )rc   oddsr<  s   &  rm   test_gh3014TestFisherExact.test_gh3014  s%     ))Aq6Ax=*ABfrp   r  c                    \         P                  ! R R.RR..4      p\        P                  ! W!R7      p\	        VP
                  VP                  3V4       R# )r  r  r  r  r  N)r   r   r[   r  r   r=  r<  )rc   r  r$  r   s   &&  rm   test_resultTestFisherExact.test_result  sD    5%.5%.9:  @cmmSZZ0#6rp   c                   \         P                  P                  R 4      p\         P                  ! ^^.^^..4      pRp\        P
                  ! \        VR7      ;_uu_ 4        \        P                  ! VR7      p\        P                  ! W$RR7       RRR4       Rp\        P
                  ! \        VR7      ;_uu_ 4        \        P                  ! VR7      p\        P                  ! W$R7       RRR4       R	p\        P
                  ! \        VR7      ;_uu_ 4        \        P                  ! \        P                  P                  R
7      p\        P                  ! W$R7       RRR4       Rp\        P
                  ! \        VR7      ;_uu_ 4        \        P                  ! \         P                  ! R4      4       RRR4       \         P                  P!                  \        P                  ! . RO.4      R4       \         P                  P!                  \        P                  ! ^.^.^..4      R4       \         P                  P!                  \        P                  ! \         P                  ! R4      4      R4       R#   + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     ELM; i  + '       g   i     EL; i)   9o8o z4`alternative` must be the default \(None\) unless...r   r  r  r  r  Nz6...not recognized; if provided, `method` must be an...r  z3If the `method` argument of `fisher_exact` is an...r  z2`table` must have at least one row and one column.ry   rW   r  r  rE   r   )r   r  r  rY   r   r   r   r[   r  r  r  r  normr  zerosr"  r   )rc   r  r$  r  r  s   &    rm   $test_input_validation_edge_cases_rxc4TestFisherExact.test_input_validation_edge_cases_rxc  s   ii##$78

QFQF+,I]]:W55,,5FuH 6 K]]:W55**s3Fu4 6 H]]:W55++

?Fu4 6 G]]:W55rxx/0 6
 	

 2 2I; ?H


 2 2QC!qc? CVL


 2 2288F3C DfM- 655
 655
 655
 655s1   "0J  /JAJ(+J< J	J%	(J9	<K	c                   \         P                  P                  R 4      p\         P                  ! ^^.^^..4      p\        P
                  ! V4      pVP                  p\        P                  ! VP                  ^R7      VP                  ^ R7      4      P                  V4      p\        P                  ! VR7      p\        P
                  ! W&R7      p\        VP                  VRR7       \        VP                  V4       \        P                  ! VR7      p\        P
                  ! W&R7      p\        VP                  VP                  RR7       \        VP                  V4       R# )rT  r>   r  r  g{Gzd?rD  N)r   r  r  rY   r[   r  r<  random_tablesumpmfr  r
   r   r=  r  )rc   r  r$  r  
ref_pvalueref_statr  r   s   &       rm   test_resampling_2x2#TestFisherExact.test_resampling_2x2  s    ii##$78

QFQF+,  'ZZ
%%eiiQi&79JKOOPUV''C0  6

JV<S]]H-((S1  6

CJJV<S]]H-rp   c                   . R
O. RO. RO. RO. RO.p\         P                  ! V4      pRp\         P                  P                  R4      p\        P
                  ! VR7      p\        P                  ! WR7      p\        VP                  VRR7       \        P                  ! VRR7      p\        P                  ! WR7      p\        VP                  VRR7       R	# )rW   gk$?l   |Kr  r  gMb@?rD  i )r  n_resamplesN)rW   rE   rE   rW   rW   ry   rW   )rE   ry   ry   rE   r   ry   ry   )ry   rW   rW   rW   rE   rJ   r   )rW   rW   rE   ry   ry   ry   rW   )ry   rW   rW   rW   rW   ry   ry   )
r   rY   r  r  r[   r  r  r
   r<  r  )rc   r$  r`  r  r  r   s   &     rm   test_resampling_rxc#TestFisherExact.test_resampling_rxc  s     '&&&&	(
 

5!%
ii##M2((S1  6

JT:''CUC  6

JT:rp   c           
        \         P                  P                  R 4      p\        P                  ! VR7      p\        ^^4       F  p\        ^^4       F  p\        ^^4       F  p\        ^^4       Fl  p\         P                  ! W4.WV..4      p\        P                  ! V4      p\        P                  ! WrR7      p	\        V	P                  VP                  RR7       Kn  	  K  	  K  	  K  	  R# )rT  r  r  +=rD  N)
r   r  r  r[   r  r  rY   r  r
   r<  )
rc   r  r  rJ  rV  cdr$  r  r   s
   &         rm   test_resampling_exact_2x2)TestFisherExact.test_resampling_exact_2x2  s     ii##$78((S1q!A1a[q!A"1a[ "

QFQF+; <#007#00F'

CJJUK	 ) % ! rp   r   Nr  r  r  )r   r   r   r   r5  rW  r&  r+  r.  r   r   r  r8  r<  rA  rJ  rN  r  rQ  rZ  r  rb  rf  xslowrl  r   r   r   s   @rm   r  r    s    .6907,0 [[8 8-, :DC
 [[],LM7 N7
N> [[2[[.  ." [[2[[;  ;: [[L Lrp   r  c                      a  ] tR tRt o RtR tR tR tR tR t	R t
R	 tR
 tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR t R t!R  t"R! t#R" t$R# t%R$ t&R% t'R&t(V t)R'# )(TestCorrSpearmanri&  r   c                N    \         P                  P                  R 4      V n        R# )iGNr   r  r  r  rc   s   &rm   setup_methodTestCorrSpearmanr.setup_method/  s    99((3rp   c                    \         P                  ! R R4      p\        \        P                  ! V4      P                  4       4       R# )r   r   N)r[   	spearmanrr   r   isnanr  )rc   rg   s   & rm   test_scalarTestCorrSpearmanr.test_scalar2  s)    OOB#!"rp   c                    \        \        \        P                  . RO^^	.4       \        \        \        P                  . RO^4       R# rW   N)rW   rE   rW   )r   r   r[   rx  rt  s   &rm   test_uneven_lengths%TestCorrSpearmanr.test_uneven_lengths6  s*    j%//9q!fEj%//9a@rp   c                   V P                   P                  R4      pV P                   P                  R4      p\        P                  ! W4      P                  P
                  R8X  g   Q h\        P                  ! VP                  VP                  ^R7      P                  P
                  R8X  g   Q h\        \        \        P                  W^R7       \        \        \        P                  VP                  VP                  4       R# )r   r>   Nr   r   r   rE   rw   rw   )
r  standard_normalr[   rx  r=  r  r   r<  r   r   rc   rf   rg   s   &  rm   test_uneven_2d_shapes'TestCorrSpearmanr.test_uneven_2d_shapes:  s    HH$$V,HH$$V,q$..44>>>qssACCa077==GGGj%//1a@j%//133<rp   c           	        V P                   P                  R4      p\        \        \        P
                  V4       \        \        \        P
                  W4       \        \        \        P
                  VRR4       \        \        P
                  ! WRR7      \        P
                  ! VP                  4       VP                  4       ^ R7      4       R# )r   Nr>   )r   r   rE   )r  r  r   r   r[   rx  r
   flattenrc   rf   s   & rm   test_ndim_too_high$TestCorrSpearmanr.test_ndim_too_highD  s|    HH$$Y/j%//15j%//18j%//1dDA48		QYY[qI	Krp   c                   \         P                  ! R 4      p\         P                  V^	&   \        \        P
                  ! W4      \         P                  \         P                  34       \        \        P
                  ! WRR7      R4       \        \        \        P
                  WRR7       \        \        \        P
                  WRR7       R# )r   r   r   r   r   N)r   r   )r   r   rb   r   r[   rx  r   r   r  s   & rm   test_nan_policy!TestCorrSpearmanr.test_nan_policyM  sx    IIcNvv!5??102662662BC5??1FC%	'j%//1GLj%//1HMrp   c                   \         P                  P                  R 4      pVP                  R4      p^p\         P                  VRV3&   \         P                  ! W#^R7      p\
        P                  ! VRR7      w  rV\
        P                  ! V4      w  rx\         P                  ! \         P                  ! WS^R7      V^ R7      p\         P                  ! \         P                  ! Wc^R7      V^ R7      p\        WWRR7       \        WhRR7       R# )	l   LG r   r>   r   r   ri  rD  Nrw   rO   )r   r  r  rb   deleter[   rx  r
   )	rc   r  rf   krg   corxpxcorypys	   &        rm   test_nan_policy_bug_12458+TestCorrSpearmanr.test_nan_policy_bug_12458V  s    ii##J/JJw&&!Q$IIa#??18??1%yy43QQ?YYryyQ/;/U+rp   c                   ^p^
pV P                   P                  W34      p\        P                  VR&   \        P                  VR&   \        P
                  ! V^RR7      w  rE\        V4       UUu. uFM  p\        V4       Uu. uF4  p\        P
                  ! W7R3,          W6R3,          4      P                  NK6  	  upNKO  	  ppp\        WH4       R# u upi u uppi )rw   	propagater?   r   r   NrW   ry   )r   rU   )	r  r  r   rb   r[   rx  r  r=  r
   )	rc   mnrf   corrr<  jr  r   s	   &        rm   test_nan_policy_bug_12411+TestCorrSpearmanr.test_nan_policy_bug_12411c  s    HH$$aV,&&$66%qq[Ia" 1 FK1XNXQ$a41;;XN  	 "" O "s   0C:C<CCc                n    \         P                  ! \        \        4      pV^ ,          p\        VR4       R# r   )r[   rx  rZ   r	   r   s   &  rm   test_sXXTestCorrSpearmanr.test_sXXn  s%    OOAa aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   rx  rZ   r   r	   r   s   &  rm   
test_sXBIGTestCorrSpearmanr.test_sXBIGs  s%    OOAc"aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   rx  rZ   r   r	   r   s   &  rm   test_sXLITTLETestCorrSpearmanr.test_sXLITTLEx  s%    OOAf%aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   rx  rZ   r   r	   r   s   &  rm   test_sXHUGETestCorrSpearmanr.test_sXHUGE}  %    OOAd#aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   rx  rZ   r   r	   r   s   &  rm   test_sXTINYTestCorrSpearmanr.test_sXTINY  r  rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   rx  rZ   r  r	   r   s   &  rm   test_sXROUNDTestCorrSpearmanr.test_sXROUND  s%    OOAe$aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\        VR4       R# r   )r[   rx  r   r	   r   s   &  rm   test_sBIGBIGTestCorrSpearmanr.test_sBIGBIG  s%    OOC$aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   rx  r   r   r	   r   s   &  rm   test_sBIGLITTLE!TestCorrSpearmanr.test_sBIGLITTLE  s%    OOC'aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   rx  r   r   r	   r   s   &  rm   test_sBIGHUGETestCorrSpearmanr.test_sBIGHUGE  %    OOC%aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   rx  r   r   r	   r   s   &  rm   test_sBIGTINYTestCorrSpearmanr.test_sBIGTINY  r  rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   rx  r   r  r	   r   s   &  rm   test_sBIGROUND TestCorrSpearmanr.test_sBIGROUND  s%    OOC&aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\        VR4       R# r   )r[   rx  r   r	   r   s   &  rm   test_sLITTLELITTLE$TestCorrSpearmanr.test_sLITTLELITTLE  s%    OOF6*aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   rx  r   r   r	   r   s   &  rm   test_sLITTLEHUGE"TestCorrSpearmanr.test_sLITTLEHUGE  %    OOF4(aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   rx  r   r   r	   r   s   &  rm   test_sLITTLETINY"TestCorrSpearmanr.test_sLITTLETINY  r  rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   rx  r   r  r	   r   s   &  rm   test_sLITTLEROUND#TestCorrSpearmanr.test_sLITTLEROUND  s%    OOF5)aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\        VR4       R# r   )r[   rx  r   r	   r   s   &  rm   test_sHUGEHUGE TestCorrSpearmanr.test_sHUGEHUGE  %    OOD&aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   rx  r   r   r	   r   s   &  rm   test_sHUGETINY TestCorrSpearmanr.test_sHUGETINY  r  rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   rx  r   r  r	   r   s   &  rm   test_sHUGEROUND!TestCorrSpearmanr.test_sHUGEROUND  %    OOD'aDAc"rp   c                n    \         P                  ! \        \        4      pV^ ,          p\        VR4       R# r   )r[   rx  r   r	   r   s   &  rm   test_sTINYTINY TestCorrSpearmanr.test_sTINYTINY  r  rp   c                n    \         P                  ! \        \        4      pV^ ,          p\	        VR4       R# r   )r[   rx  r   r  r	   r   s   &  rm   test_sTINYROUND!TestCorrSpearmanr.test_sTINYROUND  r  rp   c                n    \         P                  ! \        \        4      pV^ ,          p\        VR4       R# r   )r[   rx  r  r	   r   s   &  rm   test_sROUNDROUND"TestCorrSpearmanr.test_sROUNDROUND  s%    OOE%(aDAc"rp   c                    \         P                  ! \        \        4      pRp\        W4       \	        VP
                  VP                  4       R# r9  )r[   rx  rZ   r   r   r:  r=  r>  s   &  rm    test_spearmanr_result_attributes2TestCorrSpearmanr.test_spearmanr_result_attributes  s1    ooa#.
C,S__cmm4rp   c                    . ROp. ROp\         P                  ! W4      p\         P                  ! \        P                  ! W.4      P                  4      p\        W44       R# )rW   NrW   rE   r   r   rw   rz   )rW   rE   r   r   rz   rw   )r[   rx  r   rY   r   r
   rc   x1x2res1r  s   &    rm   test_1d_vs_2dTestCorrSpearmanr.test_1d_vs_2d  sA    r&rzz2(3556#rp   c                $   R F  p^\         P                  ^^^^.p^^^^^\         P                  .p\        P                  ! W#VR7      p\        P                  ! \         P                  ! W#.4      P
                  VR7      p\        WE4       K  	  R# )r  r   N)r  r   )r   rb   r[   rx  rY   r   r
   )rc   r   r  r  r  r  s   &     rm   test_1d_vs_2d_nans$TestCorrSpearmanr.test_1d_vs_2d_nans  sq    /JRVVQ1a(BQ1a(B??2jAD??2::rh#7#9#9jQDD' 0rp   c                   \         P                  ! ^4      pV) p\         P                  ! . RO4      p\         P                  ! WV.4      P                  p\
        P                  ! V4      p\         P                  ! . RO. RO. RO.4      p\         P                  ! R\        R7      pRVR	&   RVR
&   \        VP                  V4       \        VP                  V4       R# )rz   r6   g+Hs]s?N)ry   rW   rE   r   rw   r   )rW   rU   3+?)rU   rW   3+)r  r  rW   r   r   )rE   r  )r  rE   )r   r   r   rY   r   r[   rx  rY  floatr
   r=  r<  )rc   r  r  x3rf   actualexpected_correxpected_pvalues   &       rm   
test_3colsTestCorrSpearmanr.test_3cols  s    YYq\SXX()JJ|$&&#"5"6">"@ A ((67"/"/((-87rp   c           
        \         P                  ! \         P                  R RRRRR.R\         P                  RRRRR.. RO.4      P                  p\         P                  ! \         P                  \         P                  \         P                  .\         P                  \         P                  \         P                  .\         P                  \         P                  R	..4      p\	        \
        P                  ! VR
R7      P                  V4       \
        P                  ! VRR7      P                  p\	        V^ ,          ^,          V^ ,          ^,          V^,          ^,          3RRR7       R# )r   r   r8   ffffff@r   ffffff"@ffffff@g333333@皙@r   r  r   r   r  r  N)r1   r   ffffff@ffffff@r   r  ffffff@)gacJC?g%ln?g_0nYt!޿)r   r   rb   r   r
   r[   rx  r=  )rc   rf   r  r   s   &   rm   test_gh_9103TestCorrSpearmanr.test_gh_9103  s   HHrvvsCc3<BFFCc3<9; <<=A 	
 xx"&&"&&"&&1&&"&&"&&1&&"&&"-/ 0 	kBLL	 ooaF3==QCF1Is1vay9:	Grp   c                   ^dp\         P                  P                  R4      pVP                  V4      pVP                  V4      R8  pVR8  p\         P                  ! V4      p\
        P                  ! WVRR7      P                  p\         P                  Wd&   \
        P                  ! WVRR7      P                  pVP                  \         P                  4      p\
        P                  ! WVRR7      P                  p	. ROp
\        WxV	.V
4       R# )r  iH rE  r1   r   r   N)gonj?)Wn%?r  )r   r  RandomStaterandr   r[   rx  r=  rb   astypeint32r
   )rc   r  r  rf   r  rJ  rV  r  r  res3expecteds   &          rm   test_gh_8111TestCorrSpearmanr.test_gh_8111  s    ii##F+HHQKHHQK# VHHQKq7AA vvq7AA HHRXXq7AA:T*H5rp   r  N)*r   r   r   r   r5  ru  rz  r~  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r	  r  r   r   r   s   @rm   rq  rq  &  s     4#A=KN,	##
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
5$(8 G6 6rp   rq  c                      a  ] tR tRt o RtR tR tR tR tR t	R t
R	 tR
 tR tR tR tR tR tR tR t]P*                  P-                  RR4      R 4       tRtV tR# )TestCorrSpearmanr2i$  z-Some further tests of the spearmanr function.c                    . ROp. ROpRp\         P                  ! W4      p\        V^ ,          V^ ,          4       \        V^,          V^,          4       R# )rW   NrW   rE   r   r   rw   rw   rz   rJ   rF   rJ   gh
C?gR?)r[   rx  r	   rc   r  r  r  r   s   &    rm   test_spearmanr_vs_r&TestCorrSpearmanr2.test_spearmanr_vs_r'  sE     >oob%CFHQK0CFHQK0rp   c                    \        \        P                  ! . . 4      \        P                  \        P                  34       R # N)r   r[   rx  r   rb   rt  s   &rm   test_empty_arrays$TestCorrSpearmanr2.test_empty_arrays1  s$    U__R,rvvrvv.>?rp   c           	        \         P                  P                  R 4      p\         P                  ! VP	                  ^^RR7      VP	                  ^^RR7      .4      pRR.RR..p\         P
                  ! \         P                  P                  V4      V4      pRp\        P                  ! V^ ,          V^,          4      p\        V^ ,          V^ ,          4       \        V^,          V^,          4       R# )z    locscaler  r   rG  N)gCzYW?ge*=)r   r  r  r   r  dotlinalgcholeskyr[   rx  r	   )rc   r  rf   r  r  r   s   &     rm   test_normal_draws$TestCorrSpearmanr2.test_normal_draws4  s    ii##D)HHcjjQacj:jjQacj:< =c
c
FF299%%d+Q/?ooadAaD)CFHQK0CFHQK0rp   c                ^    \        \        P                  ! . RO. RO4      ^ ,          R4       R# )rW   r   NrW   rW   rE   )r	   r[   rx  rt  s   &rm   test_corr_1TestCorrSpearmanr2.test_corr_1@  s    EOOIyA!DcJrp   c                   \         P                  ! R 4      p\         P                  V^	&   \        \        P
                  ! W4      \         P                  \         P                  34       \        \        P
                  ! WRR7      R4       \        \        \        P
                  WRR7       \        \        \        P
                  WRR7       R# )r   r   r   r   r   N)r   ry   )	r   r   rb   r   r[   rx  r
   r   r   r  s   & rm   test_nan_policies$TestCorrSpearmanr2.test_nan_policiesC  sx    IIcNvv!5??102662662BC@ 	"j%//1GLj%//1HMrp   c                    \         P                  ! R 4      p\         P                  ! R4      p\        \        \        P
                  W4       R# )r         4@N)r   r   r   r   r[   rx  r  s   &  rm   test_unequal_lengths'TestCorrSpearmanr2.test_unequal_lengthsL  s,    IIcNIIcNj%//18rp   c                    . ROp^^^\         P                  .p\        P                  ! WRR7      p\        P                  ! VR,          VR,          RR7      p\	        W44       R# )rW   r   r   :Nr   NNr  )r   rb   r[   rx  r   r  s   &    rm   test_omit_paired_value)TestCorrSpearmanr2.test_omit_paired_valueQ  sK    Arvvr&9r"vr"v&AT rp   c                   \        \        R 4      4      p\        \        R 4      4      pV^	,          V^ ,          uV^ &   V^	&   VR,          V^
,          uV^
&   VR&   VR,          VR,          uVR&   VR&   VP                  \        P                  4       VP                  R4       \        \        P                  ! WRR7      ^ ,          R4       R# )	  i  i  i  r   r   r   gV-?N)listr  rI  r   rb   r   r[   rx  r  s   &  rm   #test_gh_issue_6061_windows_overflow6TestCorrSpearmanr2.test_gh_issue_6061_windows_overflowX  s    ttqT1Q4
!ad#""qvD'1S6#$ 	
	EOOAVDQGOrp   c                   R p\         P                  ! \        P                  VR7      ;_uu_ 4        \        P                  ! . RO. RO4      w  r#\        V\        P                  4       \        V\        P                  4       \        P                  ! . RO. RO4      w  r#\        V\        P                  4       \        V\        P                  4       \        P                  ! . RO. RO4      w  r#\        V\        P                  4       \        V\        P                  4       RRR4       R#   + '       g   i     R# ; i)r[  r   NrE   rE   rE   rE   ry   rE   )r   warnsr[   rb  rx  r   r   rb   )rc   warn_msgr   rd  s   &   rm   	test_tie0TestCorrSpearmanr2.test_tie0e  s    /\\%44HEE??9i8DABFF#BFF#??9i8DABFF#BFF#??9i8DABFF#BFF# FEEEs   C4D//E 	c                    . ROp. ROp. ROp. ROp\         P                  ! W4      p\         P                  ! W44      p\        WV4       R# )r   Nr   r   r   r   )r   r   r   r   )r   rt   rt   r   )r[   rx  r   r   )rc   rf   rg   xryrsrprs   &      rm   	test_tie1TestCorrSpearmanr2.test_tie1s  s<      !! __Q"^^B#B#rp   c                    . ROp. ROp^^R^\         P                  .p^^R^\         P                  .p\        P                  ! W4      p\        P                  ! W4RR7      p\	        WV4       R# )rW   rt   r   r   N)rW   rE   rt   rE   )rW   r   rt   r   )r   rb   r[   rx  r   )rc   r  rh   r  ri   sr1sr2s   &      rm   	test_tie2TestCorrSpearmanr2.test_tie2  s^     CBFF#CBFF# oob%oob8C%rp   c                   \         P                  ! . RO. RO.4      p\         P                  ! . RO. RO.4      p\         P                  ! . RO. RO.4      pRp\        P                  ! \        P
                  VR7      ;_uu_ 4        \        P                  ! V^R7      w  rV\        V\         P                  4       \        V\         P                  4       \        P                  ! V^R7      w  rV\        V\         P                  4       \        V\         P                  4       \        P                  ! V^R7      w  rV\        V\         P                  4       \        V\         P                  4       RRR4       R#   + '       g   i     R# ; i)rW   r[  r   r>   NrW   rW   rW   rW   r  	r   r   r   rC  r[   rb  rx  r   rb   )rc   z1z2z3rD  r   rd  s   &      rm   test_ties_axis_1#TestCorrSpearmanr2.test_ties_axis_1  s    XX|\23XX|\23XX|\23/\\%44HEE??2A.DABFF#BFF#??2A.DABFF#BFF#??2A.DABFF#BFF# FEEEs   C+E::F	c                   \         P                  ! . RO4      p\         P                  ! . RO4      pRp\        P                  ! \        P
                  VR7      ;_uu_ 4        \        P                  ! W4      w  rE\        V\         P                  4       \        V\         P                  4       RRR4       R#   + '       g   i     R# ; i)r   r[  r   N)
r   r   r   r   r   r   r   r   r   r   
ry   gN}	?ry   ry   g	/`?gY%uX-H?gC1tq1?ry   ry   g*I?rV  )rc   rf   rg   rD  r   rd  s   &     rm   test_gh_11111 TestCorrSpearmanr2.test_gh_11111  s~    HHGHHH - . 0\\%44HEE??1(DABFF#BFF# FEEEs   !AB88C		c                    \         P                  ! . RO4      p\         P                  ! . RO4      p\        \        \        P
                  W^R7       R# )r   r>   N)
r   r   r   r   r   r   r   r   r   r   r]  )r   r   r   r   r[   rx  r  s   &  rm   test_index_error#TestCorrSpearmanr2.test_index_error  s8    HHGHHH - . 	j%//1a@rp   c                &   . ROp. R	OpR
p\         P                  ! WRR7      p\        V^ ,          V^ ,          4       \        V^,          ^V^,          ^,          ,
          4       \         P                  ! WRR7      p\        V^ ,          V^ ,          4       \        V^,          V^,          ^,          4       \        P                  ! \
        RR7      ;_uu_ 4        \         P                  ! WRR7       RRR4       R#   + '       g   i     R# ; i)rW   r  r  r  `alternative` must be 'less'...r   	ekki-ekkiNr  r  r  )r[   rx  r	   r   r   r   r  s   &    rm   test_alternative#TestCorrSpearmanr2.test_alternative  s      ? oob&9CFHQK0CFA!q$9: oob)<CFHQK0CFHQK!O4]]:-NOOOOB< POOOs   C??D	r  c           	        . R
Op. ROpV\         P                  .,           pV\         P                  .,           p\        \        P                  ! WE4      \         P                  \         P                  34       \        P                  ! WERVR7      p\        P                  ! W#VR7      p\        Wg4       Rp\        P                  ! \        VR7      ;_uu_ 4        \        P                  ! WERVR7       RRR4       Rp\        P                  ! \        VR7      ;_uu_ 4        \        P                  ! WER	VR7       RRR4       R#   + '       g   i     LZ; i  + '       g   i     R# ; i)rW   r   r   r  r  r   r   r   Nr   re  r  r  )	r   rb   r   r[   rx  r
   r   r   r   )	rc   r  r  r  x1nanx2nan
res_actualres_expectedr  s	   &&       rm   test_alternative_nan_policy.TestCorrSpearmanr2.test_alternative_nan_policy  s     bffXbffX 	5??58266266:JK __Uf1<>
r;G
1 2]]:W55OOEW(35 6
 1]]:W55OOE[(35 65 65 655s   E!EE	E)	r   Nrn  )r   r   r   r   r5  r  r   r+  r/  r2  r6  r9  r>  rE  rM  rR  rZ  r^  ra  rf  r   r   r  rn  r   r   r   s   @rm   r  r  $  s     71@
1KN9
!P$$&$ 	$A=. [[],LM5 N5rp   r  zfails in parallelr   c            	         R!p . R"Op. R#OpR$pV  FO  p\         P                  ! WVR7      p\        V^ ,          V^ ,          4       \        V^,          V^,          4       KQ  	  . R%Op. R&OpR$pV  FO  p\         P                  ! WVR7      p\        V^ ,          V^ ,          4       \        V^,          V^,          4       KQ  	  . R'Op. R(OpR)pV  FO  p\         P                  ! WVR7      p\        V^ ,          V^ ,          4       \        V^,          V^,          4       KQ  	  . R*Op. R+OpR,pV  FO  p\         P                  ! WVR7      p\        V^ ,          V^ ,          4       \        V^,          V^,          4       KQ  	  \        P                  ! ^
4      p\        P                  ! ^
4      pR-pV  FO  p\         P                  ! WVR7      p\        V^ ,          V^ ,          4       \        V^,          V^,          4       KQ  	  V^,          pV^,          V^&   Wb^&   R.pV  FO  p\         P                  ! WVR7      p\        V^ ,          V^ ,          4       \        V^,          V^,          4       KQ  	  V^,          pV^,          V^&   Wb^&   R/pV  FO  p\         P                  ! WVR7      p\        V^ ,          V^ ,          4       \        V^,          V^,          4       KQ  	  \        P                  ! ^
4      p\        P                  ! ^
4      RRR01,          pR1pV  FO  p\         P                  ! WVR7      p\        V^ ,          V^ ,          4       \        V^,          V^,          4       KQ  	  V^,          pV^,          V^&   Wb^&   R2pV  FO  p\         P                  ! WVR7      p\        V^ ,          V^ ,          4       \        V^,          V^,          4       KQ  	  V^,          pV^,          V^&   Wb^&   R3pV  FO  p\         P                  ! WVR7      p\        V^ ,          V^ ,          4       \        V^,          V^,          4       KQ  	  \        . R4O4      p\        . R5O4      pRp\        \         P                  ! WR R7      ^ ,          V4       Rp\        \         P                  ! WRR7      ^ ,          V4       V^,          V^&   \        \        \         P                  WRR7       \        \        \         P                  WR	R7       \        \        \         P                  WR
R7       . R6Op. R7OpR8p\         P                  ! Wx4      p\        V^ ,          V^ ,          4       \        V^,          V^,          4       R9p	V  FF  p\         P                  ! WxVR7      p\        WY4       \        VP                  VP                  4       KH  	  V  F  p\        \         P                  ! . R:O. R:OVR7      \        P                  \        P                  34       \        \         P                  ! . R;O. R:OVR7      \        P                  \        P                  34       \        \         P                  ! . R:O. R;OVR7      \        P                  \        P                  34       K  	  \        P                  ! \        RR7      ;_uu_ 4        \        \         P                  ! . . 4      \        P                  \        P                  34       RRR4       \        P                   P#                  R4      p
\        P
                  ! V
P%                  ^^RR7      V
P%                  ^^RR7      .4      pRR.RR..p\        P&                  ! \        P(                  P+                  V4      V4      pR<p\         P                  ! V^ ,          V^,          4      p\        V^ ,          V^ ,          4       \        V^,          V^,          4       \        \         P                  ! . R=O. R=OR R7      ^ ,          R4       \        \         P                  ! . R=O. R=ORR7      ^ ,          R4       \        P                  ! R4      p\        P                  V^	&   \-        \         P                  ! W4      \        P                  \        P                  34       \/        \         P                  ! WRR7      R>RR7       \/        \         P                  ! WRRR7      R?RR7       \        \        \         P                  WRR7       \        \        \         P                  WRR7       \        P                  ! R4      p\        P                  ! R4      p\        \        \         P                  W4       \        P                  ! \        RR7      ;_uu_ 4        \         P                  ! ^ .^ .4      w  rRRR4       \        \        P                  X4       \        \        P                  X4       \        P                  ! R\0        R7      p\        P2                  P5                  VR4      p\        P                  ! R\0        R7      p\        P6                  ! VR,          VR ,          34      p\9        \        P:                  ! \         P<                  P                  W4      ^,          4      4       R#   + '       g   i     EL; i  + '       g   i     EL; i)@rV  rj  r   )variantNgok|?gffffff?r  r  bananarmsOne or more sample...r   r#  r$  r%  rG  g#q?r   r   r   r  r  r  )r   r  r   r   r5  r<  r6   i  :i  NN:Ni  N)rV  rj  )rw   rE   rW   r   rz   r   rJ   rF   )rw   rE   rz   r   rW   rF   rJ   r   r   )	ry   rw   rE   rW   r   rz   r   rJ   rF   )	rw   rE   ry   rz   r   rW   rF   rJ   r   )rw   rE   rW   r   rz   r   rJ   )rw   rE   rz   r   rW   rJ   r   )gJ$I¿gmK?)rE   rW   r   rz   r   rJ   rF   )rE   rz   r   rW   rF   rJ   r   )gJkaa?r   )r   紞xO~>)g?>?aV>)g}'}'?o&5>rU   )rO  rv  )g?>rw  )g}'}'rx  )
rW   rE   rE   r   r   rz   rz   rF   rI   rI   )
rW   rE   r   r   r   r   rF   rF   rF   rO   rQ   rE   rW   rQ   rE   rW   r   rJ   rW   ry   )g}+޿g`=i?r;  rA  rB  )g\zf?g^n)=r.  )r   g/>)r   g&?)r[   
kendalltaur	   r   r   r   r   r   r   r   r:  r=  rb   r   rC  r   r  r  r  r(  r)  r*  r   r
   r  mamasked_greaterconcatenater   r  mstats)variantsrf   rg   r  tauxr   rV  r  r  r?  r  r  taup_values                 rm   test_kendalltaur    se    H 	!A A HqT2CFHQK0CFHQK0  	$A#A HqT2CFHQK0CFHQK0  	AA /HqT2CFHQK0CFHQK0  	AA %HqT2CFHQK0CFHQK0  			"A
		"A )HqT2CFHQK0CFHQK0  	
!AQ4AaDaD 8HqT2CFHQK0CFHQK0  	
!AQ4AaDaD 8HqT2CFHQK0CFHQK0  			"A
		"ddA *HqT2CFHQK0CFHQK0  	
!AQ4AaDaD 9HqT2CFHQK0CFHQK0  	
!AQ4AaDaD 9HqT2CFHQK0CFHQK0  	,-A-.AH((s;A>IH((s;A>I Q4AaD*e..WE *e..XF *e..eD
 
B	B:H


2
"CA,A, +Jrt4C,S__cmm4  U%%iDIffbff%	'U%%iDIffbff%	'U%%iDIffbff%	'  
(0G	H	HU%%b"-/?@ 
I ))


%C
#**!#*6**!#*68 	9A#J#JD
ryy!!$'+A<H


1Q41
&CA,A, ((IsKAN((IsKAN"$ 			#A66AaDu''-/?@E$$Qf='e5E$$Qf\R1?*e..I*e..J 			#A
		#A*e..5 
(0G	H	H''aS1 
I! 			$e$A
Q%A
		$e$A
%!E(+,ABKK//4Q789a 
I	H	HL 
I	H	Hs   A kk2k/	2l	c                     \         P                  P                  ^*4      p \        ^^
4       F  p. p\        V4       F  pW#.V,          ,          pK  	  \	        V4      pV P                  V4       V P                  V4       \        P                  ! W$4      p\        P                  ! W$4      p\        V^ ,          V^ ,          4       \        V^,          V^,          4       K  	  R# *   N)
r   r  r  r  r=  shufflemstats_basicr|  r[   r	   )r  srJ  r  rV  r  r  s          rm   test_kendalltau_vs_mstats_basicr    s    
))


#C1b\qAQJA GAA**10!!!'F1Ix{3F1Ix{3 rp   c                      . R	Op \         P                  RRR.p\        P                  ! WRR7      p\        P                  ! V R,          VR,          4      p\	        VP
                  VP
                  RR7       R# )
r   333333@333333@r   r   rW   NNrC  rD  NrH  )r   rb   r[   r|  r
   r=  )rf   rg   r1r2s       rm   test_kendalltau_nan_2nd_argr    sY    A	c3A			!6	2B			!B%2	'BBLL",,U;rp   c                     ^ RI p V P                  R4       . ROpR	pV P                  WR7      pV P                  WR7      p\        P                  ! W44      p\        VP                  R4       \        VP                  RRR7       R# )
ry   Ni_ r  g*8_2\S?gd`TR?gMb`?rD  rW   rE   r   r   rw   rz   rJ   i@ )r  seedchoicesr[   r|  r
   r=  r<  )r  classes	n_samplesrf   rg   r   s         rm    test_kendalltau_gh18139_overflowr    sn    
 
KK#GIw,Aw,A


1
 CCMM#89 CJJT2rp   c            	       l  a  ] tR tRt o R tRt]P                  ]P                  ]P                  .t. ROt	. ROt
. ROt. ROt. ROt. ROt. ROt. ROtR t]! ]! ]]R.^,          4      4      ]! ]! ]]! ]4      R.^,          4      4      ,           t]P.                  P1                  R]4      R 4       t]! ]! ]]	R.^,          4      4      ]! ]! ]]! ]	4      R.^,          4      4      ,           t]P.                  P1                  R]4      R 4       t]! ]! ]]
R.^,          4      4      ]! ]! ]]! ]
4      R.^,          4      4      ,           t]P.                  P1                  R]4      R	 4       t]! ]! ]]R.^,          4      4      ]! ]! ]]! ]4      R.^,          4      4      ,           t]P.                  P1                  R]4      R
 4       t]! ]! ]]R.^,          4      4      ]! ]! ]]! ]4      R.^,          4      4      ,           t ]P.                  P1                  R] 4      R 4       t!]! ]! ]]R.^,          4      4      ]! ]! ]]! ]4      R.^,          4      4      ,           t"]P.                  P1                  R]"4      R 4       t#]! ]! ]]R.^,          4      4      ]! ]! ]]! ]4      R.^,          4      4      ,           t$]P.                  P1                  R]$4      R 4       t%]! ]! ]]R.^,          4      4      ]! ]! ]]! ]4      R.^,          4      4      ,           t&]P.                  P1                  R]&4      R 4       t']! ]! ]]R.^,          4      4      ]! ]! ]]! ]4      R.^,          4      4      ,           t(]P.                  P1                  R](4      R 4       t)]! ]! ]R.^,          4      4      ]! ]! ]R.^,          4      4      ,           t*]P.                  P1                  R]*4      R 4       t+]P.                  P1                  RR 4      ]P.                  P1                  RR!4      R 4       4       t,Rt-V t.R# )"TestKendallTauAlternativei  c                <   . R	Op. R
Op\         P                  ! WRR7      pV^ ,          ^ 8  g   Q h\         P                  ! WRR7      p\        V^ ,          V^ ,          4       \        V^,          ^V^,          ^,          ,
          4       \         P                  ! WRR7      p\        V^ ,          V^ ,          4       \        V^,          V^,          ^,          4       VP	                  4        \         P                  ! WRR7      pV^ ,          ^ 8  g   Q h\         P                  ! WRR7      p\        V^ ,          V^ ,          4       \        V^,          ^V^,          ^,          ,
          4       \         P                  ! WRR7      p\        V^ ,          V^ ,          4       \        V^,          V^,          ^,          4       \
        P                  ! \        RR7      ;_uu_ 4        \         P                  ! WRR7       RRR4       R#   + '       g   i     R# ; i)rW   r  r  r  r  rd  r   re  Nr  r  )r[   r|  r   r
   reverser   r   r   r  s   &    rm   &test_kendalltau_alternative_asymptotic@TestKendallTauAlternative.test_kendalltau_alternative_asymptotic  s     ##BD{Q r6:SVXa[)AXa[1_ 56 r9=SVXa[)Aa0 	

 ##BD{Q r9=SVXa[)AXa[1_ 56 r6:SVXa[)Aa0]]:-NOOR= POOOs   'H

H	c                    V'       d!   \         P                  ! V4      ) pVR,          p\        P                  ! WRVR7      pWV3p\	        Wx4       R# )rW   r  rU  NrU   )r   rY   r[   r|  r
   )	rc   rf   rg   r  revstat_expected
p_expectedr   rm  s	   &&&&&&&  rm   
exact_test$TestKendallTauAlternative.exact_test5  sB    AARMqGM$0*rp   FTzalternative, p_expected, revc           
         ^.^.rT\         P                  p\        P                  ! \        RR7      ;_uu_ 4        V P                  WEWWb4       RRR4       R#   + '       g   i     R# ; i)rW   ru  r   N)r   rb   r   rC  r   r  rc   r  r  r  rf   rg   r  s   &&&&   rm   test_against_R_n1+TestKendallTauAlternative.test_against_R_n1@  sI    sQC1\\,4KLLOOA+MN MLLLs   AA)	c                >    ^^.^^.rTRpV P                  WEWWb4       R# )rW   g?Nr  r  s   &&&&   rm   test_against_R_n2+TestKendallTauAlternative.test_against_R_n2J  s&    1v1v1*kJrp   c                >    . RO. ROrT^pV P                  WEWWb4       R# rW   Nr  r  r  s   &&&&   rm   test_against_R_c0+TestKendallTauAlternative.test_against_R_c0S  s    )1kJrp   c                >    . RO. ROrTRpV P                  WEWWb4       R# )rW   gVUUUUU?Nr  )rW   rE   r   r   r  r  s   &&&&   rm   test_against_R_c1+TestKendallTauAlternative.test_against_R_c1\  s    \1*kJrp   c                >    . RO. ROrT^ pV P                  WEWWb4       R# )rW   Nr  )rW   rw   r   rE   r   r  r  s   &&&&   rm   test_against_R_no_correlation7TestKendallTauAlternative.test_against_R_no_correlationf  s    1kJrp   c                >    . RO. ROrT^ pV P                  WEWWb4       R# )rW   NrW   rE   r   r   rw   rz   rJ   rF   )rF   rz   rW   r   rE   rw   r   rJ   r  r  s   &&&&   rm   test_against_R_no_correlationb8TestKendallTauAlternative.test_against_R_no_correlationbp  s    ')A1kJrp   c                @    . ROp. ROpRpV P                  WEWWb4       R# )333333F@gqq?N)	r  g33333F@g33333D@gfffffJ@gYF@gF@gYI@gF@gN@)	g@@rt   r8   @r   g@ffffff@r  r  r  s   &&&&   rm   test_against_R_lt_171/TestKendallTauAlternative.test_against_R_lt_171y  s$     C9*kJrp   c                    \         P                  P                  ^ 4      pVP                  ^d4      pVP                  ^d4      pRpV P	                  WVWWr4       R# )ry   NgUm*,r   r  r  r  r  rc   r  r  r  r  rf   rg   r  s   &&&&    rm   test_against_R_lt_171b0TestKendallTauAlternative.test_against_R_lt_171b  sE    ii##A&HHSMHHSM,kJrp   c                    \         P                  P                  ^ 4      pVP                  ^4      pVP                  ^4      pRpV P	                  WVWWr4       R# )ry   gH4?Nr  r  s   &&&&    rm   test_against_R_lt_171c0TestKendallTauAlternative.test_against_R_lt_171c  sE    ii##A&HHSMHHSM*kJrp   zalternative, revc                X   \         P                  P                  ^ 4      pVP                  R4      pVP                  R4      p\        P
                  ! WERVR7      p\        P
                  ! WERVR7      p\        V^ ,          V^ ,          4       \        V^,          V^,          RR7       R# )ry   i  r  rU  r  r  r  N)r   r  r  r  r[   r|  r   r
   )rc   r  r  r  rf   rg   res0r  s   &&&     rm   test_gt_171%TestKendallTauAlternative.test_gt_171  s    ii##A&HHSMHHSMW,79\,79T!Wd1g&Qat4rp   r  r  c           
        . R
Op. ROpV\         P                  .,           pV\         P                  .,           p\        P                  ! WVWR7      p\         P                  \         P                  3p\	        Wx4       \        P                  ! WVRWR7      p\        P                  ! W4VVR7      p\	        Wx4       Rp	\
        P                  ! \        V	R7      ;_uu_ 4        \        P                  ! WVRWR7       RRR4       Rp	\
        P                  ! \        V	R7      ;_uu_ 4        \        P                  ! WVR	WR7       RRR4       R#   + '       g   i     LZ; i  + '       g   i     R# ; i)rW   rU  r   )r   r  r  r   r   r   Nr   re  r  )rw   rz   rJ   rF   rI   )r   rb   r[   r|  r
   r   r   r   )
rc   r  r  r  r  rj  rk  rl  rm  r  s
   &&&       rm   r  )TestKendallTauAlternative.test_nan_policy  s    bffXbffX %%e-3N
'
1 %%ev-3N
''v4?A
1 2]]:W55Ug$*E 6
 1]]:W55Uk$*E 65 65 655s   E'EE	E/	r   N)r  r  r  )rW   rW   r1   )rW   RUUUU?ZUUUU?)g~?r  r  )?rW   r  )ˮ[?rW   r  )g?gSǌ?gSǌ?)g:
?g3
?g<t'.?)gN  A?gss?gYss?)r  r  rn  )/r   r   r   r   r  alternativesr   rb   p_n1p_n2p_c0p_c1p_no_correlationp_no_correlationb
p_n_lt_171p_n_lt_171bp_n_lt_171cr  r=  r5  reversed	case_R_n1r   r   r  r  	case_R_n2r  	case_R_c0r  	case_R_c1r  case_R_no_corrr  case_no_cor_br  case_R_lt_171r  case_R_lt_171br  case_R_lt_171cr  case_gt_171r  r  r   r   r   s   @rm   r  r    s    '>h 4LFFBFFBFF#DD0D>D<=DJCKGK+ c,ugai89L(4.4&(CDEI [[;YGO HO c,ugai89L(4.4&(CDEI [[;YGK HK
 c,ugai89L(4.4&(CDEI [[;YGK HK
 c,ugai89L(4.4&(CDEI [[;YGK HK
 3|-=wqyIJSx8H/I"&+ ,,N [[;^LK MK
 #l,=wqyIJCh7H.I!%q* ++M [[;]KK LK
 #lJ	BCChz.BTF1HMNOM [[;]KK LK 3|[5'!)DESx/D"&+ ,,N [[;^LK MK 3|[5'!)DESx/D"&+ ,,N [[;^LK MK L5'!)45L4&(345K [[/=	5 >	5 [[X'>?[[],LME N @Erp   r  c                     . ROp . ROp\         P                  ! W4      w  r#\        VR4       \        \        P
                  V4       \         P                  ! WRR7      w  r#\        VR4       \        \        P
                  V4       \         P                  ! WR R7      w  r#\        VR4       \        \        P
                  V4       \         P                  ! W4      pRp\        WE4       \        VP                  VP                  4       \         P                  ! WRR7      w  r#\        VR4       \        \        P
                  V4       \         P                  ! WRR7      w  r#\        VR4       \        \        P
                  V4       \         P                  ! WRRR7      w  r#\        VR4       \        \        P
                  V4       \         P                  ! WRRR7      w  r#\        VR4       \        \        P
                  V4       \         P                  ! WRR7      w  r#\        VR4       \        \        P
                  V4       \         P                  ! WRR	 R
7      w  r#\        VR4       \        \        P
                  V4       \         P                  ! WRR R
7      w  r#\        VR4       \        \        P
                  V4       \         P                  ! \        P                  ! V \        P                  R7      V4      w  r#\        VR4       \         P                  ! \        P                  ! V \        P                  R7      V4      w  r#\        VR4       \         P                  ! \        P                  ! V \        P                  R7      \        P                  ! V\        P                  R7      4      w  r#\        VR4       \        P                  ! \        RR7      ;_uu_ 4        \         P                  ! . . 4      w  r#RRR4       \        \        P
                  V4       \        \        P
                  V4       \        P                  ! \        RR7      ;_uu_ 4        \         P                  ! ^ .^ .4      w  r#RRR4       \        \        P
                  V4       \        \        P
                  V4       \        \         \         P                  ^ ^.. RO4       \        \         \         P                  ^ ^.^ ^.. RO4       . ROp ^^^^\        P
                  .p\         P                  ! W4      w  r#\        VR4       ^^\        P
                  ^^.p \         P                  ! W4      w  r#\        VR4       . R Op RRRR\        P
                  .p\         P                  ! W4      w  r#\        VR4       RR\        P
                  RR.p \         P                  ! W4      w  r#\        VR4       . R!Op . R"Op\         P                  ! W4      w  r#\        VR#4       RR\        P
                  R\        P
                  .p \         P                  ! W4      w  r#\        VR#4       \        P
                  RR\        P
                  \        P
                  .p\         P                  ! W4      w  r#\        VR#4       R#   + '       g   i     EL; i  + '       g   i     ELZ; i)$rQ   F)additivec                     ^# rW   r   rf   s   &rm   <lambda>"test_weightedtau.<locals>.<lambda>  s    Qrp   )weigherN)rank)r  r  Tc                     ^# r  r   r  s   &rm   r  r        rp   )r  r  c                     ^# r  r   r  s   &rm   r  r    r  rp   r6   ru  r         (@r   r   r   r   ry  rz  gs$gROor{  r;  gڿgng @ڿg[đ(gIکn࿩ry   rW   rE   )r  r   r   r  r   )r  r   r   r  r   )r   r   r   r   r   gt34+)r[   weightedtaur	   r   r   rb   r   r:  r=  rY   r   r   r   rC  r   r   r   )rf   rg   r  r  r   r?  s         rm   test_weightedtaur    s   AA$$Q*LC12!$$QE:LC12!$$Q;?LC12! 

A
!C*J(#--0 $$Q5LC01!$$Q5LC01!$$QuELC12!$$QuELC12!$$Q6LC12!$$QkJLC12!$$QkJLC12!$$RZZ%DaHLC12$$RZZ%BAFLC12$$RZZ%D%'ZZ%DFLC12	(0G	H	H((R0 
I!	(0G	H	H((!qc2 
I!*e//!QC*e//!Q!QKA	
Aq!RVVA$$Q*LC12	QAA$$Q*LC12#A	c3RVV$A$$Q*LC12	sBFFD#&A$$Q*LC12#A!A$$Q*LC01	sBFFD"&&)A$$Q*LC01	c266266*A$$Q*LC01K 
I	H	H 
I	H	Hs   4[.[[	[,	c                  >   R p \         P                  ! \        V R7      ;_uu_ 4        \        P                  ! ^.R.4       \        P                  ! ^.R.4       \        P                  ! \
        P                  .^4.4       RRR4       R#   + '       g   i     R# ; i)z)One or more sample arguments is too smallr   r   N)r   rC  r   r[   r  r   rb   )r  s    rm   test_segfault_issue_9710r  (  sj     :G	(	8	81#u%1#u%266(RD)	 
9	8	8	8s   ABB	c                  >   ^p \         P                  ! V ^,           4      P                  \        4      p\         P                  ! V ^,           4      P                  \        4      p\         P                  VR&   \
        P                  ! WRRR7      w  r4\        VR4       R# )   r  r   )r  r   r   NrU   )r   r   r  r  rb   r[   r|  r   )r  rf   rg   _r  s        rm   test_kendall_tau_larger  4  sn    A
		!a%&A
		!a%&AFFAbEqGGGAsrp   c            
      <   R  p R p\         P                  P                  ^*4      p\        ^^
4       F  p. p\        V4       F  pWE.V,          ,          pK  	  \	        V4      pVP                  V4       VP                  V4       \         P                  ! \        V4      \         P                  R7      p\        ^4       FT  pR F:  p	V ! WFWqV	4      p
\        P                  ! WFWqV	4      P                  p\        W4       K<  	  VP                  V4       KV  	  K  	  R# )c                    ^ ;p;p;p;r\        \        \        V 4      4      \        \        V 4      4      4       EF>  w  rV'       d"   V! W*,          4      V! W+,          4      ,           M V! W*,          4      V! W+,          4      ,          pW\,          pW
,          W,          8X  d	   W,          pW,          W,          8X  d	   W,          p	W
,          W,          8  d   W,          W,          8  g'   W
,          W,          8  d   W,          W,          8  d   Wl,          pK  W
,          W,          8  d   W,          W,          8  g-   W
,          W,          8  g   EK   W,          W,          8  g   EK6  W|,          pEKA  	  Wg,
          \        P                  ! WX,
          4      ,          \        P                  ! WY,
          4      ,          # ry   )r   r  lenr   rG  )rf   rg   r  r  addtotconcdiscuvr  r  ws   &&&&&        rm   wkq*test_weightedtau_vs_quadratic.<locals>.wkq@  s$   $%%%d%T%AeCFmU3q6];FQ7: 747#33TW%(88 HCtqt|tqt|tad{qtad{adQTkadQTk	qtqt	 < rwwsw//"''#'2BBBrp   c                 "    R V ^,           ,          # )r   r   r  s   &rm   r  .test_weightedtau_vs_quadratic.<locals>.weigherP  s    QU|rp   r6   NrS   )r   r  r  r  r=  r  r   r  intpr[   r  r=  r	   )r  r  r  r  rJ  r  rV  r  r   r  r  r  s               rm   test_weightedtau_vs_quadraticr  >  s    C  ))


#C1R[qAQJA GAAyyQrww/qA$qTC8**1DNN#H5 %
 KK  rp   c                      a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 tR tR tR tR tR tR tR tRtV tR# )TestRegressionig  c                    \         P                  ! \        \        4      p\	        VP
                  R 4       \	        VP                  R4       \	        VP                  R4       \	        VP                  R4       R# )ir   r   N)	r[   
linregressrZ   r   r   	interceptrvaluestderrintercept_stderrrc   r  s   & rm   test_linregressBIGX"TestRegression.test_linregressBIGXh  sR    !!!S)F,,h7FMM3/ 	FMM3/F33S9rp   c                    \         P                  ! \        \        4      p\        VP                  R 4       \        VP
                  R4       \        VP                  R 4       \        VP                  R 4       R# )r   r   N)r[   r  rZ   r   r  r  r  r  r  s   & rm   test_regressXXTestRegression.test_regressXXr  sR    
 !!!Q'F,,c2FMM3/FMM3/F33S9rp   c                   \         P                  ! \        \        4      p\	        VP
                  R 4       \        P                  ! \         P                  RR7      ;_uu_ 4        \         P                  ! \        \        4      P                  pRRR4       \	        VP                  X4       R#   + '       g   i     L(; i)r   zAn input array...r   N)r[   r  rZ   ZEROr   r  r   rC  rb  r   r=  r  )rc   r  
ref_rvalues   &  rm   test_regressZEROX TestRegression.test_regressZEROX  sr    
 !!!T*F,,c2\\%44<OPP40::J QFMM:6 QPs   $*B..B>	c                t   \         P                  ! ^ ^d^d4      pR\         P                  ! ^ ^d^d4      ,          ^
,           pV\         P                  ! \         P                  ! ^ ^^d4      4      ,          p\        P                  ! W4      p\
        p\        \        W44      4       \        VP                  R4       R# )ry   皙?g4_Qc?N)
r   linspacesinr[   r  r   r   
isinstancer   r  )rc   rf   rg   r  lrs   &    rm   test_regress_simple"TestRegression.test_regress_simple  s    KK3$"++ac**R/	RVVBKK2s+,,!!!'
6&'FMM+@Arp   c                6   \         P                  ! ^ ^d^d4      pR\         P                  ! ^ ^d^d4      ,          ^
,           pV\         P                  ! \         P                  ! ^ ^^d4      4      ,          p\        P                  ! \
        RR7      ;_uu_ 4        \        P                  ! WRR7       RRR4       \        P                  ! WRR7      p\        P                  ! WRR7      p\        VP                  ^VP                  ^,          ,
          4       \        P                  ! WR	R7      p\        VP                  VP                  ^,          4       VP                  VP                  u;8X  d   VP                  8X  g   Q h Q hR#   + '       g   i     L; i)
ry   r'  rd  r   re  r  Nr  r  r  )r   r(  r)  r   r   r   r[   r  r
   r<  r  )rc   rf   rg   r  r  r  s   &     rm   test_regress_alternative'TestRegression.test_regress_alternative  s   KK3$"++ac**R/	RVVBKK2s+,,]]:-NOOQ{; P +> &9Q$++/%:; )<T[[1_5{{dkk8T[[88888 POs   FF	c                v   . R	Op. R
Op\         P                  ! WRR7      p\        VP                  R4       \        VP                  R4       \        VP
                  \        P                  ! R4      4       \        VP                  R4       \        VP                  R4       \        VP                  R4       R# )   r  r  gؗh?gag?g->g5ՒO?g]؊E @N)
r2                             )
?   Q   8   [   /   9   r3  H   >   0   gJK@:C)r[   r  r
   sloper  r  r   rG  r<  r  r  )rc   rf   rg   r   s   &   rm   test_regress_against_R%TestRegression.test_regress_against_R  s     ?4q=		?3'89

BGGM$:;

$56

O4,,o>rp   c                   \         P                  ! ^4      p\         P                  ! ^^4      pV^R	.;;,          ^,          uu&   V^ R
.;;,          ^,          uu&   \        P                  ! W4      pR pV! VP                  R4       V! VP
                  R4       V! VP                  R4       V! VP                  R4       V! VP                  R4       V! VP                  R4       R# )rP   c                     \        W^R7      # )rM   r  )r   )rf   rg   s   &&rm   	assert_ae1TestRegression.test_linregress.<locals>.assert_ae  s    &qR88rp   r   r8   gePUn?g.bt>gڽE?gʺL7?NrU   )
r   r   r[   r  rE  r  r  r<  r  r  )rc   rf   rg   r  rK  s   &    rm   test_linregressTestRegression.test_linregress  s    IIbMIIa	A+!	A+!!!!'	9&,,$&""C(&--!12&--1&--!56&))+>?rp   c                   R Rr!\         P                  ! V^V,          V4      p\         P                  ! ^V,          W4      p\        P                  ! W44      p\	        VP
                  R8  4       \        VP
                  R4       \	        \         P                  ! VP                  4      '       * 4       \	        \         P                  ! VP                  4      '       * 4       R# )gJr 11順 NrU   )
r   r(  r[   r  r   r  r   ry  r  r  )rc   rJ  r  rf   rg   r  s   &     rm    test_regress_simple_negative_cor/TestRegression.test_regress_simple_negative_cor  s     f1KK1q5!$KKAq$!!!' 	#$FMM2. 	BHHV]]++,BHHV44556rp   c                   \         P                  ! ^ ^d^d4      pR\         P                  ! ^ ^d^d4      ,          ^
,           pV\         P                  ! \         P                  ! ^ ^^d4      4      ,          p\        P                  ! W4      p\
        p\        \        W44      4       Rp\        W54       R\        V4      9   g   Q hR# )ry   r'  r  N)rE  r  r  r<  r  )
r   r(  r)  r[   r  r   r   r*  r   dir)rc   rf   rg   r  r+  r?  s   &     rm   !test_linregress_result_attributes0TestRegression.test_linregress_result_attributes  s    KK3$"++ac**R/	RVVBKK2s+,,!!!' 
6&' J
F/!S[000rp   c                   \         P                  ! ^4      p\         P                  ! ^^4      p\        P                  ! W4      p\	        VP
                  R4       \	        VP                  R4       \	        VP                  R4       R# )rE   r   N)r   r   r[   r  r   r<  r  r  rc   rf   rg   r  s   &   rm   test_regress_two_inputs&TestRegression.test_regress_two_inputs  s^    IIaLIIaO!!!' 	FMM3/ 	FMM3/F33S9rp   c                   \         P                  ! ^4      p\         P                  ! ^4      p\        P                  ! W4      p\        VP                  R4       \        VP                  R4       \        VP                  R4       R# )rE   r   r   N)	r   r   r  r[   r  r   r<  r  r  rY  s   &   rm   'test_regress_two_inputs_horizontal_line6TestRegression.test_regress_two_inputs_horizontal_line
	  s\    IIaLGGAJ!!!' 	FMM3/ 	FMM3/F33S9rp   c                p   . R NRNRNRNRNRNRNRNRNR	NR
NRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNR NR!NR"Np. R#NR$NR%NR&NR'NRNR(NR)NR*NR+NR,NRNR#NR-NR.NR/NR!NR0NR1NR2NR3NR4NR5NRNRNR6NR/NR&NR)NR+NR7NR8NR9NR:NR;NR Np\         P                  ! W4      p\        VP                  R<4       \        VP                  RB4       \        VP
                  ^,          R=4       \        VP                  R>4       \        VP                  R?4       \        VP                  R@4       RA# )Cr'  gfffffu@ǧ]@g̤@333333$@g     Pl@gfffff҄@gfffff"@g	|@g     H@gq@皙?333333?g     <@g33333ׄ@g      u@g     {@g333333'@g     `@g33333l@gfffff@g̼@g^@rG  gffffff@g1u@g@g     8@g     X@333333&@g33333]@gfffffl@g@gfffff|@r1   rD  g,u@gfffff]@g     @r  g     @g     4@g|@g33333W@gy@gP@gfffff@g4u@g%@gm@gl@g     0@gfffffƋ@gfffff]@gl@gffffff$@gffffff]@g̜l@g33333@g33333|@g?gpX?r   gh-h*<?gg?Ng!п)	r[   r  r   rE  r  r  r<  r  r  rY  s   &   rm   test_nist_norrisTestRegression.test_nist_norris	  s    7s 7E 75 7% 7 7 777 7"'7).725777 7"'7).7157 7 7 !7 #(7 */7 367 	7 	7 !	7 #(	7 */	7 16	7
 7
 7
 !7
 #(7
 */7
 3677s 7E 75 7% 7 7 777 7"'7).725777 7"'7).7157 7 7 !7 #(7 */7 367 	7 	7 !	7 #(	7 */	7 16	7
 7
 7
 !7
 #(7
 */7
 367 !!!'FLL*:;F,,.@AFMM1,.?@FMM3/FMM+;<F335EFrp   c                   \         P                  ! ^ ^d^d4      pR\         P                  ! ^ ^d^d4      ,          ^
,           pV\         P                  ! \         P                  ! ^ ^^d4      4      ,          p\        P                  ! W4      p\         P
                  ! W^4      p\        VP                  V^ ,          4       \        VP                  V^,          4       R# )ry   r'  N)	r   r(  r)  r[   r  polyfitr   rE  r  )rc   rf   rg   r  polys   &    rm   test_compare_to_polyfit&TestRegression.test_compare_to_polyfit2	  s    KK3$"++ac**R/	RVVBKK2s+,,!!!'zz!" 	FLL$q'2F,,d1g6rp   c                   \         P                  ! \        R R7      ;_uu_ 4        \        P                  ! . . 4      p\
        P                  ! \
        P                  ! V4      4      '       g   Q h RRR4       R#   + '       g   i     R# ; i)ru  r   N)r   rC  r   r[   r  r   r  ry  rc   r   s   & rm   test_empty_inputTestRegression.test_empty_input>	  sT    \\,4KLL""2r*C66"((3-(((( MLLLs   A
A::B	c                   \         P                  ! R 4      p\         P                  V^	&   \         P                  ! RR7      ;_uu_ 4        \        P
                  ! W4      pRRR4       \        p\        \        XV4      4       \        V\         P                  3^,          4       \        VP                  \         P                  4       R#   + '       g   i     Ls; i)r   r   invalidN)r   r   rb   errstater[   r  r   r   r*  r   r   r  )rc   rf   r  r+  s   &   rm   test_nan_inputTestRegression.test_nan_inputC	  s    IIcNvv![[**%%a+F + 
62&'6BFF9Q;/V,,bff5 +*s   	CC	c                .   \         P                  P                  R 4      p\         P                  ! ^
4      pVP                  ^
4      pRp\	        \
        VR7      ;_uu_ 4        \        P                  ! W#4       RRR4       R#   + '       g   i     R# ; i)l   ,w* z$Cannot calculate a linear regressionr   N)r   r  r  rY  r   r   r[   r  )rc   r  rf   rg   r   s   &    rm   test_identical_xTestRegression.test_identical_xP	  s_    ii##J/HHRLJJrN4:S11Q" 2111s   "BB	r   N)r   r   r   r   r  r  r$  r,  r/  rF  rN  rR  rV  rZ  r]  rd  ri  rm  rs  rv  r   r   r   s   @rm   r  r  g  s]     :
:*	7	B9*?&@,7$1 ::G6
7)
6# #rp   r  c                     \         P                  ! . RO4      w  rr#\        V R4       \        VR4       Rp\        P                  ! \
        VR7      ;_uu_ 4        \         P                  ! . RORR7       RRR4       \         P                  ! . RORR7      w  rr#\        V R4       \        VR4       . ROp. ROp\         P                  ! WeR	R
R7      w  rr#\        V ^4       \        VR4       \        VR^R7       \        VR^R7       \         P                  ! WeR	RR7      w  rr#\        V ^4       \        VR4       \        VR^R7       \        VR^R7       R#   + '       g   i     L; i)ry   r1   zHmethod must be either 'joint' or 'separate'.'joint_separate' is invalid.r   joint_separater  Njointr   gQ?separater   gQ@rJ  gGz@r   ry   rW   rW   )rW   rE   r   r   rO   rQ      )rI            -   7   N   )r[   theilslopesr   r   r   r   )rE  r  lowerupperr   rf   rg   s          rm   test_theilslopesr  Y	  s1   %*%6%6w%?"Ees#	3'*C	z	-	-),<= 
. &+%6%6y>E&G"Ees#	3' 	!A#A%*%6%6qT>H&J"Eeq!	3'tQ/tQ/%*%6%6qT>E&G"Eeq!	3'tQ/tQ// 
.	-s   EE,	c                  (   . ROp \         P                  ! V ^R7      w  rr4\        V\        P                  ! . RO4      4       \         P                  ! V ^RR7      w  rr4\        V^8H  4       Rp\         P                  ! V ^RR7      p\        We4       R# )rW   numbins)r  defaultreallimitsNrW   r   rE   rW   r   rW   )r   r   r8   r   )r2   rw   )cumcountr   binsizeextrapoints)r[   cumfreqr   r   r   r   r   )rf   cumfreqslowlimr  r  r?  r   s          rm   test_cumfreqr  {	  sy    A-2]]1a-H*Hgh1A(BC-2]]	1.2*HgK1 FJ
--1
AC(rp   c                  4   \         P                  ! . RO4      p \        P                  ! V ^R7      w  rr4\	        V\        . RO4      4       Rp\        P                  ! V ^R7      p\        We4       \        P                  ! . RO^R7      w  rrr4\	        W4       R# )rW   r  Nr  )r1   K}\UU?r  r  )	frequencyr   r  r  )r   r   r[   relfreqr   r   )rJ  relfreqsr  r  r  r?  r   	relfreqs2s           rm   test_relfreqr  	  s~    
#$A-2]]1a-H*Hgh#$MNP GJ
--1
%C( /4mm<NDE/G+Iwh2rp   c                   P   a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
tV tR# )TestScoreatpercentilei	  c                <    . ROV n         . ROV n        . ROV n        R# )r   N)r   r   rw   rO   rV   rz   )r   rM  rF   rJ   r   rE   rW   )r   r   rw   rO   rV   r  r  r   a1a2a3rt  s   &rm   ru  "TestScoreatpercentile.setup_method	  s    *,1rp   c                    \        ^4      R,          p\        \        P                  ! V^ 4      R4       \        \        P                  ! V^d4      R4       \        \        P                  ! V^24      R4       R# )rF   r1   r         @      ?N)r   r   r[   scoreatpercentiler  s   & rm   rW   TestScoreatpercentile.test_basic	  sT    1IOU,,Q2B7U,,Q4c:U,,Q3T:rp   c           	     P   \         P                  p\        V! \        \	        ^
4      4      ^24      R4       \        V! \        \	        ^
4      4      ^2R4      R4       \        V! \        \	        ^d4      4      ^2R	R7      R4       \        V! \
        P                  ! . R
O4      ^2R4      ^74       \        V! \
        P                  ! . R
O4      ^2R4      R4       \        V! \        \	        ^
4      4      ^2RR7      R4       \        V! \        \	        ^
4      4      ^2RRR7      R4       \        V! \        \	        ^d4      4      ^2R	RR7      R4       \        V! \
        P                  ! . R
O4      ^2RRR7      ^74       \        V! \
        P                  ! . R
O4      ^2RRR7      R4       R# )rO   rA   )limitrB   fractioninterpolation_methodr  r  NrE   rJ   rW   rF   rW   rO   r  rO   r  rW   rO   r[   r  r   r=  r  r   r   rc   scoreatpercs   & rm   test_fraction#TestScoreatpercentile.test_fraction	  sP   -- 	[eBi"5s;[eBi"e<cB[eCj!12VDcJ[+!6HErJ[+!6FCSI 	[eBi":V	[eBi"F6@B	 	[eCj!12V6@B	 	[+!6I6@B	 	[+!6F6@B	rp   c           	     b   \         P                  p\        V! \        \	        ^
4      4      ^2RR7      ^4       \        V! \        \	        ^
4      4      ^2RR7      ^4       \        V! \        \	        ^
4      4      ^2RRR7      ^4       \        V! \        \	        ^
4      4      ^2RRR7      ^4       \        V! \        \	        ^d4      4      ^2RRR7      ^4       \        V! \        \	        ^d4      4      ^2RRR7      ^4       \        V! \
        P                  ! . RO4      ^2R	RR7      ^
4       \        V! \
        P                  ! . RO4      ^2R	RR7      ^d4       \        V! \
        P                  ! . RO4      ^2R
RR7      ^4       \        V! \
        P                  ! . RO4      ^2R
RR7      ^
4       R# )rO   r  r  higherr  Nr  r  r  r  r  r  r  s   & rm   test_lower_higher'TestScoreatpercentile.test_lower_higher	  s~   -- 	[eBi"6=?@A	C[eBi"6>@AB	D[eBi"e6=?@A	C[eBi"E6>@AB	D[eCj!12u6=?@A	C[eCj!12u6>@AB	D[,!7Y6=?@B	D[,!796>@AD	F[,!7W6=?@A	C[,!776>@AC	Erp   c           	     >   \        ^4      R,          p\        P                  ! . RO4      p\        P                  ! V. RO4      p\        W24       \        \        V\        P                  4      4       \        \        P                  ! V\        P                  ! . RO4      4      V4       \        P                  ! \        P                   ! ^4      P                  R4      \        P                  ! . RO4      ^R7      p\        . RO. R	O. R
O. R
O.4      p\        WE4       R# )rF   r1   r>   N)ry   r  r  )ry   r  2   r   r   )ry   rW   r  r  )ry   r   rF   )Q?gQ@g(\ @r   rJ   rP   )
r   r   r   r[   r  r
   r   r*  ndarrayr]   )rc   rf   r  r   r  	expected2s   &     rm   test_sequence_per'TestScoreatpercentile.test_sequence_per	  s    1IO88N+%%a6&
3

+,//288L3IJ 	" &&ryy}'<'<U'C')xx0@'AK9-%%' (	 	(rp   c                &   \         P                  p\        ^4      P                  ^^4      p\	        V! VR4      . RO4       . RO. RO. RO.p\	        V! VR^ R7      V4       . R	O. R
O. RO.p\	        V! VR^R7      V4       \        . RO. RO. RO. RO. RO.4      p\         P                  ! V^24      p\	        VP                  R4       \	        VR4       \         P                  ! V^2^ R7      p\	        VP                  R4       \	        V. RO4       R# )rQ   r>   r   N)   r  r  )g      @rB         &@)rE   r   r   rw   )r   rw   rz   rJ   )rF   rI   rO   rP   )      ?g      @g     !@)r2   rB         #@r  rW   rW   rW   )r   r   r   r   r   )r[   r  r   r]   r   r   r  )rc   r  rf   r0r  scores   &     rm   	test_axisTestScoreatpercentile.test_axis	  s    --2Jq!$[M24EFL.9[M:B? /:>[M:B?9	 
 ''2.U[["%UC ''2A6U[[$'UI&rp   c                    \        \        \        P                  ^^.^8RR7       \        \        \        P                  ^.^e4       \        \        \        P                  ^.R4       R# )rW   r   r  NrU   )r   r   r[   r  rt  s   &rm   test_exception$TestScoreatpercentile.test_exception
  sK    j%"9"9Aq62+3	5j%"9"9A3Dj%"9"9A3Crp   c                p   \        \        P                  ! . ^24      \        P                  4       \        \        P                  ! \        P
                  ! . . .4      ^24      \        P                  4       \        \        P                  ! . ^2^c.4      \        P                  \        P                  .4       R# )r  N)r   r[   r  r   rb   r   rt  s   &rm   
test_empty TestScoreatpercentile.test_empty	
  sm    U,,R4bff=U,,RXXr2h-?DbffMU,,R"b:RVVRVV<LMrp   r  N)r   r   r   r   ru  rW  r  r  r  r  r  r  r   r   r   s   @rm   r  r  	  s6     2
;4E2)$'0DN Nrp   r  c                   *  a  ] tR tRt o R tR tR tR tR t]	P                  P                  R]! R$^ 4      4      R 4       tR	 tR
 t]! RRR7      R 4       t]! RRR7      ]	P                  P                  R. R%O^]P&                  ^^^^.. R&O^]P&                  ^^..4      ]	P                  P                  RRR.4      R 4       4       4       t]	P                  P                  R]! R'^4      4      R 4       tR tR tR tR t]	P                  P                  RRR.4      R 4       tR t]	P                  P9                  R4      ]	P                  P                  R]P:                  ! R(4      ]P:                  ! R)4      .4      R  4       4       tR! tR"t V t!R## )*TestModei
  c                H   \        \        \        VR 7      ;_uu_ 4        \        P                  ! VP                  . 4      4      w  r#RRR4       \        XVP                  VP                  4      4       \        XVP                  R4      4       R#   + '       g   i     LR; i)r\  Nr   )r%   r   r   r[   moderY   r0   rb   )rc   rd   valscountss   &&  rm   r  TestMode.test_empty
  sd    +3HRPP ::bjjn5LD Qbjj01

2/ QPs   (BB!	c                    \         P                  ! R 4      w  r\        V\        P                  ! R .4      4       \        V\        P                  ! ^.4      4       R# )r   N)r[   r  r   r   r   )rc   r  r  s   &  rm   rz  TestMode.test_scalar
  s9    zz"~T288RD>*VRXXqc]+rp   c                    VP                  . RO4      p\        P                  ! V4      p\        V^ ,          VP                  ^4      4       \        V^,          VP                  ^4      4       R# )r   Nr   rw   rW   rO      r   rE   rz   rF   rz   rO   rz   rY   r[   r  r0   )rc   rd   data1r  s   &&  rm   rW  TestMode.test_basic
  sK    

BCzz% QA/QA/rp   c           
        . ROp. ROp. ROp. ROp. ROpVP                  W#WEV.4      p\        P                  ! VRRR7      p\        V^ ,          VP                  ^..4      4       \        V^,          VP                  ^..4      4       \        P                  ! V^ RR7      p\        V^ ,          VP                  . R	O.4      4       \        V^,          VP                  . R
O.4      4       \        P                  ! V^RR7      p\        V^ ,          VP                  ^
.^
.^.^.^..4      4       \        V^,          VP                  ^.^.^.^.^..4      4       R# )rO   NTr?   keepdimsrO   rO      (   rO   rO   rO   rO   r  rO   r  r  r  r  r  r  r  r  r  r  rO   rO   r  r  rE   r   r   rE   r  	rc   rd   r  data2data3data4data5arrr  s	   &&       rm   test_axes_keepdimsTestMode.test_axes_keepdims#
  s(        jj%e<=zz#D48QbTF!34QaSE!23zz#A5Q-=,>!?@Q\N!;<zz#A5QbTB4"tbT,J!KLQaS1#sQC!,E!FGrp   c                   . ROp. ROp. ROp. ROp. ROpVP                  W#WEV.4      p\        P                  ! VRR7      p\        V^ ,          VP                  ^4      4       \        V^,          VP                  ^4      4       \        P                  ! V^ R7      p\        V^ ,          VP                  . RO4      4       \        V^,          VP                  . R	O4      4       \        P                  ! V^R7      p\        V^ ,          VP                  . R
O4      4       \        V^,          VP                  . RO4      4       R# )rO   Nr>   r  r  r  r  r  r  r  )rO   rO   r  r  r  )rE   r   r   r   r   r  r  s	   &&       rm   	test_axesTestMode.test_axes7
  s         jj%e<=zz#D)QB0QA/zz#A&Q,<!=>QL!9:zz#A&Q,@!ABQO!<=rp   r?   c                   \         P                  P                  R 4      pVP                  VP                  R4      4      p\        P
                  ! WDP                  V,           R7      p\        P
                  ! WAR7      p\        VP
                  VP
                  4       \        VP                  VP                  4       R# )l   q!<M r>   N)rO   rP   rQ   rR   )	r   r  r  rY   r[   r  ndimr0   count)rc   r?   rd   r  rJ  r  r  s   &&&    rm   test_negative_axes_gh_15375$TestMode.test_negative_axes_gh_15375K
  sv    ii##J/JJszz"234zz!&&+.zz!'		499-

DJJ/rp   c                R   VP                  . RO4      pVP                  . 4      p\        P                  ! V4      pRp\        WEVR7       \	        \
        \        VR7      ;_uu_ 4        \        P                  ! V4      pRRR4       \        XWQR7       R#   + '       g   i     L; i)r   rd   r\  Nr  )r  r   )rY   r[   r  r   r%   r   r   )rc   rd   r  r  r  r?  actual2s   &&     rm   test_mode_result_attributes$TestMode.test_mode_result_attributesT
  st    

BC

2E"&
F26+3HRPPjj'G QGZ7 QPs   (BB&	c                *   VP                  ^\        P                  ^^^
^^^^^^^
^.4      p\        P                  ! V4      p\        V^ ,          VP                  ^VP                  R7      4       \        V^,          VP                  ^4      4       R# )r   r6   N)rY   r   rb   r[   r  r0   r7   )rc   rd   r  r  s   &&  rm   test_nan_propagateTestMode.test_nan_propagate^
  sr    

Arvvq!RQ1aBJKE"q	2::au{{:#CDq	2::a=1rp   Tlazy arrays don't do 'raise'.r   c                   VP                  ^\        P                  ^^^
^^^^^^^
^.4      p\        P                  ! VRR7      p\        VP                  VP                  R4      4       \        VP                  VP                  ^4      4       \        \        \        P                  VRR7       \        \        \        P                  VRR7       R# )r   r   r   r   r   r   N)	rY   r   rb   r[   r  r0   r   r   r   )rc   rd   r  r   s   &&  rm   test_nan_omitTestMode.test_nan_omitd
  s    

Arvvq!RQ1aBJKjj62"**R.1		2::a=1j%**eHj%**eIrp   zlazy arrays don't do 'omit'.datar  Fc                    \         P                  ! VP                  V4      R VR7      pV'       d,   \        V^ ,          ^ ,          VP                  R4      4       R# \        V^ ,          VP                  R4      4       R# )r   )r   r  r   N)r[   r  rY   r0   )rc   r  r  rd   r  s   &&&& rm   test_smallest_equalTestMode.test_smallest_equalm
  sR     BJJt,(SF1IaL"**R.9F1Irzz"~6rp   c                   \         P                  P                  R 4      pVP                  VP	                  RR7      4      p\
        P                  ! WARR7      p\        VP                  4      pVP                  V4       \         P                  P                  VP                  P                  V4       \         P                  P                  VP                  P                  V4       R# )i:r  Fr  Nr   r   rw   )r   r  r  rY   uniformr[   r  r=  r  popr"  r   r   )rc   r?   rd   r  rJ  r   reference_shapes   &&&    rm   test_mode_shape_gh_9955 TestMode.test_mode_shape_gh_9955|
  s    ii##I.JJs{{	{23jj6qww-D!


%%chhnnoF


%%ciiooGrp   c                    VP                  ^\        P                  ^\        P                  .4      p\        P                  ! V4      pVP                  VP                  4      '       d   VP                  ^8X  g   Q hR# rE   N)rY   r   rb   r[   r  ry  r   rc   rd   rJ  r   s   &&  rm   !test_nan_policy_propagate_gh_9815*TestMode.test_nan_policy_propagate_gh_9815
  sU     JJ2661bff-.jjmxx!!cii1n44nrp   c                |   VP                  R4      p\        P                  ! V^RR7      pVP                  P                  VP                  P                  u;8X  d	   R8X  g   Q h Q h\        P                  ! V^RR7      pVP                  P                  VP                  P                  u;8X  d	   R8X  g   Q h Q hR# )rW   Fr  TN)rW   rE   r   ry   )rW   r   ry   )rW   rW   r   ry   )rY  r[   r  r  r   r  s   &&  rm   test_keepdims_emptyTestMode.test_keepdims_empty
  s    HH\"jjU3xx~~=I=====jjT2xx~~@L@@@@@rp   c                V   VP                  ^^^\        P                  .^^\        P                  ^..4      p\        P                  ! V^RR7      p\        VP                  VP                  RR.4      4       \        VP                  VP                  ^^.4      4       \        P                  ! V^RR7      p\        VP                  VP                  R.R..4      4       \        VP                  VP                  ^.^..4      4       VP                  V4      p\        P                  ! VRRR7      p\        P                  ! \        V4      RR7      p\        VP                  VP                  4       \        VP                  VP                  4       VP                  P                  VP                  P                  u;8X  d	   R8X  g   Q h Q h\        P                  ! VRRR7      p\        P                  ! \        V4      RR7      p\        \        VP                  4      \        VP                  4      4       VP                  P                  R	8X  g   Q h\        \        VP                  4      \        VP                  4      4       VP                  P                  R	8X  g   Q hR# )
rW   Fr  r   r   TNr  r   r  )	rY   r   rb   r[   r  r0   r   r-   r  )selfselfrd   rJ  r   r  s   &&   rm   test_keepdims_nonemptyTestMode.test_keepdims_nonempty
  s   JJAq"&&)Aq"&&!+<=>jjU3"**b"X"67		2::q!f#56jjT2"**rdRD\":;		2::sQCj#9:JJqMjj6jj!u5#((+		399-xx~~5255555jj5jj!t4*HSXX,>?xx~~'''+Xcii-@Ayy&(((rp   c                h   ^\         P                  \         P                  \         P                  ^.\         P                  \         P                  \         P                  \         P                  ^.^^\         P                  ^^..p\        P                  ! V^RRR7      p\	        VP                  . RO4       \	        VP
                  . RO4       \        P                  ! V^RRR7      p\	        VP                  ^.^.^..4       \	        VP
                  ^.^.^..4       \         P                  ! V4      p\        P                  ! VRRRR7      p\        P                  ! VP                  4       RRR7      p\	        W#4       VP                  P                  VP                  P                  u;8X  d	   R	8X  g   Q h Q h\        P                  ! VRRRR7      p\        P                  ! VP                  4       RRR7      p\        VP                  P                  4       VP                  P                  4       4       VP                  P                  R
8X  g   Q h\        VP
                  P                  4       VP
                  P                  4       4       VP
                  P                  R
8X  g   Q hR# )rW   Fr   )r?   r  r   TN)r  r   )rW   rE   rw   )rE   rW   rE   r   r  )
r   rb   r[   r  r   r   r   r  r  r   )rc   rJ  r   r  s   &   rm   test_keepdims_nan_omitTestMode.test_keepdims_nan_omit
  s   +ffbffbffbffa0BFFAq!# jjUvF388Y/399i0jjTfE388qcA3_5399sQC!o6HHQKjj&IjjUvF3$xx~~5255555jjHjjTfESXX^^%sxx~~'78xx~~'''SYY__&		(9:yy&(((rp   r   r  r   c                F   R
p\         P                  ! V4      p\         P                  VR&   \        P                  ! V^RVR7      p\        VP                  . RO4       \        VP                  . RO4       \         P                  ! R\         P                  3R\         P                  R3.4      p\         P                  ! ^
VR7      pRp\        P                  ! \        VR7      ;_uu_ 4        \        P                  ! WaR7       R	R	R	4       R	#   + '       g   i     R	# ; i)r   F)rJ  r?   r  r   asdfqwerr6   z=Argument `a` is not....|An argument has dtype...|The DType...r   r   Nr  r  rU  rE   r   r   r   r  )r   r  rb   r[   r  r   r   r7   uint8r   rY  r   r   	TypeError)rc   r   r  r  r   my_dtypetestr  s   &&      rm   test_gh16955TestMode.test_gh16955
  s     wwu~VVT
jj4a%JO388\2399l3 88fbhh/&"**d1KLMxx(+Q]]9G44JJt3 5444s   -DD 	c                   \         P                  ! \        \        R 7      ;_uu_ 4        \        P
                  ! . 4      pRRR4       \        P                  ^ 3p\        XV4       \         P                  ! \        \        R 7      ;_uu_ 4        \        P
                  ! \        P                  .RR7      pRRR4       \        W4       . RO\        P                  \        P                  \        P                  ..p\         P                  ! \        \        R 7      ;_uu_ 4        \        P
                  ! V^RR7      pRRR4       ^\        P                  .^^ .3p\        W4       \        P
                  ! V^RR7      p^\        P                  .^^.3p\        W4       \        P                  ! . . .4      p\         P                  ! \        \        R 7      ;_uu_ 4        \        P
                  ! V^R7      pRRR4       \        P                  \        P                  .^ ^ .3p\        W4       R#   + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL&; i  + '       g   i     L}; i)r   Nr   r   r  r  r>   )r   r5  r5  )r   rC  r   r   r[   r  r   rb   r   r   r   r   r   )rc   r   r  rJ  zs   &    rm   test_gh9955TestMode.test_gh9955
  s    \\,4IJJ**R.C KvvqkS#\\,4EFF**bffX&9C GSrvvrvvrvv67\\,4EFF**QQ6:C GBFF|aV$Sjj{;BFF|aV$SHHb"X\\,4IJJ**QQ'C K!Q(S/ KJJ
 GFF
 GFF KJs/   H3(I$I!I/3I	I	I,	/I?	zignore::RuntimeWarningr5  c                   VP                  V4      pVP                  ^ 8X  dL   \        P                  ! \        \
        R7      ;_uu_ 4        \        P                  ! VRRR7      pRRR4       M\        P                  ! VRRR7      pVP                  VRRR7      pX^ ,          P                  V^,          P                  u;8X  d   VP                  u;8X  d	   R8X  g   Q h Q hR#   + '       g   i     Ln; i)ry   r   NTr  r  )
rY   r  r   rC  r   r   r[   r  r^   r  )rc   r5  rd   r   r  s   &&&  rm   test_gh17214TestMode.test_gh17214
  s     JJqM66Q;08MNNjj= ON **QTD9CggadTg21v||s1v||EsyyEIEEEEE ONs   C%%C5	c           	         ! R  R4      p\         '       d   RMRp\        P                  ! \        VR7      ;_uu_ 4        \        P
                  ! V! \        P                  ! ^4      4      4       RRR4       \         '       d   RMRp\        P                  ! \        VR7      ;_uu_ 4        \        P
                  ! \        P                  ! ^\        R7      4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)c                   0   a  ] tR tRt o R tRR ltRtV tR# )8TestMode.test_raise_non_numeric_gh18254.<locals>.ArrLikei	  c                    Wn         R # r  _xr  s   &&rm   __init__ATestMode.test_raise_non_numeric_gh18254.<locals>.ArrLike.__init__
  s    rp   Nc                @    V P                   P                  \        4      # r  )r@  r  object)rc   r7   r@   s   &&&rm   	__array__BTestMode.test_raise_non_numeric_gh18254.<locals>.ArrLike.__array__  s    ww~~f--rp   r?  )NN)r   r   r   r   rA  rE  r   r   r   s   @rm   ArrLiker=  	  s     . .rp   rG  z'...only boolean and numerical dtypes...zCannot interpret...r   Nz*Argument `a` is not recognized as numeric.r6   )	r+   r   r   r/  r[   r  r   r   rD  )rc   rG  r  s   &  rm   test_raise_non_numeric_gh18254'TestMode.test_raise_non_numeric_gh18254  s    	. 	. AP<- 	 ]]9G44JJwryy|,- 5 AP<D 	]]9G44JJryy&12 54 54
 544s   1C',1C:'C7	:D	r   N)r   rw   rW   rW   r   )r   rw   r   rV   r  r.  )"r   r   r   r   r  rz  rW  r  r  r   r   r  r  r  r  r	  r   r  r   rb   r  r  r  r   r%  r(  r2  r6  r   emptyr9  rH  r   r   r   s   @rm   r  r  
  s    0,
0H(>( [[VU2q\20 3082 .MNJ OJ .LM[[V	
BFFAq!Q	
BFFAq	&  [[Z%77 8 N7 [[VU2q\2H 3H5A)4)6 [[\K+@A4 B4": [[ 89[[S288I#68K"LMF N :F3 3rp   r  c                      a  ] tR tRt o . ROtRt]P                  P                  R4      R 4       t	R t
]! RRR7      R	 4       tR
tV tR# )TestSEMi  r   r  c                ^   VP                  V P                  4      R,          p\        V4      '       dI   \        P                  ! \
        \        R 7      ;_uu_ 4        \        P                  ! V4      pRRR4       Mr\        P                  ! 4       ;_uu_ 4        \        P                  ! R\        4       \        P                  ! R\        4       \        P                  ! V4      pRRR4       VP                  X4      '       g   Q hR#   + '       g   i     L+; i  + '       g   i     L>; i)r   Nr   r   )rY   scalar_testcaser'   r   rC  r   r   r[   semr   r   simplefilterUserWarningr   ry  )rc   rd   rO  rg   s   &&  rm   test_sem_scalarTestSEM.test_sem_scalar"  s     **T%9%9:2>B<<08MNNIIo. ON ((**%%h<%%h?IIo. + xx{{{ ON +*s   D	AD	D	D,	c                @   VP                  V P                  4      p\        P                  ! V4      p\	        W1P                  R 4      4       \        V P                  4      p\	        \        P                  ! V^ R7      WD^,
          ,          R,          ,          \        P                  ! V^R7      4       VP                  R4      pVP                  V^	8H  VP                  V4      p\        \        P                  ! V4      VP                  VP                  4      4       R# )g㝎?ddofr1   r   N)
rY   testcaser[   rP  r/   r  r   whererb   r0   )rc   rd   rX  rg   r  rf   s   &&    rm   test_semTestSEM.test_sem5  s    ::dmm,IIh::l34		(3qA#wnD		(3	5 IIcNHHQ!VRVVQ'		!bjj&89rp   Tz(`nan_policy` only supports NumPy backendr   c                    \         P                  ! R 4      p\         P                  V^	&   \        \        P
                  ! VRR7      R4       \        \        \        P
                  VRR7       \        \        \        P
                  VRR7       R# )r   r   r   gH=6?r   r   N)r   r   rb   r   r[   rP  r   r   r   s   && rm   test_sem_nan_policyTestSEM.test_sem_nan_policyA  sX     IIcNvv!UYYqV46HIj%))Q7Cj%))Q8Drp   r   NrH  )r   r   r   r   rX  rO  r   r   r   rS  rZ  r   r]  r   r   r   s   @rm   rM  rM    s[       HO[[ LM N$
: dGIEIErp   rM  c                     a  ] tR tRt o ]P
                  P                  R. RO. RO3. RO. RO3.4      R 4       tR tR t	]P
                  P                  R^ ^.4      R 4       t
]P
                  P                  R^ ^.4      R 4       t]! R	R
R7      R 4       t]P
                  P                  R4      ]P
                  P                  R4      R 4       4       t]P
                  P                  R4      R 4       tRtV tR# )TestZmapiK  zx, yc                    VP                  V4      VP                  V4      r!WP                  V4      ,
          VP                  V^ R7      ,          p\        P                  ! W4      p\        WT4       R# )ry   rr   N)rY   r^   r   r[   zmapr/   )rc   rf   rg   rd   r  r5  s   &&&&  rm   	test_zmapTestZmap.test_zmapN  sR     zz!}bjjm1
NbffQ1f&==JJq$rp   c                   VP                  . RO. RO. RO.4      pRpRpR	p\        P                  ! W"^ R7      p\        P                  ! W"^R7      pV) V) ^,          V) ^,          R .R WU) ^,          V.W5) ^,          WS) ..p. R
OV) V) V) R.. RO.p	VP                  V4      pVP                  V	4      p	\        Wh4       \        Wy4       R# r   r>   Nr   r   r   r   )r   r   r   r   )r   r   r   r   .!	?gLXz?3Ey?;f?rO  rO  r   r   )r   rO  r   rO  rY   r[   rb  r/   
rc   rd   rf   t1t2t3z0rW  z0_expectedz1_expecteds
   &&        rm   test_zmap_axisTestZmap.test_zmap_axis[  s    JJ,,,. / ZZ1%ZZ1%bSURCE3/RQ+CE2s+- .bS2#w/-/ jj-jj-((rp   c                   VP                  . RO. RO.4      p\        P                  ! W"^^R7      pVP                  . RO4      R,          pVP                  . RO4      R,          p\        VR	,          V4       \        VR
,          V4       R# r   )r?   rW  Nrg  )r   r   r   r   )      rx  r1   r1   g3Ey?)      rx  r1   r2   g4?ry   r   rW   r   rl  rc   rd   rf   r5  rr  rs  s   &&    rm   test_zmap_ddofTestZmap.test_zmap_ddoft  ss    JJ,,. / JJq!!,jj!78*Ejj!78D$-$-rp   rW  c                   VP                  RR^\        P                  .4      pVP                  RR^^^\        P                  .4      p\        P                  ! W4VRR7      p\        P                  ! W4R,          VR7      p\        WV4       R# )	r   r   rW  r   :Nrw   NrV  NrV   rU   )rY   r   rb   r[   rb  r/   )rc   rW  rd   scorescomparer5  r  s   &&&    rm   test_zmap_nan_policy_omit"TestZmap.test_zmap_nan_policy_omit  sn     RQ/0**b"aB78JJvTfE jj48rp   c                   VP                  VP                  RR4      R4      p\        P                   ! \        P                  ! R^^4      R4      p\        P                  VR	&   \        P                  VR
&   \        P                  VR&   VP                  VR,          \        P                  ! VR,          4      ( ,          4      pVP                  VR,          \        P                  ! VR,          4      ( ,          4      pVP                  V4      p\        P                  ! W4R^VR7      p\        P                  ! VR,          VVR7      p\        P                  ! VR,          VVR7      p	VP                  W34      p
\        Wz4       R# )r8   r   r   )r   r?   rW  rV  N      rE   rU   r  )ry   r   rx   r  rz  r{  )r]   r   r   r(  rb   rY   ry  r[   rb  stackr/   )rc   rW  rd   r  r  compare_0_notnacompare_1_notnar5  r  r  r  s   &&&        rm   #test_zmap_nan_policy_omit_with_axis,TestZmap.test_zmap_nan_policy_omit_with_axis  s   BIIdC0':**R[[Q3W= **WT]BHHWT]4K3K%LM**WT]BHHWT]4K3K%LM**W%JJv6Mzz&,#%zz&,#%88TL)$rp   Tr  r   c                    VP                  . RO4      pVP                  RR^^^VP                  .4      p\        P                  ! \        RR7      ;_uu_ 4        \
        P                  ! W#RR7       RRR4       R#   + '       g   i     R# ; i)	rW   zinput contains nanr   r   r   Nr  r  rV   )rY   rb   r   r   r   r[   rb  )rc   rd   r  r  s   &&  rm   test_zmap_nan_policy_raise#TestZmap.test_zmap_nan_policy_raise  s_    I&**b"aB78]]:-ABBJJv7; CBBBs   A<<B	r}  r|  c                `   VP                  ^4      pVP                  ^4      pVP                  VP                  ) VP                  VP                  .4      p\        \        RVR7      ;_uu_ 4        \        P                  ! W#4      pRRR4       \        XV4       R#   + '       g   i     L; i)r   Precision loss occurred...r\  N)
r   r  rY   r!  rb   r%   r   r[   rb  r0   )rc   rd   r  r  r  r   s   &&    rm   test_degenerate_inputTestZmap.test_degenerate_input  sz     1''!*jj266'26626623/KPRSS**V-C TS! TSs   0BB-	c                    \         P                  ! VP                  . RO4      VP                  . RO4      4      pVP                  . RO4      p\        W#4       R# )rW   Nr  )rW                 ?rU   r  )y      ?        y       @        y      @        y      @        )r[   rb  rY   r/   )rc   rd   r   r  s   &&  rm   test_complex_gh22404TestZmap.test_complex_gh22404  s<    jjL12::>N3OPjj9:!rp   r   NrH  r  )r   r   r   r   r   )r   r   r   r   r   r   r  rc  rt  r}  r  r  r   r  r   r  r  r   r   r   s   @rm   r`  r`  K  s     [[
,	-
,	-	/
%
%)2
. [[VaV,	  -	  [[VaV,% -%( .MN< O< [[ WX[[ VW" X Y" [[ WX" Y"rp   r`  c                   
  a  ] tR tRt o R tR tR tR tR tR t	]
! RR	R
7      R 4       tR t]P                  P                  R4      R 4       t]P                  P                  R4      R 4       t]P                  P                  R4      R 4       t]P                  P                  R4      R 4       t]P                  P)                  R]P,                  ! . 4      ]P.                  ! R4      .4      R 4       t]R 4       tRtV tR# )
TestZscore  c                    \         P                  ! VP                  . RO4      4      p. ROp\        W!P                  V4      4       R# )rW   Nr  )gOT\wg%ܿg%?gOT\w?)r[   zscorerY   r/   )rc   rd   rg   desireds   &&  rm   test_zscoreTestZscore.test_zscore  s3     LLL126::g./rp   c                   VP                  . RO. RO. RO.4      pRpRpR	p\        P                  ! V^ R7      p\        P                  ! V^R7      pV) V) ^,          V) ^,          R .R WU) ^,          V.W5) ^,          WS) ..p. R
OV) V) V) R.. RO.p	\        WaP                  V4      4       \        WqP                  V	4      4       R# rf  rY   r[   r  r/   rm  s
   &&        rm   test_zscore_axisTestZscore.test_zscore_axis  s    JJ,,,. / \\!!$\\!!$bSURCE3/RQ+CE2s+- .bS2#v.-/ 	JJ{34JJ{34rp   c                   VP                  . RO. RO.4      p\        P                  ! V^^R7      pVP                  . RO4      R,          pVP                  . RO4      R,          p\        VR	,          V4       \        VR
,          V4       R# rw  r  r|  s   &&    rm   test_zscore_ddofTestZscore.test_zscore_ddof  ss    JJ,,. / LL+jj!78*Ejj!78+F$-$-rp   c                    VP                  ^^\        P                  ^^.4      p\        P                  ! VRR7      p\        W1P                  VP                  VP                  4      4       R# )rW   r  r   N)rY   r   rb   r[   r  r0   r~   r  rc   rd   rf   r5  s   &&  rm   test_zscore_nan_propagate$TestZscore.test_zscore_nan_propagate  sJ    JJ1bffa+,LL{377177BFF34rp   c                    VP                  ^^VP                  ^^.4      p\        P                  ! VRR7      pVP                  RRVP                  RR.4      p\	        W44       R# )rW   r   r   gIHb=?gIHb=?NgIHb=gIHb=)rY   rb   r[   r  r/   rc   rd   rf   r5  r  s   &&   rm   test_zscore_nan_omitTestZscore.test_zscore_nan_omit  s_    JJ1bffa+,LLv.::22!vv11	! " 	$rp   c                $   VP                  VP                  R RRRR.4      p\        P                  ! V^RR7      pVP	                  VP                  VP                  .4      \        P                  ! VR,          ^R7      .4      p\        W44       R	# )
r   r   r8   r   r   r   r  r  rV  N)rY   rb   r[   r  concatr/   r  s   &&   rm   test_zscore_nan_omit_with_ddof)TestZscore.test_zscore_nan_omit_with_ddof  sl    JJS#sC89LLv699bjj"&&2ELL2Q4OPQ$rp   Tr  r   c                    VP                  ^^VP                  ^^.4      p\        P                  ! \        RR7      ;_uu_ 4        \
        P                  ! VRR7       RRR4       R#   + '       g   i     R# ; i)rW   zThe input contains nan...r   r   r   N)rY   rb   r   r   r   r[   r  r   s   && rm   test_zscore_nan_raise TestZscore.test_zscore_nan_raise  sO    JJ1bffa+,]]:-HIILLw/ JIII   A((A9	c                0   VP                  R.^,          4      p\        \        RVR7      ;_uu_ 4        \        P                  ! V4      pRRR4       \        XVP                  VP                  VP                  4      4       R#   + '       g   i     LB; i)gʡE?r  r\  NgʡE)	rY   r%   r   r[   r  r0   r~   r  rb   r  s   &&  rm   test_zscore_constant_input_1d(TestZscore.test_zscore_constant_input_1d  sa    JJx!|$/KPRSSQA T277177BFF34 TSs   BB	r|  c                   VP                  . RO. RO.4      p\        \        RVR7      ;_uu_ 4        \        P                  ! V^ R7      pRRR4       \        XVP                  VP                  RRR.VP                  RRR..4      4       \        \        RVR7      ;_uu_ 4        \        P                  ! V^R7      pRRR4       \        XVP                  VP                  VP                  VP                  VP                  VP                  .4      \        P                  ! VR	,          4      .4      4       \        P                  ! VRR7      p\        WQP                  \        P                  ! VP                  VR
4      4      VP                  4      4       VP                  R4      p\        \        RVR7      ;_uu_ 4        \        P                  ! VRR7      pRRR4       \        WQP                  WaP                  4      4       R#   + '       g   i     EL; i  + '       g   i     ELk; i  + '       g   i     L^; i)r   r  r\  r>   Nr   r   r   r   r   r   r  r        *@rO  r{  rU   )r   rz   )rY   r%   r   r[   r  r/   rb   r0   r  r]   r  r  	full_like)rc   rd   rf   rq  rW  r5  rg   s   &&     rm   test_zscore_constant_input_2d(TestZscore.test_zscore_constant_input_2d
  s   JJ002 3/KPRSSaa(B TBJJtT(B)+c3(?(A B 	C /KPRSSaa(B TBHHbjj"&&"&&"&&"&&1Q&R&+ll1T7&;&= > 	? LL&::ell2::a3G&H!''RSGGFO/KPRSSQT*A T<<6623! TSS
 TSS TSs#   H&H!H5H	!H2	5I	c                z   VP                  . R	OR RRVP                  .R RVP                  R ..4      pR
pRp\        \        RVR7      ;_uu_ 4        \        P
                  ! VR^ R7      pRRR4       \        XVP                  VP                  V) RVP                  .VP                  ^ RVP                  .VP                  W1P                  VP                  ..4      4       \        \        RVR7      ;_uu_ 4        \        P
                  ! VR^R7      pRRR4       \        XVP                  VP                  VP                  VP                  VP                  .V) ^ W1P                  .V) ^,          WAP                  V) ^,          ..4      4       R#   + '       g   i     EL4; i  + '       g   i     L; i)r   r  r  r  r\  r   r   r?   Nr   r  rh  rj  rO  )rY   rb   r%   r   r[   r  r/   )rc   rd   rf   r  s2rq  rW  s   &&     rm   -test_zscore_constant_input_2d_nan_policy_omit8TestZscore.test_zscore_constant_input_2d_nan_policy_omit   sm   JJ0tT2662tRVVT24 5 /KPRSSaF;B TBJJ!T266(B)+C(@)+FFBFF(C(E F 	G /KPRSSaF;B TBJJ(H*+Q66(:*,QFFRCE(B(D E 	F TSS TSs   F=F*F'	*F:	c           	        VP                  \        P                  \        P                  \        P                  \        P                  .. RO.4      p\        P                  ! VR^R7      p\        W1P                  \        P                  \        P                  \        P                  \        P                  .. RO.4      4       R# )r   r   r  N)r   r   r  r  rk  )rY   r   rb   r[   r  r/   r  s   &&  rm   test_zscore_2d_all_nan_row%TestZscore.test_zscore_2d_all_nan_row4  s     JJ802 3LLvA6::'G'='? @ 	Arp   c                    VP                  RVP                  4      p\        P                  ! VRRR7      p\	        W24       R# )rE   r   Nr  rW  )r~   rb   r[   r  r0   )rc   rd   rg   r5  s   &&  rm   test_zscore_2d_all_nan!TestZscore.test_zscore_2d_all_nan=  s2     GGFBFF#LLvD9rp   rf   c                j    VP                  V4      p\        P                  ! V4      p\        W14       R # r  )rY   r[   r  r0   )rc   rf   rd   r5  s   &&& rm   test_zscore_empty_input"TestZscore.test_zscore_empty_inputD  s$    JJqMLLOrp   c                ,   \         P                  P                  R 4      pVP                  ^
4      p\         P                  ! V4      p\         P
                  P                  W44      pRVP                  ^ &   \        P                  ! VR,          4      p\         P                  ! \         P                  ! V4      4      '       d   Q h\        P                  ! V4      p\        VR,          V4       \        P                  ! VRR7      p\        VR,          V4       V^,          VR&   \        P                  ! \        RR7      ;_uu_ 4        \        P                  ! V4      pRRR4       \!        VR,          \         P"                  4       \        P                  ! \        RR7      ;_uu_ 4        \        P                  ! VRR7      pRRR4       \!        VR,          \         P"                  4       R#   + '       g   i     L; i  + '       g   i     LF; i)i_ Tr  Nr>   r  r   )r   r  r  r  
zeros_liker}  masked_arraymaskr[   r  anyry  r
   r   rC  r   r   rb   )rc   rd   r  rf   r  rg   r  r   s   &&      rm   $test_zscore_masked_element_0_gh19039/TestZscore.test_zscore_masked_element_0_gh19039J  sQ    ii##G,#}}QEEq'q	ll1R5!66"((3-((((ll1oB%ll14(B%!"\\.0LMM,,q/C NSWbff%\\.0LMM,,qt,C NSWbff% NM NMs   G0,H0H 	H	r   N)r   ry   rw   )r   r   r   r   r  r  r  r  r  r  r   r  r  r   r   r   r  r  r  r  r  r   r   rY  r  r#   r  r   r   r   s   @rm   r  r    s-    05.
.5
%% .MN0 O0
5 [[ VW4 X4* [[ VWF XF& [[ VWA XA [[ VW X [[S288B<)1D"EF G
 & &rp   r  c                   6   a  ] tR tRt o R t]R 4       tRtV tR# )TestGZscoreic  c           	        \         P                  ! . RO4      p\        P                  ! VP                  V4      4      p\         P                  ! V\        P
                  ! V4      ,          4      \         P                  ! \        P                  ! V^ R7      4      ,          p\        W1P                  WAP                  R4      P                  R7      4       R# )rW   rV  r   r6   Nr  )	r   rY   r[   gzscoreloggmeangstdr/   r7   )rc   rd   rf   r5  r  s   &&   rm   test_gzscore_normal_array%TestGZscore.test_gzscore_normal_arraye  s{    JJ|$MM"**Q-(&&U[[^+,rvvejj6K/LL::gZZ^5I5I:JKrp   c                   \         P                  ! . RO4      p. ROp\         P                  P                  WR7      p\        P
                  ! V4      pRR\         P                  RR.p\         P                  P                  WRR7      p\        VP                  4       VP                  4       4       \        VP                  VP                  4       \        V\         P                  P                  4      '       g   Q hR# )	rW   r  g/A?g(/?N)rW   rE   rU   r   r   )ry   ry   rW   ry   ry   g0jg`ȿ)r   r   r}  r  r[   r  r!  r
   
compressedr  r*  MaskedArray)rc   rf   r  mxr5  r  s   &     rm   test_gzscore_masked_array%TestGZscore.test_gzscore_masked_arrayk  s    HH%&UU-MM"#_bffn"$%%$$W$8(:(:(<=-!RUU..////rp   r   N)	r   r   r   r   r  r#   r  r   r   r   s   @rm   r  r  c  s     L 
0 
0rp   r  c                   t  a  ] tR tRt o R tR tR tR tR t]	P                  P                  R. RO4      R	 4       t]	P                  P                  R
R]P                  RR.3R]P                  ]P                  R.3.4      R 4       t]	P                  P                  R^. RO3R.4      R 4       tR tRtV tR# )TestMedianAbsDeviationiy  c                r    R R RRRRRRRRRRR	R	R	R
RRRRRRR\         P                  .V n        . ROV n        R# )皙@r  rt   皙@r  333333@=
ףp=@r  (\
@r  r  r  皙@)\(@Q@N)r  r  r  r  rt   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  g33333<@)r   rb   dat_nandatrt  s   &rm   ru  #TestMedianAbsDeviation.setup_method{  sL    dCc3SdD$S#sS#sCtRVVE6rp   c                \   \        \        P                  ! VP                  V P                  4      R R7      VP                  R4      4       VP                  VP                  V P                  4      R4      p\        P                  ! V^ R7      pVP                  . RO4      p\        W44       R # )Nr>   gQ?)rz   r   )gףp=
?r1   ?ra  )r/   r[   median_abs_deviationrY   r  r]   )rc   rd   r  madmad_expecteds   &&   rm   test_median_abs_deviation0TestMedianAbsDeviation.test_median_abs_deviation  sx    222::dhh3GdS

5)	+jjDHH-v6((15zz"9:*rp   c                    \         P                  ! VP                  V P                  4      R R7      p\	        W!P                  R4      4       R# )r   r   g(\?N)r[   r  rY   r  r/   )rc   rd   r  s   && rm   test_mad_nan_omit(TestMedianAbsDeviation.test_mad_nan_omit  s2    ((DLL)AfUZZ-.rp   c                    VP                  R RRR\        P                  .. RO.4      p\        P                  ! V^R7      p\        W1P                  \        P                  R.4      4       R# )r   r   r   r   r>   N)r   r   r8   r   r   )rY   r   rb   r[   r  r/   )rc   rd   rf   r  s   &&  rm   test_axis_and_nan(TestMedianAbsDeviation.test_axis_and_nan  sT    JJc3RVV413 4((3ZZ67rp   c           	         VP                  ^^^^^c\        P                  \        P                  .4      p\        P
                  ! VRR7      p\        W1P                  R4      4       R# )rW   r   r   r   N)rY   r   rb   r!  r[   r  r/   )rc   rd   r5  r  s   &&  rm   test_nan_policy_omit_with_inf4TestMedianAbsDeviation.test_nan_policy_omit_with_inf  sI    JJ1aB78((v>ZZ_-rp   r?   Nc           
     t   VP                  R4      pVR9   d   \        \        R\        R7      M\        P
                  ! 4       pV;_uu_ 4        \        P                  ! W1R7      pRRR4       \        XVP                  VP                  W1R7      VP                  R7      4       R#   + '       g   i     LI; i)r   N	too smallr\  r>   
fill_value)r   ry   r   >   NrW   )rY  r%   r   r   
contextlibnullcontextr[   r  r/   r  r^  rb   )rc   r?   rd   rf   contextr  s   &&&   rm   test_size_zero_with_axis/TestMedianAbsDeviation.test_size_zero_with_axis  s    HHYi' 1L-7-C-C-E 	W,,Q:C R\\"&&&*>266\RS Ws   B''B7	znan_policy, expectedr   r2   r  c           	        VR 8X  d(   \        V4      '       g   \        P                  ! R4       VP                  \        P
                  \        P
                  \        P
                  \        P
                  \        P
                  \        P
                  .^^^^\        P
                  \        P
                  .. RO.4      pVR 8X  d   \        \        R\        R7      M\        P                  ! 4       pV;_uu_ 4        \        P                  ! WA^R7      p\        WcP                  V4      4       RRR4       R#   + '       g   i     R# ; i)r   z8nan_policy='omit' with n-d input only supported by NumPyr  r\  r  N)rw   rz   rJ   rI   rI   rO   )r'   r   skiprY   r   rb   r%   r   r
  r  r[   r  r/   )rc   r   r  rd   rf   r  r  s   &&&&   rm   test_nan_policy_with_axis0TestMedianAbsDeviation.test_nan_policy_with_axis  s     vhrllKKRSJJHAq!RVVRVV4+- .
 !F* 1L0:0F0F0H 	W,,QANCCH!56 WWWs   =3D::E	zaxis, expectedc                    \         P                  ! ^^^^	\         P                  .. RO. RO.4      p\        P                  ! V\         P
                  RVR7      p\        WBRRR7       R# )rW   r   )centerr   r?   rC  r  N)ry   rW   rW   rW   rQ   )r  r  r  r  )r   r   rb   r[   r  r^   r/   )rc   r?   r  rf   r  s   &&&  rm   test_center_mean_with_nan0TestMedianAbsDeviation.test_center_mean_with_nan  sY     HHq!Q266*&-/ 0 ((277v.24E>rp   c                    \         P                  ! \        R R7      ;_uu_ 4        \        P                  ! VP                  . RO4      ^cR7       RRR4       R#   + '       g   i     R# ; i)callabler   r  N)rW   rE   r   rw   )r   r   r/  r[   r  rY   rc   rd   s   &&rm   test_center_not_callable/TestMedianAbsDeviation.test_center_not_callable  s;    ]]9J77&&rzz,'?K 8777   *AA*	)r  r  )ry   rW   rE   N)rt   r   r  )NrA   )r   r   r   r   ru  r  r  r  r  r   r   r  r  r   rb   r  r  r  r   r   r   s   @rm   r  r  y  s     6+/8.
 [[V_5T 6T [[3%S'9:*RVVRVVS,ABDE7E7 [[- "23[AC?C?L Lrp   r  c                r    \        \        V 4      VR4       V  F  p\        VP                  VJ 4       K  	  R# )z
Checks that all of the warnings from a list returned by
`warnings.catch_all(record=True)` are of the required type and that the list
contains expected number of warnings.
znumber of warningsN)r   r  r   category)	warn_listexpected_typeexpected_lenwarn_s   &&& rm   _check_warningsr%    s0     Y/CD-/0 rp   c                     a  ] tR tRt o ]P
                  P                  R. RO4      R 4       tR t]P
                  P                  RRR7      R	 4       t
]P
                  P                  R
. ]P                  ! ^ 4      .4      R 4       tR tR tR tR tR tR tR tR t]P
                  P                  RRR7      R 4       tR t]P
                  P                  RRR7      R 4       tR tRtV tR# )TestIQRi  r7   Nc           	     4   \         P                  ! ^4      R,          p\         P                  P                  V4       Vf   \	        V4      M
\        W!4      p\        \        P                  ! VP                  W1R7      4      VP                  RVR7      4       R# )rF   r1   Nr6   r  )
r   r   r  r  r)   ri  r0   r[   iqrrY   rc   r7   rd   rf   s   &&& rm   rW  TestIQR.test_basic  sj    IIaL3
		!(- $72;M		"**Q*"<=

4u
5	7rp   c                t   VP                  R4      p\        P                  ! V4       \        P                  ! VR4       \        P                  ! V^4       \        P                  ! VR4       \        P                  ! VRR4       \        P                  ! VRRR4       \        P                  ! VRR	RR4       R# )
rw   Nr   r2   r  r  rV  )rO   Z   )r  r  r  r2  r  r[   r)  rc   rd   rk  s   && rm   test_apiTestIQR.test_api  sy    GGFO		!		!T		!Q		!V		!T8$		!T8S)		!T8S+6rp   	jax.numpyzlazy -> no nan_policyrp  c           	         VP                  R4      p\        P                  ! VRR	RRR4       \        P                  ! VRR
RRRR4       R# )rw   Nr  r   linearr   r  Tr  )r  r  r.  gٿr/  r0  s   && rm   test_api_eagerTestIQR.test_api_eager  s=    GGFO		!T8XwA		!T8T67DArp   rf   c           	        \        \        \        VR 7      ;_uu_ 4        \        \        P
                  ! VP                  V4      4      VP                  VP                  4      4       RRR4       R#   + '       g   i     R# ; ir\  N)r%   r   r   r0   r[   r)  rY   rb   )rc   rf   rd   s   &&&rm   r  TestIQR.test_empty  sK    +3HRPPEIIbjjm4bjj6HI QPPPs   A	A22B	c                B   VP                  R4      pVP                  R4      p\        \        P                  ! V4      V4       \        \        P                  ! V^ R7      VP                  ^4      4       \        \        P                  ! V^R7      VP                  ^4      4       \        \        P                  ! VRR7      V4       \        \        P                  ! VRR7      V4       \        \        P                  ! VRR7      V4       \        \        P                  ! VRR7      V4       \        \        P                  ! VRR7      V4       VP                  R4      VP                  R	4      ,          p\        \        P                  ! V^ R7      VP                  R4      4       \        \        P                  ! V^R7      VP                  R4      4       \        \        P                  ! V^R7      VP                  RR
4      4       \        \        P                  ! VRR7      VP                  ^4      4       \        \        P                  ! VRR7      VP                  ^R4      4       \        \        P                  ! VRR7      VP                  ^R4      4       R# )rJ   r   r>   r5  interpolationmidpointnearestr  r  r   rt   r   N)rJ   r   r   rw   rz   )rw   rz   )r   rz   r  rV  ry   rE   rW   rE   )r  rY   r0   r[   r)  rY  r   r~   )rc   rd   rf   zerorg   s   &&   rm   test_constantTestIQR.test_constant  s   GGFOzz#		!d+		!!,bhhqk:		!!,bhhqk:		!8<dC		!:>E		!9=tD		!7;TB		!8<dC GGI2.		!!,bhhv.>?		!!,bhhv.>?		!!,bggfc.BC		!&1288A;?		!&12771b>B		!&12771b>Brp   c                d   VP                  R 4      R,           p\        \        P                  ! V^ ,          4      VP	                  R4      4       \        \        P                  ! V4      VP	                  R4      4       \        \        P                  ! VRR7      VP	                  R.4      4       R# )r   r   r   Tr#  N)r   r0   r[   r)  rY   r   s   && rm   test_scalarlikeTestIQR.test_scalarlike  sl    IIbMC		!A$C9		!bjjo6		!d3RZZ5FGrp   c                2   VP                  VP                  ^4      R4      p\        \        P                  ! V4      VP                  R4      4       \        \        P                  ! V^ R7      VP                  ^R4      4       \        \        P                  ! V^R7      VP                  ^R4      4       \        \        P                  ! VRR7      VP                  R4      4       \        \        P                  ! VRR7      VP                  R4      4       R# )	r~  r   r>   r8   r   Nr  rV  r  )r]   r   r0   r[   r)  rY   r~   r   s   && rm   test_2DTestIQR.test_2D  s    JJryy}f-		!bjjo6		!!,bggan=		!!,bggan=		!&12::c?C		!&12::c?Crp   c           	     d	   \         P                  P                  RR7      p\         P                  ! V.^
,          4      pVP	                  V4      VP	                  V4      r2VP                  \        P                  ! V4      R	4      p\        \        P                  ! VR
R7      V4       VP                  VR^ 4      p\        \        P                  ! VRR7      V4       \        V^ ^VR7      p\        \        P                  ! VRR7      V4       \        V^ ^VR7      p\        \        P                  ! VRR7      \        P                  ! VRR7      4       \        \        P                  ! VRR7      \        P                  ! V^ R7      4       \         P                  ! R4      p\         P                  P                  V4       VP                  R4      pVP	                  V4      p\        \        P                  ! VRR7      ^ ,          \        P                  ! \        VR,          4      4      4       \        \        P                  ! VRR7      ^,          \        P                  ! \        VR,          4      4      4       \        \        P                  ! VRR7      ^,          \        P                  ! \        VR,          4      4      4       \        \        P                  ! VRR7      ^,          \        P                  ! \        VR,          4      4      4       \        \        P                  ! VRR7      R,          \        P                  ! \        VR,          4      4      4       \        \        P                  ! VRR7      R,          \        P                  ! \        VR,          4      4      4       \        \        P                  ! VRR7      R,          \        P                  ! \        VR,          4      4      4       \        P                   ! \"        RR7      ;_uu_ 4        \        P                  ! V^R7       RRR4       \        P                   ! \$        RR7      ;_uu_ 4        \        P                  ! VR R7       RRR4       R#   + '       g   i     LW; i  + '       g   i     R# ; i)!G   r  r>   r  Nz`axis` is out of bounds...r   z`axis` must contain only...)rM  r  )rO   rV  rU   r  rA  r  r  i  r   rw   rJ   rP   )r   r   r   ry   ry   rW   r   )r   r   rW   r   )r   rW   rJ  )r   r   rE   r   )r   rW   rE   )rE   r   r   r   r   rE   )rE   rW   r   r   )rW   rM  )rE   r   r   rW   rW   r   rE   rE   )rE   r   rE   r   r  )r   r  r  dstackrY   broadcast_tor[   r)  r0   moveaxisr.   r   r  r]   r-   r   r   r"   r   )rc   rd   orf   qrk  s   &&    rm   r  TestIQR.test_axis  s    II(+IIqcBhzz!}bjjm1OOEIIaL%0		!&115KK2q!		!&115!Q2&		!&115!Q2&		!)4		!$/	1		!$/		!!,	. IIn% 			!IIm$JJqM		!)4Q7		(1X;"78	:		!)4Q7		(1X;"78	:		!*5a8		(1X;"78	:		!)4Q7		(1W:"67	9		!&1$7		(1X;"78	:		!'248		(1Z="9:	<		!&1$7		(1Y<"89	; ]]9,HIIIIaa  J]]:-JKKIIaf% LK JIKKKs   #R(RR	R/	c                   VP                  ^4      p\        \        P                  ! V4      VP	                  R4      4       \        \        P                  ! VR
R7      VP	                  R4      4       \        \        P                  ! VRR7      VP	                  R4      4       \        \        P                  ! VRR7      VP	                  R4      4       Rp\
        P                  ! \        VR7      ;_uu_ 4        \        P                  ! VRR7       RRR4       Rp\
        P                  ! \        VR7      ;_uu_ 4        \        P                  ! V\        P                  ^3R7       RRR4       R	p\
        P                  ! \        VR7      ;_uu_ 4        \        P                  ! VRR7       RRR4       R#   + '       g   i     L; i  + '       g   i     Ll; i  + '       g   i     R# ; i)rw   r   r  rt   g?z2Elements of `rng` must be in the range \[0, 100\].r   Nz`rng` must not contain NaNs.z%`rng` must be a two element sequence.)r  g     U@)g      )@r2  )rO   r  )ry   e   )ry   r  <   )r   r0   r[   r)  rY   r   r   r   r   rb   r/  rc   rd   rf   r  s   &&  rm   test_rngTestIQR.test_rngA  s(   IIaL		!bjjn5		!4bjjoF		!4bjjoF		!2BJJsODG]]:W55IIaX& 6 1]]:W55IIabffb\* 6 :]]9G44IIa[) 54 65 65 544s$   :F;)GG!;G	G	!G2	c                   VP                  ^4      pVP                  ^4      p\        \        P                  ! V4      VP	                  R4      4       \        \        P                  ! V4      VP	                  R4      4       \        \        P                  ! VRR7      VP	                  R4      4       \        \        P                  ! VRR7      VP	                  R4      4       \        \        P                  ! VRR7      VP	                  R4      4       \        \        P                  ! VRRR7      VP	                  R4      4       \        \        P                  ! VRR7      VP	                  R4      4       \        \        P                  ! VRR7      VP	                  R4      4       \        \        P                  ! VRRR7      VP	                  R4      4       \        \        P                  ! VRR7      VP	                  R4      4       \        \        P                  ! VR	R7      VP	                  R4      4       \        \        P                  ! VR	R7      VP	                  R
4      4       \        \        P                  ! VRR7      VP	                  R4      4       \        \        P                  ! VRRR7      VP	                  R4      4       \        \        P                  ! VRR7      VP	                  R4      4       R F  p\        P                  ! W4R7       K  	  \
        P                  ! \        RR7      ;_uu_ 4        \        P                  ! VRR7       RRR4       R#   + '       g   i     R# ; i)rw   r   r2   r5  r<  r  )r  r=  r   r  r?  r   r>  rt   z`method` must be one of...r   r   N)r  P   )inverted_cdfaveraged_inverted_cdfclosest_observationinterpolated_inverted_cdfhazenweibullmedian_unbiasednormal_unbiased)r   r0   r[   r)  rY   r   r   r   )rc   rd   rf   rg   r  s   &&   rm   test_interpolationTestIQR.test_interpolationT  s$   IIaLIIaL		!bjjn5		!bjjo6		!8<bjjnM		!8<bjjoN		!8<bjjnM		!J

2	(		!8<bjjnM		!7;RZZ^L		!I

2	(		!7;RZZ^L		!9=rzz"~N		!9=rzz"~N		!:>

2O		!L

3	)		!:>

2O*F IIa.	* ]]:-IJJIIax0 KJJJs   M((M9	c                   VP                  R4      p\        \        P                  ! VRRR7      P                  R4       \        \        P                  ! V^RR7      P                  R4       \        \        P                  ! VR	RR7      P                  R
4       \        \        P                  ! VRRR7      P                  R4       \        \        P                  ! VRRR7      P                  R4       \        \        P                  ! VRRR7      P                  R4       \        \        P                  ! VRRR7      P                  R4       \        \        P                  ! VRRR7      P                  R4       \        \        P                  ! V^RR7      P                  R4       \        \        P                  ! VR	RR7      P                  R4       \        \        P                  ! VRRR7      P                  R4       \        \        P                  ! VRRR7      P                  R4       \        \        P                  ! VRRR7      P                  R4       \        \        P                  ! VRRR7      P                  R4       R# )r   NFr  r#  TrN  r   )r   rw   rP   rV  )rJ   rP   )ry   r   )rw   rJ   r  r  ry   rW   rE   r   rO  ru   rU  )r   rw   rW   rP   )rW   rW   rJ   rP   )rW   rw   rJ   rW   )r   rW   rJ   rP   )rW   rW   rJ   rW   )r  r   r[   r)  r  r   s   && rm   test_keepdimsTestIQR.test_keepdimsz  s   GGM"UYYqte<BBBGUYYqq59??LUYYqv>DDgNUYYqv>DDfMUYYqte<BBJOUYYq,?EErJUYYqy5AGGNUYYqtd;AA<PUYYqq48>>NUYYqv=CC]SUYYqv=CC\RUYYqtd;AA=QUYYq,>DDlSUYYqy4@FFUrp   c           
        VP                  VP                  R 4      R4      p\        \        P                  ! VRR7      VP                  R4      4       \        \        P                  ! VRR7      VP                  R4      4       \        \        P                  ! VRR7      VP                  R4      4       \        P                  ! V4      R,          P                  VP                  4      p\        \        P                  ! VRR7      VP                  VP                  4      4       \        \        P                  ! V^ RR7      VP                  ^^VP                  ^^.4      4       \        \        P                  ! V^RR7      VP                  ^VP                  ^.4      4       \        \        P                  ! VRR7      VP                  R4      4       Rp\        P                  ! \        VR	7      ;_uu_ 4        \        P                  ! VRR7       R
R
R
4       Rp\        P                  ! \        VR	7      ;_uu_ 4        \        P                  ! VRR7       R
R
R
4       R
#   + '       g   i     LY; i  + '       g   i     R
# ; i)      .@r  r   r   r   r   r        @r   r   Nr   barfoodr  rB  )r]   r   r0   r[   r)  rY   r_   r`   ra   rb   r   r   r   r\  s   &&  rm   test_nanpolicyTestIQR.test_nanpolicy  s   JJryy/ 			!<bjjnM		!7BH		!8"**R.I FF1IdO'		!<

266*	,		!!D

Aq"&&!Q#78	:		!!D

Arvvq>2	4 			!7CI1]]:W55IIaG, 6 1]]:W55IIaI. 65 65
 655s   =I'I:'I7	:J	Tz=nan_policy w/ multidimensional arrays only available w/ NumPyr   c                   VP                  VP                  R 4      R4      pVP                  VR	&   \        \        P
                  ! V^ RR7      VP                  ^R4      4       \        \        P
                  ! V^RR7      VP                  . R
O4      4       Rp\        P                  ! \        VR7      ;_uu_ 4        \        P
                  ! V^ RR7       RRR4       \        P                  ! \        VR7      ;_uu_ 4        \        P
                  ! V^RR7       RRR4       R#   + '       g   i     LX; i  + '       g   i     R# ; i)rp  r   r  r8   r   r   r   Nr  rB  )rE   rt   rE   )r]   r   rb   r0   r[   r)  r~   rY   r   r   r   r\  s   &&  rm   test_nanpolicy_ndTestIQR.test_nanpolicy_nd  s     JJryy/&&$		!!?2	(		!!?

;/	1 2]]:W55IIaaG4 6]]:W55IIaaG4 65 65555s   >D(D;(D8	;E	c                   VP                  VP                  R 4      R4      p\        \        P                  ! VRR7      VP                  R4      4       \        \        P                  ! VRR7      VP                  R4      4       \        \        P                  ! VRR7      VP                  R4      4       \        P                  ! V4      R,          P                  VP                  4      pVP                  VP                  4      p\        \        P                  ! VRRR7      V4       \        \        P                  ! VRRR7      V4       \        \        P                  ! VRRR7      V4       \        \        P                  ! VRR	R7      VP                  R
4      4       \        \        P                  ! VRR	R7      VP                  R4      4       \        \        P                  ! VRR	R7      VP                  R4      4       Rp\        P                  ! \        VR7      ;_uu_ 4        \        P                  ! VRR7       RRR4       R#   + '       g   i     R# ; i)rp  r   )r'  r   r  r   r  r  )r'  r   r   rq  g      @z"foobar not a valid scale for `iqr`r   r   Nr  g=V^w@rB  g	I1=@)r]   r   r0   r[   r)  rY   r/   r_   r`   ra   rb   r   r   r   )rc   rd   rf   rb   r  s   &&   rm   
test_scaleTestIQR.test_scale  s   JJryy/ 			!3/B@		!84bjj6OP		!3/CA FF1IdO'jj 		!3;GM		!8LcR		!3;GM		!36BBJJsOT		!8G

?3	5		!36BBJJtDTU 7]]:W55IIax( 6555s   +II	c           	     Z   VP                  VP                  R 4      R4      p\        P                  ! V4      R	,          P	                  VP
                  4      p\        \        P                  ! V^RRR7      VP                  ^\        P
                  ^.4      4       \        \        P                  ! V^RRR7      VP                  ^\        P
                  ^.4      R,          4       \        \        P                  ! V^RRR7      VP                  ^\        P
                  ^.4      4       R# )
rp  r   r  )r?   r'  r   r  gF7k?r   Nr  rB  )r]   r   r_   r`   ra   rb   r0   r[   r)  rY   r   r/   r   s   && rm   test_scale_nanpolicy_ndTestIQR.test_scale_nanpolicy_nd  s     JJryy/FF1IdO'		!!3;O

Arvvq>2	4		!!8T

Arvvq>2Y>	@		!!3;O

Arvvq>2	4rp   c                    VP                  R 4      R,          p\        P                  ! VRR7      p\        P                  ! V4      p\        W44       R# )r   r1   r  N)r2  r  )r   r[   r)  r0   rc   rd   rf   r   r  s   &&   rm   test_rng_orderTestIQR.test_rng_order  s9    IIbMCiix(iil!rp   r   Nr   r   )r   r   r   r   r   r   r  rW  r1  r   r6  r   r   r  rD  rG  rJ  r  r]  ri  rm  rs  rv  ry  r|  r  r   r   r   s   @rm   r'  r'    s,     [[W&BC7 D77 [[!!+6M!NB OB
 [[S2ryy|"45J 6JC.HD+&Z*&$1LV&/8 [[!!$N " P5P5)2 [[!!$N " P
4P
4" "rp   r'  c                     a  ] tR tRt o Rt. ROtRt]P                  P                  R4      t
]
P                  ^*4      t]P                  P                  R^
R.4      ]P                  P                  R]! RR4      4      ]P                  P!                  R4      R	 4       4       4       t]P                  P                  R^
R.4      ]P                  P                  R
R4      ]P                  P!                  R4      R 4       4       4       tR tR t]P                  P                  R. RO4      ]P                  P                  RRR .4      R 4       4       tR tR tR tR t]P                  P                  R. RO4      ]P                  P                  R. R!O4      ]P                  P                  RR^ .4      ]P                  P!                  R4      R 4       4       4       4       tRtV tR# )"TestMomentsi  aC  
Comparison numbers are found using R v.1.5.1
note that length(testcase) = 4
testmathworks comes from documentation for the
Statistics Toolbox for Matlab and can be found at both
https://www.mathworks.com/help/stats/kurtosis.html
https://www.mathworks.com/help/stats/skewness.html
Note that both test cases came from here.
r   l   Jf r  zm, cNz?ignore:divide by zero encountered in divide:RuntimeWarning:daskc                r   \         P                  P                  R 4      pVP                  VP                  VR7      4      p\        P
                  ! WbVR7      pVf   VP                  V^ R7      MTpVP                  Wc,
          V,          ^ R7      VP                  ^ ,          ,          p\        WxRR7       R# )l   rHZ r  r  Nr>   缉ؗҜ<rD  )
r   r  r  rY   r[   momentr^   r^  r  r/   )	rc   r  r  rj  rd   r  rf   r   r  s	   &&&&&    rm    test_moment_center_scalar_moment,TestMoments.test_moment_center_scalar_moment  s     ii##$78JJszztz,-ll1*"#)BGGAAGffaeaZaf(3u-rp   rj  c                r   \         P                  P                  R 4      pVP                  VP                  VR7      4      p. ROp\        P
                  ! WVVR7      pTP                  V Uu. uF.  p\        P
                  ! WXVR7      VP                  R3,          NK0  	  up4      p	\        Wy4       R# u upi )l   %~.}~= r  r  .Nrl  )	r   r  r  rY   r[   r  r  newaxisr0   )
rc   r  rj  rd   r  rf   r  r   r  r  s
   &&&&      rm   test_moment_center_array_moment+TestMoments.test_moment_center_array_moment  s     ii##$78JJszztz,-ll1*iiPQRPQ1a15bjj#oFFPQRS! Ss   ,4B4c                  a SP                  V P                  4      p\        P                  ! SP                  V P                  4      4      p\        VSP                  R 4      4       \        P                  ! V^ 4      p\        VSP                  R4      4       \        P                  ! V^4      p\        VSP                  R 4      4       \        P                  ! V^4      p\        VSP                  R4      4       \        P                  ! V^4      p\        VSP                  R 4      4       \        P                  ! V^4      p\        VSP                  R4      4       \        P                  ! V. R	O4      p\        VSP                  . R
O4      4       \        P                  ! VR 4      p\        VSP                  R4      4       Rp\        P                  ! \        VR7      ;_uu_ 4        \        P                  ! VR4       RRR4       \        P                  ! V. RO4      p\        VSP                  . R
O4      4       V3R lpR#   + '       g   i     LN; i)r   r         ?     @z)All elements of `order` must be integral.r   333333?Nc                    < \         P                  ! SP                  . 4      4      p \        V SP                  SP                  4      4       \         P                  ! SP                  . SP
                  R 7      4      p \        V SP                  SP                  SP
                  R 7      4       \         P                  ! SP                  R4      ^ R7      p \        V SP                  R4      4       \         P                  ! SP                  . .4      ^R7      p \        V SP                  SP                  .4      4       \         P                  ! SP                  . .4      ^ ^.^ R7      p \        V SP                  R4      4       R# )r6   r>   orderr?   Nr  r  )rE   ry   )r[   r  rY   r0   rb   r   rY  rK  )rg   rd   s    rm   
test_cases+TestMoments.test_moment.<locals>.test_cases1  s   RZZ^,AArzz"&&12RZZ"**Z=>AArzz"&&

zCDRXXf-A6AArxx~.RZZ-A6AArzz266(34RZZ-aV!DAArxx/0rp   r  )ry   r  ry   r  )r   rE   r   r   )	rY   rX  r[   r  rO  r/   r   r   r   )rc   rd   rX  rg   r  r  s   &f    rm   test_momentTestMoments.test_moment  s   ::dmm,LLD$8$89:2::c?+LL1%2::c?+LL1%2::c?+LL1%2::d+,LL1%2::c?+LL1%2::f-. LL<02::&:;< LL3'2::c?+=]]:W55LL3' 6LL#342::&:;<
	1 65s   /II	c                ~   \         P                  ! R 4      p\         P                  V^	&   \        \        P
                  ! V^4      \         P                  4       \        \        P
                  ! VRR7      R4       \        \        \        P
                  VRR7       \        \        \        P
                  VRR7       R# )r   r   r   r   r   r   N)	r   r   rb   r   r[   r  r   r   r   r  s   & rm   r  TestMoments.test_nan_policy=  sn    IIcNvv!U\\!Q'0ELLv>Dj%,,gFj%,,hGrp   r7   zexpect, orderc           	        VR 8X  d'   \        V4      '       d   \        P                  ! 4        \        WA4      p\        P
                  P                  R4      pVP                  VP                  ^4      VR7      p\        P                  ! WcR7      p\        WtP                  W!R7      4       \        P                  ! VP                  VR4      ^ VR7      p\        WtP                  RW!R7      4       \        P                  ! VP                  VR4      ^VR7      p\        WtP                  R	W!R7      4       \        P                  ! VP                  VR4      RVR7      p\        WtP                  R
W!R7      4       R# )
complex128l   1G r6   r  )r?   r  N)rz   rw   )rw   r  )rW   rE   r   rw   r   )r(   r   r  ri  r   r  r  rY   r[   r  r0   rT  r~   )rc   r7   expectr  rd   r  rf   rg   s   &&&&&   rm   test_constant_moments!TestMoments.test_constant_momentsE  s    ,8B<<KKM"ii##J/JJszz!}EJ2LL(::f::;LLF3!5I7747=>LLO<1$&77<7EFLLO<4$&772v7;<rp   c                T   VP                  VP                  R 4      R4      p\        P                  ! V4      R,          P	                  VP
                  4      p\        P                  ! VP                  V4      ^^R7      p\        W1P                  RVP
                  .4      RR7       R# )r   r>   r  rC  rD  Nr  r  )
r]   r   r_   r`   ra   rb   r[   r  rY   r/   )rc   rd   rJ  mms   &&  rm   test_moment_propagate_nan%TestMoments.test_moment_propagate_nan[  sq     JJryy}g.FF1IdO'\\"**Q-3JJbff~6UCrp   c                    \         P                  ! \        R R7      ;_uu_ 4        \        P                  ! VP                  . RO4      . R7       RRR4       R#   + '       g   i     R# ; i)z1`order` must be a scalar or a non-empty 1D array.r   r  Nr  )r   r   r   r[   r  rY   r  s   &&rm   test_moment_empty_order#TestMoments.test_moment_empty_orderd  sM    ]]: .E F FLLL1<F F F Fr  c                    VP                  ^
4      p\        P                  ! V^R7      p\        P                  ! V^R7      p\        W44       R# )rO   )r  r  N)r   r[   r  r0   r  s   &&   rm   test_rename_moment_order$TestMoments.test_rename_moment_orderj  s9     IIbMll1Q'll1A&!rp   c                   V P                   \        P                  ! V P                   4      ,
          p\        \        P                  ! V^*4      P                  4       \
        P                  ! V P                   ^*4      4       R# r  )testcase_moment_accuracyr   r^   r
   r   r[   r  )rc   
tc_no_means   & rm   test_moment_accuracy TestMoments.test_moment_accuracyr  sY     33 = =>?
R0557T%B%BBG	Irp   r  r?   r  c           	        \         P                  P                  R 4      pVP                  RR7      p\        P                  ! VP                  V4      W#VR7      pVP                  \        WbW4R7      4      p\        Wx4       R# )l   hU~r  )r?   r  )r^   N)rw   rz   rJ   )r   r  r  r[   r  rY   r   r/   )	rc   rd   r  r?   r  r  rf   r   r  s	   &&&&&    rm   test_moment_array_api!TestMoments.test_moment_array_apiz  s_     ii##N3JJIJ&ll2::a=%6Jjj4=>!rp   r   rH  )rO   rE   rl  )Nry   rW   )r   r   r  rV  r  rS  )r   r   r   r   r5  rX  rO  r   r  r  r  r  r   r   r  r   r   r  r  r  r  r  r  r  r  r  r  r   r   r   s   @rm   r  r    s      HO
))



+C"zz"~[[Vb']3[[VW\<%HI[[I. J 4
. [[Vb']3[[S,/[[I" 0 4
")1VH [[W&JK[[_vv.>?= @ L=(D="I [[Wl3[[VZ0[[Xay1[[I" 2 1 4"rp   r  c                   :   a  ] tR tRt o Rt. ROt. ROtR tRtV t	R# )SkewKurtosisTesti  r   c                   VP                  . 4      p\        \        \        VR 7      ;_uu_ 4        V P	                  V4      pRRR4       \        XVP                  VP                  4      4       R#   + '       g   i     L7; ir9  )rY   r%   r   r   stat_funr0   rb   r   s   &&  rm   test_empty_1dSkewKurtosisTest.test_empty_1d  sW    JJrN+3HRPP--"C Q 	RZZ/0 QPs   A11B	r   NrH  )gp=
ף?g?߾?gD9?gQI?g}?5^I)
r   r   r   r   rO  rX  testmathworksr  r   r   r   s   @rm   r  r    s     OH<M1 1rp   r  c                   (  a  ] tR tRt o R t]P                  P                  R4      R 4       tR t	R t
R tR t]! R	R
7      R 4       t]P                  P                  R. RO4      ]P                  P                  RRR	.4      R 4       4       tRtV tR# )TestSkewi  c                .    \         P                  ! V4      # r  )r[   skewr  s   &&rm   r  TestSkew.stat_fun  s    zz!}rp   zEignore:invalid value encountered in scalar divide:RuntimeWarning:daskc                r   \         P                  ! VP                  V P                  4      4      p\	        W!P                  VP
                  4      4       \         P                  ! VP                  V P                  4      4      p\	        W!P                  R4      RR7       \         P                  ! VP                  V P                  4      ^ R7      p\	        W!P                  R4      RR7       \         P                  ! VP                  V P                  4      4      p\	        W!P                  R4      RR7       R# )g7l*?绽|=rD  biasr   Ng7l*ҿg2۠ۿ)r[   r  rY   rO  r/   rb   r  rX  )rc   rd   rg   s   && rm   test_skewnessTestSkew.test_skewness  s    
 JJrzz$"6"678::bff-. JJrzz$"4"456::&78uEJJrzz$"4"45A>::&89FJJrzz$--01::c?7rp   c                   \         P                  ! R 4      p\         P                  V^	&   \         P                  ! RR7      ;_uu_ 4        \	        \
        P                  ! V4      \         P                  4       RRR4       \	        \
        P                  ! VRR7      R4       \        \        \
        P                  VRR7       \        \        \
        P                  VRR7       R#   + '       g   i     Lv; i)	r   r   rp  Nr   r   r   r   r   )	r   r   rb   rr  r   r[   r  r   r   r  s   & rm   r  TestSkew.test_nan_policy  s    IIcNvv![[**A/ +UZZf5r:j%**aGDj%**aHE	 +*s   	/C&&C6	c                X    \        \        P                  ! \        ^
4      4      R4       R# )rO   r   N)r   r[   r  r   rt  s   &rm   test_skewness_scalarTestSkew.test_skewness_scalar  s    UZZr
+S1rp   c                   VP                  R 4      pVP                  VR4      p\        P                  ! V4      R,          P	                  VP
                  4      p\        P                  ! RR7      ;_uu_ 4        \        P                  ! VP                  V4      ^R7      pRRR4       \        XVP                  ^ VP
                  .4      4       R#   + '       g   i     L9; i)r   r   rp  r>   Nr  r  )r   r]   r_   r`   ra   rb   r   rr  r[   r  rY   r0   )rc   rd   rJ  r  s   &&  rm   test_skew_propagate_nan TestSkew.test_skew_propagate_nan  s     IIbMJJq'"FF1IdO'[[**

2::a=q1A +2::q"&&k23 +*s   9(CC"	c           	        VP                  VP                  R	.4      ^
4      p\        \        RVR7      ;_uu_ 4        \	        \
        P                  ! V4      VP                  VP                  4      4       \	        \
        P                  ! VR
,          4      VP                  VP                  4      4       \	        \
        P                  ! VR
,          4      VP                  VP                  4      4       \	        \
        P                  ! VRR7      VP                  VP                  4      4       VP                  R.^,          4      p\	        \
        P                  ! V4      VP                  VP                  4      4       RVP                  R^4      R,          ,           p\	        \
        P                  ! V4      VP                  VP                  4      4       RRR4       R#   + '       g   i     R# ; i)9?Precision loss occurredr\  Fr  g,@r   r  N9ѿg      C      )	repeatrY   r%   r   r0   r[   r  rb   r   rc   rd   rJ  s   && rm   test_skew_constant_value!TestSkew.test_skew_constant_value  s4   IIbjj+/4/HRPPEJJqM2::bff+=>EJJqx0"**RVV2DEEJJqx0"**RVV2DEEJJqu5rzz"&&7IJ 

D6!8$AEJJqM2::bff+=>RYYsA&u,,AEJJqM2::bff+=> QPPPs   F G''G8	Tr   c                >   \         P                  ! \        R R7      ;_uu_ 4        \        P                  P                  R4      pVP	                  RR7      pRVR&   \        P                  ! VP                  V4      4       RRR4       R#   + '       g   i     R# ; i)r  r   l   :"z` r  )\(?N)r  rO   r   ry   )	r   rC  r   r   r  r  r[   r  rY   )rc   rd   r  rJ  s   &&  rm   test_precision_loss_gh15554$TestSkew.test_precision_loss_gh15554  sg    
 \\.0IJJ))''4C

	
*AAdGJJrzz!}%	 KJJJs   ABB	r?   Nr  Fc                   a \         P                  P                  R 4      pSP                  VP                  R4      4      pV3R lp\        P
                  ! WRVR7      pV! WRVR7      p\        Wx4       R# )   f#"c                 l  < Vf   SP                  V R4      p ^ pSP                  WRR7      pSP                  W,
          ^,          VR7      pSP                  WR7      pWE^,          ,          pV'       g?   V P                  V,          pWgR,
          V,          R,          VR,
          ,          ,          pV# )NTr  r>   r   r1   r   r  )r]   r^   r   r  )	rJ  r?   r  r^   mu3r   r   r  rd   s	   &&&     rm   skewness-TestSkew.test_vectorization.<locals>.skewness  s    |JJq%(771$77D''18a-d'3C&&&&Cq.CGGDMSA#-S99Jrp   )r?   r  Nr  )r   r  r  rY   r[   r  r/   )	rc   rd   r?   r  r  rf   r  r   r  s	   &f&&     rm   test_vectorizationTestSkew.test_vectorization  s[    
 ii##M2JJszz),-	 jjD1q$/!rp   r   rU   ry   rE   N)r   r   r   r   r  r   r   r   r  r  r  r  r  r   r  r  r  r   r   r   s   @rm   r  r    s      [[O88F24?  && '& [[V%56[[VeT]3" 4 7"rp   r  c                   L  a  ] tR tRt o R t]P                  P                  R4      R 4       tR t	R t
R tR t]P                  P                  R	. RO4      ]P                  P                  RRR.4      ]P                  P                  RRR.4      R 4       4       4       tRtV tR
# )TestKurtosisi  c                .    \         P                  ! V4      # r  )r[   kurtosisr  s   &&rm   r  TestKurtosis.stat_fun  s    ~~a  rp   z1ignore:invalid value encountered in scalar dividec                2   \         P                  ! VP                  V P                  4      4      pVP	                  V4      '       g   Q h\         P                  ! VP                  V P
                  4      ^ ^ ^R7      p\        W!P                  R4      4       \         P                  ! VP                  V P
                  4      ^ ^ R7      p\        W!P                  R4      4       \         P                  ! VP                  V P                  4      ^ ^ 4      p\        W!P                  R4      4       VP                  R4      pVP                  V^8H  VP                  V4      p\        \         P                  ! V4      VP                  VP                  4      4       R# )ry   fisherr  gO߻S@gx|N@g=
ףp=?r   N)r[   r  rY   rO  ry  r  r/   rX  r   rY  rb   r0   )rc   rd   rg   rf   s   &&  rm   test_kurtosisTestKurtosis.test_kurtosis  s    NN2::d&:&:;<xx{{{ NN2::d&8&891QQO::o67 NN2::d&8&89!!L::&789NN2::dmm4a;::d+,IIcNHHQ!VRVVQ'q)2::bff+=>rp   c                    \         P                  ! R 4      p\         P                  V^	&   \        \        P
                  ! VRR7      R4       \        \        \        P
                  VRR7       \        \        \        P
                  VRR7       R# )r   r   r   r   r   NGz)r   r   rb   r   r[   r  r   r   r  s   & rm   test_kurtosis_nan_policy%TestKurtosis.test_kurtosis_nan_policy  sU    IIcNvv!ENN1@)Lj%..!Hj%..!Irp   c                x    \        \        \        P                  ! . RO4      4      \        P
                  4       R# r  )r   typer[   r  r   r   rt  s   &rm   test_kurtosis_array_scalar'TestKurtosis.test_kurtosis_array_scalar%  s    T%..34bjjArp   c                4   \         P                  ! ^4      P                  ^R4      P                  \        4      p\         P
                  VR&   \        P                  ! V^RR7      p\         P                  P                  VR\         P
                  .RR7       R# )	rF   r  r  rC  rD  NrU   r  g(\)
r   r   r]   r  r  rb   r[   r  r"  r
   )rc   rJ  r  s   &  rm   test_kurtosis_propagate_nan(TestKurtosis.test_kurtosis_propagate_nan)  si     IIaL  B'..u5&&$NN11=


""1ubffoE"Brp   c           
     b   VP                  R.^
,          4      p\        \        RVR7      ;_uu_ 4        VP                  \        P
                  ! VRR7      4      '       g   Q hVP                  \        P
                  ! V\        R4      ,          RR7      4      '       g   Q hVP                  \        P
                  ! V\        R4      ,          RR7      4      '       g   Q hVP                  \        P
                  ! VRRR7      4      '       g   Q h RRR4       R#   + '       g   i     R# ; i)	r  r  r\  F)r  r  Nr  l           )rY   r%   r   ry  r[   r  r  r  s   && rm   test_kurtosis_constant_value)TestKurtosis.test_kurtosis_constant_value2  s    JJ}R'(/HRPP88ENN1U;<<<<88ENN1uU|+;EJKKKK88ENN1uU|+;EJKKKK88ENN1UGHHHH	 QPPPs   CDDD.	r?   Nr  FTr  c                   a \         P                  P                  R 4      pSP                  VP                  R4      4      pV3R lp\        P
                  ! WbW4R7      pV! WbW4R7      p	\        W4       R# )r  c                   < Vf   S	P                  V R4      p ^ pS	P                  WRR7      pS	P                  W,
          ^,          VR7      pS	P                  W^ R7      pV'       d   WV^,          ,          ^,
          pMpV P                  V,          pV^,
          V^,
          V^,
          ,          ,          V^,           V,          V^,          ,          ^V^,
          ,          ,
          ,          pV'       d   V# V^,           # )NTr  r>   r?   rs   r  )r]   r^   r}   r  )
rJ  r?   r  r  r^   mu4mu2r   r  rd   s
   &&&&     rm   r  1TestKurtosis.test_vectorization.<locals>.kurtosisD  s    |JJq%(771$77D''18a-d'3C&&!&4CFlQ&GGDMs!!}-!a%3sAv1E1Q31OP !3-cAg-rp   )r?   r  r  Nr@  )r   r  r  rY   r[   r  r/   )
rc   rd   r?   r  r  r  rf   r  r   r  s
   &f&&&     rm   r  TestKurtosis.test_vectorization;  s[     ii##M2JJszz),-	.& nnQDq$>!rp   r   r  )r   r   r   r   r  r   r   r   r  r  r  r  r  r  r  r   r   r   s   @rm   r  r    s     ! [[ ST? U?>JBCI [[V%56[[VeT]3[[Xt}5" 6 4 7"rp   r  c                 ~   \        R R R7      p\        P                  ! ^^R7      pV ! \        P                  ! \        P
                  WR7      4      p. p\        P                  ! 4       ;_uu_ 4        \        P                  ! R4       \        \        VP                  4      4       F  p\        P                  ! \        4      ;_uu_ 4        \        P                   ! V^VR7      p\        P"                  ! V^ 8  4      '       dB   \        P"                  ! \        P$                  ! V4      4      '       d   VP'                  V4       RRR4       K  	  RRR4       \(        P*                  ! V4       V ! \(        P,                  P/                  V4      4      pW53#   + '       g   i     EK  ; i  + '       g   i     Lc; i)F)	allow_nanallow_infinity)min_dimsmin_side)r7   elementsr  errorr  N)dictnpstarray_shapesarraysr   r   r   r   rQ  r  r  r  r
  suppress	Exceptionr[   r  r  r  rI  
hypothesisassume
strategiessampled_from)drawr	  r  r  ok_axesr?   r}   s   &      rm   ttest_data_axis_strategyr  \  s(    eE:Hq15E "**xMND G 
	 	 	"	"g&#djj/*D$$Y//ll4qt<66#'??rvvbkk#.>'?'?NN4( 0/ + 
# g 
%%227;<D: 0// 
#	"s,   1AF,A(F4FF,F)"
F,,F<	c                     a  ] tR tRt o . R Ot. R!OtRtRtR"tRt	R#t
RtRtRt]	^,          t^]	^,          ,
          t]P"                  P%                  R4      ]P"                  P%                  R4      R	 4       4       tR
 t]! RRR7      R 4       t]P"                  P%                  R4      R 4       t]! RRR7      ]P"                  P1                  R. R$O4      R 4       4       tR t]! RRR7      ]P"                  P6                  ]P:                  ! ]P<                  P?                  RR%4      ] ! 4       R7      ]P"                  P1                  RRR.4      R 4       4       4       4       t!Rt"V t#R# )&TestStudentTesti{  r   r   gMXz?g4/?gFX5t?r}  r|  c           	        \         P                  ! 4       ;_uu_ 4        \        P                  ! R R R7      ;_uu_ 4        \         P                  ! R R\
        4       \        V4      '       g   VP                  R4      MRp\        P                  ! VR4      w  r4RRR4       RRR4       \        XVP                  VP                  4      4       \        XVP                  VP                  4      4       \        P                  ! VP                  V P                  4      R4      w  r4\        W1P                  V P                  4      4       \        WAP                  V P                  4      4       \        P                  ! VP                  V P                  4      R4      pR
p\!        WVVR7       \        P                  ! VP                  V P"                  4      R4      w  r4\        W1P                  V P$                  4      4       \        WAP                  V P&                  4      4       \        P                  ! VP                  V P                  4      R4      w  r4\        W1P                  V P(                  4      4       \        WAP                  V P*                  4      4       \        P                  ! VP                  V P                  4      R	4      w  r4\        W1P                  V P,                  4      4       \        WAP                  V P.                  4      4       R#   + '       g   i     EL; i  + '       g   i     EL; i)r   rq  divide!Degrees of freedom <= 0 for slicer   r   Nr   r  r   r   r=  r<  )r   r   r   rr  r   r   r'   rY   r[   ttest_1sampr0   rb   X1r/   T1_0P1_0r   X2T2_0P2_0T1_1P1_1T1_2P1_2)rc   rd   rJ  trd  r   r?  s   &&     rm   test_onesampleTestStudentTest.test_onesample  s    $$&&HX>>##=~O&.rll

2A$$Q+DA	 ? ' 	2::bff-.2::bff-.  DGG!4b9::dii01::dii01

477 3R8,
C3  DGG!4b9::dii01::dii01  DGG!4b9::dii01::dii01  DGG!4b9::dii01::dii01; ?>> '&&s#   !L0AL	L0L-'	L00M	c                   \         P                  P                  ^^
^3RR7      p\        P                  V^2&   VP                  V\        V4      R7      p\         P                  ! VR4      p\        VP                  VP                  VP                  4      4       \        VP                  VP                  VP                  4      4       R# )rw   t r&  r'  r  r  r6   r8   N)r[   rX  r  r   rb   rY   r)   r  r0   r=  r<  r   s   &&  rm   #test_onesample_nan_policy_propagate3TestStudentTest.test_onesample_nan_policy_propagate  s    JJNNq'NJ"JJq 0 4J53'rzz"&&'9:

BJJrvv$67rp   Tr  r   c                   \         P                  P                  ^^
^3RR7      p\        P                  V^2&   VP                  V\        V4      R7      p\         P                  ! VRRR7      p\        VP                  VP                  R4      4       \        VP                  VP                  R4      4       \        P                  ! \        RR	7      ;_uu_ 4        \         P                  ! VRR
R7       RRR4       \        P                  ! \        RR	7      ;_uu_ 4        \         P                  ! VRRR7       RRR4       R#   + '       g   i     LX; i  + '       g   i     R# ; i)rw   r.  r/  r6   r8   r   r   g/kCm?r   r   r   Nznan_policy must be one ofr   g̈́^B)r[   rX  r  r   rb   rY   r)   r  r/   r=  r<  r   r   r   r   s   &&  rm   $test_onesample_nan_policy_omit_raise4TestStudentTest.test_onesample_nan_policy_omit_raise  s    JJNNq'NJ"JJq 0 4J536:rzz2E'FG

BJJ/C$DE]]:-LMMa9 N ]]:-HIIa: JI NM JIIs   E EE	E(	z+ignore:divide by zero encountered in dividec                   R p\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! VP                  V P                  4      RRR7       RRR4       \        P                  ! VP                  V P                  4      RRR7      w  r4\        WAP                  V P                  4      4       \        W1P                  V P                  4      4       \        P                  ! VP                  V P                  4      RRR7      w  r4\        WAP                  V P                  4      4       \        W1P                  V P                  4      4       R#   + '       g   i     EL; i)	8`alternative` must be 'less', 'greater', or 'two-sided'.r   r   r
  r  Nr   r  r  )r   r   r   r[   r  rY   r   r/   P1_1_lr&  P1_1_g)rc   rd   r  r*  rd  s   &&   rm   test_1samp_alternative&TestStudentTest.test_1samp_alternative  s    L]]:W55bjj127K 6   DGG!4bfM::dkk23::dii01  DGG!4biP::dkk23::dii01 655s   3EE-	r3  Generic stdtrit mutates array.rp  r  r  r  c                   \         P                  P                  R 4      p^
pVP                  VR^R7      pVP                  4       pVP	                  R4      P
                  pVP	                  WWR7      pVP	                  WgR7      pRRR.RR	\         P                  .R
\         P                  ) R./p\        P                  ! WVVR7      p	V	P                  RR7      p
\        V
P                  VP	                  W,          ^ ,          4      4       \        V
P                  VP	                  W,          ^,          4      4       \        V	P                  VP	                  V^,
          4      4       R# )l   <PleH r2   r  r&  r'  r   r6   r  gÍ]?g$(}w@r  gS1?r  g]@)popmeanr  333333?confidence_levelN)r   r  r  r  rY   r7   r!  r[   r  r  r/   r  r  r0   df)rc   rd   r  r  r  rf   r>  r7   r  r   r  s   &&&        rm   test_1samp_ci_1d TestStudentTest.test_1samp_ci_1d  s$    ii##$78JJA3aJ0**, 

3%%JJqJ&**W*2/1CD-rvv6!235 L$$d$;

3+;A+> ?@C,<Q,?!@A

1Q30rp   c                    \         P                  ! VP                  R 4      R4      pRp\        P                  ! \
        VR7      ;_uu_ 4        VP                  ^
R7       RRR4       R#   + '       g   i     R# ; i)r   r   4`confidence_level` must be a number between 0 and 1.r   r@  N)r[   r  r   r   r   r   r  )rc   rd   r   r  s   &&  rm   test_1samp_ci_iv TestStudentTest.test_1samp_ci_iv  sR    		#3H]]:W55##R#8 6555s   A**A;	z	Too slow.r   rC  )alpha	data_axisc                   Vw  rVVP                  V4      p\        P                  ! VR W6R7      pVP                  VR7      w  rVR8X  d   TMT	p
VP	                  WR7      p
\        P                  ! WZW6R7      p\        VP                  4      pVP                  V4       VP                  VP                  ^V,
          VP                  R7      V4      p\        VP                  V4       R# )r   r  r@  r  r>   r6   N)rY   r[   r  r  expand_dimsr=  r  r  rT  r   r/   r<  )rc   rI  rJ  r  rd   r  r?   r   lr
  r>  r  r  s   &&&&&        rm   test_pvalue_ciTestStudentTest.test_pvalue_ci  s     
zz$b,7D&&&>"i/!Q...4;RTZZ 		$oobjj5

jCUK

C(rp   r   NrO  r   r   )r   r   r   gMXzgMXzrn  g?)$r   r   r   r   r   r#  r!  r"  r&  r'  r(  r)  r$  r%  r7  r8  r   r   r   r+  r0  r   r3  r9  r  rC  rG  ro  r  givenr  floatsr  rN  r   r   r   s   @rm   r  r  {  s     
B	BDDDDDDDDAXF$(^F[[ WX[[ VW2 X Y2B8 .MN; O;  [[ MN2 O2 k*JK[[],LM1 N L109 d;7[[J1188H 8 :<[[]VY,?@) A<  8
)rp   r  c                     a  ] tR tRt o R t]P                  P                  R. RO4      R 4       t]P                  P                  R. RO4      R	 4       t	]P                  P                  R. R O4      R
 4       t
]P                  P                  R. R!O4      R 4       t]P                  P                  R. RO4      R 4       t]P                  P                  R. R O4      R 4       t]P                  P                  R. R!O4      R 4       t]P                  P                  RR. R"O3R. R#O3R. R$O3R. R"O3.4      R 4       t]P                  P                  RR. R%O3R. R&O3R. R'O3R. R%O3.4      R 4       tR. ^]P$                  3R]P$                  .^]P$                  3R]P$                  .. R(O]P$                  ]P$                  ]P$                  .3R^^.^^]P$                  .^2^d]P$                  .3R^^]P$                  .. R(O. R)O3R^^.^ ^]P$                  .^ ^2]P$                  .3R]P$                  ]P$                  .. R(O]P$                  ]P$                  ]P$                  .3.t]P                  P                  R]4      R 4       tR^^^]P$                  .. R*OR3R. R*O^^^]P$                  .R3.t]P                  P                  R]4      R 4       t]P                  P                  R. R+O4      R 4       tR tRtV tR# ),TestPercentileOfScorei  c                .    \         P                  ! V/ VB # r  )r[   percentileofscore)rc   argskwargss   &*,rm   fTestPercentileOfScore.f  s    &&777rp   zkind, resultr  r^   strictweakc                J    . ROp\        V P                  V^VR7      V4       R# )rW   kindN
rW   rE   r   r   rw   rz   rJ   rF   rI   rO   r   rY  rc   r_  r  rJ  s   &&& rm   test_unique!TestPercentileOfScore.test_unique  s"    
 ,TVVAqtV,f5rp   c                J    . ROp\        V P                  V^VR7      V4       R# )rW   r^  N)
rW   rE   r   r   r   rw   rz   rJ   rF   rI   ra  rb  s   &&& rm   test_multiple2$TestPercentileOfScore.test_multiple2  "    
 +TVVAqtV,f5rp   c                J    . ROp\        V P                  V^VR7      V4       R# )rW   r^  N)
rW   rE   r   r   r   r   rw   rz   rJ   rF   ra  rb  s   &&& rm   test_multiple3$TestPercentileOfScore.test_multiple3%  rh  rp   c                J    . ROp\        V P                  V^VR7      V4       R# )rW   r^  N)
rW   rE   r   rw   rz   rJ   rF   rI   rO   rP   ra  rb  s   &&& rm   test_missing"TestPercentileOfScore.test_missing-  s"    
 -TVVAqtV,f5rp   c                J    . ROp\        V P                  V^(VR7      V4       R# )rO   r^  N
rO   r  r  r  r  r[  F   r`  r-  r  ra  rb  s   &&& rm   r8  (TestPercentileOfScore.test_large_numbers5  s"    
 6TVVArV-v6rp   c                J    . ROp\        V P                  V^(VR7      V4       R# )rO   r^  N)
rO   r  r  r  r  r  r  r[  rq  r`  ra  rb  s   &&& rm   test_large_numbers_multiple32TestPercentileOfScore.test_large_numbers_multiple3=  s"    
 5TVVArV-v6rp   c                J    . ROp\        V P                  V^(VR7      V4       R# )rO   r^  N
rO   r  r  r  r[  rq  r`  r-  r  n   ra  rb  s   &&& rm   test_large_numbers_missing0TestPercentileOfScore.test_large_numbers_missingE  s"    
 7TVVArV-v6rp   c                N    . ROp\        V P                  V. ROVR7      V4       R# )rO   r^  Nrw  )ry   rO   rx     ra  rb  s   &&& rm   test_boundaries%TestPercentileOfScore.test_boundariesM  s#    
 7TVVA0tV<fErp   c           
         ^^^^^^^^^	\         P                  5.
p\        V P                  V\         P                  ) ^\         P                  5.VR7      V4       R# )rW   r^  N)r   r!  r   rY  rb  s   &&& rm   test_infTestPercentileOfScore.test_infU  sP    
 1aAq!Q0TVVARVVG44V@&Irp   r  r   zpolicy, a, score, resultc                @    \        V P                  W#VR 7      V4       R# )r   Nra  )rc   policyrJ  r  r  s   &&&&&rm   test_nans_ok"TestPercentileOfScore.test_nans_oke  s    TVVAV8&Arp   r   r   zpolicy, a, score, messagec                    \        \        VR 7      ;_uu_ 4        V P                  W#VR7       RRR4       R#   + '       g   i     R# ; i)r   r   N)r   r   rY  )rc   r  rJ  r  r  s   &&&&&rm   test_nans_fail$TestPercentileOfScore.test_nans_failp  s.    :W55FF1F/ 6555s	   8A		r  c                    \         P                  ! . RO4      pVP                  V4      pV^
,          p. ROp\        V P	                  W#RR7      V4       R# )ry   r  r^  N)ry   rW   rE   r   r   rw   r`  )r   r   r]   r   rY  )rc   r  rJ  r  resultss   &&   rm   test_ndTestPercentileOfScore.test_ndu  sF     HH'(5!)+TVVAFV3W=rp   c                    R p\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! \
        P                  ! R4      ^4       RRR4       R#   + '       g   i     R# ; i)z`a` must be 1-dimensional.r   Nr  )r   r   r   r[   rV  r   r  r;  s   & rm   test_multidimensional_error1TestPercentileOfScore.test_multidimensional_error  sA     /]]:W55##BGGFOQ7 6555s   ,AA.	r   N))r  r  )r^   #   r[  r  )r\  r  ))r  r  )r^   r  r  )r\  r  ))r  r  )r^   r  r  )r\  r[  ))r  r  )r^   r  r  )r\  r  )ry   rO   r  r  )ry   rw   _   r  )ry   ry   r-  r  )ry   rO   r  )ry   rw   r  )ry   ry   r-  r  )ry   r  r  r  ))rz   rW  rE   rW   r   )rE   rW   rW   r   )r   r   r   r   rY  r   r   r  rc  rf  rj  rm  r8  rt  ry  r}  r  r   rb   casesr  r  r  r  r   r   r   s   @rm   rT  rT    ss    8 [[^ .< =6	=6 [[^ .< =6	=6 [[^ .< =6	=6 [[^ .< =6	=6 [[^ .< =7	=7 [[^ .< =7	=7 [[^ .< =7	=7 [[^v7H.I/5.G/7.I/57H.I.K LF	LF [[^v|.D/5z.B/7.D/5|.D.F GJ	GJ 2q"&&)BFF8Q/BFF8Y0HIAq6Aq"&&>BRVV3DEq!RVVni>q!fq!RVVnq"bffo>rvvrvv&	BFFBFFBFF3KLNE [[7?B @B 
1aBFF#Y	(	*	)aArvv.	(	*E [[8%@0 A0 [[W ' >>8 8rp   rT  Caser?   )f_obsf_exprW  r?   chi2r  mod_logcrc                   P  a  ] tR tRt o R t]P                  P                  R]4      ]P                  P                  R. RO4      R 4       4       t	R t
R t]P                  P                  R]4      ]P                  P                  R. RO4      R	 4       4       tR
 tR tR tRtV tR# )TestPowerDivergencei  c           
        VP                  R 4      P                  pVP                  WR7      pVe   VP                  W(R7      MTpVf   \        V4      p	M2Ve   VP                  W4      MV3p
V
^ ,          P                  V,          p	\
        P                  ! 4       ;_uu_ 4        \
        P                  ! RR\        4       \        P                  ! WVWER7      w  r\        WP                  WhR7      4       V^8X  g   VR8X  d7   \        P                  ! WVVR7      w  r\        WP                  WhR7      4       RRR4       \        P                   ! V4      p\        P                  P                  P!                  VV	^,
          V,
          4      p\        XVP                  WR7      4       R#   + '       g   i     L|; i)r   r6   Nr   zMean of empty slicer  rW  r?   lambda_pearson)r  rW  r?   )rY   r7   r*   broadcast_arraysr  r   r   r   r   r[   power_divergencer/   	chisquarer   distributionsr  sf)rc   r  r  rW  r?   r  expected_statrd   r7   num_obsr  statrd  
expected_ps   &&&&&&&&      rm   check_power_divergence*TestPowerDivergence.check_power_divergence  s`   

2$$

5
.272C

5
.<enG;@;Lb))%7!8 Qiood+G$$&&##H.C^T,, %%)<GD D**]*"HI!|w)3//%4/35jjj&LM ' zz$((--00181t1CE
2::j:>?! '&s   %BF00G 	caselambda_statNc           	         Vw  rE\        W4      pV P                  VP                  VP                  VP                  VP
                  WFV4       R # r  )ri  r  r  r  rW  r?   rc   r  r  rd   r  attrr  s   &&&&   rm   rW  TestPowerDivergence.test_basic  sA     $+##DJJ

DIItyy$+B	@rp   c           
        \         ^ ,          p\         ^,          p\        P                  ! VP                  VP                  34      p\        P                  ! \        P                  ! VP                  4      \        P
                  ! VP                  4      ,          VP                  34      pVP                  V4      pVe   VP                  V4      MTpV P                  WE^ ^RVP                  VP                  .VR7       V P                  WE^ ^RVP                  VP                  .VR7       V P                  WE^ ^RVP                  VP                  .VR7       V P                  WE^ ^RVP                  VP                  .VR7       VP                  VP                  VP                  4      R4      pV P                  VR^ RRVP                  VR7       R# )ry   Nr  r  log-likelihoodmod-log-likelihoodcressie-readrR  )power_div_1d_casesr   vstackr  	ones_liker^   r  rY   r  r  r  r  r  r]   )rc   rd   case0case1r  r  f_obs_reshapes   &&     rm   r  TestPowerDivergence.test_axis  s   "1%"1%		5;;45		2<<4RWWU[[5II ;;( ) 

5!%*%6

5!E##Q5::uzz2r 	$ 	; 	##Q%))UYY!7B 	$ 	@ 	##Q#emmU]]%C 	$ 	L 	##Q%((3 	$ 	<
 

2::ekk#:FC##dAt%** 	$ 	-rp   c                   \         ^ ,          p\         ^,          p\        P                  ! VP                  VP                  34      P                  p\        P                  ! \        P
                  ! VP                  4      \        P                  ! VP                  4      ,          VP                  34      P                  pVP                  VP                  .pVP                  R4      P                  pVP                  WGR7      pVP                  WWR7      pVP                  WgR7      pVP                  ^ .^..4      p\        P                  ! WEVR7      w  r\        W4       \        P                  ! WEVR,          R7      w  r\        P                  ! WEVR,          R7      w  rVP                  WP                  R3,          WP                  R3,          3^ R7      p\        W4       R# )	ry   r   r6   rV  r   r>   Nr  r  )r  r   r  r  r   r  r^   r  r  rY   r7   r[   r  r/   r  r  )rc   rd   r  r  r  r  expected_chi2r7   rW  r  rd  r   p0p1r  s   &&             rm   test_ddof_broadcasting*TestPowerDivergence.test_ddof_broadcasting  sn    #1%"1%		5;;4577		2<<4RWWU[[5II ;;( ))* 	 UZZ0

2$$

5
.

5
.

=
> zzA3*%((DA, &&u$t*E&&u$t*EYY::q= 12jj!m3DEAYN
&rp   c                   Vw  rE\        W4      p\        P                  ! 4       ;_uu_ 4        V P                  VP                  VP
                  VP                  VP                  WFV4       R R R 4       R #   + '       g   i     R # ; ir  )ri  r   r   r  r  r  rW  r?   r  s   &&&&   rm   test_empty_cases$TestPowerDivergence.test_empty_cases6  s_     $+$$&&''

DJJ		499, '&&&s   ?A66B	c                j   \         ^ ,          P                  p\         ^ ,          P                  p\         ^ ,          P                  p\         ^ ,          P                  pVP                  R4      P                  pVP                  W&R7      p\        P                  ! W#VVRR7      pRp\        WxVR7       R# )ry   r   r6   r  r  r  Nr  )
r  r  r  rW  r?   rY   r7   r[   r  r   )	rc   rd   r  r  rW  r?   r7   r   r?  s	   &&       rm   'test_power_divergence_result_attributes;TestPowerDivergence.test_power_divergence_result_attributesC  s    "1%++"1%++!!$))!!$))

2$$

5
. $$Ud*.	C,
C3rp   c           	        VP                  R R.RR..4      pVP                  RR.RR..4      pRp\        P                  ! \        VR7      ;_uu_ 4        \        P
                  ! W!P                  RR	.4      R
7       RRR4       \        P                  ! \        VR7      ;_uu_ 4        \        P
                  ! W#^R7       RRR4       \        P
                  ! W#R
7      w  rV\        WQP                  RR.4      4       \        WaP                  RR.4      4       R#   + '       g   i     L; i  + '       g   i     Lv; i)r   r5        >@r8   rp  g     A@g      9@For each axis slice...r         N@r  N)r  r?   g̑m@gUUU@gj^4;?g4;?)rY   r   r   r   r[   r  r/   )rc   rd   r  r  r  r  r  s   &&     rm   test_power_divergence_gh_122822TestPowerDivergence.test_power_divergence_gh_12282Q  s    

S#Jc
34

RISz23*]]:W55""5

C:0FG 6]]:W55""5A> 6++E?
jj*j)ABCjj*j)ABC 6555s   )D*D1D.	1E	c           	     v   VP                  . RO4      pR pVP                  RVP                  ^ ,          R,           4      pVP                  VP	                  V4      VP	                  VP                  W4,          4      4      ,          4      pVP                  WSV,          ,           4      pVP                  W!P                  R3,          WaP                  R3,          34      P                  pVP                  . R!NRNR"NRNR#NRNR$NR
NR%NRNR&NRNR'NRNRNRNRNRNRNRNRNRNRNRNR	NRNRNRNRNRNRNRN4      pVP                  VR(4      p\        VP                  ^ ,          4       FL  pW^ 3,          W^3,          r\        P                  ! VR),          VR*,          V	R7      w  r\        WRR7       KN  	  R# )+rp  r8   r   r   r   r   g    @g     r@gffffffP@r   gLD@r2   g      A@g     =@r1   g     :@r   g8@gffffff7@gq=
ףp?g7@g333336@g6@gfffff6@g8@g     A@g     j@)r  g{Gzt?r  N)rp  r        ,@g      1@r8   r  r   r   r   r   r   r   r  r   r   r   r   r   g*kqg      $r  r  g       ry  rO  rx  )rU   rE   r  )r   rW   )rY   r   r  r  r^  expr  r  r   r]   r  r[   r  r/   )rc   rd   obsbetar  rI  expected_countstable4table5r  r  r  rd  s   &&           rm   /test_power_divergence_against_cressie_read_dataCTestPowerDivergence.test_power_divergence_against_cressie_read_data^  sm    jj @ AIIb#))A,+,rvvc{RVVBFF46N%;;<&&a0 C

A.+JJM:< ==>Q 	     	 	
 
                       !  !" #" # & FG,v||A'A%+qD\6Q$<],,VC[&+5<>GDDd;	 (rp   r   ))Nr  r  r  )rW   r  r  r  r  r  r  r  rH  r  )r  r  r  r  r  )r   r   r   r   r  r   r   r  r  rW  r  r  power_div_empty_casesr  r  r  r  r   r   r   s   @rm   r  r    s     @@ [[V%78[[]	./@	/ 9
@-: 'D [[V%:;[[]	./,	/ <
,4D-< -<rp   r  c                   t   a  ] tR tRt o R tR t]P                  P                  RRR	.4      R 4       t	Rt
V tR# )
TestChisquarei  c                    \        \        R R7      ;_uu_ 4        VP                  RR.4      pVP                  RR.4      p\        P                  ! W#R7       RRR4       R#   + '       g   i     R# ; i)r  r   r   r5  r  r  r  N)r   r   rY   r[   r  )rc   rd   r  r  s   &&  rm   test_chisquare_12282a#TestChisquare.test_chisquare_12282a  sR     :-EFFJJSz*EJJSz*EOOE/ GFFFs   >A""A3	c                J   \         P                  P                  R 4      p^
pVP                  RRVR7      pVP	                  V4      pVP                  V4      pVP                  WTP                  R7      p\        P                  ! WTRRR7      pWT,
          VP                  V4      ,          pVP                  V^,          4      p\        VP                  V4       \        VP                  W8P                  R7      4      p	\        VP                  V	P                  V4      4       R# )	l   *m{m r  r<  r  r6   F)r  rW  	sum_checkNrU   )r   r  r  r  poissonrY   r7   r[   r  rG  r^  r/   r=  r!   r<  r  )
rc   rd   r  r  lamrf   r   r5  r=  r#  s
   &&        rm   test_chisquare_12282b#TestChisquare.test_chisquare_12282b  s     ii##$45kk$1k-KKjjoJJq		J*ooauEW$FF1a4L	y1A__=>

BEE)$45rp   zn, dtypec           	        \        W24      pVP                  V^ .VR7      pVP                  V^,          V^,          .VR7      p\        P                  ! WE4      pVw  rx\	        WsP                  WP                  R4      P
                  R7      RR7       \        VP                  V4       \        VP                  V4       R# )ry   r6   r   vIh%<=r  N)	ri  rY   r[   r  r/   r7   r0   r=  r<  )	rc   r  r7   rd   r  r  r   r  rd  s	   &&&&     rm   #test_chiquare_data_types_attributes1TestChisquare.test_chiquare_data_types_attributes  s     "jj!Quj-jj!q&!q&)j7ooc'jj**R.2F2FjGeTt,

A&rp   r   N)r|  r.  )i@B r  )r   r   r   r   r  r  r   r   r  r  r   r   r   s   @rm   r  r    s;     06& [[Z.:L)MN
' O
'rp   r  c                     a  ] tR tRt o . RO. R	O. R
O. RO.tRt. RO. RO. RO. RO.tRt. RO. RO. RO. RO.tRt	]
P                  P                  R. RO4      ]
P                  P                  R]]3]]3]]	3.4      R 4       4       tR tRtV tR# )TestFriedmanChiSquarei  r7   Nz	data, refc                   \        V4      '       d/   VP                  R 8  d   VR8X  d   \        P                  ! R4       Vf   TM
\	        WA4      pV Uu. uF  qTP                  WQR7      NK  	  pp\        P                  ! V!  p\        VP                  VP                  V^ ,          VR7      4       \        VP                  VP                  V^,          VR7      4       R# u upi )2.0r   (NumPy doesn't preserve dtype pre-NEP 50.Nr6   )r'   __version__r   r  ri  rY   r[   friedmanchisquarer/   r=  r<  )rc   r7   r  r  rd   r   r   s   &&&&&  rm   test_against_references-TestFriedmanChiSquare.test_against_references  s     B<<BNNU2ui7GKKBCGB,><@AD5

5
.DA%%t,rzz#a&z'FG

BJJs1vUJ$CD Bs   C#c           	     :   R p\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! VP                  V P                  ^ ,          4      VP                  V P                  ^,          4      4       RRR4       R#   + '       g   i     R# ; i)z At least 3 samples must be givenr   N)r   r   r   r[   r  rY   r  rc   rd   r  s   && rm   test_too_few_samples*TestFriedmanChiSquare.test_too_few_samples  sY    4]]:W55##BJJtwwqz$:BJJtwwqz<RS 6555s   AB		B	r   )g"~j?g^I+?gI+?gjt?gMbX9?gʡE?x&?-?g?r   Gz?g+?gv?g9v?)g~jt?gx?gOn?r  g"~j?n?gK7A`?r  g7A`?r   bX9?gZd;O?g1Zd?gK?)gy&1?gzG?g`"?g!rh?g'1Z?gZd;O?grh|?gjt?gʡE?r   gzG?gS?gJ4?gʡE?)gK7?gh|?5?gl?g/$?g#~j?r  gQ?      ?g      ?r   r   g rh?g333333?
ףp=
?)gNt$@gBv?)r   r   rw   r   rw   r   rE   rw   r   r   r   r   )rE   rE   rW   rE   r   rW   rE   r   rE   rW   rW   r   )rE   r   r   r   r   r   r   r   r   rW   rE   rW   )r   rw   r   r   r   r   r   r   r   r   r   r   )g
__2@g5"]i2?)r   g#@      !@r  g$@)g333333@g@g@r  g@)r  r  rB   r   @)g!@g!@333333 @ffffff
@g333333"@)g\(\%@g+ԋ?r  )r   r   r   r   r  ref1r  ref2r  ref3r   r   r  r  r  r   r   r   s   @rm   r  r    s     
9:;:
;B 2D /
.
.
.
0B 4D %
#
#
#
%B 'D[[W&BC[[[B:DzB:*NOE P DET Trp   r  c                   J   a  ] tR tRt o RtR
R ltR
R ltR tR tR t	Rt
V tR	# )
TestKSTesti  zLTests kstest and ks_1samp agree with K-S various sizes, alternatives, modes.c                    \         P                  ! VR W%R7      p\        P                  ! W4.4      p\	        \        P                  ! V4      WR7       R# rX  r  r  rJ  N)r[   kstestr   r   r   )	rc   rf   r  expected_statisticexpected_probr  r  r  r  s	   &&&&&&&  rm   _testOneTestKSTest._testOne  s9    a[L88/?@!"((6"2HNrp   c                    \         P                  ! VR W#R7      p\         P                  ! V\         P                  P                  W#R7      p\        \        P                  ! V4      WdR7       R# r  )r[   r  ks_1samprX  cdfr   r   r   )rc   rf   r  r  r  r  result_1samps   &&&&&  rm   _test_kstest_and_ks1samp#TestKSTest._test_kstest_and_ks1samp  sE    a[L~~a2=J!"((6"2LRrp   c                ~    \         P                  ! R^^	4      pRp\        P                  ! VR4      p\	        W24       R# )rW   rX  NrU   r  )r   r(  r[   r  r   )rc   rf   r?  r   s   &   rm   test_namedtuple_attributes%TestKSTest.test_namedtuple_attributes  s1    KKAq!,
ll1f%C,rp   c                *   \         P                  ! R^^	4      pV P                  VR4       \         P                  ! R^^	4      pV P                  VR4       . R	OpV P                  VR4       V P                  VRRR7       V P                  VRRR7       R# )
rW   r  r  r  r  r  NrU   
r  Q?g333333g(\?Q?g(\ſg{GzgHzG?g\(\gGz)r   r(  r  r  s   & rm   test_agree_with_ks_1samp#TestKSTest.test_agree_with_ks_1samp  s    KKAq!%%a5KKR#%%a5N%%a5%%a%A%%ag%>rp   c                &   \         P                  ) ^ ^\         P                  .p\        P                  ! V\        P                  P
                  4      p\        P                  ! V\        P                  P
                  RR7      p\         P                  ! \         P                  ! V4      4      '       g   Q h\        W#4       \         P                  ! VP                  4      '       d   Q h\         P                  ! VP                  4      '       d   Q hR# )ry   T)_no_decoN)r   r!  r[   r  cauchyr  r  r  r   ry  r=  r<  )rc   r  r   r  s   &   rm   test_pm_inf_gh20386TestKSTest.test_pm_inf_gh20386  s     Arvv&ll4!1!12ll4!1!1DAvvbkk#&''''S88CMM****88CJJ'''''rp   r   N)autorM   )r   r   r   r   r5  r  r  r  r#  r(  r   r   r   s   @rm   r  r    s(     VOS-
?	( 	(rp   r  c                   z  a  ] tR tRt o RtRR/R lt]P                  P                  R. RO4      R 4       t	]P                  P                  R. RO4      R	 4       t
R
 t]P                  P                  R]P                  ]P                  .4      ]P                  P                  R. RO4      R 4       4       tRtV tR# )TestKSOneSamplei  zQ
Tests kstest and ks_samp 1-samples with K-S various sizes, alternatives, modes.
r  r*  c                   WgP                   8X  d   R MRp\        P                  ! V\        P                  W%R7      p	VP                  W6R7      p
VP                  WFR7      p\        V	P                  WR7       \        V	P                  WR7       R# )gvIh%,=h㈵>r  r6   r  N)	r   r[   r  r   ndtrrY   r/   r=  r<  )rc   rf   r  r  r  r  r7   rd   r  r   ref_statisticr`  s   &&&&&$$$    rm   r  TestKSOneSample._testOne!  se    +unnQ+Q

#5
CZZZ;
}@

J:rp   r7   Nc           
        \        V4      '       d/   VP                  R 8  d   VR8X  d   \        P                  ! R4       Vf   \	        V4      M
\        W!4      pVP                  R^^	VR7      pV P                  VRRRWR7       VP                  R^^	VR7      pV P                  VRR	R
WR7       . ROpVP                  W1R7      pV P                  VRRRWR7       V P                  VRRRRWR7       V P                  VRRRRWR7       R# )r  r   !Pre-NEP 50 doesn't respect dtypesNr6   r  g|N?g7.s?r7   rd   g{CTp?g M<b*?gZL?g86J4?r  g+?r  )r  r7   rd   r  gHD?gr?rU   r  r   )	r'   r  r   r  r)   ri  r(  r  rY   r*  s   &&& rm   test_agree_with_r!TestKSOneSample.test_agree_with_r*  s"    B<<BNNU2u	7IKK;<(- $72;MKKAqK.a&9;N! 	 	* KKR%K0a&9;O! 	 	* OJJqJ&a&79J! 	 	*a$57Hw! 	 	*a!24EG! 	 	*rp   c           
        \        V4      '       d/   VP                  R 8  d   VR8X  d   \        P                  ! R4       Vf   \	        V4      M
\        W4      p\        P                  P                  R^dRR7      pVP                  W2R7      pV P                  VRR	R
RWR7       V P                  VRR	RWR7       V P                  VRRRWR7       R# )r  r   r3  Nr'  ih:)r&  r  r  r6   r  ghх?g7?asymp)r  rd   r7   r  g^h?)rd   r7   r  gv!ԉ}?g*z)?)r'   r  r   r  r)   ri  r[   rX  r  rY   r  )rc   rd   r7   rf   s   &&& rm   test_known_examples#TestKSOneSample.test_known_examplesA  s     B<<BNNU2u	7IKK;<(- $72;MJJNNs9NEJJqJ&a&9;O"r 	 	8a!46J 	 	*a$9;N 	 	*rp   c           	        \        \        P                  ! \        \        P                  ^R4      4      4       \        \        RR7      ;_uu_ 4        \        R^R4       RRR4       \        \        P                  ! \        R^R4      4      4       \        P                  ! . RO4      p\        \        VR	^4      P                  \        \        \        .R7       R#   + '       g   i     L; i)
rW   Tzn is not integral: 1.5r   r2   N)dtypesrU   ))rZ  rW   Tr   )rZ  皙?Tr   )rZ  ry   Tr   )rZ  gTr   )          ?Tr   )r>  r?  Fr   )r>  r1   Tgb?)r>  r1   FgiNq>)r>        ?Tgv(?)r>        ?TgT	?)@  g\(\?Fr   )rB        ?Fg(>)rB  gQ?Fg@c?)rB        ?FgX+ʳP?r  )r   r   ry  r   rb   r   r   rY   r   checkintr  bool)rc   datasets   & rm   test_ks1samp_allpaths%TestKSOneSample.test_ks1samp_allpathsQ  s    D123:-EFFCD! GQ-./** 
 4 	'9a066sE4>P6Q= GFs   CC-	ksfunc*alternative, x6val, ref_location, ref_signc                   VP                  R 4      R,           p\        P                  ! V4      ^,          P                  V4      pR pV! VP	                  V4      WR7      p	VP
                  VP                  8X  d   RMRp
\        V	P                  VP	                  R4      V
R7       \        V	P                  VP	                  V4      4       \        V	P                  VP	                  WVP                  R7      4       R	# )
r   r1   c                     V R ,          # )r   r   r  s   &rm   r  /TestKSOneSample.test_location_sign.<locals>.cdf  s
    1s7Nrp   r  rC  r  rD  r  r6   N)r   r_   r`   ra   rY   r7   r   r/   r=  r0   statistic_locationstatistic_signint8)rc   rK  r  x6valref_locationref_signrd   rf   r  r   r  s   &&&&&&&    rm   test_location_sign"TestKSOneSample.test_location_signt  s     IIcNS FF1IaLU#"RZZ]CA2::-u4rzz#TB..

<0HI**BJJxwwJ,OPrp   r   r  ))r  r   r   rW   )r  r   r   rU   )r  r   r   rW   )r  r   r   rU   )r   r   r   r   r5  r  r   r   r  r5  r9  rI  r[   r  r  rV  r   r   r   s   @rm   r,  r,    s     ;; [[W&BC* D*, [[W&BC* D*!RF [[Xenn'EF[[I9:
Q: GQrp   r,  c                     a  ] tR tRt o RtRR ltR tR tR tR t	R t
R	 tR
 t]P                  P                  R 4       t]P                  P                  R 4       tR tR t]P                  P(                  R 4       t]P                  P(                  R 4       t]P                  P                  R 4       tR t]P                  P                  R 4       t]P                  P5                  R. ^.3^.. 3. . 334      R 4       t]P                  P(                  R 4       tR t]P                  P5                  R]P>                  ]P@                  .4      ]P                  P5                  R. RO4      R 4       4       t!Rt"V t#R# )TestKSTwoSamplesi  z<Tests 2-samples with K-S various sizes, alternatives, modes.c                    \         P                  ! WW6R 7      p\        P                  ! WE.4      p\	        \        P                  ! V4      V4       R# )r  N)r[   ks_2sampr   r   r   )	rc   r  r  r  r  r  r  r  r  s	   &&&&&&&  rm   r  TestKSTwoSamples._testOne  s7    ?88/?@!"((6"2H=rp   c                   V P                  ^ .^.RRR4       V P                  ^ .^.RRR4       V P                  ^ .^.RRR4       V P                  ^.^ .RRR4       V P                  ^.^ .RRR4       V P                  ^.^ .RRR4       R# )ry   r  r   r  r1   r  r   N)r  rt  s   &rm   	testSmallTestKSTwoSamples.testSmall  s    qcA3UC8qcA3	5#6qcA3s3qcA3UC8qcA3	5#6qcA3s3rp   c                z   \         P                  ! R R.4      pVR,           pVR,
          p\         P                  ! . R
O4      pV P                  W$RRR 4       V P                  W$RRR4       V P                  W$RRR4       V P                  W4RRR4       V P                  W4RRR4       V P                  W4R^ R 4       R	# )r   r   r  r  r  rE  r  rb  rG  Nr  rU  rH  r   r   r  rc   r  data1pdata1mr  s   &    rm   testTwoVsThreeTestKSTwoSamples.testTwoVsThree  s    #s$)f['3?fY=fVWc:f['3?fY=fVQ4rp   c                z   \         P                  ! R R.4      pVR,           pVR,
          p\         P                  ! . RO4      pV P                  W$RRR	4       V P                  W$RRR
4       V P                  W$RRR4       V P                  W4RRR4       V P                  W4RRR4       V P                  W4R^ R 4       R# )r   r   r  r  r  r  NrH  r1   g?g?rA  皙?r  ra  r'  ra  rb  s   &    rm   testTwoVsFourTestKSTwoSamples.testTwoVsFour  s    #s$-.f['7CfY@fVWg>f['6BfY@fVQ4rp   c                f   \         P                  ! ^^d^d4      pV^,           R,           pV^,           R,
          pV P                  WRR
R4       V P                  WRR
R4       V P                  WR^ R4       V P                  WRRR4       V P                  WRRR4       V P                  WR^ R4       R	# )rW   rD  r  g~z?r  gz;.B?r  r   gn2IU?Nr  g{Gz?r   r(  r  )rc   x100	x100_2_p1	x100_2_m1s   &   rm   test100_100TestKSTwoSamples.test100_100  s    {{1c3'1HsN	1HsN	d{I?QRdy)=OPdvq#6d{IsCdy)=NOdvq#6rp   c                   \         P                  ! ^^d^d4      p\         P                  ! ^^d^n4      pV^,           R,           pV^,           R,
          pV P                  WRRR4       V P                  WRRR4       V P                  WR^ ^4       V P                  WRRR4       V P                  WRRR4       V P                  WRR	R
4       R# )rW   rD  r  g@߿?r  g}n?r  g]O);?gѫ);?r   r   Ng?g:[?rl  )rc   rm  x110
x110_20_p1
x110_20_m1s   &    rm   test100_110TestKSTwoSamples.test100_110  s    {{1c3'{{1c3'BY_
BY_
d\CWXd	<AUVd15d\CWXd	<AUVdS9rp   c                   \         P                  ! ^.^,          ^.^,          ,           ^.^,          ,           ^.^,          ,           \        R7      pV^,           p\         P                  ! ^.^,          ^.^,          ,           ^.^
,          ,           ^.^,          ,           \        R7      p\         P                  ! ^.^
,          ^.^,          ,           ^.^
,          ,           ^.^,          ,           \        R7      pV P                  WRRR4       V P                  WRRR4       V P                  WRRR4       V P                  W4RRR	4       V P                  W4RRR
4       V P                  W4RRR4       R# )rE   r6   r  g^dH?r  gQl6y?r  r   r   g(f^?g!?g+ ϖ?Ng      ?gVdEVdE?gii?)r   r   rF  r  )rc   x2233x3344x2356x3467s   &    rm   testRepeatedValues#TestKSTwoSamples.testRepeatedValues  s!   !qA37*aS1W4sQw>cJ	!qA37*aS2X5a?sK!rQC!G+qcBh6!q@LeK9KLeIv7JKeFFC8eK>PQeI{<NOeFJ8JKrp   c                   \         P                  ! . RO4      pV P                  W^,           RR	R 4       V P                  W^,           RR	R4       V P                  W^,           RRR 4       V P                  WR,           RR	R 4       V P                  WR,           RR	R4       V P                  WR,           RRR 4       V P                  WR,
          RR	R 4       V P                  WR,
          RRR 4       V P                  WR,
          RR	R4       R# )
r   r  r  r  r  r   r1   Nr  rU  ra  )rc   r  s   & rm   testEqualSizesTestKSTwoSamples.testEqualSizes  s    )e1Wk5#>e1Wi=e1WfeR8e3YUC@e3Y	5$?e3Yr:e3YUC@e3Y	5#>e3Yt<rp   c                "   R Rr!RV,          V,          ^,          ^,          p\         P                  ! ^^V4      V,
          p\         P                  ! ^^V4      pV P                  WERRV,          V,          RRR7       V P                  WERRV,          V,          RRR7       V P                  WERRV,          V,          R	RR7       V P                  WER
RV,          V,          RRR7       \        P                  ! 4       ;_uu_ 4        Rp\        P
                  ! RV\        4       V P                  WERRV,          V,          R	RR7       V P                  WER
RV,          V,          RRR7       RRR4       \        P                  ! RR7      ;_uu_ 4       p\        P                  ! R4       V P                  WER
RV,          V,          RRR7       \        V\        ^4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)r$  iX  r   r  g     @@r*  r  r8  r  g2JE?r  g     @@gsW\nc?)ks_2samp: Exact calculation unsuccessful.r   r  NTrecordalways	r   r(  r  r   r   r   r   rQ  r%  rc   n1n2deltarf   rg   r  r  s   &       rm   testMiddlingBoth!TestKSTwoSamples.testMiddlingBoth  s    cBBr	!AKK3#e+KK3#aK"r)93! 	 	#aK"r)93" 	 	$aIv{R'79K" 	 	$aFEBJO5G" 	 	$$$&&AG##Hg~FMM!	6B;+;=O&  (MM!
R9K&  ( ' $$D11Q!!(+MM!
R9K&  (A~q1	 21 '& 211   A'G*AG=*G:	=H	c                "   R Rr!RV,          V,          ^,          ^,          p\         P                  ! ^^V4      V,
          p\         P                  ! ^^V4      pV P                  WERRV,          V,          RRR7       V P                  WERRV,          V,          RRR7       V P                  WERRV,          V,          R	RR7       V P                  WER
RV,          V,          RRR7       \        P                  ! 4       ;_uu_ 4        Rp\        P
                  ! RV\        4       V P                  WERRV,          V,          R	RR7       V P                  WER
RV,          V,          RRR7       RRR4       \        P                  ! RR7      ;_uu_ 4       p\        P                  ! R4       V P                  WER
RV,          V,          RRR7       \        V\        ^4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)r  L  r   r  g     ȹ@r8  r  r*  r  gZ?r  g     @@g@J?r  r   r  NTr  r  r  r  s   &       rm   testMediumBothTestKSTwoSamples.testMediumBoth  s    tBBr	!AKK3#e+KK3#aK"r)93" 	 	$aK"r)93! 	 	#aIv{R'79K" 	 	$aFFRK"$46H" 	 	$ $$&&AG##Hg~FMM!	6B;+;=O&  (MM!b(8:L&  ( ' $$D11Q!!(+MM!b(8:L&  (A~q1	 21 '& 211r  c                j   R ^nr!VR,          pRV,          V,          ^,          ^,          p\         P                  ! ^^V4      V,
          p\         P                  ! ^^dV4      pV P                  WVRRV,          R4       V P                  WVRRV,          R4       V P                  WVR	RV,          R
4       R# )'  r  r   r  g    `@g      <r  g     @g򼉷?r  gimb:Nrl  )rc   r  r  lcmr  rf   rg   s   &      rm   	testLargeTestKSTwoSamples.testLarge  s    BgBr	!AKK3#e+KK3#aK38NOaIus{4GHaFGcM3IJrp   c           	         \         P                  P                  R 4      pVP                  RR7      pVP                  RR7      R,          pV P	                  W#RRRRR	7       V P	                  W#RRRR
R	7       R# )@ i  r  r  r2   r  gC?      <r8  r  r  Nr   r  r  r  r  rc   r  rf   rg   s   &   rm   test_gh11184TestKSTwoSamples.test_gh11184)  sw    ii##F+JJDJ!JJDJ!C'aK)<>T" 	 	$aK)<>T" 	 	$rp   c           	     J   \         P                  P                  R 4      pVP                  RR7      pVP                  RR7      R,          pV P	                  W#RRRRR	7       V P	                  W#RRR
RR	7       V P	                  W#RRRRR	7       V P	                  W#RRRRR	7       R# )r  r  r  i'  r2   r  g 	_r!?gAD5r8  r  r  r  r  gלN#y7r  gvqw?Nr  r  s   &   rm   test_gh11184_bigger$TestKSTwoSamples.test_gh11184_bigger3  s     ii##F+JJEJ"JJEJ"S(aK)<>T" 	 	$aK)<>T" 	 	$aI':<R" 	 	$aF$79O" 	 	$rp   c                   \         P                  P                  R 4      p\        RRR4       F  pVP	                  VR7      pVP	                  V^
,           RR7      p\
        P                  ! W4RR7      P                  p\
        P                  ! W4RR7      P                  p\        V^V,          4       \        V^V,          4       K  	  R	# )
r  r  i.  r  r1   r  r&  r  r  r8  N)	r   r  r  r  r  r[   r[  r<  r   )rc   r  rf   vals1vals2r  r8  s   &      rm   test_gh12999TestKSTwoSamples.test_gh12999B  s    ii##F+tUD)AJJQJ(EJJQV#J6ENN5g>EEENN5g>EEEeQY/eQY/ *rp   c                   R Rr!VR,          pRV,          V,          ^,          ^,          p\         P                  ! ^^V4      V,
          p\         P                  ! ^^V4      pV P                  WVRRV,          RRR7       V P                  WVRRV,          R	R
R7       V P                  WVRRV,          RRR7       V P                  WVRRV,          R4       V P                  WVRRV,          R4       \        P                  ! 4       ;_uu_ 4        Rp\        P
                  ! RV\        4       V P                  WVRRV,          RR
R7       V P                  WVRRV,          RR
R7       RRR4       R#   + '       g   i     R# ; i)r  i*  r  r   r  g     @gkHY?r8  r  gLɔ.?r  r*  r  g.LbG2?r  r   gr?֎?r  r   N)r   r(  r  r   r   r   r   )rc   r  r  r  r  rf   rg   r  s   &       rm   testLargeBothTestKSTwoSamples.testLargeBothN  sZ    BgBr	!AKK3#e+KK3#aK6H" 	 	$aK6H" 	 	$aK6H! 	 	#aIus{4FGaFD3J0BC$$&&AG##Hg~FMM!	53;8J&  (MM!s
4F&  ( '&&&s   AE//F 	c                T    Rp\         P                  ! ^^.^.4      p\        W!4       R# r=  Nr  )r[   r[  r   )rc   r?  r   s   &  rm   testNamedAttributes$TestKSTwoSamples.testNamedAttributesf  s%    ,
nnaVaS)C,rp   c           
     
   ^ RI HpHp V! ^^^^4       V! R^^R4       \        P                  ! RR7      ;_uu_ 4        \        \        VRR^^4       \        \        VRR^^4       R	R	R	4       R	#   + '       g   i     R	# ; i)
ry   )_count_paths_outside_method!_compute_outer_prob_inside_methodr  i  r   rp  r  iK  r<  N)scipy.stats._stats_pyr  r  r   rr  r   FloatingPointError)rc   r  r  s   &  rm   test_some_code_paths%TestKSTwoSamples.test_some_code_pathsl  sq    	

 	*!Q15#D!Q5[[)),.Ia,,.Ia, *)))s   )A11B	r  c                H   \         P                  ! \        \        R 7      ;_uu_ 4        \        P
                  ! V!  p\        VP                  \        P                  4       \        VP                  \        P                  4       RRR4       R#   + '       g   i     R# ; ir   N)r   rC  r   r   r[   r[  r   r=  r   rb   r<  )rc   r  r   s   && rm   test_argument_checking'TestKSTwoSamples.test_argument_checking}  sY     \\,4IJJ..$'C/RVV, KJJJs   ABB!	c                6   \         P                  P                  R4      pRp\        P                  P                  VR^VR7      pV^,           p\        P                  ! W4RRR7       \        P                  ! W4RRR7       \        P                  ! W4R	RR7       R
# )zEnsure gh-12218 is fixed.l   9B i    r   )r  r&  r'  r  r  r8  r  r  r  N)r   r  r  r[   r  r  r[  )rc   r  r  rvs1rvs2s   &    rm   test_gh12218TestKSTwoSamples.test_gh12218  ss    
 ii##J/}}  bb LaxtywGtvGDt{Irp   c                   \         P                  P                  R R7      pVP                  RR7      R,           pVP                  RR7      pRp\        P                  ! \
        VR7      ;_uu_ 4        \        P                  ! W#RR	7      p\        VP                  ^ R
R7       RRR4       R#   + '       g   i     R# ; i)i{fr  iq  r  r1   iq  z(ks_2samp: Exact calculation unsuccessfulr   r  r  ri  rD  N)
r   r  r  r   rC  r   r[   r[  r
   r<  )rc   r  r  r  r  r   s   &     rm   test_warnings_gh_14019'TestKSTwoSamples.test_warnings_gh_14019  s     ii###2


$s*


$<\\.88..6BCCJJ6 9888s   21B--B>	rK  rL  c                   \         P                  ! ^
\         P                  R7      pVP                  4       pW6^&   \        P
                  ! WgVR7      pVP                  R8X  g   Q hVP                  V8X  g   Q hVP                  V8X  g   Q hR# )rO   r6   r  rD  N)	r   r   r   r@   r[   r[  r=  rP  rQ  )	rc   rK  r  rS  rT  rU  rf   rg   r   s	   &&&&&&   rm   rV  #TestKSTwoSamples.test_location_sign  st     IIb

+FFH!nnQ{;}}###%%555!!X---rp   r   N)r*  ))r  皙@r  rW   )r  ffffff@r   rU   )r  r  r  rW   )r  r  r   rU   )$r   r   r   r   r5  r  r^  re  ri  rp  rv  r}  r  r   r   r  r  r  r  r  ro  r  r  r  r  r  r  r  r  r  r[   r  r[  rV  r   r   r   s   @rm   rY  rY    s    F>4
55	7:
L
= [[2 26 [[2 28	K$ [[$ $ [[	0 	0 [[( (.- [[, ,  [[VrA3i1#rRH%EF- G- [[
J 
J
7 [[Xenn'EF[[I;<

.< G
.rp   rY  c            
         R RrW ) .W.3p\         P                  ! ^^d^d4      p\         P                  ! RR^d4      p\         P                  ! \         P                  ! ^^d^d4      \         P                  ! RR^d4      .4      p\         P                  ! \         P                  ! RR^d4      \         P                  ! ^^d^d4      .4      p\        P                  ! W4^ R7      w  rx\        Wx.W34       \        P                  ! VP                  VP                  ^ R7      w  rx\        Wx.V4       \        P                  ! WV^R7      w  rx\        Wx.V4       \        P                  ! 4       ;_uu_ 4        \         P                  ! RRR7      ;_uu_ 4        \        P                  ! RR\        4       \        P                  ! RR	4      w  rxR
R
R
4       R
R
R
4       \        \         P                  ! V4      4       \        \         P                  ! V4      4       R!p	\        P                  ! W4^ R7      p
\        W4       \         P                  ! WUV.4      p\         P                  ! WfV.4      p\        P                  ! W^R7      w  rx\        \         P                   ! V4      V 4       \        \         P                   ! V4      V4       \#        VP$                  R"4       \        P                  ! \         P&                  ! V^^ 4      \         P&                  ! V^^ 4      ^R7      w  rx\        \         P                   ! V4      V 4       \        \         P                   ! V4      V4       \#        VP$                  R#4       \)        \*        \        P                  W4RR7       \        P                  ! W4^ RR7      w  rx\-        V^V^,          ,
          4       \-        Wp4       \        P                  ! W4^ RR7      w  rx\-        W^,          4       \-        Wp4       \         P.                  P1                  R4      p\        P2                  P5                  ^^
RVR7      p\         P6                  VR&   \        P2                  P5                  ^^
RVR7      \        P2                  P5                  RRVR7      ,           p\         P6                  VR&   \         P                  ! RR7      ;_uu_ 4        \9        \        P                  ! W4      \         P6                  \         P6                  34       R
R
R
4       \        \        P                  ! WRR7      R$4       \)        \*        \        P                  WRR7       \)        \*        \        P                  WRR7       \:        P<                  ! \        RR7      ;_uu_ 4        \        P                  ! . R%O. R&O4      w  rxR
R
R
4       \#        \         P                   ! V4      V3\         P>                  ^ 34       \         P                  ! RR7      ;_uu_ 4        \#        \        P                  ! . R%O. R%O4      \         P6                  \         P6                  34       \         P                  ! ^\         P6                  .R'^..4      p\#        \        P                  ! V\         P@                  ! R(4      4      ^ \         P6                  .^\         P6                  .34       R
R
R
4       \         PB                  ! ^4      p\)        \*        \        P                  VPE                  R)4      VPE                  R*4      4       R p\         PF                  ! V4      p\         P6                  VR+&   \         P6                  VR,&   \:        P<                  ! \H        \J        R7      ;_uu_ 4        \        P                  ! WV^ RR7      w  rR
R
R
4       \:        P<                  ! \H        \J        R7      ;_uu_ 4        \        P                  ! WV^ RRR7      w  rxR
R
R
4       \-        WpRR 7       \         P                  ! RR7      ;_uu_ 4        \-        VV! WR4      RR 7       R
R
R
4       \:        P<                  ! \H        \J        R7      ;_uu_ 4        \        P                  ! WV^ RRR7      w  rxR
R
R
4       \-        WpRR 7       \         P                  ! RR7      ;_uu_ 4        \-        VV! WR4      RR 7       R
R
R
4       R
#   + '       g   i     ELE; i  + '       g   i     ELQ; i  + '       g   i     EL; i  + '       g   i     ELz; i  + '       g   i     ELp; i  + '       g   i     EL; i  + '       g   i     ELl; i  + '       g   i     EL6; i  + '       g   i     L; i  + '       g   i     R
# ; i)-gu?gȵI?r  gKX@r>   r   r  r  r   r   Nr
  r  r  r  r  Na   r/  r$  r'  )r'  r  r  rp  r   r   r   r   r  r   c                 l    V ^ 8  d   VR8X  g   V ^ 8  d   VR8X  d
   V^,          # ^V^,          ,
          # ry   r  r  r   r*  rd  alts   &&&rm   converttest_ttest_rel.<locals>.convert  3    EcVmQ3)3Cq5LAE{rp   ri  ri  r  r  rW  rP  )ghm#1?gry̧?ry   ry   ry   r  rU   rR  )rF   r   rE   r   r   )r   :r  r  N)r   :r~  r  N)&r   r(  r   r[   	ttest_relr   r   r   r   rr  r   r   r   ry  r   rS  absr   r  rU  r   r   r
   r  r  rX  r  rb   r   r   rC  r!  rY  r   r]   	vectorizer   r   )trrL  tprr  r  rvs1_2Drvs2_2Dr*  rd  r?  r   rvs1_3Drvs2_3Dr  rf   rg   ananr  	converters                      rm   test_ttest_relr    s{   !4rs8RG
C;;qS!D;;tF3'DhhAc#.D0LMNGhhD4bkk!C6LMNG
//$1
-CAqeRG,
//'))WYYQ
7CAqeC(
//'
3CAqeC( 
	 	 	"	"KK::9>	Kr2& ; 
#
 BHHQKBHHQK )J
//$1
-C( ii12Gii12G
//'
3CAbffQi,bffQi,&!??2;;w15;;w15 !#DA bffQi,bffQi,&! *eootwO??4A6BDAAq2a4x A??4A9EDAA!tA ))


)C

1BSsCAVVAcF	ARc	D	c#	>
?AVVAcF	X	&	&5??102662662BC 
' eooavFGI*eooqH*eooqI 
n,E	F	Fy)4 
G"&&)Q"&&!-	X	&	&U__Y	:RVVRVV<LM xx!RVVr1g./U__T288F+;<"&&kArvv;/	1 
' 			"A*eooqyy/@))I&( W%IGHGH	(0A	B	B1H 
C 
(0A	B	Bw*0fF 
C A&	X	&	&9RV45A 
' 
(0A	B	Bw*0iI 
C A&	X	&	&9RY7eD 
'	& ;:: 
#	"	"^ 
'	&	& 
G	F	F 
'	&	&. 
C	B	B 
C	B	B 
'	&	& 
C	B 
'	&	&s   +!d6c>	d?d&+d:"Ce*e"6e6f
ff1>d		dd#	&d7	:e	e	"e3	6f	
f	f.	1g	c                     \         P                  R RR.p . R
Op\        P                  ! WRR7      p\        P                  ! WRR7      p\	        VP
                  VP
                  ) RR7       \	        VP                  VP                  RR7       \        P                  ! VR,          V R,          4      p\	        W4RR7       \	        VRRR7       R	# )r   r   r   r   r   rC  rD  r  -C6?Nr   r   r   r   )rM  grh|?)r   rb   r[   r  r
   r=  r<  )rf   rg   r  r  r3s        rm   test_ttest_rel_nan_2nd_argr  '  s    	c3AA	&	1B	&	1BBLL2<<-e<BIIryyu5 
2"	&BB' B40rp   c                  h   \         P                  ! \        \        R 7      ;_uu_ 4        \        P
                  ! . . 4      p RRR4       \        X \        P                  P                  4      '       g   Q h\        V \        P                  \        P                  34       R#   + '       g   i     Lh; ir  )r   rC  r   r   r[   r  r*  	_stats_pyTtestResultr   r   rb   )r  s    rm   #test_ttest_rel_empty_1d_returns_nanr  <  sk     
(0E	F	FR( 
Gfeoo99::::"&&"&&)* 
G	Fs   B!!B1	b, expected_shapec                    \         P                  ! R4      p\        P                  ! 4       ;_uu_ 4        \        P                  ! R\
        \        4       \        P                  ! W RR7      pRRR4       \        X\        P                  P                  4      '       g   Q h\         P                  ! V\         P                  R7      p\        VP                  V4       \        VP                   V4       R#   + '       g   i     L; i)r   r   r>   Nr  r   rW   ry   rU   )r   rK  r   r   r   r   r   r[   r  r*  r  r  r~   rb   r   r=  r<  )rV  expected_shaperJ  r  expected_values   &&   rm   test_ttest_rel_axis_size_zeror  E  s     	A		 	 	"	"*?ASTB/ 
# feoo99::::WW^?N!!>2/ 
#	"s   9C55D	c                  f   \         P                  ! R4      p \         P                  ! R4      p\        P                  ! W^R7      p\	        V\        P
                  P                  4      '       g   Q h\        VP                  P                  R4       \        VP                  P                  R4       R# rW   r>   N)rW   rF   ry   rw   rF   rW   rw   ry   )r   rK  r[   r  r*  r  r  r   r=  r  r<  )rJ  rV  r  s      rm    test_ttest_rel_nonaxis_size_zeror  W  sw    
 	A
A__Q*Ffeoo99::::!!''0$$f-rp   r  c                    \         P                  P                  R 4      p^
pVP                  VR^R7      pVP                  V^^R7      pRRR.RR\         P                  .R\         P                  ) R./p\
        P                  ! W4V R7      pVP                  R	R
7      p\        WuV ,          4       \        VP                  V^,
          4       R# )l   C67l:  r2   r=  r  gi{a?r  r  gC?r  r?  r@  NgZ?Yg8 )r   r  r  r  r!  r[   r  r  r
   r   rB  )r  r  r  rf   rg   r  r   r  s   &       rm   test_ttest_rel_ci_1dr  d  s     ))

 3
4C
A

s!
,A

q
*A +->?)2662RVVG013C //!K
8C		 	 $	 	7BBK()1rp   ztest_fun, argsc                     V ! V!  pR p\         P                  ! \        VR7      ;_uu_ 4        VP                  ^
R7       RRR4       R#   + '       g   i     R# ; i)rF  r   r@  N)r   r   r   r  )test_funrW  r   r  s   &&  rm   test_ttest_ci_ivr  |  sC    
 D/CDG	z	1	14 
2	1	1	1s   A

A	rd   c                `   a Sf   \        W4      MSoRV3R llpV! W4      V! W4      ,           # )Nc                    < SP                  V 4      p SP                  WR 7      pSP                  W^R7      pV P                  V,          pW#V3# )r>   r  )rY   r^   r   r  )rf   r?   mur   nobsrd   s   &&   rm   _stats_desc_stats.<locals>._stats  sI    JJqMWWQW"ffQaf0wwt}}rp   r  )r$   )r  r  r?   rd   r  s   &&&d rm   _desc_statsr    s/    $&J	 BB "fR...rp   c                 b   V P                  R 4      pV P                  R4      pV P                  W) .4      pV P                  W".4      pV P                  ^^i^d4      pV P                  ^^d^d4      pV P                  WV.4      pV P                  We.4      p\        P                  ! WV^ R7      p	V	w  r\        W4       \        W4       \        P                  ! \        WV4      !  p	V	w  r\        W4       \        W4       \        P                  ! VP                  VP                  ^ R7      p	\        V	P                  V4       \        V	P                  V4       \        P                  ! \        VP                  VP                  4      !  p	\        V	P                  V4       \        V	P                  V4       \        P                  ! Wx^R7      p	\        V	P                  V4       \        V	P                  V4       \        P                  ! \        Wx^R7      !  p	\        V	P                  V4       \        V	P                  V4       Rp\        P                  ! \        VR7      ;_uu_ 4        \        P                  ! WVRR7       RRR4       \        VP                  VP                  4      p\        P                  ! \        VR7      ;_uu_ 4        \        P                  ! VRR/  RRR4       \        P                  ! WVR	R7      w  r\        V^V^,          ,
          4       \        W4       \        P                  ! WVR
R7      w  r\        W^,          4       \        W4       \        P                  ! VP                  VP                  ^ R	R7      p\        VP                  VP                  4      p\        P                  ! VRR	/ p\        VP                  VP                  4       \        VP                  VP                  4       \        P                  ! VP                  VP                  ^ R	R7      p\        VP                  VP                  4      p\        P                  ! VRR	/ p\        VP                  VP                  4       \        VP                  VP                  4       V P                  V P                  4      pV P                  V P!                  VP"                  ^ ,          4      ^ 8H  VV4      p\        P                  ! WV^ R7      p	\%        V	P                  V4       \%        V	P                  V4       \        P                  ! \        WV4      !  p	\%        V	P                  V4       \%        V	P                  V4       R#   + '       g   i     EL; i  + '       g   i     EL; i)	ru?g8Mѱ?r>   r6  r   r
  r  Nr  r  r  r  )rY   r  r(  r[   	ttest_indr/   ttest_ind_from_statsr  r   r=  r<  r   r   r   rb   rY  r   r  r0   )rd   r  rL  tr_2Dpr_2Dr  r  r  r  r   r*  rd  r  rW  r  r  NaNs   &                rm   test_ttest_indr	    s    
&	'B	'	(BHHb#YEHHbXE;;q#s#D;;q#s#Dhh|$Ghh|$G
//$1
-CDAAA

$
$k$&=
>CDAAA
//'))WYYQ
7CCMM5)CJJ&

$
$k'))WYY&G
HCCMM5)CJJ&
//'
3CCMM5)CJJ&

$
$k'&K
LCCMM5)CJJ& IG	z	1	1': 
2 wyy')),D	z	1	1""D@@ 
2 ??46:DAAqBqDz"A??49=DAA!tA ??799giiaVLDwyy')),D%%t@@DDNNDNN3DKK-??799giiaVLDwyy')),D%%t@@DDNNDNN3DKK- **RVV
C88BIIdjjm,13=D
//$1
-CCMM3'CJJ$

$
$k$&=
>CCMM3'CJJ$M 
2	1	1 
2	1	1s   'V	V	V	V.	c            
         \         P                  ! ^^i^d4      p \         P                  ! ^^d^d4      p\         P                  ! W.4      p\         P                  ! W.4      p\         P                  ! W"V.4      p\         P                  ! W3V.4      p\         P                  P                  R4      p\        P                  P                  ^^
RVR7      p\         P                  VR&   \        P                  P                  ^^
RVR7      p\         P                  ! RR7      ;_uu_ 4        \        \        P                  ! Wx4      \         P                  \         P                  34       RRR4       \        \        P                  ! WxRR	7      R4       \        \        \        P                  WxR
R	7       \        \        \        P                  WxRR	7       \         P"                  ! \$        RR7      ;_uu_ 4        \        P                  ! . RO. RO4      w  rRRR4       \'        \         P(                  ! X	4      X
3\         P*                  ^ 34       \         P                  ! RR7      ;_uu_ 4        \'        \        P                  ! . RO. RO4      \         P                  \         P                  34       \         P                  ! ^\         P                  .R^..4      p\'        \        P                  ! V\         P,                  ! R4      4      ^ \         P                  .^\         P                  .34       RRR4       \         P                  VR&   \         P                  VR&   R p\         P.                  ! V4      p\        P                  ! WE^ RR7      w  r\        P                  ! WE^ RRR7      w  r\1        WRR7       \1        W! WR4      RR7       \        P                  ! WE^ RRR7      w  r\1        WRR7       \1        W! WR4      RR7       R#   + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i)rw   r  r  r/  r$  r   rp  Nr   r   r   r   r  r   c                 l    V ^ 8  d   VR8X  g   V ^ 8  d   VR8X  d
   V^,          # ^V^,          ,
          # r  r   r  s   &&&rm   r  *test_ttest_ind_nan_policy.<locals>.convert  r  rp   r  r  )r?   r   r  ri  r  r  )guͷ?g*,?r  r  rU   rR  )r   r   :rO   r~  N)r   r   :rz   rQ   N)r   r(  r   rS  r  r  r[   rX  r  rb   rr  r   r	  r   r   r   r   rC  r   r   r  r!  rY  r  r
   )r  r  r  r  r  r  r  rf   rg   r*  rd  r  r  r  r  rL  s                   rm   test_ttest_ind_nan_policyr
	    s   ;;q#s#D;;q#s#Dhh|$Ghh|$Gii734Gii734G ))


)C

1BSsCAVVAcF

1BSsCA	X	&	&5??102662662BC 
' eooavFHJ*eooqH*eooqI 
n,E	F	Fy)4 
G"&&)Q"&&!-	X	&	&U__Y	:RVVRVV<LM xx!RVVr1g./U__T288F+;<"&&kArvv;/	1 
' 66GK&&GJ W%I__WA&IFB??7!'-/DAA&Ay0u=??7!'02DAA&Ay3%@S 
'	&	& 
G	F	F 
'	&	&s%   &?P5P#,CP7P 	#P4	7Q	c            	         \         P                  ! 4       ;_uu_ 4        \        P                  ! R R7      ;_uu_ 4        \         P                  ! R R\
        4       \        P                  ! RR4      w  rRRR4       RRR4       \        P                  ! X 4      '       g   Q h\        P                  ! X4      '       g   Q hR#   + '       g   i     LV; i  + '       g   i     La; i)r   rp  r  r   r   N)	r   r   r   rr  r   r   r[   r	  ry  )r*  rd  s     rm   test_ttest_ind_scalarr	  #  s    		 	 	"	"BKK$A$A9>	Kr2& %B	" 88A;;;88A;;; %B$A	"	"s"    C6C	4CCCC%	z&ignore:Arguments...:DeprecationWarningc                     a  ] tR tRt o ^t]P                  P                  R4      t]P                  ! ]P                  ! ^],          ^,          4      ]P                  ^],          ^,          4      34      t]P                  ! ]P                  ! ]^,          4      ^d,           ]P                  ]^,          4      34      t]P                  ! ^
4      t]P                  ! ^
4      ^d,           t^^.t^^.t]P$                  P'                  ^^
R]R7      P)                  ^d^4      P*                  t]P$                  P'                  ^^^d]R7      tRR.tRR.t. ROt]]R^/]3]P*                  ]P*                  R^ /]3]R,          ]R,          RR/]^ ,          3]R,          P7                  4       ]R,          P7                  4       RR/]^ ,          3]]R^ R^/]3]]R]P                  P9                  ^ 4      R^/]3]]RR	/R3]]RRR^ /]3]]/ R3]]R]P                  P                  ^ 4      R^/]3.
t]P>                  PA                  R
. RO4      ]P>                  PA                  RRR.4      R 4       4       t!]P>                  PA                  R
. RO4      ]P>                  PA                  RRR.4      R 4       4       t"R t#Rt$V t%R# )Test_ttest_ind_permutationsi-  i
r$  r/  r?   Nr  	equal_varTr  r  c           	        \         P                  P                  R 4      pVP                  VR7      pVP                  ^R7      p\        RR7      p\         P                  P                  R4      p\        P
                  ! RRV/VB p\        P                  ! WERWR7      pR p	\         P                  P                  R4      p\        P                  ! WE3V	3RRRVR	V/VB p
\        VP                  V
P                  4       \        VP                  V
P                  4       \        P                  ! WERVR
7      p
\        VP                  V
P                  4       \        VP                  V
P                  RR7       R# )   Nvf_aB r    re     N\Sju	 r  r?   r  r  c                 F    \         P                  ! WVR 7      P                  # r>   r[   r	  r=  rf   rg   r?   s   &&&rm   r=  FTest_ttest_ind_permutations.test_permutation_method.<locals>.statistice      %//!T*J*T*T#Trp   r?   r  r  r  r  Nr   rU   )r   r  r  r  r[   r  r	  permutation_testr   r=  r<  r
   )rc   r  r  r  rf   rg   rX  r  r   r=  r  s   &&&        rm   test_permutation_method3Test_ttest_ind_permutations.test_permutation_methodV  s6    ii##$45JJEJ"JJBJ#& ii##O4((;S;F;ooaT 	Uyy$$_5$$aVY HR HS H1<H@FH 	S]]CMM2SZZ, ooaES]]CMM2

CJJT:rp   c                @   \         P                  P                  R 4      pVP                  VR7      pVP                  ^R7      p\        RR7      pR p\         P                  P                  R4      pVP                  VP                  .p\
        P                  ! WE33RVRVRRR	V/VB p	\         P                  P                  R4      pVP                  VP                  .p\
        P                  ! RRV/VB p
\
        P                  ! WERWR
7      p\        VP                  V	P                  4       \        VP                  V	P                  4       \
        P                  ! RRR/VB p
\
        P                  ! WERWR
7      p\        VP                  V	P                  4       \        VP                  V	P                  4       \
        P                  ! WERVR7      p	\        VP                  V	P                  4       \        VP                  V	P                  RR7       R# )r	  r  r	  r	  c                 F    \         P                  ! WVR 7      P                  # r	  r	  r	  s   &&&rm   r=  FTest_ttest_ind_permutations.test_monte_carlo_method.<locals>.statistic|  r	  rp   r	  r  r=  r?   r  r	  r  r  r!  r  NrU   r   )r   r  r  r  r  r[   monte_carlo_testr  r	  r   r=  r<  r
   )rc   r  r  r  rf   rg   rX  r=  r  r  r  r   s   &&&         rm   test_monte_carlo_method3Test_ttest_ind_permutations.test_monte_carlo_methodr  s    ii##$45JJEJ"JJBJ#& 	Uii##O4""C$7$78$$aV H H	 HPR H1<H@FH ii##O4""C$7$78'':C:6:ooaTS]]CMM2SZZ, ''FOFvFooaTS]]CMM2SZZ, ooaES]]CMM2

CJJT:rp   c                    R p\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! . RO. RORR7       RRR4       R#   + '       g   i     R# ; i)zC`method` must be an instance of `PermutationMethod`, an instance...r   	migratoryr  Nr  r@  )r   r   r   r[   r	  r;  s   & rm    test_resampling_input_validation<Test_ttest_ind_permutations.test_resampling_input_validation  s7    W]]:W55OOIyE 6555s   AA 	r   g'^P?gCq?g$R?)g=B?g?goŜ?gp?g'^?rz  rU   rU  r  )rQ   )rE   rQ   )&r   r   r   r   Nr   r  r  r  r  r   rJ  rV  r  b2r  b3r[   rX  r  r]   r   r  r  p_dp_d_genp_d_bigr{   r  paramsr   r   r  r	  r#	  r'	  r   r   r   s   @rm   r	  r	  -  s    
A ))

	
*C
		299QqS!V$cjj1a&89:A
		299QT?S(#**QT*:;<A 
2B	2	B QB
QB ::>>ar"  66=gc1oaa 	::>>ar#>FD<
 C~&G+G 
A{C 	
accFA;$	
4!D'FD>3q62	
4	1T7>>+fd^SVD	
A61-s3	
A		 5 5a 8&!DcJ	R+t$f-	tfb.!4g>	RS	
A		 5 5a 8&!DgN
F [[],LM[[Wug&67; 8 N;4 [[],LM[[Wug&67; 8 N;BF Frp   r	  c                     a  ] tR tRt o ]P
                  P                  4       ]P
                  P                  RRR// .RR.R7      ]P
                  P                  RRR	.RR
.R7      R 4       4       4       t]P
                  P                  RRR// .RR.R7      ]P
                  P                  RR^ .4      R 4       4       t	Rt
V tR# )Test_ttest_ind_commoni  kwdstrimr'  basic)idsr	  TFunequal_varc                   \         P                  P                  R 4      pVP                  R4      pVP                  R4      p\        P                  ! WE3RR/VB p^^^rpWGRVR^ R3,          p
VR^ RV	R3,          p\        P                  ! W3RR/VB p\        VP                  VRWR3,          VP                  4       \        VP                  VRWR3,          VP                  4       \         P                  ! \         P                  ! VR	4      RR
4      p\         P                  ! \         P                  ! VR4      RR
4      pVP                  RR
 p\         P                  ! V4      p\         P                  ! V4      p\        R V 4       !   FM  pVV,          pVV,          p\        P                  ! VV3RR
/VB pVP                  VV&   VP                  VV&   KO  	  \        VVP                  4       \        VVP                  4       R# )l   H-F r?   r   Nc              3   8   "   T F  p\        V4      x  K  	  R # 5ir  r  .0r  s   & rm   	<genexpr>=Test_ttest_ind_common.test_ttest_many_dims.<locals>.<genexpr>  s      95aq5   )rw   r   r   rJ   rW   rz   r   rW   rF   rE   rz   rV   rM  rW   rW   rW   rW   rE   rW   rU   rw   rW   r   rW   rW   rW   )r   r  r  r[   r	  r   r=  r<  rU  tiler  rY  r   r
   )rc   r2	  r	  r  rJ  rV  r   r  r  r  r  r*	  r  rf   rg   r  
statisticspvaluesindicesxiyir  s   &&&                   rm   test_ttest_many_dims*Test_ttest_ind_common.test_ttest_many_dims  s    ii##J/JJ)*JJ'ooa44t4 Qa!Q1a q!Q1}r7B7$7S]]1aq=1^^	%SZZ1aA.[[	" KK#56B?KK#56B?XXe_
((5/ 95 9:G7B7B??2r;;d;D"&..Jw#{{GG ; 	
CMM2,rp   r?   c           	        \         P                  P                  R 4      pVP                  ^
R
R7      P	                  R4      pVP                  ^
R
R7      P	                  R4      p\         P
                  V^ ,          ^,          ^&   \         P
                  V^,          ^ ,          ^&   \         P                  ! \         P                  ! WE,           VR7      4      p\        P                  ! 4       ;_uu_ 4        \         P                  ! RR7      ;_uu_ 4        \        P                  ! RR\        4       \        P                  ! RR\        4       \        P                  ! WE3RV/VB pR	R	R	4       R	R	R	4       \         P                  ! XP                  4      p\!        W4       \         P                  ! VP"                  4      p	\!        W4       R	#   + '       g   i     Lp; i  + '       g   i     L{; i)l   AoI;r  r  r>   r   rp  z'invalid value encountered in less_equalr  r?   N)rw   r   rO   )r   r  r  integersr  rb   ry  r^  r   r   rr  r   r   r[   r	  r<  r   r=  )
rc   r2	  r?   r  rJ  rV  r  r   p_nansstatistic_nanss
   &&&       rm   test_nans_on_axis'Test_ttest_ind_common.test_nans_on_axis  sK    ii##$9:LL*L-44W=LL*L-44W=VV!Q
VV!Q
 88BFF15t45 $$&&H(E(E##C^U##H.GX//!:T:T:C	 )F&
 #**%6,#--0>4 )F(E&&s%   5 G"AG	'G"GG""G2	r   NrU   )r   r   r   r   r   r   ro  r  rH	  rN	  r   r   r   s   @rm   r1	  r1	    s     [[[[VvrlB%7"('!2  4[[[4-"-}!=  ?!-?4 
!-F [[VvrlB%7"('!2  4[[Vb!W-5 .45rp   r1	  c            	         a  ] tR tRt o . RO. RORRR.. RO. RORRR.. RO. RORRR.. RO. ROR	RR.. R O. R!OR
R"R..t]P                  P                  R]4      R 4       tR t	R t
]P                  P                  RR#4      R 4       t]! RRR7      R 4       t]P                  P                  R. R$O4      R 4       tRtV tR# )%Test_ttest_trimi  g9(?r'  gBM)u?g]@gyd?g	s5v@g{Gz?gn4aƂg?g!nu?za,b,pr,tr,trimc                p    \         P                  ! WVRR7      w  rg\        WdRR7       \        WsRR7       R# )a8  
Using PairedData's yuen.t.test method. Something to note is that there
are at least 3 R packages that come with a trimmed t-test method, and
comparisons were made between them. It was found that PairedData's
method's results match this method, SAS, and one of the other R
methods. A notable discrepancy was the DescTools implementation of the
function, which only sometimes agreed with SAS, WRS2, PairedData and
this implementation. For this reason, most comparisons in R are made
against PairedData's method.

Rather than providing the input and output for all evaluations, here is
a representative example:
> library(PairedData)
> a <- c(1, 2, 3)
> b <- c(1.1, 2.9, 4.2)
> options(digits=16)
> yuen.t.test(a, b, tr=.2)

    Two-sample Yuen test, trim=0.2

data:  x and y
t = -0.68649512735573, df = 3.4104431643464, p-value = 0.5361949075313
alternative hypothesis: true difference in trimmed means is not equal
to 0
95 percent confidence interval:
 -3.912777195645217  2.446110528978550
sample estimates:
trimmed mean of x trimmed mean of y
2.000000000000000 2.73333333333333
Fr3	  r	  rC  rD  Nr[   r	  r
   )rc   rJ  rV  rL  r  r3	  r=  r<  s   &&&&&&  rm   test_ttest_compare_r$Test_ttest_trim.test_ttest_compare_r  s.    @ "OOAtuM		E2/rp   c                    . R	Op. R
Op\         P                  ! WRRR7      w  r4\        VRRR7       \        VRRR7       R# )rQ   g
ףp=
?FrS	  gRbv?r  rD  gOi?N)rQ   rM   r}  r  r>  ,   rQ   rM   r}  r  r>  rX	  )      rM   rQ   r     r  rY	  rZ	  rM   rQ   r  r[	  r  rT	  rc   rJ  rV  r=  r<  s   &    rm   test_compare_SAS Test_ttest_trim.test_compare_SAS  s=     =D "OOAseL	t4	8$7rp   c                    . ROp. ROp\         P                  ! WRR7      w  r4\        VRRR7       \        VR	RR7       R# )
a^  
The PairedData library only supports unequal variances. To compare
samples with equal variances, the multicon library is used.
> library(multicon)
> a <- c(2.7, 2.7, 1.1, 3.0, 1.9, 3.0, 3.8, 3.8, 0.3, 1.9, 1.9)
> b <- c(6.5, 5.4, 8.1, 3.5, 0.5, 3.8, 6.8, 4.9, 9.5, 6.2, 4.1)
> dv = c(a,b)
> iv = c(rep('a', length(a)), rep('b', length(b)))
> yuenContrast(dv~ iv, EQVAR = TRUE)
$Ms
   N                 M wgt
a 11 2.442857142857143   1
b 11 5.385714285714286  -1

$test
                      stat df              crit                   p
results -4.246116897032513 12 2.178812829667228 0.00113508833897713
r'  r3	  gR?r  rD  Nr  r  r=  r   ffffff?r   r  r  rG  rb	  rb	  rC   g@r  r  r1   r  g333333@r  r  g@r  g^rT	  r\	  s   &    rm   test_equal_varTest_ttest_trim.test_equal_var)  s<    & DC!OOAr:	 3%@	#5EBrp   z	alt,pr,trc                    . ROp. ROp\         P                  ! WERRVR7      w  rg\        WrRR7       \        WcRR7       R# )	z
> library(PairedData)
> a <- c(2.7,2.7,1.1,3.0,1.9,3.0,3.8,3.8,0.3,1.9,1.9)
> b <- c(6.5,5.4,8.1,3.5,0.5,3.8,6.8,4.9,9.5,6.2,4.1)
> options(digits=16)
> yuen.t.test(a, b, alternative = 'greater')
r'  F)r3	  r	  r  r  rD  Nra	  rc	  rT	  )rc   r  rL  r  rJ  rV  r=  r<  s   &&&&    rm   test_alternatives!Test_ttest_trim.test_alternativesC  s=     DC!OOArU8;=	/	E2rp   TzUses NumPy for pvalue, CIcpu_onlyr   c                b   R pVP                  ^
4      VP                  ^
4      ^,           rC\        V4      '       d   \        P                  ! W4RR7       R# \        P
                  ! \        VR7      ;_uu_ 4        \        P                  ! W4RR7       RRR4       R#   + '       g   i     R# ; i)z3Use of `trim` is compatible only with NumPy arrays.rD  r`	  r   N)r   r'   r[   r	  r   r   NotImplementedError)rc   rd   r  rJ  rV  s   &&   rm   %test_permutation_not_implement_for_xp5Test_ttest_trim.test_permutation_not_implement_for_xpW  si    Gyy}biimAo1B<<OOAs+2'BB3/ CBBBs   :BB.	r3	  c                    R p\        \        VR7      ;_uu_ 4        \        P                  ! ^^.^^.VR7       RRR4       R#   + '       g   i     R# ; i)z/Trimming percentage should be 0 <= `trim` < .5.r   r`	  N)r   r   r[   r	  )rc   r3	  r   s   && rm   test_trim_bounds_error&Test_ttest_trim.test_trim_bounds_errora  s;    A:U33OOQFQF6 4333s   AA	r   Nr  r=  r  g@ge)r>  g33333`@rQ   g33333^@g(\P@r  gfffffڇ@ra	  rc	  ^)g,
gm?giI@gE|x!gvwQ?glfPg_)gXG~?g=n@g8$mg({g]:m?gYv gb?gb	gSTß}g9yg.Ͽv?g޺i?g	'X@)g>_\?g hO?gau?@g׌g+?g:؜^gz54g7f?gDO%@g#xG@g\F?g4E?gnfg>P"ۿguX@gvR?g%?g2Ydzgo?gih?gn?gJ+b))r  gjΜ>5?rs	  )r  gn4aƂW?rs	  )gɿr1   rW   )r   r   r   r   r/	  r   r   r  rU	  r]	  rd	  rg	  r   rm	  rp	  r   r   r   s   @rm   rQ	  rQ	    s    	O%8:M			1?	/	5	1?	/	6	@	@	,b	2
H
  "34Db	JKF& [[-v6!0 7!0F8C4 [[[N3	3  t,GH0 I0 [[V\27 37rp   rQ	  c                   T  a  ] tR tRt o ]P
                  ! RR7      t. RO]R &   RRR]P                  ) R.]R!&   RRRR"]P                  .]R#&   . R%O]R&&   R$RR]P                  ) R	.]R'&   R$RR
R(]P                  .]R)&   R*^R]P                  ]P                  .]R+&   R*^R]P                  ]P                  .]R,&   R*^R]P                  ]P                  .]R-&   R.^R]P                  ]P                  .]R/&   R.^R]P                  ]P                  .]R0&   R.^R]P                  ]P                  .]R1&   ]	P                  P                  R. R2O4      ]	P                  P                  RRR.4      ]	P                  P                  R^ R.4      ]! RRR7      R 4       4       4       4       tRtV tR# )3Test_ttest_CIih  )r  e13@gv7?gx_?g
/?-</&@g?JJ?gF?g{?gW"?gW"?g:T'?g0:5?g0:5?g be?r  r	  FTr3	  r'  r3  r;  rp  c                    V'       d   V'       d   \         P                  ! R 4       V'       d(   \        V4      '       g   \         P                  ! R4       \        P
                  P                  R4      pVP                  VP                  ^4      4      pVP                  VP                  ^4      4      p\        P                  ! WgVW#R7      pR^ R^R^/p	V P                  W,          \        V4      \        \        P                  ! V4      4      3,          p
V
w  rrpRp\        VP                  VP                  V4      VR7       \        VP                  VP                  V4      VR7       \        VP                   VP                  V4      VR7       V'       gb   VP#                  R	4      p\        VP$                  VP                  V4      VR7       \        VP&                  VP                  V4      VR7       R
# R
# )z3Discrepancy in `main`; needs further investigation.z*`trim` is only compatible with NumPy inputl   'Nk' )r  r	  r3	  r  r  r  r  r  rF  N)r   xfailr'   r  r   r  r  rY   r[   r	  r   rF  ceilr/   r=  rB  r<  r  r  r  )rc   r  r	  r3	  rd   r  rf   rg   r   r  r  r=  rB  r<  r  r  r  r  s   &&&&&             rm   test_confidence_interval&Test_ttest_CI.test_confidence_interval  se   
 LLNOKKDEii##$78JJszz"~&JJszz"~&ooa(1> $Q9a@ff\.IBGGDM@RRS+.(	vDrzz)'<4H

2T:

BJJv$6TB((-BBFFBJJsO$?BGGRZZ%5DA rp   r   N)r   rE   rE   rw   gͿ)r}	  rv	  gv7?gę"Ͽg8 {M(?r  rW   ry   ry   gD .ɿ)rE   ry   ry   reϿ)r	  rw	  g?JJ?gbտg3Պ?)ry   ry   rW   )rW   ry   rW   gads2ѿ)rE   ry   rW   gs"%ο)ry   rW   ry   rW   rW   ry   )rE   rW   ry   g:пr|  r  )rE   rW   rW   rn  )r   r   r   r   r   rK  r   r!  rb   r   r   r  r   r{	  r   r   r   s   @rm   ru	  ru	  h  s    < 	|$ANAgJibffWlKAgJiM266JAgJLAgJibffWlKAgJiL"&&IAgJ%r+=rvvrvvNAgJ%r+=rvvrvvNAgJ%r+=rvvrvvNAgJ%r+=rvvrvvNAgJ%r+=rvvrvvNAgJ%r+=rvvrvvNAgJ[[],LM[[[5$-8[[VaX.k*JKB L / 9 NBrp   ru	  c            	      0   \         P                  P                  R 4      p V P                  R4      pV P                  R4      p\        W3RR7      p\         P                  ! VR4      p\         P                  ! VR,          R	4      p\        R VP                   4       !   Fs  pVw  rVrxrWP                  R,          8  d    WWgWV
3,          W5WgWV
3,          8X  g   Q hK?  W%WgWP                  R,          ,
          W3,          W5WgWV
3,          8X  d   Ks  Q h	  R# )
l   e~Z r>   Nc              3   8   "   T F  p\        V4      x  K  	  R # 5ir  r9	  r:	  s   & rm   r<	  .test__broadcast_concatenate.<locals>.<genexpr>  s     5W588Wr>	  )rw   r   r   r   rW   rz   r?	  rV   r@	  )N.rA	  )r   r  r  r   rB	  r   r  )r  rJ  rV  rj  indexr  r  r  rM  r  r  s              rm   test__broadcast_concatenater	    s     ))



+C

%&A

?#AvB/A
%&A
)01A5QWW56 aAwwr{?aA%&!qQ1,<*====a''"+oq34Q1:J8KKKK 7rp   c                   v  a  ] tR tRt o ]! ]P                  4      R 4       t]P                  P                  R4      ]P                  P                  R4      R 4       4       tR tR t]P                  P                  R]P                   ! R4      R3]P                   ! R4      R3.4      R	 4       tR
 tR tRtV tR# )TestTTestIndi  c                l   VP                  . RO4      pVP                  . RO4      pVP                  R4      pVP                  R4      p\        P                  ! W#RR7      w  rg\        We4       \        Wt4       \        P                  ! \        W#4      RR/ w  rg\        We4       \        Wt4       VP                  . RO4      pVP                  R4      pVP                  R4      p\        P                  ! W#RR7      w  rg\        We4       \        Wt4       \        P                  ! \        W#4      RR/ w  rg\        We4       \        Wt4       VP                  R4      pVP                  R4      pVP                  R4      pVP                  R	4      p	VP                  WU) .4      p
VP                  WD.4      pVP                  ^^d^4      pVP                  ^^d^d4      pVP                  ^^i^d4      pVP                  W.4      pVP                  W.4      p\        P                  ! W^ RR
7      w  rg\        We4       \        Wt4       \        P                  ! \        W4      RR/ w  rg\        We4       \        Wt4       \        P                  ! W^ RR
7      w  rg\        Wh4       \        Wy4       \        P                  ! \        W4      RR/ w  rg\        Wh4       \        Wy4       \        P                  ! VP                  VP                  ^ RR
7      p\        VP                  V
4       \        VP                  V4       \        VP                  VP                  4      p\        P                  ! VRR/ p\        VP                  V
4       \        VP                  V4       \        P                  ! VV^RR
7      p\        VP                  V
4       \        VP                  V4       \        VV^R7      p\        P                  ! VRR/ p\        VP                  V
4       \        VP                  V4       R# )r   g9(?Fr	  r	  gJ?r 	  g@[?gωұ?ghG?)r?   r	  r>   Nr  rr	  gerH  g9ʿ)rY   r[   r	  r/   r	  r  r  r(  r   r=  r<  )rc   rd   rJ  rV  rL  r  r*  rd  	tr_uneq_n	pr_uneq_nr	  r	  rvs3r  r  r  r  r   rW  s   &&                 rm   test_ttest_ind_with_uneq_var)TestTTestInd.test_ttest_ind_with_uneq_var  sI    JJ|$JJ'ZZ+,ZZ-.qu5));q+<NNJJ'(ZZ+,ZZ-.qu5));q+<NN ZZ*+JJ23	ZZ+,JJ23	"c#""{{1c2&{{1c3'{{1c3'((D<(((D<(tUC));t+BTeTtUC%%));t+BTeT%%oogiieLu-

E*799gii0(($@%@u-

E*oogwQ%Hu-

E*7G!4(($@%@u-

E*rp   0ignore:divide by zero encountered:RuntimeWarning/ignore:invalid value encountered:RuntimeWarningc           	        VP                  ^4      pVP                  ^4      p\        \        RVR7      ;_uu_ 4        \        P
                  ! W#RR7      w  rERRR4       \        XVP                  VP                  ) 4      4       \        XVP                  R4      4       \        P                  ! RR7      ;_uu_ 4        \        P
                  ! W"RR7      w  rE\        WAP                  VP                  4      4       \        WQP                  VP                  4      4       VP                  ^VP                  .R
^..4      p\        P
                  ! WaP                  R4      RR7      w  rE\        WAP                  R\        P                  .4      4       \        WQP                  R	\        P                  .4      4       RRR4       R#   + '       g   i     EL|; i  + '       g   i     R# ; i)r   r  r\  Fr	  Nr   r   r  r   rU   rR  )rY  r  r%   r   r[   r	  r0   rY   r!  r   rr  rb   )rc   rd   rf   rg   r*  rd  r  s   &&     rm   test_ttest_ind_zero_division)TestTTestInd.test_ttest_ind_zero_division  sM    HHQKGGAJ/HRPP??159DA Q 	2::rvvg./2::b>*[[X&&??159DAAzz"&&12Azz"&&12 ::266{RG45D??4&)9UKDAAzz2rvv,78Azz2rvv,78 '& QPP '&&s   G DGG	G0	c                   \         P                  R RR.p. R	Op\        P                  ! WRR7      p\        P                  ! W!RR7      p\	        VP
                  VP
                  ) RR7       \	        VP                  VP                  RR7       \        P                  ! W!R,          4      p\	        WERR7       \	        VR
RR7       R# )r   r   r   r   r   rC  rD  r  Nr  )g8HgW@?)r   rb   r[   r	  r
   r=  r<  )rc   rf   rg   r  r  r  s   &     rm   test_ttest_ind_nan_2nd_arg'TestTTestInd.test_ttest_ind_nan_2nd_arg6  s    VVS#s# __Qf5__Qf5r||m%@		29959 __Q"&U+ 	G"	$rp   c                   \        \        \        VR 7      ;_uu_ 4        \        P                  ! VP                  . 4      VP                  . 4      4      pRRR4       \        X\        P                  P                  4      '       g   Q hVP                  VP                  4      R,          p\        VP                  V4       \        VP                  V4       R#   + '       g   i     L; i)r\  Nr   )r%   r   r   r[   r	  rY   r*  r  r  rb   r0   r=  r<  rc   rd   r   r	  s   &&  rm   #test_ttest_ind_empty_1d_returns_nan0TestTTestInd.test_ttest_ind_empty_1d_returns_nanK  s     +3HRPP//"**R."**R.AC Q#u::;;;;jj $s+

C( QPs   6CC)	r  c                *   VP                  R4      pVP                  WP                  R7      p\        P                  ! 4       ;_uu_ 4        \        P
                  ! R\        \        4       \        P                  ! WARR7      pRRR4       \        X\        P                  P                  4      '       g   Q hVP                  W#P                  R7      p\        VP                   V4       \        VP"                  V4       R#   + '       g   i     L; i)r   r6   r   r>   Nr  r  rU   )rK  rY   r7   r   r   r   r   r   r[   r	  r*  r  r  r~   rb   r0   r=  r<  )rc   rV  r  rd   rJ  r   r  s   &&&&   rm   test_ttest_ind_axis_size_zero*TestTTestInd.test_ttest_ind_axis_size_zeroU  s     HHYJJqJ($$&&##H.CEWX//!R0C ' #u::;;;;FFC~6

N3 '&s   9DD	c                F   VP                  R4      pVP                  R4      p\        P                  ! W#^R7      p\        V\        P                  P
                  4      '       g   Q hVP                  P                  R8X  g   Q hVP                  P                  R8X  g   Q hR# r  	rK  r[   r	  r*  r  r  r=  r  r<  rc   rd   rJ  rV  r   s   &&   rm    test_ttest_ind_nonaxis_size_zero-TestTTestInd.test_ttest_ind_nonaxis_size_zerog  s}    
 HHYHHYooa+#u::;;;;}}""V+++zz6)))rp   c                F   VP                  R4      pVP                  R4      p\        P                  ! W#^R7      p\        V\        P                  P
                  4      '       g   Q hVP                  P                  R8X  g   Q hVP                  P                  R8X  g   Q hR# )rW   r>   N)rW   rJ   ry   r  r  r	  r	  s   &&   rm   2test_ttest_ind_nonaxis_size_zero_different_lengths?TestTTestInd.test_ttest_ind_nonaxis_size_zero_different_lengthss  s}     HHYHHYooa+#u::;;;;}}""V+++zz6)))rp   r   NrW   rw   ry   r  r~	  r   ry   )r   r   r   r   r,   r[   r	  r	  r   r   r   r	  r	  r	  r  r   rK  r	  r	  r	  r   r   r   s   @rm   r	  r	    s     u112N+ 3N+` [[: [[999,$*) [[0 hhy16:XXi0&9;<4<4
** *rp   r	  c                      a  ] tR tRt o ]P
                  P                  RRR7      R 4       t]P
                  P                  R4      R 4       t	Rt
V tR	# )
TestTTestIndFromStatsi  Tz"Other backends don't like integersr   c                   VP                  ^^.4      VP                  ^^.4      r2VP                  ^^.4      VP                  ^^.4      rTVP                  ^^.4      VP                  ^d^.4      rv\        P                  ! W$WcWW4       R# rW   N)rY   r[   r	  )rc   rd   mean1mean2std1std2nobs1nobs2s   &&      rm   test_gh5686!TestTTestIndFromStats.test_gh5686  sy     zz1a&)2::q!f+=uZZA'QF);dzz3*-rzz3*/Eu""5dJrp   r	  c           
        VP                  R 4      pVP                  R4      pVP                  VP                  4      p\        P                  ! W"W2W#RR7      p\	        VP
                  V4       \	        VP                  V4       R# )r   r   Fr	  N)rY   rb   r[   r	  r0   r=  r<  )rc   rd   rC  sixr	  r   s   &&    rm   %test_ttest_ind_from_stats_inputs_zero;TestTTestIndFromStats.test_ttest_ind_from_stats_inputs_zero  se     zz"~jjnjj ((S38:s+

C(rp   r   N)r   r   r   r   r   r   r   r	  r   r	  r   r   r   s   @rm   r	  r	    sY     [[!!$'K " MKMK [[ QR) S)rp   r	  TzTest uses ks_1sampri	  r|  r}  c                 x   \         P                  P                  R 4      pV P                  VP	                  RR7      4      pV P                  VP	                  RR7      4      pVP                  ^dR7      p\        P                  ! W#RRR7      p\         P                  ! VP                  4      p\        P                  ! V\        P
                  ! 4       P                  4      P                  R8  g   Q h\        \         P                  ! Wd4      VRR7       \        P                  ! W2RRR7      p\         P                  ! VP                  4      p\        P                  ! V\        P
                  ! 4       P                  4      P                  R8  g   Q h\        \         P                  ! Wd4      VRR7       V P                  . RO4      V P                  R.4      r2\        P                  ! W#RR7      p\        VP                  V P                  R	4      4       \        VP                  V P                  R
4      4       R# )l   bQ r  T)r	  r?   rD  r  rD  r2   r	  gzNd?gJ?N)r  rE   )r  rW   rU   )r   r   r8   )r   r  r  rY   r  r  r[   r	  r<  r  r  r
   quantiler/   r=  )rd   r  rf   rg   rW  r   r<  s   &      rm   test_ttest_uniform_pvaluesr	    s}   
 ))


0C


3::::./A


3::::./AA
//!$R
8CZZ

#F>>&%--/"5"56==CCCBKK*AD9
//!$R
8CZZ

#F>>&%--/"5"56==CCCBKK*AD9
 ::l#RZZ%6q
//!$
/CCMM2::o#>?CJJ

> :;rp   c                     VP                  VR 8H  4      pVP                  VR8H  4      pV ^ 8  V,          V ^ 8  V,          ,          pVP                  Wa^,          ^V^,          ,
          4      # )r  r  )rY   rY  )r*  rd  r  rd   r  r  r  s   &&&&   rm   _convert_pvalue_alternativer	    sa     ::cVm$Djj	)*G
a%4QUg-.A88AsA!G$$rp   c           	      	   \         P                  P                  R 4      p^
^^rCp\        P                  P                  ^^
W#V3VR7      pV P                  V4      pV P                  ^W434      p\        P                  ! WV^ R7      w  rx\        P                  ! VR^ R7      w  r\        P                  ! VR,          R4      w  r\        WyRR7       \        VR,          VRR7       \        VP                  W434       V P                  V^V34      p\        P                  ! WV^R7      w  rx\        P                  ! VR^R7      w  r\        P                  ! VR,          R4      w  r\        WyRR7       \        VR,          VRR7       \        VP                  W$34       V P                  W#^34      p\        P                  ! WV^R7      w  rx\        P                  ! VR^R7      w  r\        P                  ! VR,          R4      w  r\        WyRR7       \        VR,          VRR7       \        VP                  W#34       \        P                  ! V P                  . RO4      R4      w  r\        V P                  V4      V P                  V P                  4      4       \        WP                  R4      4       \        P                  ! VR,          R4      w  pp\        P                  ! VR,          RRR7      w  r\        VVRV 4      p\        VV4       \        W4       \        P                  ! VR,          RR	R7      w  r\        VVR	V 4      p\        VV4       \        W4       \         P                   ! R
R7      ;_uu_ 4        \        P                  ! V P                  . RO4      R4      p\        VP"                  V P                  V P$                  4      4       \        VP&                  V P                  V P$                  4      4       V P                  R\         P$                  .RR..4      p\        P                  ! VR4      p\        VP"                  V P                  RV P$                  .4      4       \        VP&                  V P                  RV P$                  .4      4       RRR4       R#   + '       g   i     R# ; i)i@r/  r>   r   ri  r  r   r  r  r  r   r	  N)r   ry   ry   r  )ry   r   ry   )ry   ry   r   )r   r   r   r   r   r   rO  )r   r  r  r[   rX  r  rY   r  r  r/   r   r  r0   r  r!  r	  rr  r=  rb   r<  )rd   r  r  r  n3rvn1r>  rn  r  ro  p2rp  p3r*  rd  r  rL  pcr   r  s   &                   rm   test_ttest_1samp_newr	    s   
 ))


)Cb"BB::>>ar3>OD::dD ggq"k"Gt15FBtRa0FBtG}b1FBB'BtHbu-B8$ggr1bk"Gt15FBtRa0FBtG}b1FBB'BtHbu-B8$ggrqk"Gt15FBtRa0FBtG}b1FBB'BtHbu-B8$ RZZ5r:DABFF1Irzz"&&12Azz"~&tG}b1FBT']BIFDA	$RY	;BArAT']BFCDA	$RVR	8BArA		"	"

< 8"=rzz"&&'9:

BJJrvv$67 zzB<#r34b)rzz2rvv,'?@

BJJBFF|$<= 
#	"	"	"s   D%R44S	z(Only NumPy has nan_policy='omit' for nowr   c                 4   \         P                  P                  R 4      p^^
^rCp\        P                  P                  ^^
W#V3VR7      pV P                  V4      pV P                  VR	&   \        P                  ! VR
,          RRR7      w  rg\        P                  ! VR
,          RRRR7      w  r\        WgRV 4      p
\        W4       \        W4       \        P                  ! VR
,          RRRR7      w  r\        WgRV 4      p
\        W4       \        W4       R# )l   U] r/  r   r   r   r  ri  r  N)r  :rW   r   N:r   rF   Nr	  )r   r  r  r[   rX  r  rY   rb   r  r	  r/   )rd   r  r  r  r	  r	  r  rL  r*  rd  r	  s   &          rm   test_ttest_1samp_new_omitr	     s    
))



+CRBB::>>ar3>OD::dD&&DtG}bVDFBT']B6)24DA	$RY	;BAAT']B6)/1DA	$RVR	8BAArp   r3  r;  c                    \         P                  P                  R 4      pVP                  R	R7      pV P                  V4      pRpV P                  VP                  R
R7      4      p\        P
                  ! \        VR7      ;_uu_ 4        \        P                  ! W$RR7       RRR4       V P                  VP                  RR7      4      p\        P                  ! W$RR7      pVP                  P                  R8X  g   Q hVP                  4       w  rgV P                  VRR7      pV P                  VRR7      p\        P                  ! W&RR7      pV P                  V P                  RV P                  R7      VP                  P                  4      p\!        VP                  V4       \        P                  ! W'RR7      p\!        VP                  V4       R#   + '       g   i     EL>; i)l   iI}pC r  z%`popmean.shape\[axis\]` must equal 1.r   )r>  r?   Nr>   g?r6   )rW   r~  r  )rw   rE   r  rM  )rw   rW   r  )rw   r  )r   r  r  rY   r   r   r   r[   r  r=  r  r  rL  rT  r   r<  r/   )	rd   r  rf   r  r>  r   rM  r
  r  s	   &        rm   test_ttest_1samp_popmean_arrayr	    sj    ))

 3
4C


$A


1A6Gjj45G	z	1	1!26 
2 jj45G


AR
8C==')))""$DA
qr"A
qr"A


Ar
2C
//"**T*<cjj>N>N
OCCJJ$


Ar
2CCJJ$! 
2	1	1s   
GG)	c                      a  ] tR tRt o ]P
                  P                  R4      ]P
                  P                  R4      R 4       4       tR tR t	R t
R tR	 tR
 tR tRtV tR# )TestDescribei7  r|  r}  c           
     6   \         P                  ! 4       ;_uu_ 4        \        P                  ! R R R7      ;_uu_ 4        \         P                  ! R R\
        4       \        P                  ! VP                  R4      R,          4      w  r#rErgRRR4       RRR4       X^8X  g   Q h\        X^ ,          VP                  R4      4       \        V^,          VP                  R4      4       \        XVP                  R4      4       \        XVP                  VP                  4      4       \        XVP                  VP                  4      4       \        XVP                  VP                  4      4       R#   + '       g   i     L; i  + '       g   i     L; i)r   r  r  r   Nr   )r   r   r   rr  r   r   r[   describerY   r0   rb   )rc   rd   r  r  r  r  skkurts   &&      rm   test_describe_scalar!TestDescribe.test_describe_scalar9  s	    $$&&kk(8<<##=~O$)NN2::b>"3E$F!A1 = '
 Avv1rzz#/1rzz#/2::c?+2::bff-.BJJrvv./bjj01 =< '&s#   !FAE5	F5F FF	c                   VP                  VP                  R4      VP                  RR4      34      p^pVP                  . RO4      VP                  . R	O4      3pVP                  . R
O4      pVP                  . RO4      pVP                  R.^,          4      pVP                  R.^,          4      p\        P
                  ! V4      w  rrrW8X  g   Q h\        V
^ ,          V^ ,          4       \        V
^,          V^,          4       \        W^VP                  VP                  4      P                  ,          R7       \        W^VP                  VP                  4      P                  ,          R7       \        W4       \        W4       \        P
                  ! VP                  ^R7      w  rrrW8X  g   Q h\        V
^ ,          V^ ,          4       \        V
^,          V^,          4       \        W^VP                  VP                  4      P                  ,          R7       \        W^VP                  VP                  4      P                  ,          R7       \        W4       \        W4       R# )r   r   H,p ?r  r>   Nr  rE   r   r   r   r   r   r   r   r   r   ffffff?r	  r	  r	  )rG  rG  rG  rG  TUUUUU)r  r  r~   rY   r[   r	  r0   r/   r   r7   epsr   rc   rd   rf   ncmmcmcvcskckurtcr  r  r  r  r	  r	  s   &&             rm   test_describe_numbers"TestDescribe.test_describe_numbersI  s   IIrwwv(;<=zz*+RZZ8H-IJZZ,-ZZ,-jj-.23

./!34 %q 1qRww1s1v&1s1v&A(9(=(=$=>A(9(=(=$=> $ %qss ;qRww1s1v&1s1v&A(9(=(=$=>A(9(=(=$=> $rp   c                .   \         P                  ! R 4      p\         P                  V^	&   ^	Rr2RpRpRpR	p\        P                  ! VRR7      w  rrr\        W4       \        W4       \        W4       \        W4       \        W4       \        W^R7       R# )
r   r   r   rq  r   r   rJ  N)r   r   gGz)r   r   rb   r[   r	  r   r   )rc   rf   r	  r	  r	  r	  r	  r	  r  r  r  r  r	  r	  s   &             rm   describe_nan_policy_omit_test*TestDescribe.describe_nan_policy_omit_testc  s    IIcNvv!jC# %qV DqRQRQQ!"*!$r:rp   c                   VP                  R 4      pVP                  V^	8H  VP                  V4      p\        V4      '       dG   \        P
                  ! \        RR7      ;_uu_ 4        \        P                  ! VRR7       RRR4       ME\        P
                  ! \        RR7      ;_uu_ 4        \        P                  ! VRR7       RRR4       \        P                  ! VRR7      w  r4rVrxVP                  VP                  4      R,          p	V^
8X  g   Q h\        V^ ,          V	4       \        V^,          V	4       \        WY4       \        Wi4       \        Wy4       \        W4       \        V4      '       d   V P                  4        MV\        V4      '       dF   \        P
                  ! \        RR7      ;_uu_ 4        \        P                  ! VRR7       RRR4       R	p
\        P
                  ! \        V
R7      ;_uu_ 4        \        P                  ! VR
R7       RRR4       R#   + '       g   i     ELk; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     R# ; i)r   not supported for lazy arraysr   r   r   Nr   r  r   r   r   r   )r   rY  rb   r&   r   r   r/  r[   r	  r   rY   r0   r'   r	  )rc   rd   rf   r  r  r  r  r	  r	  r  r  s   &&         rm   test_describe_nan_policy_other+TestDescribe.test_describe_nan_policy_othert  s   IIcNHHQT2661%y0OPPqW5 QP z1PQQqW5 R !&q[ IqRjj $Bww1s#1s# "B<<..01y0OPPqV4 Q 1]]:W55NN12 65/ QPP RQQ  QP 655s0   'H(-H<>II#(H9	<I	I 	#I4	c                t    \         P                  ! \        P                  ! R 4      4      pRp\	        W4       R# )r8   N)r  minmaxr^   variancer  r  )r[   r	  r   r   r   )rc   r  r?  s   &  rm   test_describe_result_attributes,TestDescribe.test_describe_result_attributes  s'     		".S
F/rp   c                r   VP                  VP                  R4      VP                  RR4      34      p^pVP                  . RO4      VP                  . RO4      3pVP                  . R	O4      pVP                  . R
O4      pVP                  R.^,          4      pVP                  R.^,          4      p\        P
                  ! V^ R7      w  rrrW8X  g   Q h\        V
^ ,          V^ ,          4       \        V
^,          V^,          4       \        W4       \        W4       \        W4       \        W4       R# )r   r   r	  rV  Nr  r	  r	  r	  r	  )Q?r	  r	  r	  r	  r  r  r~   rY   r[   r	  r0   r/   r	  s   &&             rm   test_describe_ddofTestDescribe.test_describe_ddof  s    IIrwwv(;<=zz*+RZZ8H-IJZZ,-ZZ01jj-.23

./!34 %qq 9qRww1s1v&1s1v& $rp   c                B   VP                  VP                  R4      VP                  R	R4      34      p^pVP                  R4      VP                  R4      3pVP                  R4      pVP                  R4      pVP                  R4      pVP                  R
4      p\        P
                  ! VRR7      w  rrrW8X  g   Q h\        V
^ ,          V^ ,          4       \        V
^,          V^,          4       \        W4       \        W4       \        W4       \        W4       R# )r   r   r   r	  ga+?gE,p ?Nr>   r  r	  gUUUUUUr	  r	  s   &&             rm   test_describe_axis_none$TestDescribe.test_describe_axis_none  s    IIrwwv(;<= zz#

30ZZ*+ZZ+,jj+,

./ !&qt <qRww1s1v&1s1v& $rp   c                    R p\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! VP                  . 4      4       RRR4       R#   + '       g   i     R# ; i)zThe input must not be empty.r   N)r   r   r   r[   r	  rY   r  s   && rm   test_describe_empty TestDescribe.test_describe_empty  s;    0]]:W55NN2::b>* 6555s   &AA(	r   N)r   r   r   r   r   r   r   r	  r	  r	  r	  r	  r	  r	  r	  r   r   r   s   @rm   r	  r	  7  si     [[ VW[[ WX2 Y X2%4;"3>0%"%,+ +rp   r	  c                   n   a  ] tR tRt o ]P
                  P                  R. RO4      R 4       tR tRt	V t
R# )NormalityTestsi  r  c                   V P                   p\        \        V4      pVP                  V P                  ^ ,          4      pVP                  V P                  ^,          4      p/ pVR9   dU   VR9   d8   VR8X  d
   V^,          M^V^,          ,
          pVR8X  d
   ^V,
          MTpWR&   M\
        P                  ! R4       VP                  R	4      ^,          pV! V3/ VB p	V	w  r\        W4       \        W4       \        V	R
VR7       R# )ry   r  skewtestr  z,`alternative` not available for `normaltest`r  N>   r  r  >   r	  kurtosistest)rM  rU   ry   rW   rE   r   rM  rU   ry   rW   rE   r   rM  rU   ry   rW   rE   r   rM  rU   ry   rW   rE   r   r  )		test_nameri  r[   rY   case_refr   r  r/   r   )rc   r  rd   r 
  r  r0  r`  rX  rf   r   res_statistic
res_pvalues   &&&         rm   test_against_RNormalityTests.test_against_R  s     NN	5),zz$--"23ZZa 01
--88-8F-BZ\*UV,
-6*-DQz\*
(3}%JKJJ./2q#F#$'!5
/C!8R@rp   c                   \        \        V P                  4      pVP                  R 4      pVP	                  VP
                  VP                  R7      pVP                  V^8H  WC4      p\        P                  ! RR7      ;_uu_ 4        V! V4      p\        VP                  V4       \        VP                  V4       RRR4       R#   + '       g   i     R# ; i)r  r6   r   rp  N)ri  r[   r 
  r   rY   rb   r7   rY  r   rr  r0   r=  r<  )rc   rd   r  rf   r	  r   s   &&    rm   test_nanNormalityTests.test_nan  s    5$..1IIcNjjqwwj/HHQ"Wc%[[**1+CCMM3/CJJ, +***s   5CC	r   Nrn  )r   r   r   r   r   r   r  r
  r
  r   r   r   s   @rm   r	  r	    s6     [[],LMA NA<	- 	-rp   r	  c                   4   a  ] tR tRt o RtRtR tR tRtV t	R# )TestSkewTesti  r	  c                    \         P                  P                  ^R^{R7      pVP                  V4      p\         P                  ! VRR7      P
                  p\        WAP                  RVP                  R7      RR7       R	# )
rW   r  )rJ  r  r  r  r  r   r6   g?̔>rD  N)r[   skewnormr  rY   r	  r<  r/   r7   )rc   rd   r  a1_xpr  s   &&   rm   test_intuitiveTestSkewTest.test_intuitive  s[    ^^!%cB

2~~e;BBjjEKKj@tLrp   c                   \         P                  ! VP                  R 4      4       VP                  R4      p\        \        \
        VR7      ;_uu_ 4        \         P                  ! V4      pVP                  VP                  4      p\        VP                  V4       \        VP                  V4       RRR4       R#   + '       g   i     R# ; i)r   r   r\  N)r[   r	  r   r%   r   r   rY   rb   r0   r=  r<  rc   rd   rf   r   r	  s   &&   rm   "test_skewtest_too_few_observations/TestSkewTest.test_skewtest_too_few_observations   s     	ryy~&IIcN+3HRPP..#C**RVV$CCMM3/CJJ,	 QPPPs   AB==C	r   N)gvO?gbH`?)
r   r   r   r   r 
  r
  r
  r
  r   r   r   s   @rm   r

  r

    s     I9HM- -rp   r

  c                   :   a  ] tR tRt o RtRtR tR tR tRt	V t
R# )	TestKurtosisTesti  r	  c                    \         P                  P                  R ^{R7      pVP                  V4      p\         P                  ! VRR7      P
                  p\        WAP                  RVP                  R7      RR7       R# )	r  )r  r  r  r  r   r6   rC  rD  N)r[   laplacer  rY   r	  r<  r/   r7   )rc   rd   r  a2_xpr  s   &&   rm   r
  TestKurtosisTest.test_intuitive  s[    ]]E<

2!!%Y?FFjjEKKj@uMrp   c           
     (   . ROp\         P                  ! \        V4       UUu. uF  w  r4\         P                  ! WC4      NK  	  upp4      pVP	                  WQP
                  R7      p\        P                  ! V4      ^,          R8  g   Q hR# u uppi )r6  r6   r  N)
r6  ry   :   rJ   ry   )      ry   ry      )r   hstack	enumerater~   rY   r   r[   r	  )rc   rd   r  r  rj  rf   s   &&    rm   test_gh9033_regression'TestKurtosisTest.test_gh9033_regression  so     7II61BC1Brwwq}1BCDJJq

J+!!!$Q'$... Ds   !B
c                   \         P                  ! VP                  R 4      4       \        \        \
        VR7      ;_uu_ 4        \         P                  ! VP                  R4      4      pVP                  VP                  4      p\        VP                  V4       \        VP                  V4       RRR4       R#   + '       g   i     R# ; i)r8   r\  r   N)r[   r	  r   r%   r   r   rY   rb   r0   r=  r<  r	  s   &&  rm   &test_kurtosistest_too_few_observations7TestKurtosisTest.test_kurtosistest_too_few_observations"  s     	299S>*+3HRPP$$RYYr]3C**RVV$CCMM3/CJJ,	 QPPP   A-B;;C	r   N)gglg2J@?)r   r   r   r   r 
  r
  r
  r!
  r$
  r   r   r   s   @rm   r
  r
    s$     I:HN/	- 	-rp   r
  c                   .   a  ] tR tRt o RtRtR tRtV tR# )TestNormalTesti.  
normaltestc                   \         P                  ! VP                  R 4      4       \        \        \
        VR7      ;_uu_ 4        \         P                  ! VP                  R4      4      pVP                  VP                  4      p\        VP                  V4       \        VP                  V4       RRR4       R#   + '       g   i     R# ; i)r   r\  r   N)r[   r)
  r   r%   r   r   rY   rb   r0   r=  r<  r	  s   &&  rm   test_too_few_observations(TestNormalTest.test_too_few_observations3  s    2' +3HRPP""299R=1C**RVV$CCMM3/CJJ,	 QPPPr&
  r   N)gاc@g?)	r   r   r   r   r 
  r
  r+
  r   r   r   s   @rm   r(
  r(
  .  s     I9H- -rp   r(
  c                      a  ] tR tRt o ]P
                  P                  R4      t]P                  R	4      w  tt	]
P                  P                  R. R
O4      R 4       tR tR tRtV tR# )TestRankSumsi>     hZ r  c                    \         P                  ! V P                  V P                  VR 7      P                  p\         P
                  ! V P                  V P                  RVR7      P                  p\        W#4       R# )r  F)use_continuityr  N)r[   ranksumsrf   rg   r<  mannwhitneyur
   )rc   r  r  r  s   &&  rm   test_ranksums_result_attributes,TestRankSums.test_ranksums_result_attributesC  sZ     ~~dffdff*577=v 	!!$&&$&&.9;;A6 	#rp   c                t    \         P                  ! V P                  V P                  4      p\	        VR4       R# r  )r[   r2
  rf   rg   r   rl  s   & rm   test_ranksums_named_results(TestRankSums.test_ranksums_named_resultsL  s%    nnTVVTVV,C!89rp   c                    \        \        R R7      ;_uu_ 4        \        P                  ! V P                  V P
                  RR7       RRR4       R#   + '       g   i     R# ; i)z`alternative` must be 'less'r   r   r  N)r   r   r[   r2
  rf   rg   rt  s   &rm   r  "TestRankSums.test_input_validationP  s8    :-KLLNN466466x@ MLLLs   .AA#	r   NrE   rO   r  )r   r   r   r   r   r  r  r  rf   rg   r   r   r  r4
  r7
  r  r   r   r   s   @rm   r.
  r.
  >  sa     
))



+C::gDAq[[],LM$ N$:A Arp   r.
  c                   j   a  ] tR tRt o R t]! RR7      R 4       t]! RRR7      R	 4       tR
 tRt	V t
R# )TestJarqueBeraiU  c                    . ROpVP                  V4      pVP                  RR.4      p\        P                  ! V4      p\        VP                  V^ ,          4       \        VP
                  V^,          4       R# )g8MK~?gq"?gPHK?N)g8MK~Ŀg/?g6r=TgGg!J_l )rY   r[   jarque_berar/   r=  r<  )rc   rd   rf   r  r   s   &&   rm   test_jarque_bera_against_R)TestJarqueBera.test_jarque_bera_against_RW  s^    
;JJqMjj*O<="s1v.

CF+rp   Tr  c                l   \         P                  P                  R 4      pVP                  RR7      p\        P
                  ! \        V4      4      ;pw  rV\        P
                  ! \        V4      4      ;pw  r\        P
                  ! VP                  ^R4      4      ;p
w  rYXu;8X  d?   Tu;8X  d7   VP                  u;8X  d%   VP                  u;8X  d   V
P                  8X  g   Q h Q hYiu;8X  d?   Tu;8X  d7   VP                  u;8X  d%   VP                  u;8X  d   V
P                  8X  g   Q h Q hR# )l   uT rQ  r  P  N)r   r  r  r  r[   r?
  r=  tupler]   r=  r<  )rc   rd   r  rf   jb_test1JB1r  jb_test2JB2r	  jb_test3JB3r	  s   &&           rm   test_jarque_bera_array_like*TestJarqueBera.test_jarque_bera_array_liked  s     ii##J/V,"..tAw7773"..uQx8873"..qyyE/BCC73bSbH$6$6b(:L:LbPXPbPbbbbbbV2VVHOOVxVVVVVrp   array_api_strictzNoisy; see TestSkewrp  c                l   VP                  . 4      p\        P                  ! \        \        R 7      ;_uu_ 4        \
        P                  ! V4      pVP                  VP                  4      p\        VP                  V4       \        VP                  V4       RRR4       R#   + '       g   i     R# ; ir  )rY   r   rC  r   r   r[   r?
  rb   r0   r=  r<  r
  s   &&   rm   %test_jarque_bera_too_few_observations4TestJarqueBera.test_jarque_bera_too_few_observationsq  sp    JJrN\\,4IJJ##A&C**RVV$CCMM3/CJJ,	 KJJJs   AB""B3	c                   \         P                  P                  R R7      pVP                  VP                  RR7      4      p\        P
                  ! VRR7      p\        P
                  ! VP                  VR4      4      p\        VP                  VP                  4       \        VP                  VP                  4       \        P
                  ! V^R7      p\        P
                  ! VR,          4      w  rg\        P
                  ! VR,          4      w  r\        VP                  VP                  Wh.4      4       \        VP                  VP                  Wy.4      4       \        P
                  ! VP                  ^ R7      p
\        VP                  V
P                  4       \        VP                  V
P                  4       R# )	iKr  r  Nr>   )rE   r  r  rz  r{  )r   r  r  rY   r[   r?
  r]   r0   r=  r<  r/   r  r   )rc   rd   r  rf   r   r  s0r  s1r  resTs   &&         rm   r  TestJarqueBera.test_axis{  s-   ii###3JJszzwz/0-

1e 45s}}5

CJJ/*""1T7+""1T7+rxx'9:

BHHbX$67  1-t~~6

DKK0rp   r   N)r   r   r   r   r@
  r   rK
  rO
  r  r   r   r   s   @rm   r=
  r=
  U  sM     , d#
W $
W (1FG- H-1 1rp   r=
  c                     . ^N^ N^N^N^N^N^ N^N^ N^ N^ N^N^N^ N^ N^ N^N^N^N^ N^ N^ N^ N^ N^ N^ N^ N^N^ N^ N^ N^ N^ N^Np . RNRNRNRNRNRNRNRNR	NR
NRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNp\        \        P                  ! W4      ^ ,          R^4       R p\        P                  ! W4      p\        W24       \	        VP
                  VP                  4       R# )!rW   g-@g+@g(@r`  r  r  g333333@ffffff@g333333@r  r  皙	@r   r  rt   r  ffffff@ @333333?r2   ?r  r=  rh  rE  rb  r1   r'  rD  g/"?Nr;  )r   r[   pointbiserialrr   r   r:  r=  )rf   rg   r?  r   s       rm   test_pointbiserialr^
    sU   	 	1 	Q 	q 	 	1 	Q 	q 	 	1 	Q 	q 	 	1 	Q 	q 	 	1 	Q 	q 	 	1 	Q 	q 	 	1 	Q 	q 	 		
					A	& 	&d 	&4 	& 	&S 	& 	&S 	& 	&S 	& 	&S 	& 	&S 	&		&	&	&	&	& 	&!$	&%(	&),	&-0	&14	&58	&9<	&=@	&		&	&	&	&	& 	&!$	&A ,,Q215wB +J


q
$C(#--0rp   c                  8   \         P                  ! . RO4      p \        P                  ! V 4      p. ROp\	        V^ ,          V4       \         P                  ! . RO4      p\        P                  ! V4      p\         P                  ! . RO4      p\	        V^ ,          V4       \        P                  ! W4      w  rV\        WQ^ ,          4       \        Wd^ ,          4       \        P                  ! WV 4      w  rVp\        WQ^ ,          4       \        Wd^ ,          4       \        Wq^ ,          4       \         P                  ! ^4      p \         P                  ! . RO. RO.4      p\        \        P                  ! V ^V ,          4      V^R7       \        ^^4      p	\         P                  ! . R	O4      p
\         P                  ! W4      p\         P                  ! . R
O4      p\         P                  ! W4      p\        P                  ! V4      p\        V^ ,          V^R7       R# )ry   rJ  N)ry   rE   r   )rJ   rM  rJ   )ry   r   rz   rI   )r  ry   ry   r  )㪪@I?g&>ڿra
  r`
  )5@㪪@gIrc
  rb
  )rw   rP   rI   r   rE   rE   )g_v	@g1%?g"u?gZӼ?g!u @gq&@)
r   r   r[   obrientransformr
   r   r   r   r  r  )r  rn  r  r  ro  rJ  rV  rj  r  valuesrepsr  transformed_valuess                rm   test_obrientransformrh
    s   	)	B			r	"BHBqE8$	,	B			r	"Bxx'HBqE8$   (DAqEqE ##BB/GA!qEqEqE 
1BXXDFHIF e33B"=vqQ 1b\F88'(D99V"D #< =yy+2H""4(FfQi1=rp   r7   r  r  weightsc           	      >   T;'       g    V P                   p\        V4      ^8X  d   Vw  rxMVw  rypV P                  WsR7      pV P                  WR7      pVe   V P                  WSR7      MTp\        V4      ^8X  d   V3MVX	3pV! VRVRVRV/ p
\        WVR7       R# )rE   r6   Nr?   r7   ri
  r  )r   r  rY   r/   )rd   mean_funr?   r7   r  ri
  rW  
array_liker  rd  rf   s   $$$$$$*    rm   check_equal_xmeanrm
    s     RZZE
4yA~"
G!%
wJ4Jjjj.G292Ebjjj.7GINJ=QD$@T@@@AAT*rp   c                  8    \        V R \        P                  /VB # rk
  )rm
  r[   r  rW  rX  s   *,rm   check_equal_gmeanrq
        dCU[[CFCCrp   c                  8    \        V R \        P                  /VB # ro
  )rm
  r[   hmeanrp
  s   *,rm   check_equal_hmeanru
    rr
  rp   c                  8    \        V R \        P                  /VB # ro
  )rm
  r[   pmeanrp
  s   *,rm   check_equal_pmeanrx
    rr
  rp   c                      a  ] tR tRt o ]P
                  P                  R4      R 4       tR t]P
                  P                  R4      ]P
                  P                  R4      R 4       4       t	]P
                  P                  R4      R 4       t
R	 tR
 t]P
                  P                  R4      R 4       tR t]P
                  P                  R4      R 4       t]! RRR7      R 4       tR tR tR t]R 4       tRtV tR# )	TestHMeani  r}  c                ,    . ROp^ p\        W#VR7       R# rW   r  N)rW   ry   rE   ru
  rc   rd   rJ  r  s   &&  rm   test_0TestHMean.test_0  s    !,rp   c                R    . ROpRp\        W#VR7       . ROpRp\        W#VR7       R# )rO   g=b#A@r  Nrp  r  gQ?r}
  r~
  s   &&  rm   test_1dTestHMean.test_1d  s*    5!,:!,rp   r|  c                V    \         P                  ! ^^ .4      pRp\        W#VRR7       R# )rW   r   rd   r  Nr   r   ru
  r~
  s   &&  rm   test_1d_with_zeroTestHMean.test_1d_with_zero  s'     HHaV!#6rp   r	  c           	         \         P                  ! . RO4      pRp\        P                  ! \        VR7      ;_uu_ 4        \        W!P                  VRR7       RRR4       R#   + '       g   i     R# ; i)rW   z$The harmonic mean is only defined...r   r   r
  NrW   ry   rU   )r   r   r   rC  r   ru
  rb   )rc   rd   rJ  r  s   &&  rm   test_1d_with_negative_value%TestHMean.test_1d_with_negative_value   sG     HHZ 8\\.88aBS9 9888s   A""A3	c                b    . RO. RO. RO.pRp\        \        P                  ! V4      W1R7       R# )rO   gmWUC@r  NrO   r  r  r  r  r[  rq  r`  r-  r  rx  x   )ru
  r   r   r~
  s   &&  rm   test_2dTestHMean.test_2d
  s'    /1DE"((1+w6rp   c                h    . RO. RO. RO.p\         P                  ! . RO4      p\        W#^ VR7       R# )rO   r?   rd   Nr
  r
  r
  )U|ϊ6@g4.=C@JQ6LsJ@E]P@r
  r~
  s   &&  rm   test_2d_axis0TestHMean.test_2d_axis0  s+    /1DE((OP!14rp   c                h    . RO. RO. RO.p\         P                  ! . RO4      p\        W#^ VR7       R# )rO   r
  NrO   ry   r  r  r
  r
  )r
  r   r
  r
  r
  r~
  s   &&  rm   test_2d_axis0_with_zero!TestHMean.test_2d_axis0_with_zero  s+    .0CD((GH!14rp   c                h    . RO. RO. RO.p\         P                  ! . RO4      p\        W#^VR7       R# )rO   r
  Nr
  r
  r
  )g3333333@O@y@Y@r
  r~
  s   &&  rm   test_2d_axis1TestHMean.test_2d_axis1  s+    /1DE((<=!14rp   c                h    . RO. RO. RO.p\         P                  ! . RO4      p\        W#^VR7       R# )rO   r
  Nr
  r
  r
  )r   r
  r
  r
  r~
  s   &&  rm   test_2d_axis1_with_zero!TestHMean.test_2d_axis1_with_zero"  s+    .0CD((;<!14rp   T,array-likes only supported for NumPy backendr   c                    . ROp. ROpRp\         P                  ! W#R7      p\        V\        P                  ! V4      RR7       R# )rE   r   ri
  r.  r  NrE   rO   rz   rO   rw   r   )r[   rt
  r/   r   rY   rc   rd   rJ  ri
  r  r   s   &&    rm   test_weights_1d_listTestHMean.test_weights_1d_list(  s8      kk!-RZZ0t<rp   c                    \         P                  ! . RO4      p\         P                  ! . RO4      p^p\        W$VRVR7       R# )rE   r.  ri
  r  rd   Nr
  r
  )r   rY   ru
  rc   rd   rJ  ri
  r  s   &&   rm   test_weights_1dTestHMean.test_weights_1d8  s3     JJz"**Z(!gDRHrp   c           	         \         P                  ! ^^.^
^.^^..4      p\         P                  ! ^
^.^^.^^..4      p\         P                  ! ^^.4      p\        W$^ VRVR7       R# )rE   r.  r?   ri
  r  rd   Nr
  r
  s   &&   rm   test_weights_2d_axis0TestHMean.test_weights_2d_axis0@  sh     HHq!fr1g1v./((RGaVaV45((Aq6"!1gDRPrp   c           	         \         P                  ! . RO. RO.4      p\         P                  ! . RO. RO.4      p\         P                  ! ^^.4      p\        W$^VRVR7       R# )rE   r.  r
  Nr
  rJ   rJ   rJ   r
  r  r
  r
  s   &&   rm   test_weights_2d_axis1TestHMean.test_weights_2d_axis1H  sL     HHj),-((J	23((Aq6"!1gDRPrp   c           	         \         P                  ! . RO4      p\         P                  P                  . RO. ROR7      p^p\         P                  p\        W$VR\         P                  VR7       R# )rE   r  r.  ri
  r  r7   rd   NrE   rO   rz   r  rO   rw   r   r  ry   ry   ry   rW   )r   r   r}  ru
  r   r
  s   &&   rm   test_weights_masked_1d_array&TestHMean.test_weights_masked_1d_arrayP  sM     HH^$%%++n<+@UU!gD "

r	3rp   r   N)r   r   r   r   r   r   r   r
  r
  r
  r
  r
  r
  r
  r
  r
  r   r
  r
  r
  r
  r#   r
  r   r   r   s   @rm   rz
  rz
    s/    [[ WX- Y-
- [[ WX[[ VW7 X Y7
 [[:::75 [[ WX5 Y5
5 [[ WX5 Y5
 =
=	
=IQQ 3 3rp   rz
  c                   :  a  ] tR tRt o ]P
                  P                  R4      R 4       tR tR t	R t
R tR t]P
                  P                  R4      R	 4       t]P
                  P                  R
4      R 4       t]! RRR7      R 4       tR t]R 4       tRtV tR# )	TestGMeani\  z<ignore:divide by zero encountered in log:RuntimeWarning:daskc                ,    . ROp^ p\        W#VR7       R# r|
  rq
  r~
  s   &&  rm   r
  TestGMean.test_0^  s     !,rp   c                    . ROpRp\        W#VR7       . ROp\        ^R	4      p\        W#RVR7       \        . RO\        4      p\        ^R	4      p\        W#VP                  VR7       R# )
rO   gsŤF@r  ri  r  rd   r4  Nrp  r  rA  )rq
  r   r   r   r~
  s   &&  rm   r
  TestGMean.test_1df  s[    5!,w/!5R8,(w/!BJJ2>rp   c                :    . RO. RO. RO.pRp\        W#VR7       R# )rO   g/,$qJ@r  Nr
  r
  r
  r
  r~
  s   &&  rm   r
  TestGMean.test_2du  s    /1DE!,rp   c                    . RO. RO. RO.p\         P                  ! . RO4      p\        W#^ VR7       \        . R	O. R	O. R	O.4      p\        . R	O4      p\        W#^ RVR7       R# )
rO   r
  ri  r?   r  rd   Nr
  r
  r
  )g4@A@g5H@g`8|wЭN@gm~&+R@r  r   r   rq
  r~
  s   &&  rm   r
  TestGMean.test_2d_axis0{  sT    /1DE((NO!14<|<=%!15R@rp   c                    . RO. RO. RO.p\         P                  ! . RO4      p\        W#^VR7       \        . R	O. R	O. R	O.4      p\        ^R
4      p\        WDV.4      p\        W#^RVR7       R# )rO   r
  ri  r
  Nr
  r
  r
  )gD" 6"6@gcP@g
ҧZ@r  rA  )r   r   rq
  r   )rc   rd   rJ  r  r  s   &&   rm   r
  TestGMean.test_2d_axis1  sd    /1DE((CD!14<|<=-)q	"!15R@rp   c                @    \        . RO4      pRp\        W#RVR7       R# )}Ô%ITry  r  r
  N)r
  ry  gu <7~)r   rq
  r~
  s   &&  rm   test_large_valuesTestGMean.test_large_values  s    '(!5R8rp   c                    . ROpRp\         P                  ! RR7      ;_uu_ 4        \        W#VR7       RRR4       R#   + '       g   i     R# ; i)rO   r   r   r	  r  N)
rO   r  r  r  r  r[  rq  r`  r-  ry   )r   rr  rq
  r~
  s   &&  rm   test_1d_with_0TestGMean.test_1d_with_0  s6    
 4[[X&&aR0 '&&&s	   >A	z;ignore:invalid value encountered in log:RuntimeWarning:daskc                    . ROp\         P                  p\         P                  ! RR7      ;_uu_ 4        \        W#VR7       RRR4       R#   + '       g   i     R# ; i)rO   r   rp  r  N)
rO   r  r  r  r  r[  rq  r`  r-  rU   )r   rb   rr  rq
  r~
  s   &&  rm   test_1d_negTestGMean.test_1d_neg  s:    
 5&&[[**aR0 +***s   AA	Tr
  r   c                    . ROp. ROpRp\         P                  ! W#R7      p\        V\        P                  ! V4      RR7       R# )rW   GZ*oG8@r
  r.  r  Nr  rE   rw   rz   r   r   )r[   r  r/   r   rY   r
  s   &&    rm   r
  TestGMean.test_weights_1d_list  s8     !
 kk!-RZZ0t<rp   c                    \         P                  ! . RO4      p\         P                  ! . RO4      pRp\        W$VRVR7       R# )rW   r
  r.  r
  Nr  r
  r
  r
  s   &&   rm   r
  TestGMean.test_weights_1d  s3     HH_%((?+!gDRHrp   c           	         \         P                  ! . RO4      p\         P                  P                  . RO. ROR7      pRp\         P                  p\        W$VR\         P                  VR7       R# )	rW   r  r
  r.  r
  Nr  )rE   rw   rz   r   r   rw   )ry   ry   ry   ry   ry   rW   )r   r   r}  rq
  r   r
  s   &&   rm   r
  &TestGMean.test_weights_masked_1d_array  sP     HH'(%%++07I+JUU!gD "

r	3rp   r   N)r   r   r   r   r   r   r   r
  r
  r
  r
  r
  r
  r
  r
  r   r
  r
  r#   r
  r   r   r   s   @rm   r
  r
  \  s     [[F--
?-A	A9
 [[F11 [[E11 ==	=I 3 3rp   r
  c            
         a  ] tR tRt o R tR tR tR t]P                  P                  R4      ]P                  P                  R4      R 4       4       tR	 t]P                  P                  R^
^.^2^<.^Z^d..R3]P                  ! ^
^.^2^<.^Z^d..4      R
3.4      R 4       t]P                  P                  R. RO. RO. RO.R3. RO. RO. RO.R
3.4      R 4       t]P                  P                  R. RO. RO. RO.R3. RO. RO. RO.R
3.4      R 4       tR t]! RRR7      R 4       t]R 4       t]P                  P                  R. RO4      R 4       tR tRtV tR# ) 	TestPMeani  c                x    \         P                  ! W,          4      V P                  ,          ^V,          ,          # r  )r   r^  r  rJ  rd  s   &&rm   pmean_referenceTestPMean.pmean_reference  s$    qtqvv%1--rp   c                    \         P                  ! W V,          ,          4      \         P                  ! V4      ,          ^V,          ,          # r  )r   r^  )rJ  rd  ri
  s   &&&rm   wpmean_referenceTestPMean.wpmean_reference  s-    wA~&8AaC@@rp   c                    \         P                  ! \        R R7      ;_uu_ 4        \        P                  ! VP                  . RO4      VP                  ^ .4      4       RRR4       R#   + '       g   i     R# ; i)zPower mean only defined forr   Nr  )r   r   r   r[   rw
  rY   r  s   &&rm   test_bad_exponentTestPMean.test_bad_exponent  sE    ]]:-JKKKK

9-rzz1#? LKKKs   9A((A9	c                F   . RORr2\         P                  \        P                  ! V4      V4      p\	        W#WAR7       . RORr2\         P                  \        P                  ! V4      V4      p\	        W#WAR7       . RO^r2\        P
                  ! R4      p\	        W#WAR7       R# )rO   r  r  Nrp  g      r  rq  )r
  r
  r   r   rx
  rG  rc   rd   rJ  rd  r  s   &&   rm   r
  TestPMean.test_1d  sx    8#1++BHHQK;!/8$1++BHHQK;!/Q1''9:!/rp   r|  r}  c                Z    \         P                  ! ^^ .4      Rr2Rp\        W#VRVR7       R# )rW   r   r
  NrU   )r   r   rx
  r
  s   &&   rm   r
  TestPMean.test_1d_with_zero  s+     xxA1!cb9rp   c           	         \         P                  ! . RO4      Rr2Rp\        P                  ! \        VR7      ;_uu_ 4        \        W#VP                  VR7       RRR4       R#   + '       g   i     R# ; i)rW   Gz?z!The power mean is only defined...r   r  Nr
  )r   r   r   rC  r   rx
  rb   )rc   rd   rJ  rd  r  s   &&   rm   r
  %TestPMean.test_1d_with_negative_value  sG    xx
#T15\\.88aBFFr2 9888s    A##A4	r1   c                t    \         P                  \        P                  ! V4      V4      p\	        WWCR 7       R# )r  Nr
  r
  r   r   rx
  )rc   rJ  rd  rd   r  s   &&&& rm   test_2d_axisnoneTestPMean.test_2d_axisnone  s(     ++BHHQK;!/rp   c                @   \        \        V^ ,          4      4       UUu. uF\  p\        P                  \        P
                  ! \        \        V4      4       Uu. uF  qQV,          V,          NK  	  up4      V4      NK^  	  ppp\        WV^ VR7       R# u upi u uppi )ry   r
  N)r  r  r
  r
  r   r   rx
  )rc   rJ  rd  rd   r  r  r  s   &&&&   rm   r
  TestPMean.test_2d_axis0  s     3qt9%	
 & %%5Q=9=aA$q''=9:A &	 	 
 	!aB7	 :
s   :BB1BBc                    V Uu. uF-  p\         P                  \        P                  ! V4      V4      NK/  	  pp\	        WV^VR7       R# u upi )rW   r
  Nr
  )rc   rJ  rd  rd   a_r  s   &&&&  rm   r
  TestPMean.test_2d_axis1  sC     IJJ"9,,RXXb\1=J!aB7 Ks   3Ac           	         . RORr2. ROp\         P                  \        P                  ! V4      W44      p\	        W#WTRVR7       R# )rE   r.  r
  Nr
  ރBr
  )r
  r
  r   r   rx
  rc   rd   rJ  rd  ri
  r  s   &&    rm   r
  TestPMean.test_weights_1d  s6    ;1,,RXXa[!E!tKrp   Tr
  r   c                    . RORr2. ROp\         P                  \        P                  ! V4      W44      p\        P
                  ! W#VR7      p\        V\        P                  ! V4      RR7       R# )rE   r
  r.  r  Nr
  r  r
  )r
  r
  r   r   r[   rw
  r/   rY   )rc   rd   rJ  rd  ri
  r  r   s   &&     rm   r
  TestPMean.test_weights_1d_list  sQ    
 ;1,,RXXa[!E kk!0RZZ0t<rp   c           
        \         P                  ! . RO4      ^r2\         P                  P                  . RO. ROR7      p\         P                  ! W$R7      p\         P                  p\	        W#WTR\         P
                  VR7       R# )	rE   r  r
  r.  r
  Nr
  r
  r
  )r   r   r}  averagerx
  r   r  s   &&    rm   r
  &TestPMean.test_weights_masked_1d_array)  sV    xx'1%%++n<+@**Q0UU!t "

r	3rp   Nc           
        a VR 8X  d   V3R lpM\        \        V4      p\        P                  ! ^^.^
^.^^..4      p\        P                  ! ^
^.^^.^^..4      pV! WaVR7      p\	        VSWVRVR7       R# )r
  c                 2   < \         P                  V SV4      # r  )r
  r
  )rJ  r?   ri
  rd  s   &&&rm   fun&TestPMean.test_weights_2d.<locals>.fun:  s     11!Q@@rp   )r?   ri
  r.  r
  N)ri  r[   r   r   rx
  )	rc   r?   fun_namerd  rd   r  rJ  ri
  r  s	   &&&f&    rm   test_weights_2dTestPMean.test_weights_2d2  s     ))A %*CHHq!fr1g1v./((RGaVaV45aG4!QG$SUVrp   c                    R p\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! ^.\
        P                  4       RRR4       R#   + '       g   i     R# ; i)z*Power mean only implemented for finite `p`r   N)r   r   rl	  r[   rw
  r   r!  r;  s   & rm   test_infinite_p_gh23111!TestPMean.test_infinite_p_gh23111C  s>     ?]].g>>KKRVV$ ?>>>s   'AA)	r   r
  rx  r
  r
  r
  r
  )r?   r  rd  ))Nr
  g3E#@)ry   r  ry   )rW   rt
  rU   )r   r   r   r   r
  r
  r
  r
  r   r   r   r
  r
  r  r   r   r
  r
  r
  r
  r   r
  r#   r
  r  r  r   r   r   s   @rm   r
  r
    s    .A@0 [[ VW[[ WX: Y X:
3 [[8b"XCy
)4	0
((RHr2hS	2
3S	9	;
0
0 [[-/B
CT	J,.A
BC	H	J
8
8 [[-/B
CT	J,.A
BC	H	J
8
8L ==	= 3 3 [[!		W	W% %rp   r
  c            	         a  ] tR tRt o ]P
                  ! ^4      ^,           P                  4       tRt]P                  ! ]R4      P                  4       t
R t]! RRR7      R 4       t]R 4       t]P"                  P%                  R	4      ]P"                  P%                  R
4      ]P"                  P'                  R^ R]P(                  ]P*                  34      R 4       4       4       tR t]! RRR7      R 4       tR tR tR tR tR tRtV t R# )TestGSTDiK  gv aZ@c                    \         P                  ! VP                  V P                  4      4      p\	        W!P                  V P
                  4      4       R # r  )r[   r  rY   array_1dr/   gstd_array_1drc   rd   gstd_actuals   && rm   test_1d_arrayTestGSTD.test_1d_arrayR  s4    jjDMM!:;ZZ0B0B%CDrp   Tz$Only NumPy supports array-like inputr   c                    \         P                  ! \        V P                  4      4      p\	        W P
                  4       R # r  )r[   r  rD
  r  r
   r  r  s   && rm    test_1d_numeric_array_like_input)TestGSTD.test_1d_numeric_array_like_inputV  s'    jjt}}!56%7%78rp   c                    R p\         P                  ! \        \        3VR7      ;_uu_ 4        \        P
                  ! R4       RRR4       R#   + '       g   i     R# ; i)z.could not convert string to float|The DType...r   z*You cannot take the logarithm of a string.N)r   r   r   r/  r[   r  r  s   && rm   #test_raises_error_non_numeric_input,TestGSTD.test_raises_error_non_numeric_input[  s:    B]]J	2'BBJJCD CBBBs   AA	r}  r|  	bad_valuec                   VP                  V P                  V.,           4      p\        P                  ! V4      '       dX   \	        V4      '       gG   R p\
        P                  ! \        VR7      ;_uu_ 4        \        P                  ! V4      pRRR4       M\        P                  ! V4      p\        XVP                  \        P                  4      4       R#   + '       g   i     L;; i)z3The geometric standard deviation is only defined...r   N)rY   r  r   r  r&   r   rC  r   r[   r  r0   rb   )rc   r$  rd   rf   r  r   s   &&&   rm   test_returns_nan_invalid_value'TestGSTD.test_returns_nan_invalid_valuea  s     JJt}}	{23;;y!!-*:*:KGnG<<jjm =< **Q-CRZZ/0	 =<s   7CC(	c                    VP                  . ROVP                  ^^^..4      p\        P                  ! V^R7      p\	        W1P                  ^\
        P                  .4      4       R# )rW   r>   N)rW   rW   rW   r
  )rY   rb   r[   r  r/   r   )rc   rd   rJ  r  s   &&  rm   test_propagates_nan_values#TestGSTD.test_propagates_nan_valuesn  sK    JJ1a'89:jj+ZZBFF%<=rp   r3  z returns subnormal instead of nanrp  c                    VP                  V P                  4      p\        P                  ! W"P                  ^ ,          R7      p\        W1P                  VP                  4      4       R# )ry   rV  N)rY   r  r[   r  r  r0   rb   r   s   &&  rm   )test_ddof_equal_to_number_of_observations2TestGSTD.test_ddof_equal_to_number_of_observationss  s?    JJt}}%jj,ZZ/0rp   c                    VP                  V P                  4      p\        P                  ! VR R7      pVP                  V P                  4      p\        W44       R # )Nr>   )rY   array_3dr[   r  r  r/   rc   rd   rf   r  r  s   &&   rm   test_3d_arrayTestGSTD.test_3d_arrayy  s@    JJt}}%jj.jj++,)rp   c                    VP                  V P                  4      p\        P                  ! VRR7      pVP                  RR.4      p\	        W44       R# )rW   r>   g~d@g<
?NrB  rY   r/  r[   r  r/   r0  s   &&   rm   test_3d_array_axis_type_tuple&TestGSTD.test_3d_array_axis_type_tuple  s?    JJt}}%jj0jj*j12)rp   c                    VP                  V P                  4      p\        P                  ! V^ R7      pVP                  . RO. RO. RO.4      p\	        W44       R# )ry   r>   N)gĶ?@gQӫ@g֌@gן7R@)g%Ȁ@ge@gv6B5 @g _?)gE ?gީ?gk̊Y?g%:?r4  rc   rd   rf   r  gstd_desireds   &&   rm   test_3d_array_axis_0TestGSTD.test_3d_array_axis_0  sJ    JJt}}%jj+zzOOO#
 
 	2rp   c                    VP                  V P                  4      p\        P                  ! V^R7      pVP                  . RO. RO.4      p\	        W44       R# )rW   r>   N)gN@g85@g'ĥ?gwth?)gHnaX?gG?gBu?gE?r4  r8  s   &&   rm   test_3d_array_axis_1TestGSTD.test_3d_array_axis_1  sG    JJt}}%jj+zzLL#
  	2rp   c                    VP                  V P                  4      p\        P                  ! V^R7      pVP                  . RO. RO.4      p\	        W44       R# )rE   r>   N)gt80?gі?g?)gۘ]~?gmT6(?g	G?r4  r8  s   &&   rm   test_3d_array_axis_2TestGSTD.test_3d_array_axis_2  sG    JJt}}%jj+zz??#
  	2rp   r   Nr  rU   )!r   r   r   r   r   r   r{   r  r  r]   r/  r  r   r  r#   r"  r   r   r   r  r!  rb   r&  r)  xfail_xp_backendsr,  r1  r5  r:  r=  r@  r   r   r   s   @rm   r  r  K  s#     		)$q(002H"Mzz(I.557HE d+QR9 S9 E E
 [[ WX[[ VW[[[1b"&&"&&*AB1 C X Y1>
 {+MN1 O1
**333 3rp   r  c            	         \         P                  ! \         P                  ! R R^4      \         P                  ! RR^4      \         P                  ! RR^4      34      p RpRp. ROp\        W4       F6  w  rE\	        \
        P                  ! W!V4      P                  V^RV 2R	7       K8  	  \	        \
        P                  ! ^2^dR 4      P                  R
^R7       R# )rD  r'  r  g?r?  ffffff?r  i  z
fail forp=)r  err_msggVݶ3;r  N)r   r   gs  gG|G{g	ɺM>6g>
ztt+g#ӌRM/gF׸fz2gU8u5g8M8gФ)Ba?g%վ?g*+a5?gś?gڒJ|>)r   r  r(  r5  r	   r[   	binomtestr<  )ppr  rf   r  rd  r   s         rm   test_binomtestrH    s    	S#q1T43T435 
6B 	AA(G b"EOOA!4;;S(*j4D	F # C5<</$&(rp   c                  ,   R R .. RO. RO. RO. RO. RO. R	O. R
O. RO. RO.
p \        ^^4       F^  p\        V^,           4       Uu. uF$  p\        P                  ! W!R4      P                  NK&  	  pp\	        W0V^,
          ,          ^
R7       K`  	  R# u upi )r   r1   rJ  N)r1   r   r1   )rA  r   r   rA  )r@  r  r   r  r@  )rC        ?r   r   rJ  rC  )rD        ?      ?r   rL  rK  rD  )r?  r@        ?r   r   rM  r@  r?  )	      ?      ?     ?     @?r   rQ  rP  rO  rN  )
      p?      ?      ?     @?r   r   rU  rT  rS  rR  )      `?      ?      ?      ?      ?r   rZ  rY  rX  rW  rV  )r  r[   rF  r<  r   )r  r  r  r  s       rm   test_binomtest2r[    s     
c
 +8G		*	E	D" 1b\;@Q<H<ac*11<HDqs)R8 Hs   *Bc                  ,   \        ^^4       U Uu. uFE  p \        ^^4       F2  p\        P                  ! W V,          RV,          4      P                  NK4  	  KG  	  pp p\	        V\
        P                  ! \        V4      \        4      4       \
        P                  ! . RNRNRNRNRNRNRNR	NR
NRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNR NR!NR"NR#NR$NR%NR&NR'NR(NR)NR*NR+NR,NR-NR.NR/NR0NR1NR2NR3NR4NR5NR6NR7NR8NR9NR:NR;NR<NR=NR>NR?NR@NRANRBNRCNRDNRENRFNRGNRHNRINRJNRKNRLNRMNRNNRONRPNRQNRRNRSNRTNRUNRVNRWNRXNRYNRZNR[N4      p\
        P                  ! . RNR\NR]NR^NR_NR`NRaNRbNRcNRNRdNReNRfNRgNRhNRiNRjNRkNRNRlNRmNRnNRoNRpNRqNRrNRsNRNRtNRuNRvNRwNRxNRyNRzNR{NR&NR|NR}NR~NRNRNRNRNRNR/NRNRNRNRNRNRNRNRNR8NRNRNRNRNRNRNRNRNRANRNRNRNRNRNRNRNRNRJNRNRNRNRNRNRNRNRNRSNRNRNRNRNRNRNRNRN4      p\        ^^4       U Uu. uFL  p \        ^^4       F9  p\        P                  ! V ^,           W,          RV,          4      P                  NK;  	  KN  	  pp p\        ^^4       U Uu. uFL  p \        ^^4       F9  p\        P                  ! V ^,
          W,          RV,          4      P                  NK;  	  KN  	  pp p\        WT^R7       \        Wc^R7       R# u upp i u upp i u upp i )rW   r   r1   grq?g     ?glq?gx0f#?g%d)MO?g   	o?g6?g:X@?r  gsw?g    ?gR'jMV?gEf?gF5a?gAQU?g'W?gk?rL  g
ņB?g  ?g$?g{dU'?gD:B?gwV?gR0Nf?gOq?rQ  g[k^?g T+?gO?gggh(?gP-@?gOQ?g}^?gV7_i?rZ  ge$?gр?g#>?g5z@?g:?gf?gzP?g  ?g     ?gg*),?g}A_?g}aA?gH]@_?g
y7s?gPG?g>)\R?gjc6?gK?go; ,?g!O0?g?g}e?g5?g?!A^?gN/#?g*?g    @?g?g?g3?g.1?gdT\1-?gt0W59?goQC?gX4J?g   ?g
?gf?C"?g\6I?g4b?g|$or?gWNS~?gT?gXnc?g   \?gY\?gp ^a?gX-K?g#c?g
3?g75Q?gMJ[?gP8R?gw	%?g     ?gS g?gv^?g*uCi?g  a?g]?gE9Q?g/?g     ?g	x&~?g#?g5B?g	A'9?gpZ?gWV$u?gqIb?g  @N?g1Y?g5?gO?gc-?gk?g )?glMV?g?$?gT*r?gCqRv?grx?gωZ?gExY?g<T ?gJ9Ͻd?g `Ԗt?gT?gEz?gQ?g7C<*?g<?g~ K?g8?g~ȍEt?g⿒?g<v?gHE:?g8Z$?gbº5?gvC?g`Yw?gA?$??gE=?g4?g3?g{G9?gp?gH ?gz6f?g¯F?g(+?g	$V?gq^ws?g!?gXNJ?gK?g4P?g<q?gdV;?gy?g$w?gU<vO?gMX?g	șz*?giqSp?gMM?g0V$)?g]
yi/Q?gl?gl?g3Ȇ?gѾ_c?rJ  N)r  r[   rF  r<  r   r   r  r  rF  r   r   )r  r  r  binom_testm1binom_testp1res4_p1res4_m1s          rm   test_binomtest3ra    s    1b\9!5B<a OOAsBqD)00+7 1! 	 9rwws4y#./ 88 
	
 
"*
,>
	
.
0A
 

 .
 05
 7H
 
	
 .	
 0A	

 


 .

 0A
 

 #
 %7
 9K
 

 .
 0B
 

 .
 0B
 DM
 

 .
 0B
 

 -
 /A
 

 -
 /9
 ;M
 

 0
 2C
 

 /
 1C
 

 )
 +=
 

 /
 1C
  
!
  -!
  /@!
" 
#
" 0#
" 2D#
$ 
%
$ .%
$ 0B%
& 
'
& .'
& 0@'
( 
)
( /)
( 1B)
* 
+
* .+
* 0@+
, 
-
, /-
, 1B-
. 
/
. 0/
. 2C/
0 
1
0 .1
0 0B1
2 
3
2 .3
2 0A3
4 
5
4 .5
4 0A5
6 
7
6 .7
6 0@7
8 
9
8 .9
8 0A9
: 
;
 LP 88 
	

!+
-4
6H
	
/
1C
 

 #
 %7
 9I
 
	
 .	
 0B	

 


 0

 2C

 EK
 

 0
 2A
 

 0
 2D
 

 /
 1:
 <N
 

 /
 1C
 

 /
 1C
 

 '
 ):
 <M
 

 .
 0A
 

 /
 1C
 

 )
 +<
 >O
 

 -
 /@
  
!
  /!
  1C!
" 
#
" 0#
" 2D#
$ 
%
$ /%
$ 1B%
& 
'
& .'
& 0A'
( 
)
( .)
( 0B)
* 
+
* /+
* 1C+
, 
-
, /-
, 1C-
. 
/
. //
. 1B/
0 
1
0 .1
0 0B1
2 
3
2 .3
2 0A3
4 
5
4 .5
4 0A5
6 
7
6 07
6 2D7
8 
9
8 .9
 L@ a<$1eArl qsACA.55.: 6$  < a<$1eArl qsACA.55.: 6$  < r:r:q9d<<s   AL/AL
ALc                   ,   a  ] tR tRt o R tR tRtV tR# )TestTrimi/  c           
        \         P                  ! ^4      p\        \         P                  ! \        P
                  ! VR4      4      \         P                  ! ^
4      4       \        \         P                  ! \        P
                  ! VR4      4      \         P                  ! ^	4      4       \        \         P                  ! \        P
                  ! VRRR7      4      \         P                  ! ^^4      4       \        \         P                  ! \        P
                  ! VR	RR7      4      \         P                  ! ^^4      4       \        \        P
                  ! VR4      . 4       \        \        P
                  ! VRRR7      . 4       \        \        P
                  ! . R4      . 4       \        \        P
                  ! . R	RR7      . 4       \        \        P
                  ! . R
4      . 4       \         P                  ! ^4      P                  ^^4      p\         P                  ! ^^4      P                  ^^4      p^ p\        P
                  ! VRRVR7      p\        \         P                  ! WCR7      V4       ^p\        P
                  ! VP                  RRVR7      p\        \         P                  ! WCR7      VP                  4       R# )rP   rD  r'  left)tailr   )rf  r?   r>   NtE]t?rH  )r   r   r   sortr[   trim1r]   r   )rc   rJ  r  r?   trimmeds   &    rm   
test_trim1TestTrim.test_trim11  s   IIbMRWWU[[C01299R=ARWWU[[C01299Q<@RWWU[[Cf=>YYq"%	'RWWU[[E?@YYq"%	'U[[C("-U[[Cf5r: 	U[[S)2.U[[U8"=U[[T*B/ IIbM!!!Q'ii2&&q!,++a6=RWWW0#6++acc3V$?RWWW0#%%8rp   c           
        \         P                  ! ^4      p\        \         P                  ! \        P
                  ! VR4      4      \         P                  ! ^^4      4       \        \         P                  ! \        P
                  ! VR4      4      \         P                  ! . RO4      4       \        \         P                  ! \        P
                  ! \         P                  ! ^4      P                  ^^4      R4      4      \         P                  ! ^^4      P                  ^^4      4       \        \         P                  ! \        P
                  ! \         P                  ! ^4      P                  ^^4      P                  R4      4      \         P                  ! . RO. RO.4      4       \        \        \        P
                  \         P                  ! ^4      P                  ^^4      P                  R	4       \        \        P
                  ! . R4      . 4       \        \        P
                  ! . R4      . 4       \        \        P
                  ! . R	4      . 4       R# )
rP   r'  rD  Nrg  )rE   r   r   rw   rz   rJ   rF   rU  )rE   rF   rM   r  )r   rI   r~  rL   rH  )r   r   r   rh  r[   trimbothr   r]   r   r   r   )rc   rJ  s   & rm   test_trimbothTestTrim.test_trimbothM  ss   IIbMRWWU^^Au56		!QHRWWU^^As34XX34	6RWWU^^BIIbM,A,A!Q,GMNYYq"%--a3	5RWWU^^BIIbM,A,A!Q,G,I,I,02 3XX~~>?	A 	j%..iim++Aq133T	; 	U^^B,b1U^^B.3U^^B-r2rp   r   N)r   r   r   r   rk  ro  r   r   r   s   @rm   rc  rc  /  s     983 3rp   rc  c                      a  ] tR tRt o R t]P                  P                  RRR7      ]P                  P                  RRR7      R 4       4       tRt	V t
R	# )
TestTrimMeani`  c                x   \         P                  ! . RO4      p\         P                  ! ^4      P                  ^^4      VR3,          p\         P                  ! ^4      P                  ^^RR7      VR3,          p\	        \
        P                  ! VP                  V4      R4      VP                  . RO4      4       \	        \
        P                  ! VP                  V4      R4      VP                  . RO4      4       \         P                  ! . RO4      p\         P                  ! ^4      P                  ^^4      VR3,          p\	        \
        P                  ! VP                  V4      R4      VP                  . RO4      4       . ROp\	        \
        P                  ! VP                  V4      R4      VP                  R4      4       \	        \
        P                  ! VP                  . RO4      R4      VP                  R4      4       \         P                  P                  R4      pVP                  ^RR7      pVP                  V4      pR FN  p	\
        P                  ! VRV	R7      p
\
        P                  ! VP                  Wy^ 4      R4      p\	        W4       KP  	  \
        P                  ! VRR	R7      p
\
        P                  ! \        V4      R4      p\	        W4       \        P                  ! \        R
R7      ;_uu_ 4        \
        P                  ! VR4       R	R	R	4       R	#   + '       g   i     R	# ; i)r   r   Fr  rt   rN   r/
  r  r>   NzProportion too big.r   rb  )r   rw   ry   rW   rE   r   rU  )rt   r  g      -@g     4@r  )rW   ry   r   rE   )r   r   r  r  r  r  )rJ   rP   rQ   rL   r
  rz   rZ	  rW   rw   ry   r}  rO   rY	  rI   r  r~  r  r  rE   rM   r   rR   rF   r   )rw   r   r   rW   rE   ry   )rw   rz   r   rJ   )ry   rW   rE   r   rU   )r   r   r   r]   r0   r[   	trim_meanrY   r  r  rK	  rU  r-   r   r   r   )rc   rd   idxr  r  idx4a4rJ  r  r?   r  r  s   &&          rm   test_trim_meanTestTrimMean.test_trim_meanb  s9   hh)*YYr]""1a(a0YYr]""1as"3CF;

2=

#9:	<

2=

#78	: xx%YYr]""1a(q1

2=

#@A	C%

1t<bjj>NO

3E(FM

3	) ii##J/LL,L/JJqM$D??1d6D??2;;q#:DADD' %
 q$T2x{D1#]]:-BCCOOAs# DCCCs   L((L9	r3  lazy -> no _axis_nan_policyrp  
dask.arrayc           	     ,   \         P                  ! \        R R7      ;_uu_ 4        \        \        P
                  ! VP                  . 4      R4      VP                  VP                  4      4       RRR4       \         P                  ! \        R R7      ;_uu_ 4        \        \        P
                  ! VP                  . 4      R4      VP                  VP                  4      4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)r  r   r   Nrb  )r   rC  r   r0   r[   ru  rY   rb   r  s   &&rm   rm  TestTrimMean.test_empty_input  s     \\,K@@EOOBJJrNC@"**RVVBTU A\\,K@@EOOBJJrNC@"**RVVBTU A@ A@@@@s   A
C/A
D/C?	D	r   N)r   r   r   r   ry  r   r   r   rm  r   r   r   s   @rm   rr  rr  `  sU     %$P [[!!+6S!T[[!!,7T!UV V UVrp   rr  c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	TestSigmaClipi  c                   VP                  VP                  R R^4      VP                  RR^4      34      p^p\        P                  ! V4      w  rEpVP	                  V4      V8  g   Q hVP                  V4      V8  g   Q h\        WQP                  V4      W1P                  V4      ,          ,
          4       \        WaP                  V4      W1P                  V4      ,          ,           4       VP                  VP                  8X  g   Q hR# )r  rT   r   r5  N
r  r(  r[   	sigmaclipminmaxr0   r^   r   r  rc   rd   rJ  factrj  r  upps   &&     rm   test_sigmaclip1TestSigmaClip.test_sigmaclip1  s    IIr{{3b1{{2sA.0 1ooa(vvay3vvay3WWQZ$vvay.89WWQZ$vvay.89ww!''!!!rp   c                ,   VP                  VP                  R R^4      VP                  RR^4      34      pRp\        P                  ! W#V4      w  rEpVP	                  V4      V8  g   Q hVP                  V4      V8  g   Q h\        WQP                  V4      W1P                  V4      ,          ,
          4       \        WaP                  V4      W1P                  V4      ,          ,           4       VP                  R8X  g   Q hVP                  R8X  g   Q hR# )r  rT   r   r5  r2   N)r   )$   r  r  s   &&     rm   test_sigmaclip2TestSigmaClip.test_sigmaclip2  s    IIr{{3b1{{2sA.0 1ooat4vvay3vvay3WWQZ$vvay.89WWQZ$vvay.89ww$ww%rp   c                   VP                  VP                  R R^4      VP                  RR^4      34      pRp\        P                  ! W#V4      w  rEpVP	                  V4      V8  g   Q hVP                  V4      V8  g   Q h\        WQP                  V4      W1P                  V4      ,          ,
          4       \        WaP                  V4      W1P                  V4      ,          ,           4       \        WAP                  R R^4      4       R# )r  rT   ?N      Y      I)	r  r(  r[   r  r  r  r0   r^   r   r  s   &&     rm   test_sigmaclip3TestSigmaClip.test_sigmaclip3  s    IIr{{3b1{{5$24 5ooat4vvay3vvay3WWQZ$vvay.89WWQZ$vvay.89;;sD"56rp   c                    VP                  VP                  R R^4      VP                  RR^4      34      pRp\        P                  ! W#V4      pRp\	        WEVR7       R# )r  rT   r  r  Nr  r  )clippedr  r  )r  r(  r[   r  r   )rc   rd   rJ  r  r   r?  s   &&    rm    test_sigmaclip_result_attributes.TestSigmaClip.test_sigmaclip_result_attributes  sX    IIr{{3b1{{5$24 5ooat,2
C3rp   c                v    VP                  ^
4      p\        \        P                  ! V4      ^ ,          V4       R# )rO   N)r  r0   r[   r  r   s   && rm   test_std_zeroTestSigmaClip.test_std_zero  s'    GGBK*1-q1rp   r   N)r   r   r   r   r  r  r  r  r  r   r   r   s   @rm   r  r    s#     	"
 	742 2rp   r  c            	       B  a  ] tR tRt o R t]! RRR7      ]! RRR7      ]P                  P                  R^^.. 3^^.^3^^.^.3.4      R 4       4       4       t	]P                  P                  R	4      R
 4       tR tR tR tR t]! RRR7      ]! RRR7      R 4       4       t]! RRR7      ]! RRR7      R 4       4       t]! RRR7      ]! RRR7      R 4       4       t]! RRR7      ]! RRR7      ]P                  P                  R. RO4      R 4       4       4       tRtV tR# )TestAlexanderGoverni  c                   . RO. RO. RO. RO.pV Uu. uF)  p\         P                  ! V\         P                  R7      NK+  	  ppV Uu. uF)  p\         P                  ! V\         P                  R7      NK+  	  ppV Uu. uF)  p\         P                  ! V\         P                  R7      NK+  	  ppV Uu. uF)  p\         P                  ! V\         P
                  R7      NK+  	  pp\        P                  ! V!  p\        P                  ! V!  p\        P                  ! V!  p	\        P                  ! V!  p
VP                  VP                  u;8X  d%   V	P                  u;8X  d   V
P                  8X  g   Q h Q hVP                  VP                  u;8X  d%   V	P                  u;8X  d   V
P                  8X  g   Q h Q hR# u upi u upi u upi u upi )rR   r6   N)	rR   rR   rR   rR   rR   rR   rR   rQ   rQ   )	rM   rR   rQ   rQ   rQ   rQ   rQ   rP   rP   )	rM   rM   rR   rR   rR   rR   rR   rQ   rQ   )	r~  rM   rR   rR   rR   rQ   rQ   rQ   rP   )
r   rY   r   r  r.  r   r[   alexandergovernr<  r=  )rc   rW  arg
args_int16
args_int32
args_uint8args_float64	res_int16	res_int32	res_uint8res_float64s   &          rm   test_compare_dtypes'TestAlexanderGovern.test_compare_dtypes  s   44446 BFF#bjjBHH5
FAEF#bjjBHH5
FAEF#bjjBHH5
FEIJTc

3bjj9TJ)):6	)):6	)):6	++\:  I$4$4 7  7$/$6$67 	8 7 	8 7##y':': =##='2'<'<= 	> = 	> = GFFJs   /F=/G=/G2/Gr3  z%Requires `_axis_nan_policy` decoratorrp  r|  r  c                   \        V4      pVP                  V^ ,          VR7      VP                  V^,          VR7      3p\        P                  ! \        \
        R7      ;_uu_ 4        \        P                  ! V!  pRRR4       \        XP                  VP                  VP                  4      4       \        VP                  VP                  VP                  4      4       R#   + '       g   i     Lp; i)ry   r6   r   N)r)   rY   r   rC  r   r   r[   r  r0   r=  rb   r<  )rc   r  rd   r7   r   s   &&&  rm   test_too_small_inputs)TestAlexanderGovern.test_too_small_inputs  s    
 !$zz$q'z/DG51QQ\\,4IJJ''.C Krzz"&&'9:

BJJrvv$67 KJs   (C%%C5	r	  c                ^   VP                  R R.4      VP                  VP                  VP                  .4      3p\        P                  ! V!  p\	        VP
                  VP                  VP                  4      4       \	        VP                  VP                  VP                  4      4       R# )r   r   N)rY   r!  r[   r  r0   r=  rb   r<  )rc   rd   samplesr   s   &&  rm   test_bad_inputs#TestAlexanderGovern.test_bad_inputs  sw     **b"X&

BFFBFF3C(DD##W-rzz"&&'9:

BJJrvv$67rp   c                   . RNRNRNRNRNRNRNRNRNRNRNRNRNRNR	NRNR NR
NRNRNRNRNRNR!NRNR"NR#NR$NR%NRNRNR&NRNR'NR(NR)NR*NR+NRNRNp. R,Op. R-OpVP                  V4      VP                  V4      VP                  V4      rCp\        P                  ! W#V4      p\        VP                  VP                  R4      4       \        VP
                  VP                  R4      4       R# ).a  
Data generated in R with
> set.seed(1)
> library("onewaytests")
> library("tibble")
> y <- c(rnorm(40, sd=10),
+        rnorm(30, sd=15),
+        rnorm(20, sd=20))
> x <- c(rep("one", times=40),
+        rep("two", times=30),
+        rep("eight", times=20))
> x <- factor(x)
> ag.test(y ~ x, tibble(y,x))

Alexander-Govern Test (alpha = 0.05)
-------------------------------------------------------------
data : y and x

statistic  : 1.359941
parameter  : 2
p.value    : 0.5066321

Result     : Difference is not statistically significant.
-------------------------------------------------------------
Example adapted from:
https://eval-serv2.metpsy.uni-jena.de/wiki-metheval-hp/index.php/R_FUN_Alexander-Govern

gb?g^s/@gQ\
@gIF@gpZ>q@g7D @g(Q<.@gON/@gs&@gzp"@gzl @g57@g>m@*a"@g,ZbI@gX9
]?g1@g;@gL97vp,+@g"@glA! &@go@gFQ?gsdlT6?Ng5gl"k gRh g-ѪZng	Ogҷ%6gw)ܿg789Ŀg3gg"Jbgy:@j-g2A gp/rgfT|7g^v+g٘Yg0/g)g!_5*gqTEgg1$@g	a, @gˤ$g9%gZ@gT6U'@gS g6aGn*@gO@g\\"g^4w@g0gr~5@gDP=@gٿԙg:4R/gOx]r!@gU4 gta)B@g,Gg2$@gD%?gI,VL&g@gч
;g5@gWJc@gYjK@@)gj7#@g<e,g}m(@gr2g#^9gr/P@g:RO!g'9?g6F
?gcʱ'gt*&gg~*0Ώ7@gWzx>gIK'@g?Ң@g7C5@g;C>ϯUg7@g)n}.^@rY   r[   r  r/   r=  r<  )rc   rd   r  twoeightsolns   &&    rm   test_compare_r"TestAlexanderGovern.test_compare_r  s   :"! "#5 "7I "!"#4"6H" ""3"5F" #" %6" 8I" #	" %8	" :L	"
 #"
 %9"
 ;L" !" #4" 6G" !" #4" 6H" !" #6" 8J" #" %7" 9J" !" #6" 8I" #" %8" :L" "" $7" 9K" !"	I7 **S/2::c?BJJu<M%$$Su5

3H(IJRZZ0F%GHrp   c                   . ROp. ROp. ROpVP                  V4      VP                  V4      VP                  V4      rCp\        P                  ! W#V4      p\        VP                  VP                  R4      RR7       \        VP
                  VP                  R4      RR7        \        VP                  VP                  R4      RR7       \        VP
                  VP                  R	4      RR7       R
# )z
Data taken from 'The Modification and Evaluation of the
Alexander-Govern Test in Terms of Power' by Kingsley Ochuko, T.,
Abdullah, S., Binti Zain, Z., & Soaad Syed Yahaya, S. (2015).
g]FxK@r  rD  g R8߱?r  g.UikL@>r  g&Zݱ?N)g{G&~@g(\E~@g=
ףp~@gfffff~@gp=
~@gףp=
k@gR@gQ2@g8@g`@g)\`@g=
ףp@g(\#@g@g=
ףpE@gQ@g
ףp=@gףp=
Մ@g33333#@)g=
ףpt@g{G&u@gq=
ףv@gQDy@g     X{@g\(P}@g]~@gt~@gzG~@g)\~@g1@gzG@)gGz8@g     @gp=
ב@g
ףp=@gGzԀ@gq=
ףր@gRi@g{Gt@gw@g=
ףp@gQS@gQ@g(\©@gQ-@gQ@r  )rc   rd   youngmiddleoldr  s   &&    rm   test_compare_scholar(TestAlexanderGovern.test_compare_scholar5  s    08GZZ.

60BBJJsOs$$UC8

6(:FRZZ%8tD	: 	

8(<4HRZZ
%;$Grp   c                   . R
Op. ROpVP                  V4      VP                  V4      r2\        P                  ! W#4      p\        VP                  VP                  R4      RR7       \        VP
                  VP                  R4      RR7        \        VP                  VP                  R4      RR7       \        VP
                  VP                  R4      RR7       R	# )a  
Data taken from 'Robustness And Comparative Power Of WelchAspin,
Alexander-Govern And Yuen Tests Under Non-Normality And Variance
Heteroscedasticity', by Ayed A. Almoied. 2017. Page 34-37.
https://digitalcommons.wayne.edu/cgi/viewcontent.cgi?article=2775&context=oa_dissertations
g[z4?r.  rD  gOZ}?g9$?r  r  g6MDd}?N)gQhgMOgY9gnSgdȿg}"Ogиp $?g8~4?g
p?gZ?g)J=?gX?gpG?gᛦ?gg?gh8en?g?guwg?gbX?g9SI?)gN]g	cZgAJigMg'gk,	Pg<gΈ׿g%zrKտg0BxҿgPNg:ǀgvꭁg?k~?gI\߇?gi?g<)?g0Xr?g
F%u?gsFZ*o?g7n:?r  )rc   rd   r  r  r  s   &&   rm   test_compare_scholar3)TestAlexanderGovern.test_compare_scholar3h  s    "! BBB$$R,

8(<4HRZZ%9E	8 	

9(=DIRZZ	%:Frp   c                J   VP                  . RO4      VP                  ^VP                  .4      3p\        P                  ! V!  p\	        VP
                  VP                  VP                  4      4       \	        VP                  VP                  VP                  4      4       R# )r   NrH  rY   rb   r[   r  r0   r<  r=  )rc   rd   rW  r   s   &&  rm   test_nan_policy_propagate-TestAlexanderGovern.test_nan_policy_propagate  sm    zz*+RZZBFF-DD##T*

BJJrvv$67rzz"&&'9:rp   c                    VP                  . RO4      VP                  R VP                  .4      3p\        \        RR7      ;_uu_ 4        \        P
                  ! VRR/  RRR4       R#   + '       g   i     R# ; i)r   r   r   r   r   NrH  )rY   rb   r   r   r[   r  )rc   rd   rW  s   && rm   test_nan_policy_raise)TestAlexanderGovern.test_nan_policy_raise  sZ     zz*+RZZRVV-EE:-LMM!!4<G< NMMMs   
A++A<	c                   VP                  ^^^VP                  ^.4      VP                  ^VP                  ^^.4      3pVP                  . RO4      VP                  . RO4      3p\        P                  ! VRR/ p\        P                  ! V!  p\	        VP
                  VP
                  4       \	        VP                  VP                  4       R# )rW   r   r   Nr  )rW   r  r  r  )rc   rd   args_nanargs_no_nanres_nan
res_no_nans   &&    rm   test_nan_policy_omit(TestAlexanderGovern.test_nan_policy_omit  s     ::q!Q23RZZBFFBPR@S5TTjj.

;0GG''EfE**K8

(9(9:)):+?+?@rp   c                   VP                  . RO4      pVP                  . RO4      p\        P                  ! \        RR7      ;_uu_ 4        \        P
                  ! W#4      pRRR4       \        XP                  VP                  VP                  4      4       \        VP                  VP                  VP                  4      4       R#   + '       g   i     Lp; i)rZ  r  r   Nr]  r^  )
rY   r   rC  r   r[   r  r0   r=  rb   r<  )rc   rd   r  r  r   s   &&   rm   re  'TestAlexanderGovern.test_constant_input  s     ZZ-.ZZ-.\\.0LMM''/C Nrzz"&&'9:

BJJrvv$67 NMs   C

C	r?   Nc                   \         P                  P                  R 4      pRp\        ^4       Uu. uF  qSP                  V4      NK  	  ppV Uu. uF  qqP	                  V4      NK  	  pp\
        P                  ! VRV/ p	\
        P                  ! VRV/ p
\        V
P                  VP	                  V	P                  4      4       \        V
P                  VP	                  V	P                  4      4       R# u upi u upi )l   >030 r?   N)rP   rQ   )
r   r  r  r  rY   r[   r  r/   r=  r<  )rc   rd   r?   r  r  r  r  sample
xp_samplesr  r   s   &&&        rm   test_2d_input!TestAlexanderGovern.test_2d_input  s    
 ii##$89.3Ah7h::e$h77>?wVjj(w
?##W848##Z;d;rzz#--'@A

BJJszz$:; 8?s   C5C:r   r  )r   r   r   r   r  r   r   r   r  r  r   r  r  r  r  r  r  r  re  r  r   r   r   s   @rm   r  r    s    >* k*QRl+RS[[Vq!fb\QFA;!Q!$NO8 P T S8 [[ QR8 S8BIH1Hf1Gf; k*QRl+RS= T S=
 k*QRl+RSA T SA k*QRl+RS8 T S8 k*QRl+RS[[V\2	< 3 T S	<rp   r  c            
       4  a  ] tR tRt o R t]P                  P                  R. R!O4      R 4       t]P                  P                  R. R!O4      R 4       t	R t
R tR	 tR
 t]P                  P                  R. R"O4      R 4       t]P                  P                  R4      ]P                  P                  R]P"                  ! . R#O4      ]P"                  ! . R$O4      ]P$                  R33]P"                  ! . R#O4      ]P"                  ! . R#O4      ]P&                  ]P&                  33.4      R 4       4       t]P                  P+                  RRR7      ]P                  P+                  RRR7      ]P                  P                  R. R%O4      R 4       4       4       t]P                  P+                  RRR7      ]P                  P+                  RRR7      R 4       4       tR t]P                  P+                  RRR7      ]P                  P+                  RRR7      R 4       4       tR t]P                  P+                  RRR7      ]P                  P+                  RRR7      ]P                  P                  RR . R&O3.4      R 4       4       4       t]P                  P+                  RRR7      ]P                  P+                  RRR7      R 4       4       t]P                  P+                  RRR7      ]P                  P+                  RRR7      R 4       4       tR tV tR# )'TestFOneWayi  c                    \         P                  ! VP                  ^ ^.4      VP                  ^ ^.4      4      w  r#\        W!P                  R4      4       \        W1P                  R4      4       R# )ry   r   r   Nr[   f_onewayrY   r0   rc   rd   rt  rd  s   &&  rm   test_trivialTestFOneWay.test_trivial  sN    ~~bjj!Q0"**aV2DE::c?+::c?+rp   r7   Nc                   \        V4      '       d/   VP                  R 8  d   VR8X  d   \        P                  ! R4       Vf   RM
\	        W!4      p\
        P                  ! VP                  ^ ^.VR7      VP                  ^^.VR7      4      w  r4\        W2P                  RVR7      4       \        WBP                  RVR7      4       R# )r  r   r  Nr6   r   gf3þ?)
r'   r  r   r  ri  r[   r  rY   r0   r/   )rc   r7   rd   rt  rd  s   &&&  rm   rW  TestFOneWay.test_basic  s     B<<BNNU2ui7GKKBC72+=~~bjj!Quj= jj!Quj=?::c:78::l%:@Arp   c                   \        V4      '       d/   VP                  R 8  d   VR8X  d   \        P                  ! R4       Vf   RM
\	        W!4      pVP                  . R	OVR7      VP                  . R
OVR7      VP                  . ROVR7      .p\        P                  ! VRR/ w  rE\        WBP                  RVR7      4       \        WRP                  RVR7      4       R# )r  r   r  Nr6   r	  FgM;yQ?gWe?g(\5IgHz'D@gףp=
2g
ףp=A@g333333g)\(?gq=
ףp7@rA   g333333.@gRQ#@gzG'@rc  g=
ףp#@gGz."@gp=
ף
@)	r'   r  r   r  ri  rY   r[   r  r/   )rc   r7   rd   r  rt  rd  s   &&&   rm   test_unequal_varTestFOneWay.test_unequal_var  s     B<<BNNU2ui7GKKBC72+=::HPU:V::6e:D::>e:LN ~~w8%8& 	::&7u:EF::&7u:EFrp   c                (   VP                  . RO4      VP                  . RO4      VP                  . RO4      .pRp\        P                  ! \        VR7      ;_uu_ 4        \        P
                  ! VRR/  RRR4       R#   + '       g   i     R# ; i)	g(\5I@z(Expected a boolean value for 'equal_var'r   r	  FalseNr  r  r  rY   r   r   r/  r[   r  )rc   rd   r  r  s   &&  rm   test_equal_var_input_validation+TestFOneWay.test_equal_var_input_validation  si    ::HI::67::>?A =]]9G44NNG7w7 5444s   B  B	c                   \         P                  ! VP                  ^.4      VP                  ^.4      VP                  . RO4      4      w  r#\        W!P                  R4      4       \        W1P                  R4      4       R# )rE   Nr  rb  r  )r[   r  rY   r/   r  s   &&  rm   test_known_exactTestFOneWay.test_known_exact  sX     ~~bjj!orzz1# jj35::c?+::c?+rp   c                    VP                  R R.VP                  R7      pVP                  RR.VP                  R7      p\        P                  ! W#4      w  rE\	        WAP                  R4      4       R# )    r6       gŸ?N)rY   uint16r[   r  r/   )rc   rd   rJ  rV  rt  rd  s   &&    rm   test_large_integer_array$TestFOneWay.test_large_integer_array  sZ    JJSzJ3JJSzJ3~~a# 	::&9:;rp   c                    VP                  R R.VP                  R7      pVP                  RR.VP                  R7      p\        P                  ! W#4      pRp\	        WEVR7       R# )r  r  r6   r  r  r  Nr  )rY   r  r[   r  r   )rc   rd   rJ  rV  r   r?  s   &&    rm   test_result_attributes"TestFOneWay.test_result_attributes  sS    JJSzJ3JJSzJ3nnQ",
C3rp   	test_casec                   VR ,           pRp\         P                  P                  \         P                  P                  \         P                  P	                  \
        4      RV4      4      p\        V4      ;_uu_ 4       pVP                  4       P                  R4      pRRR4       XR,           Uu. uF+  pVP                  4       '       g   K  VP                  4       NK-  	  p	p\        P                  ! V^<R7      p
V
P                  w  rVP                  \        4      p\        P                  ! V4      p\!        V	^ ,          R
,          4      pV Uu. uF  qP#                  WV8H  ,          4      NK  	  pp\$        P&                  ! V!  pRpVV9   d   Rp\)        V^ ,          VP#                  WbP*                  R7      VR	7       R#   + '       g   i     EL1; iu upi u upi )z.datr  zdata/nist_anova
N:r  rD  N)skiprowsr  r6   r  rU   )SmLs07SmLs08SmLs09)ospathabspathjoindirname__file__openreadsplitstripr   loadtxtr   r  rF  uniquer  rY   r[   r  r/   r   )rc   r  rd   filenamer  fnamerY  contentline	certifieddatafrg   rf   catyr  xlistr   hard_tcs   &&&               rm   	test_nistTestFOneWay.test_nist"  s[    v%RWW__X-F->!J K%[[AffhnnT*G .5en &nd

 "TZZ\n	 &

52.wwHHSMyy|)A,r"#0451A1fI&5nne$ 1DA

1JJ
 ?dK% [[& 6s   > G1GG"GG	r   za, b, expectedr   c                    \         P                  ! VP                  V4      VP                  V4      4      w  rV\        WTP                  V^ ,          4      4       \        WdP                  V^,          4      4       R# ry   Nr  )rc   rJ  rV  r  rd   rY  rd  s   &&&&&  rm   re  TestFOneWay.test_constant_input@  sP     ~~bjjmRZZ];::hqk23::hqk23rp   r3  r{  rp  r|  r?   c                   \         P                  ! . RO. RO. RO. RO. RO.\         P                  R7      p\         P                  ! . RO. R	O. R
O. RO. RO. RO. RO. RO.\         P                  R7      p\         P                  ! . RO. RO. RO. RO.\         P                  R7      pVR9   d(   VP                  pVP                  pVP                  p^ pM^p\        P
                  ! VP                  V4      VP                  V4      VP                  V4      VR7      w  rxR F  p	\        P
                  ! \         P                  ! W9V4      \         P                  ! WIV4      \         P                  ! WYV4      4      w  r\        Wy,          VP                  V
4      4       \        W,          VP                  V4      4       K  	  R F  p	\        P
                  ! \         P                  ! W9V4      \         P                  ! WIV4      \         P                  ! WYV4      4      w  r\        Wy,          VP                  V
4      4       \        W,          VP                  V4      4       K  	  R# )rW   r6   r>   N)rW   r   r   r   )rE   rw   r   r   )r   rz   r   r   r-  )r   rW   rw   r   )r   rz   rw   r   )r   r   rw   r   )rW   rw   rw   r   )rw   rw   rw   r   )rE   r   rw   r   )rF   rE   rw   r   )rE   rE   rw   r   )r   r   r   r   )r   rE   r   r   )rw   r   r   r   rU   rW   rV  rW  )	r   r   r   r   r[   r  rY   taker/   )rc   r?   rd   rJ  rV  rj  	take_axisrY  rd  r  fjpjs   &&&         rm   test_2d_inputsTestFOneWay.test_2d_inputsK  s    HHl""""	$ ,.::	7
 HHl"""""""$ ,.::7 HHl"""$ ,.::7
 7?AAAII~~bjjmRZZ]BJJqM#')
 A^^BGGA)$<$&GGA)$<$&GGA)$<>FB AD"**R.1AD"**R.1  A^^BGGA)$<$&GGA)$<$&GGA)$<>FB AD"**R.1AD"**R.1 rp   c           
     *   VP                  ^VP                  RRVP                  R7      ,          R4      pVP                  ^VP                  RRVP                  R7      ,          R	4      pVP                  ^VP                  RR
VP                  R7      ,          R4      pVP                  V4      p\        P
                  ! W#V^R7      w  rVVP                  R8X  g   Q hVP                  R8X  g   Q h\        VP                  ^ ,          4       F  p\        VP                  ^,          4       F^  p\        P
                  ! W'RV3,          W7RV3,          WGRV3,          4      w  r\        WWx3,          4       \        WWx3,          4       K`  	  K  	  R# )rW   r   r6   r>   r   Ng     a@)r   rw   rJ   g      l@)r   rF   rJ   g     @\@)r   r   rJ   )r   rJ   )	r]   r   r   cosr[   r  r  r  r/   )rc   rd   rJ  rV  rj  rY  rd  r  r  fijpijs   &&         rm   test_3d_inputsTestFOneWay.test_3d_inputs{  s7    JJq3
"**EEyQJJq3
"**EEyQJJq3
"**EEyQFF1I~~aAA.ww&   ww&   qwwqz"A1771:& >>!q!G*a1aj!q!G*MqtW-qtW- ' #rp   c           
        \        \        \        VR 7      ;_uu_ 4        \        P                  ! VP                  . RO4      VP                  . 4      VP                  . RO4      4      p\        VP                  VP                  VP                  4      4       \        VP                  VP                  VP                  4      4       RRR4       R#   + '       g   i     R# ; i)r\  Nr  )r   r8   r   r   )
r%   r   r   r[   r  rY   r0   r=  rb   r<  )rc   rd   r  s   && rm   test_length0_1d_error!TestFOneWay.test_length0_1d_error  s    +3HRPP^^BJJ|$<bjjn$&JJ/?$@BFF,,bjj.@AFMM2::bff+=>	 QPPPs   B(CC"	c                   \        \        \        VR 7      ;_uu_ 4        ^pVP                  ^V34      pVP                  ^ V34      pVP                  ^V34      p\        P
                  ! W4V4      w  rgVP                  V3VP                  R7      p\        Wh4       \        Wx4       RRR4       R#   + '       g   i     R# ; i)r\  r  N)	r%   r   r   r  r[   r  r~   rb   r0   )	rc   rd   ncolsrJ  rV  rj  rY  rd  r  s	   &&       rm   test_length0_2d_error!TestFOneWay.test_length0_2d_error  s     +3HRPPEE
#AE
#AE
#A>>!*DA77E877DA$A$ QPPPs   B	B22C	c                   VP                  ^
.4      VP                  ^.4      VP                  ^.4      VP                  ^.4      3p\        \        VR7      ;_uu_ 4        \        P                  ! V!  p\        VP                  VP                  VP                  4      4       \        VP                  VP                  VP                  4      4       RRR4       R#   + '       g   i     R# ; i)rO   r  N)	rY   r%   r   r[   r  r0   r=  rb   r<  )rc   rd   r  r  s   &&  rm   test_all_length_oneTestFOneWay.test_all_length_one  s    **bT"BJJt$4bjj"6F

TVSWHXX+33^^W-FF,,bjj.@AFMM2::bff+=> 4333s    A3CC.	zlazy->reduced input validationrW  c                    V Uu. uF  q2P                  V4      NK  	  ppR p\        P                  ! \        VR7      ;_uu_ 4        \        P
                  ! V!   RRR4       R# u upi   + '       g   i     R# ; i)z$At least two samples are required...r   Nr  )rc   rW  rd   r  r  s   &&&  rm   test_too_few_inputsTestFOneWay.test_too_few_inputs  sW     ,004C

3408]]9G44NND! 54 1444s   A%A**A;	c                    VP                  R4      pVP                  R4      p\        P                  ! \        4      ;_uu_ 4        \        P
                  ! W#^R7       RRR4       R#   + '       g   i     R# ; ir   r>   Nr  )rw   r   )r  r   r   r"   r[   r  rc   rd   rJ  rV  s   &&  rm   test_axis_errorTestFOneWay.test_axis_error  sJ     GGFOGGFO]]9%%NN1a( &%%%r  c                    VP                  R4      pVP                  R4      p\        P                  ! \        4      ;_uu_ 4        \        P
                  ! W#^R7       RRR4       R#   + '       g   i     R# ; ir8  )r  r   r   r   r[   r  r9  s   &&  rm   test_bad_shapesTestFOneWay.test_bad_shapes  sJ     GGFOGGFO]]:&&NN1a( '&&&r  r   r  )SiRstvSmLs01SmLs02SmLs03AtmWtAgSmLs04SmLs05SmLs06r  r   r  )r  r  r  r
  )rM  rU   ry   rW   r  ) r   r   r   r   r  r   r   r  rW  r  r  r  r  r  r  r   r   r   r!  rb   re  r   r"  r(  r+  r/  r2  r5  r:  r=  r   r   r   s   @rm   r  r    s    , [[W&BC	B D	B [[W&BCG DG>8,<4 [[[	12L2L6 [[)[[-	,	)!4rvvrlC	,	,!7"&&"&&9IJ0
 4	 *
4 [[!!+6S!T[[!!,7T!U[[V^4+2 5 V U+2Z [[!!+6S!T[[!!,7T!U. V U.$? [[!!+6S!T[[!!,7T!U	% V U	%? [[!!+6V!W[[!!,7W!X[[Vb9,%78" 9 Y X" [[!!+6V!W[[!!,7W!X) Y X) [[!!+6V!W[[!!,7W!X) Y X)rp   r  c                     a  ] tR tRt o R tR t]P                  P                  R. RO4      R 4       t	R t
R tR	 t]P                  P                  R
RR7      R 4       t]P                  P                  R
RR7      R 4       tR tR tRtV tR# )TestKruskali  c                    \         P                  ! ^.^.4      w  r\        VR4       \        V\         P                  P                  V^4      4       R# )rW   r   N)r[   kruskalr   r
   r  r  )rc   hrd  s   &  rm   test_array_likeTestKruskal.test_array_like  s;    }}aS1#&Q5::==A./rp   c           	     <   VP                  ^.4      pVP                  ^.4      p\        P                  ! W#4      w  rE\        WAP                  R4      4       \	        V4      p\        WQP                  \        P
                  P                  ^^4      VR7      4       R# )rW   r   r6   N)rY   r[   rJ  r/   r)   r  r  )rc   rd   rf   rg   rK  rd  r7   s   &&     rm   test_simpleTestKruskal.test_simple  sn    JJsOJJsO}}Q"::c?+ $::ejjmmAq&9:GHrp   r7   Nc           	        VR 8X  d,   \         P                  R8  d   \        P                  ! R4       Vf   \	        V4      M
\        W4      pVP                  . ROVR7      pVP                  . ROVR7      p\        P                  ! W44      w  rV\        WQP                  RVR7      4       \        WaP                  \        P                  P                  R^4      VR7      4       R# )r   2z*Scalar dtypes only respected after NEP 50.Nr6   )rW   r   rw   rJ   rI   )rE   r   rz   rF   rO   rg  )r   r  r   r  r)   ri  rY   r[   rJ  r/   r  r  )rc   rd   r7   rf   rg   rK  rd  s   &&&    rm   rW  TestKruskal.test_basic  s    I"..3"6KKDE(- $72;MJJeJ4JJ'uJ5}}Q"::d%:89::ejjmmD!&<E:JKrp   c                .   ^.p^^.p\         P                  ! VP                  V4      VP                  V4      4      w  rERpRpVP                  Wg,          4      p\        WH4       \	        V\
        P                  ! VP                  R4      V4      4       R# )rW   r  r   NrJ  )r[   rJ  rY   r0   r/   r   chdtrc	rc   rd   rf   rg   rK  rd  h_uncorrr  r  s	   &&       rm   test_simple_tieTestKruskal.test_simple_tie  su    CF}}RZZ]BJJqM:*::ho. 	$7>>"**R.(CDrp   c                ^   . ROp. ROp\         P                  ! VP                  V4      VP                  V4      4      w  rERp^\        ^4      R,          ,
          pVP                  Wg,          4      p\	        WH4       \	        V\
        P                  ! VP                  R4      V4      4       R# )rW   r   N)rW   rW   rW   rE   )rE   rE   rE   rE   r     r[   rJ  rY   r  r/   r   rU  rV  s	   &&       rm   test_another_tieTestKruskal.test_another_tie  s}    }}RZZ]BJJqM:>5,-::::ho.$7>>"**R.(CDrp   c                   . ROp. ROp^^.p\         P                  ! VP                  V4      VP                  V4      VP                  V4      4      w  rVRp^\        ^4      R,          ,
          pVP                  Wx,          4      p	\	        WY4       \	        V\
        P                  ! VP                  R4      V	4      4       R# )rW   r   Nr  rA  r8   r[  r\  )
rc   rd   rf   rg   r5  rK  rd  rW  r  r  s
   &&        rm   test_three_groupsTestKruskal.test_three_groups  s    F}}RZZ]BJJqM2::a=IG5,-::::ho.$7>>"**R.(CDrp   r3  r{  rp  c                   VP                  . RO4      pVP                  . RO4      pVP                  . VP                  R7      p\        P                  ! \        \
        R7      ;_uu_ 4        \        P                  ! W#V4      pRRR4       \        XP                  VP                  VP                  4      4       \        VP                  VP                  VP                  4      4       R#   + '       g   i     Lp; i)rW   r6   r   Nr  rA  )rY   r7   r   rC  r   r   r[   rJ  r0   r=  rb   r<  )rc   rd   rf   rg   r5  r   s   &&    rm   r  TestKruskal.test_empty  s     JJy!JJy!JJrJ)\\,4IJJ--a(C Krzz"&&'9:

BJJrvv$67 KJs   ,C,,C<	c                T   VP                  R 4      pVP                  V^	&   \        P                  ! W"4      p\	        VP
                  VP                  VP                  4      4       \	        VP                  VP                  VP                  4      4       \        P                  ! W"RR7      p\	        VP
                  VP                  R4      4       \	        VP                  VP                  R4      4       \        P                  ! \        RR7      ;_uu_ 4        \        P                  ! W"RR7       RRR4       \        P                  ! \        R	R7      ;_uu_ 4        \        P                  ! W"R
R7       RRR4       R#   + '       g   i     LW; i  + '       g   i     R# ; i)r   r   r   r   r   r   r   r   Nr   r   )r   rb   r[   rJ  r0   r=  rY   r<  r   r   r   r   s   &&  rm   r  TestKruskal.test_nan_policy  s   IIcNvv!mmA!rzz"&&'9:

BJJrvv$67mmAV4rzz#7

BJJsO4]]:-LMMMM!73 N ]]:-KLLMM!84 ML NM MLLs   F FF	F'	c                R   R p\         P                  P                  R4      pVP                  VP	                  V4      4      pVP                  VP	                  V4      ^2,           4      p\
        P                  ! WE4      w  rg\        WqP                  RVP                  R7      4       R# )rC
  ykr   r6   N)	r   r  r  rY   r  r[   rJ  r/   r7   )rc   rd   r  r  rf   rg   rK  rd  s   &&      rm   test_large_samplesTestKruskal.test_large_samples%  s{    ii##J/JJs**1-.JJs**1-23}}Q"::b:89rp   c                    R p\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! 4        RRR4       R#   + '       g   i     R# ; i)z-Need at least two groups in stats.kruskal\(\)r   N)r   r   r   r[   rJ  r  s   && rm   test_no_args_gh20661 TestKruskal.test_no_args_gh20661.  s0    B]]:W55MMO 6555s   AA	r   )r   r   N)r   r   r   r   rL  rO  r   r   r  rW  rX  r]  r`  r   r  r  rh  rk  r   r   r   s   @rm   rH  rH    s     0
I [[W&BCL DLE
EE [[!!+6S!T8 U8 [[!!+6S!T5 U5$: rp   rH  c                     a  ] tR tRt o ]P
                  P                  R. RO4      R 4       t]P
                  P                  R. RORR3. RORR3.4      R	 4       t. ROt	]P
                  P                  R
. RO4      ]P
                  P                  R]	4      R 4       4       t
]P
                  P                  R]	4      R 4       t]P
                  P                  R]	4      ]P
                  P                  R. RO4      R 4       4       tRtV tR# )TestCombinePvaluesi4  z+method, expected_statistic, expected_pvaluev!:@/?c                    . ROp\         P                  ! VP                  V4      VR7      p\        VP                  VP                  V4      4       \        VP
                  VP                  V4      4       R# r  r  Nr  r'  rG  )r[   combine_pvaluesrY   r/   r=  r<  )rc   rd   r  r  r  rf   r   s   &&&&&  rm   test_reference_values(TestCombinePvalues.test_reference_values>  sR     ##BJJqM&Arzz2D'EF

BJJ$?@rp   z,weights, expected_statistic, expected_pvaluega;?grmT?c                   VP                  . RO4      p\        P                  ! VRVP                  V4      R7      p\        VP                  VP                  V4      4       \        VP
                  VP                  V4      4       R# )r  stouffer)r  ri
  Nrs  )rY   r[   rt  r/   r=  r<  )rc   rd   ri
  r  r  rf   r   s   &&&&&  rm   test_weighted_stouffer)TestCombinePvalues.test_weighted_stoufferL  s^     JJ}%##Aj"**WBUVrzz2D'EF

BJJ$?@rp   rr  r  c                P   ^
^rT\         P                  P                  R4      pVR8X  dp   VP                  VP	                  VP                  V4      4      WE34      pVP                  VP                  VP                  RRV4      R4      VR,          .^R7      pMrVR8X  d0   VP                  VP                  RRV4      WT34      P                  pM<VR	8X  d6   VP                  VP	                  VP                  ^ ^WE3R
7      4      ^ R7      pTP	                  \        XP                  ^ ,          4       Uu. uF3  p\        \        P                  ! WxR3,          VR7      ^,          4      NK5  	  up4      p	VP!                  V	R,          V	RR ,
          ^ 8  4      '       g   Q hR# u upi )rO   l	   TrU(	"b-= singlerD  rF  r   r  r>   r  r  r  r  NrU   r  )r   r  )r   r  r  rT  rY   r  r]   r(  r   rh  r  r  r  r  r[   rt  r  )
rc   rr  r  rd   r  r  r  pvaluessr  combined_pvaluess
   &&&&      rm   test_monotonicity$TestCombinePvalues.test_monotonicity^  st    11ii##$KL hrzz#**Q-'@1&IHyy"**R[[c1-Ew"O"*5/"39: ! <Hr{{3Q'?!HJJH wwrzz#++a!+*HIPQwRH::8>>!,-'
- %''AvFqIJ-'
  vv&r*-=cr-BBaGHHHH	'
s   49F#c                    \         P                  ! VP                  . RO4      VR7      p\        VP                  V^ ,          4       \        VP
                  V^,          4       R# rr  )r[   rt  rY   r0   r=  r<  )rc   r  rd   r   s   &&& rm   rQ  TestCombinePvalues.test_resultx  sA    ##BJJ}$=fMs1v.

CF+rp   r?   Nc                   \         P                  P                  R 4      pVP                  VP                  RR7      4      pV^ 8X  d   VP                  MTp\
        P                  ! WRVR7      pVfl   VP                  VR4      p\
        P                  ! WQR7      p\        VP                  VP                  4       \        VP                  VP                  4       R# V^ 8X  d   VP                  MTpVR,          VR,          r\
        P                  ! WR7      p
\
        P                  ! WR7      p\        VP                  ^ ,          V
P                  4       \        VP                  ^,          VP                  4       \        VP                  ^ ,          V
P                  4       \        VP                  ^,          VP                  4       R# )	l   2'$FV r  )r?   r  Nr  r;
  r  rz  r{  )r   r  r  rY   r   r[   rt  r]   r/   r=  r<  )rc   r  r?   rd   r  rf   r   r  r  r  ref0r  s   &&&&        rm   r  TestCombinePvalues.test_axis~  s:    ii##O4JJszzwz/0AIACCA##A@<

1e$A''9CCMM3==9CJJ

3AIACCA4!D'B$$R7$$R7a($..9a($..9

1t{{3

1t{{3rp   r   ))r  g'"x-@g({#H?)rx  ro  rp  )r  gQ4gF?)tippettr  gL^i?)mudholkar_georgegzP@guKqN?r   r   r   )r   r   r   )r  r  r  rx  r  )r|  r  r  r  )r   r   r   r   r   r   r  ru  ry  r  r  rQ  r  r   r   r   s   @rm   rn  rn  4  s*     [[5	GHAHA [[ 	7
)+>	?
)+=	>	@	AA	AA OG[[Y(CD[[Xw/I 0 EI0 [[Xw/, 0,
 [[Xw/[[V\24 3 04rp   rn  c                   B   a  ] tR tRt o RtR tR tR tR tR t	Rt
V tR	# )
TestCdfDistanceValidationi  z[
Test that _cdf_distance() (via wasserstein_distance()) raises ValueErrors
for bad inputs.
c           	         \        \        \        P                  ^.^.^.^^.4       \        \        \        P                  ^.^.^^ .4       R# r	  r   r   r[   wasserstein_distancert  s   &rm   &test_distinct_value_and_weight_lengths@TestCdfDistanceValidation.test_distinct_value_and_weight_lengths  sG     	j%"<"<cA3aV	-j%"<"<qcA3AOrp   c                    \        \        \        P                  ^ ^.^.^ ^ .4       \        \        \        P                  ^ ^.^.^^.^ .4       R# r  r  rt  s   &rm   test_zero_weight*TestCdfDistanceValidation.test_zero_weight  sN     	j%"<"<!fqcAq6	+j%"<"<!fqcAq6A3	0rp   c           	     Z    \        \        \        P                  ^ ^.^^.^^.^R.4       R# )ry   NrU   r  rt  s   &rm   test_negative_weights/TestCdfDistanceValidation.test_negative_weights  s-    j%"<"<!fq!fq!fq"g	7rp   c                    \        \        \        P                  . ^^.4       \        \        \        P                  ^.. 4       R# r  r  rt  s   &rm   test_empty_distribution1TestCdfDistanceValidation.test_empty_distribution  s2     	j%"<"<b1a&Ij%"<"<qc2Frp   c           	     x    \        \        \        P                  . RO^^.^\        P
                  ^.^^.4       R# r}  )r   r   r[   r  r   r!  rt  s   &rm   test_inf_weight)TestCdfDistanceValidation.test_inf_weight  s0    j%"<"<!Q!RVVQ!Q	Arp   r   N)r   r   r   r   r5  r  r  r  r  r  r   r   r   s   @rm   r  r    s,     
P07
GA Arp   r  c                     a  ] tR tRt o RtR t]P                  P                  RR4      ]P                  P                  RR4      ]P                  P                  RR4      R 4       4       4       t	]P                  P                  RR4      ]P                  P                  R	R4      ]P                  P                  RR4      R
 4       4       4       t
]P                  P                  RR4      ]P                  P                  R	R4      ]P                  P                  RR4      R 4       4       4       tR t]P                  P                  RR4      ]P                  P                  R	R4      ]P                  P                  RR4      R 4       4       4       t]P                  P                  RR4      ]P                  P                  R	R4      ]P                  P                  RR 4      R 4       4       4       tR t]P                  P                  R. R!O4      ]P                  P                  R. R!O4      R 4       4       tRtV tR# )"TestWassersteinDistanceNDi  z7Tests for wasserstein_distance_nd() output values.
    c                &   . ROp. ROp\         P                  ! W4      p\        P                  ! . RO4      p\        P                  ! . RO4      p\        P                  ! WE,          4      \        P                  ! V4      ,          p\        W64       R# )rW   N)r  r  r  r  r  r  r  r  r  r  r  rz   rW   r  )r  r  rP  rP  rP  rw   rW   r  r  r  r  r  r  )rJ   rW   )r   r   r8   r   r   r   )r   gw@r   rj  r   r   )r[   wasserstein_distance_ndr   r   r^  r
   )rc   r
  r  r   flowdistr  s   &      rm   test_published_values/TestWassersteinDistanceND.test_published_values  sg    
"" ++A1 xx01xx@AffT[!"&&,.!rp   n_valuer  max_repeatsc                F   \         P                  P                  R 4      pVP                  ^W2\        R7      pVP                  W!3R7      p\         P
                  ! We^ R7      pVP                  \         P                  ! V4      4      p\         P
                  ! \         P                  ! \        V4      4      V4      p	\         P                  ! WR7      p
VP                  \        V4      4      pW{,          W,          r\        P                  ! WgW4      p\        V^ RR7       R# )l   na{F.aP	 )r  r7   r  r>   r
  rC  rD  N)r   r  r  rK	  rF  r  r^  r   r  bincountr  r[   r  r
   )rc   r  r  r  r  repeatsu_valuesv_values	v_weightsrange_repeat	u_weightsr	  r   s   &&&&         rm   test_same_distribution_nD3TestWassersteinDistanceND.test_same_distribution_nD  s     ii##$<=,,q+3,G::G?:399XQ7JJrvvg/	yy3w<!8'BKK@	I/&oy/?)++H	UQU+rp   nunvc                   \         P                  P                  R 4      pVP                  W3R7      p\         P                  ! W#34      pVP                  VR7      pVP                  VR7      p\         P                  ! \         P
                  P                  V^R7      VR7      p	\        P                  ! WVWx4      p
\        W4       R# )   }&=:! r  r>   r
  N)
r   r  r  rY  r	  r)  rX  r[   r  r
   )rc   r  r  r  r  r  r  r  r  r  r   s   &&&&       rm   test_collapse_nD*TestWassersteinDistanceND.test_collapse_nD  s     ii##$89::B::.88RJ'JJBJ'	JJBJ'	jjq99M++H	U!rp   c                (   \         P                  P                  R 4      pVP                  W3R7      pVP                  W#3R7      pVP                  VR7      pVP                  VR7      p\        P                  ! WVWx4      p	VP                  ^ V^R7      w  rVP                  W3R7      p\         P                  ! WZV^ R7      p\         P                  ! Wz\         P                  ! V4      ^ R7      p\        P                  ! WVWx4      p\        W4       R# )r  r  r>   N)	r   r  r  r[   r  rK	  insertrY  r
   )rc   r  r  r  r  r  r  r  r  r  add_rownrows	add_valuer   s   &&&&          rm   test_zero_weight_nD-TestWassersteinDistanceND.test_zero_weight_nD  s    
 ii##$89::B::.::B::.JJBJ'	JJBJ'	++H	Ua!4JJUMJ2	99X	BIIi"((5/J	++H	U!rp   c                   ^^.^^..\         P                  \         P                  ) ..^^.r2p\        P                  ! WV4      p\	        V\         P                  4       \         P
                  ! RR7      ;_uu_ 4        \         P                  \         P                  ..\         P                  \         P                  ) ..r!\        P                  ! W4      p\	        V\         P                  4       RRR4       R#   + '       g   i     R# ; i)rW   r   rp  N)r   r!  r[   r  r   rr  rb   )rc   uvvvuwdistances   &    rm   test_inf_values)TestWassersteinDistanceND.test_inf_values   s     !fq!f%"&&(9':QF00<Xrvv&[[**vvrvv&'266BFF7*;)<44R<H266* +***s   >A3C;;D	c                   \         P                  P                  R 4      pVP                  W3R7      pVP                  W#3R7      pVP                  VR7      pVP                  VR7      p\        P                  ! WVWx4      p	VP                  ^ V4      p
VP                  4       p\         P                  ! WZV^R7      p\         P                  ! WjV^R7      p\        P                  ! WVWx4      p\        W4       R# )l   Lq/ r  r>   N)r   r  r  r[   r  rK	  r  r
   )rc   r  r  r  r  r  r  r  r  r  add_dimr  r   s   &&&&         rm   test_multi_dim_nD+TestWassersteinDistanceND.test_multi_dim_nD   s    
 ii##$78::B::.::B::.JJBJ'	JJBJ'	++H	U,,q$'JJL	99X	B99X	B++H	U!rp   c                   \         P                  P                  R 4      pVP                  W3R7      pVP                  W#3R7      pVP                  VR7      pVP                  VR7      p\        P                  ! WVWx4      p	\        P
                  ! V4      p
V
P                  VR7      pVP                  VR7      p\        P                  ! W[,          V,           Wk,          V,           Wx4      p\        W4       R# )l   uAh~r  r  N)r   r  r  r[   r  ortho_groupr  r
   )rc   r  r  r  r  r  r  r  r  r  r  	transformshiftr   s   &&&&          rm   test_orthogonal_nD,TestWassersteinDistanceND.test_orthogonal_nD+   s     ii##N3::B::.::B::.JJBJ'	JJBJ'	++H	U  &HH#H.	


%++H,@5,H)1)=)E)2? 	!rp   c                "   \         P                  P                  R 4      p\        P                  ! \
        RR7      ;_uu_ 4        VP                  RR7      pVP                  RR7      p\        P                  ! W#4      pRRR4       \        P                  ! \
        RR7      ;_uu_ 4        VP                  R	R7      pVP                  R
R7      p\        P                  ! W#4      pRRR4       \        P                  ! \
        RR7      ;_uu_ 4        VP                  RR7      pVP                  RR7      p\        P                  ! W#4      pRRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)l   e36^[Y{lz Invalid input values. The inputsr   r  Nz Invalid input values. Dimensionsz(Invalid input values. If two-dimensional)r   rO   r~  )rz   rE   rJ   )r~  )r   r~  r;
  rR  )r   r  r  r   r   r   r[   r  )rc   r  r  r  r   s   &    rm   test_error_code)TestWassersteinDistanceND.test_error_code@   s   ii##$>?]]:-OPPzz{z3Hzzyz1H--hAA Q ]]:-OPPzzuz-Hzzwz/H--hAA Q ]]:<> >zzwz/Hzzvz.H--hAA	> > QP QP> > >s$   ;E+;E*;E=E'	*E:	=F	u_sizev_sizec                   \         P                  P                  R 4      pVP                  V^3R7      pVP                  V^3R7      pVP                  4       pVP                  4       p\        P
                  ! Wg4      p\        P                  ! WE4      p	\        P                  ! Wg4      p
\        W4       \        W4       VP                  VR7      pVP                  VR7      p\        P
                  ! WgW4      p\        P                  ! WEW4      p	\        P                  ! WgW4      p
\        W4       \        W4       R# )l   Ku@* r  N)r   r  r  r  r[   r  r  r
   )rc   r  r  r  r  r  u_values_flatv_values_flatd1d2d3r  r  s   &&&          rm   test_optimization_vs_analytical9TestWassersteinDistanceND.test_optimization_vs_analyticalP   s	    ii##K0::FA;:/::FA;:/ ( ( ''E**8>**=HJJFJ+	JJFJ+	''(1>**8(1>**=(1>rp   r   N)r   r~  r  )r   r   rJ   r  )rF   rI   &   )rF   rQ   rY	  )r   rw   r  )rF   r
  r>  )rW   rE   rz   )rO   r~  r  )rW   r   rw   )rJ   rR   r  )rE   r   rJ   )rW   rO   r  )r   r   r   r   r5  r  r   r   r  r  r  r  r  r  r  r  r  r   r   r   s   @rm   r  r    s    "& [[Y4[[VY/[[]G4, 5 0 5," [[T:.[[T;/[[VZ0" 1 0 /" [[T;/[[T;/[[VY/" 0 0 0" 	+ [[T<0[[T<0[[VY/" 0 1 1"" [[T;/[[T;/[[VY/" 0 0 0"$B  [[X{3[[X{3  4 4 rp   r  c                   N   a  ] tR tRt o RtR tR tR tR tR t	R t
R	 tR
tV tR# )TestWassersteinDistanceim   z4Tests for wasserstein_distance() output values.
    c                F   \        \        P                  ! ^ ^.^ .^^.^.4      R4       \        \        P                  ! ^ ^.^ .^^.^.4      R4       \        \        P                  ! ^ ^.^ .^^.^.4      ^4       \        \        P                  ! . RO. RO4      ^4       R# )ry   r1   rA  Nr  r  r
   r[   r  rt  s   &rm   rO  #TestWassersteinDistance.test_simpleq   s     	&&1vsQFQC@	 	22FQC!Q!&	 	22FQC!Q!&	 	22y"	rp   c           	         \        \        P                  ! . RO. RO4      ^ 4       \        \        P                  ! . RO^^.. RO^^.4      ^ 4       R# rW   Nr  r  )rW   rW   rW   r   rU  )r   r[   r  rt  s   &rm   test_same_distribution.TestWassersteinDistance.test_same_distribution   sE     	U//	9EqI&&|aV'3aV=	rp   c           	     2   \        \        P                  ! ^ .^.4      ^4       \        \        P                  ! R.^.4      ^
4       \        \        P                  ! . RO. RO4      ^
4       \        \        P                  ! . RO. RO. RO. R	O4      R4       R# )
ry   rt   Nr  r  )rP   rQ   rR   rM   r~  )rA   g@rZ
  )rW
  rJ   r  )r   rW   rW   )rW   r   rW   r  rt  s   &rm   
test_shift"TestWassersteinDistance.test_shift   sz     	22A3<a@22B4!=rB&&8LM	 	&&'0)=	rp   c           
         \        \        P                  ! . RO. RO. RO. RO4      \        P                  ! . RO. RO. RO. RO4      4       R# ry   N)ry   ry   rW   rW   rW   rW   rw   )ry   r   r   r   r   r   r   )rW   rW   rW   rW   rW   rW   rW   )rw   ry   rW   )ry   r   r   rW   rE   r   r  rt  s   &rm   test_combine_weights,TestWassersteinDistance.test_combine_weights   s?     	&&%'<%'<> &&y)'0)=		>rp   c                   \         P                  ! R^R4      p\         P                  ! V4      p\        \        P
                  ! W4      \         P                  ! \         P                  ! V4      4      4       \         P                  ! \        V4      4      pVRRR1,          p\        \        P
                  ! WW44      \         P                  ! \         P                  ! V4      VR7      4       R# )rO   rG  Nr
  r  rU   )
r   r   r  r
   r[   r  r^   r  r  r	  )rc   r
  r  r  r  s   &    rm   test_collapse%TestWassersteinDistance.test_collapse   s     IIc2s#MM!&&q,GGBFF1I	  IIc!f%	ddO	&&qYBJJrvvay)4	6rp   c           
         \        \        P                  ! . RO^^.. RO^^.4      \        P                  ! ^^.^^.^^.^^.4      4       R# rW   N)rW   rE   rQ  r	  r  rt  s   &rm   r  (TestWassersteinDistance.test_zero_weight   sN    &&~1v'01a&:&&1v1v1v1vF	Hrp   c           	        \        \        P                  ! ^^\        P                  .^^.4      \        P                  4       \        \        P                  ! ^^\        P                  .\        P                  ) ^.4      \        P                  4       \        \        P                  ! ^\        P                  ) \        P                  .^^.4      \        P                  4       \
        P                  ! \        RR7      ;_uu_ 4        \        \        P                  ! ^^\        P                  .\        P                  ^.4      \        P                  4       RRR4       R#   + '       g   i     R# ; irW   r   r   N)	r   r[   r  r   r!  r   rC  r   rb   rt  s   &rm   r  'TestWassersteinDistance.test_inf_values   s     	&&1bff~1v>FF	 	&&1bff~|DFF	 	&&BFF7BFF';aVDFF	 \\.@@**Aq"&&>BFFA;G A@@@   	AE$$E5	r   N)r   r   r   r   r5  rO  r  r  r  r  r  r  r   r   r   s   @rm   r  r  m   s3      >6 H rp   r  c                   H   a  ] tR tRt o RtR tR tR tR tR t	R t
R	tV tR
# )TestEnergyDistancei   z/Tests for energy_distance() output values.
    c                   \        \        P                  ! ^ ^.^ .^^.^.4      \        P                  ! ^4      R,          4       \        \        P                  ! ^ ^.^ .^^.^.4      \        P                  ! ^4      R,          4       \        \        P                  ! ^ ^.^ .^^.^.4      R4       \        \        P                  ! . RO. RO4      \        P                  ! ^4      R,          4       R# )ry   r1   rA  r   Nr  r  ri  r   r[   energy_distancer   rG  rt  s   &rm   rO  TestEnergyDistance.test_simple   s     	!!1a&1#1vs;GGAJO	 	E11FQC!Q!&GGAJ	 	E11FQC!Q!&	 	!!)Y7GGAJ**	,rp   c           	         \        \        P                  ! . RO. RO4      ^ 4       \        \        P                  ! . RO^^.. RO^^.4      ^ 4       R# r  )r   r[   r  rt  s   &rm   r  )TestEnergyDistance.test_same_distribution   sB     	U**9i@!D!!,Aq!fM	rp   c                    \        \        P                  ! ^ .^.4      \        P                  ! ^4      4       \        \        P                  ! R.^.4      \        P                  ! ^4      R,          4       R# )ry   Nr  gS[:XL	@r  rt  s   &rm   r  TestEnergyDistance.test_shift   sS     	E111#s;RWWQZH!!2$,GGAJ	!rp   c           
         \        \        P                  ! . RO. RO. RO. RO4      \        P                  ! . RO. RO. RO. RO4      4       R# r  r   r[   r  rt  s   &rm   r  'TestEnergyDistance.test_combine_weights   s<     	!!"79N"79NP!!)Y	9M	Orp   c           
         \        \        P                  ! . RO^^.. RO^^.4      \        P                  ! ^^.^^.^^.^^.4      4       R# r  r  rt  s   &rm   r  #TestEnergyDistance.test_zero_weight   sK    !!.1a&)aVL!!1a&1a&1a&1a&A	Crp   c           	        \        \        P                  ! ^^\        P                  .^^.4      \        P                  4       \        \        P                  ! ^^\        P                  .\        P                  ) ^.4      \        P                  4       \        \        P                  ! ^\        P                  ) \        P                  .^^.4      \        P                  4       \
        P                  ! \        RR7      ;_uu_ 4        \        \        P                  ! ^^\        P                  .\        P                  ^.4      \        P                  4       RRR4       R#   + '       g   i     R# ; ir  )	r   r[   r  r   r!  r   rC  r   rb   rt  s   &rm   r  "TestEnergyDistance.test_inf_values   s     	U**Aq"&&>Aq6BBFFK!!1a.BFF7A,?FF	 	!!1rvvgrvv"6A?FF	 \\.@@%%q!RVVnrvvqkB A@@@r  r   N)r   r   r   r   r5  rO  r  r  r  r  r  r   r   r   s   @rm   r  r     s/     , !OC rp   r  c            	         a  ] tR tRt o . ROt. ROtR tR tR tR t	R t
R t]P                  P                  RR	. /R
. /R
. R	. /.4      R 4       tR tR tR t]P                  P                  RRR.4      R 4       tR tRtV tR# )TestBrunnerMunzeli!  c                   VP                  V P                  4      VP                  V P                  4      r2\        P                  ! W#R R7      w  rE\        P                  ! W2RR7      w  rg\        P                  ! W#RR7      w  r\        P                  ! W2R R7      w  r\        WW4       \        W4       WY8w  g   Q h\        WAP                  R4      4       \        WaP                  R4      4       \        WP                  R4      4       \        WP                  R4      4       \        WQP                  R4      4       \        WP                  R4      4       R# )r  r  r  |	&	@gҏGg?g@-pL?N|	&	rY   rZ   Yr[   brunnermunzelr/   )rc   rd   rZ   r  u1r  u2r	  u3r	  u4p4s   &&          rm   test_brunnermunzel_one_sided.TestBrunnerMunzel.test_brunnermunzel_one_sided!  s    zz$&&!2::dff#51$$Qv>$$QyA$$QyA$$Qv>xxJJ'9:;JJ':;<JJ'9:;JJ':;<JJ'<=>JJ':;<rp   c                   VP                  V P                  4      VP                  V P                  4      r2\        P                  ! W#R R7      w  rE\        P                  ! W2R R7      w  rg\        WQP                  V4      4       \        WAP                  R4      4       \        WaP                  R4      4       \        WQP                  R4      4       R# )r  r  r   ҏGw?Nr  r  rc   rd   rZ   r  r  r  r  r	  s   &&      rm   test_brunnermunzel_two_sided.TestBrunnerMunzel.test_brunnermunzel_two_sided%!  s    zz$&&!2::dff#51$$Q{C$$Q{CJJrN+JJ'9:;JJ':;<JJ'<=>rp   c                   VP                  V P                  4      VP                  V P                  4      r2\        P                  ! W#4      w  rE\        P                  ! W24      w  rg\        WW4       \        WAP                  R 4      4       \        WaP                  R4      4       \        WQP                  R4      4       R# )r  r  Nr  r  r  s   &&      rm   test_brunnermunzel_default,TestBrunnerMunzel.test_brunnermunzel_default0!  s    zz$&&!2::dff#51$$Q*$$Q*JJ'9:;JJ':;<JJ'<=>rp   c           	     @   R pRpRpVR9  g   Q hRp\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! VP                  V P                  4      VP                  V P                  4      W#V4       RRR4       R#   + '       g   i     R# ; i)r
  r*  r  r6  r   N)r  r  r  r   r   r   r[   r  rY   rZ   r  rc   rd   r  distributionr   r  s   &&    rm   $test_brunnermunzel_alternative_error6TestBrunnerMunzel.test_brunnermunzel_alternative_error;!  sw     
"BBBBL]]:W55

466 2BJJtvv4F +:G 6555   ABB	c                   VP                  V P                  4      VP                  V P                  4      r2\        P                  ! W#R R7      w  rE\        P                  ! W2R R7      w  rg\        WQP                  V4      4       \        WAP                  R4      4       \        WaP                  R4      4       \        WQP                  R4      4       R# )r  r$  r  g "H[?Nr  r  r  s   &&      rm   $test_brunnermunzel_distribution_norm6TestBrunnerMunzel.test_brunnermunzel_distribution_normE!  s    zz$&&!2::dff#51$$QA$$QAJJrN+JJ'9:;JJ':;<JJ'<=>rp   c           	     @   R pRpRpVR9  g   Q hRp\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! VP                  V P                  4      VP                  V P                  4      W#V4       RRR4       R#   + '       g   i     R# ; i)r  r
  r  z&distribution should be 't' or 'normal'r   N)r*  r  r"  r#  s   &&    rm   %test_brunnermunzel_distribution_error7TestBrunnerMunzel.test_brunnermunzel_distribution_errorN!  sv    ! 
?222:]]:W55

466 2BJJtvv4F +:G 6555r'  kwarg_updaterg   rf   c                   R V P                   RV P                  /pVP                  V4       VP                  4        UUu/ uF!  w  rEWBP	                  V\        V4      R7      bK#  	  ppp\        \        \        VR7      ;_uu_ 4        \        P                  ! R/ VB w  rgRRR4       \        XVP	                  VP                  4      4       \        XVP	                  VP                  4      4       R# u uppi   + '       g   i     Lb; i)rf   rg   r6   r\  Nr   )rZ   r  updateitemsrY   r)   r%   r   r   r[   r  r0   rb   )rc   r/  rd   rX  keyvalr=  r<  s   &&&     rm   test_brunnermunzel_empty_imput0TestBrunnerMunzel.test_brunnermunzel_empty_imputX!  s     tvvsDFF+l#"(,,.2"0hc jj,<R,@jAA"0 	 2+3HRPP % 3 3 =f =I Q	2::bff#56

266 232PPs   'C4C::D
	c                   VP                  ^^^^^^^^^^^^^^VP                  .4      pVP                  . RO4      p\        P                  ! W#RR7      w  rE\        P                  ! W2RR7      w  rg\	        WAP                  VP                  4      4       \	        WQP                  VP                  4      4       \	        WaP                  VP                  4      4       \	        WqP                  VP                  4      4       R# )rW   r  r   Nr   r   r   r   rW   rE   r   rW   rW   rw   r   )rY   rb   r[   r  r0   r  s   &&      rm   &test_brunnermunzel_nan_input_propagate8TestBrunnerMunzel.test_brunnermunzel_nan_input_propagated!  s    JJ1aAq!Q1aAq"&&IJJJ9:$$QkB$$QkBJJrvv./JJrvv./JJrvv./JJrvv./rp   c                   VP                  ^^^^^^^^^^^^^^VP                  .4      pVP                  . RO4      pRpRpRpRp\        P                  ! \        VR7      ;_uu_ 4        \
        P                  ! W#WEV4       RRR4       \        P                  ! \        VR7      ;_uu_ 4        \
        P                  ! W2WEV4       RRR4       R#   + '       g   i     LW; i  + '       g   i     R# ; i)rW   r  r*  r   r   r   Nr8  )rY   rb   r   r   r   r[   r  )rc   rd   rZ   r  r  r$  r   r  s   &&      rm   "test_brunnermunzel_nan_input_raise4TestBrunnerMunzel.test_brunnermunzel_nan_input_raiseo!  s    JJ1aAq!Q1aAq"&&IJJJ9:!
1]]:W55kL 6]]:W55kL 65 65555s   *C/C%C"	%C6	c                   VP                  ^^^^^^^^^^^^^^\        P                  .4      pVP                  . RO4      p\        P                  ! W#RR7      w  rE\        P                  ! W2RR7      w  rg\        WW4       \        WAP                  R4      4       \        WaP                  R4      4       \        WQP                  R4      4       R# )rW   r   r   r  r  Nr8  r  )rY   r   rb   r[   r  r/   r  s   &&      rm   !test_brunnermunzel_nan_input_omit3TestBrunnerMunzel.test_brunnermunzel_nan_input_omit|!  s    JJ1aAq!Q1aAq"&&IJJJ9:$$Qf=$$Qf=JJ'9:;JJ':;<JJ'<=>rp   vectorized_callFTc                r   VP                  . RO4      pVP                  . RO4      pV'       d9   VP                  W334      P                  pVP                  WD34      P                  pRp\        \        WRR7      ;_uu_ 4        \
        P                  ! W4RR7       RRR4       R#   + '       g   i     R# ; i)zktests that a warning is emitted when p is nan
p-value with t-distributions can be nan (0/0) (see gh-15843)
zDp-value cannot be estimated|divide by zero|invalid value encounteredr\  r*  r)  Nr  r8   r   r   r   r   )rY   r  r   r%   r   r[   r  )rc   rA  rd   rf   rg   r   s   &&&   rm   test_brunnermunzel_return_nan/TestBrunnerMunzel.test_brunnermunzel_return_nan!  s    
 JJ|$JJ+,! ""A! ""ATs::37 ;:::s   B%%B6	c                (   VP                  . RO4      pVP                  . RO4      p\        \        RVR7      ;_uu_ 4        \        P                  ! W#RR7      w  rERRR4       \        XVP                  R4      4       R#   + '       g   i     L-; i)	z^tests that a p is 0 for datasets that cause p->nan
when t-distribution is used (see gh-15843)
zdivide by zeror\  r  r)  Nr   r  rC  )rY   r%   r   r[   r  r0   )rc   rd   rf   rg   r   rd  s   &&    rm   test_brunnermunzel_normal_dist0TestBrunnerMunzel.test_brunnermunzel_normal_dist!  sg     JJ|$JJ+,/?BGG&&q(CDA H2::b>* HGs   BB	r   N)rW   rE   rW   rW   rW   rW   rW   rW   rW   rW   rE   r   rW   rW   )r   r   r   r   rW   rE   r   rW   rW   rw   r   )r   r   r   r   rZ   r  r  r  r  r%  r*  r-  r   r   r  r5  r9  r<  r?  rD  rG  r   r   r   s   @rm   r  r  !  s      	3A)A=&	?	?G?G [[^sBi#r/2BR.@.B C4C4	0M	? [[.>8 ?8	+ 	+rp   r  c                     a  ] tR tRt o RtR t]P                  P                  R. RO. RORR]	P                  ) RR	.R
RR]	P                  R..4      R 4       t]P                  P                  R. RO. RO.4      R 4       t]P                  P                  RRR.4      ]P                  P                  RR	R.4      ]P                  P                  RRR.4      R 4       4       4       tR tRtV tR# )TestQuantileTesti!  zYTest the non-parametric quantile test,
including the computation of confidence intervals
c                   . ROpRp\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! V.4       RRR4       Rp\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! V^^.R7       RRR4       Rp\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! VRR.R	7       RRR4       \         P                  ! \        VR7      ;_uu_ 4        \        P                  ! V^R	7       RRR4       \         P                  ! \        VR7      ;_uu_ 4        \        P                  ! VRR	7       RRR4       R
p\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! VRR7       RRR4       Rp\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! V4      P                  ^4       RRR4       R#   + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL`; i  + '       g   i     EL/; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)rW   z/`x` must be a one-dimensional array of numbers.r   Nz`q` must be a scalar.)rW  z-`p` must be a float strictly between 0 and 1.r1   r  )rd  z`alternative` must be one of...z	one-sidedr  rF  r  rx  )r   r   r   r[   quantile_testr  )rc   rf   r  s   &  rm   test_quantile_test_iv&TestQuantileTest.test_quantile_test_iv!  s   C]]:W55$ 6 *]]:W55aV, 6 B]]:W55c4[1 6]]:W55Q' 6]]:W55T* 6 4]]:W55{; 6 I]]:W55"66q9 65) 655 655 65555555 65 655sS   H1H:H,I II'&I:H	H)	,H=	 I	I$	'I7	:J	zp, alpha, lb, ub, alternativerD  rF  rA  g{gA?r  rh  gg @r  c                    \         P                  ! \         P                  ! ^ RR4      4      p\        P                  ! WaVR7      p\        VP                  V4      W4.RR7       R# )ry   r  r  )rd  r  rC  r  N)r   r  r   r[   rL  r
   r  )rc   rd  rI  lbubr  rf   r   s   &&&&&&  rm   test_R_ci_quantile#TestQuantileTest.test_R_ci_quantile!  sJ      FF299Qd+,!!!kB//6uMrp   zq, p, alternative, refc                    \         P                  ! \         P                  ! ^ RR4      4      p\        P                  ! WQW#R7      p\        VP                  VRR7       R# )ry   r  r  rW  rd  r  r  r  N)r   r  r   r[   rL  r
   r<  )rc   rW  rd  r  r  rf   r   s   &&&&&  rm   test_R_pvalueTestQuantileTest.test_R_pvalue!  sA     FF299Qd+,!!!AG

Ce4rp   r  
continuousdiscreter  rI  c                   \        ^\        V4      ,          \        V4      ,           V,          4      p\        P                  P	                  V4      pVR8X  d(   VP                  ^R7      w  rgVP                  ^dR7      pM6VP                  ^^^dR7      pVP                  4       pVP                  ^^4      p\        P                  ! WWbR7      p	V	P                  VR7      p
VR8X  d   WP                  8*  pMWP                  8  pW,           F5  p\        P                  ! WWbR7      p	V	P                  ^V,
          8  d   K5  Q h	  W( ,           F5  p\        P                  ! WWbR7      p	V	P                  ^V,
          8  d   K5  Q h	  R# )rJ   rX  r  rU  r@  r  N)rF  r  r   r  r  rK	  r[   rL  r  r  r  r<  )rc   r  r  rI  r  r  rd  rW  r  r   r  i_insiderf   s   &&&&         rm   test_pval_ci_match#TestQuantileTest.test_pval_ci_match!  sG    As4yL3{#33U:;ii##D)<::1:%DA**#*&C,,q"3,/C

AQ#A!!#aI$$e$< & gg~Hff}HA%%c!MC::E	)))  YA%%c!MC::E	)))  rp   c                \   . ROpRp\         P                  ! V^RRR7      p\        VP                  VRR7       ^;.^,          ^=.^h,          ,           p\         P                  ! R^pR7      P                  ^R	7      p\         P                  ! V^<RR
R7      p\        VP                  VRR7       R# )   geX?r  r  rU  r.  r  r1   )rd  r  r  r  r  rD  N)r_                                   r3        )r[   rL  r
   r<  binomr_  )rc   rf   pvalue_expectedr   s   &   rm   test_match_conover_examples,TestQuantileTest.test_match_conover_examples"  s     !!!sdL

O$? DFbT5\!++s377!7<!!!rSiH

O%@rp   r   N)rG  rD  gX݊?g蜶?r  )r1   rF  g-tA?gP"?r  )r  rG  r  gͯI	?)r  r1   r  gɍQ%e?)r   r   r   r   r5  rM  r   r   r  r   r!  rR  rV  r\  ro  r   r   r   s   @rm   rJ  rJ  !  s    :6 [['	G	F
rvvg/	8
s%rvvy	9	;NN [[ 	2	1	3
5
5 [[VlJ%?@[[]VY,?@[[WsDk2$* 3 A A$*LA Arp   rJ  c                      a  ] tR tRt o R t]P                  P                  R4      t]P                  R(4      t	]P                  P                  R4      t]P                  R)4      t
RRRR]	3RR	RR]
3R
RRR. R*O. R+O. R,O.3RRRR. R-O. R.O. R/O.3RRRR. R0O. R0O. R0O. R0O. R0O. R0O. R0O. R0O. R1O. R2O. R2O. R2O. R2O. R2O.3^RRR. R3O. R3O. R3O. R3O. R3O. R3O. R3O. R3O. R3O. R3O. R3O. R3O. R3O. R4O. R5O. R5O. R5O. R5O. R5O. R5O. R5O.3^RRR. R6O. R6O. R7O.3RRRR. R8O. R8O. R8O. R8O. R8O. R8O. R9O. R:O. R:O. R:O.
3^RRR. R3O. R3O. R3O. R3O. R3O. R3O. R3O. R3O. R3O. R3O. R3O. R3O. R4O. R5O. R5O. R5O. R5O. R5O. R5O.3RRRR. R;O. R;O. R<O. R=O.3^uRRR. R3O. R3O. R3O. R3O. R3O. R3O. R3O. R3O. R3O. R4O. R5O.3.t]P                  P                  R]4      R 4       tRRRR. R>O. R?O.3RRRR. R>O. R>O. R>O. R@O. RAO.3R R!RR. RBO. RBO. RBO. RBO. RBO. RBO. RBO. RBO. RBO. RCO. RDO. RDO. RDO. RDO. RDO.3.t]P                  P                  R]4      ]P                  P#                  4       R" 4       4       tR# tR$ tR% tR&tV tR'# )ETestPageTrendTesti."  c                N    \         P                  P                  R 4      V n        R# )rg  Nrs  rt  s   &rm   ru  TestPageTrendTest.setup_method/"  s    99((4rp   l   /*s i2  g<n?Fr  iu  gRn@?i,0  gY@?i
  gXY?r  iL  gs˜?TgĞ?g>K=?i  gqူ?ga?i  g;?g[^6?zL, p, ranked, method, datac                    \         P                  ! WSVR 7      p\        WP                  4       \	        W&P
                  4       \        WFP                  4       R# )rankedr  Nr[   page_trend_testr   r=  r
   r<  r  rc   Lrd  rw  r  r  r   s   &&&&&& rm   test_accuracyTestPageTrendTest.test_accuracyq"  s8    ##DGQ&::&VZZ(rp   i  g-lpW?i*  gh[?i  g&]2?c                    \         P                  ! WSVR 7      p\        WP                  4       \	        W&P
                  4       \        WFP                  4       R# rv  rx  rz  s   &&&&&& rm   test_accuracy2 TestPageTrendTest.test_accuracy2"  s:     ##DGQ&::&VZZ(rp   c                ,   \         P                  P                  R 4      p^
^r2\         P                  ! ^V^,           4      pVP	                  \         P                  ! V4      4      pVP                  W#34      p\
        P                  ! V^R7      p\
        P                  ! V4      p\
        P                  ! VRR7      p	\
        P                  ! VRR7      p
\
        P                  ! WtR7      p\
        P                  ! VRV3,          WE,          R7      p\        VP                  V	P                  4       \        VP                  V
P                  4       \        VP                  VP                  4       \        VP                  VP                  4       R# )i7
r>   Trw  F)predicted_ranksr   N)
r   r  r  r   r  r[   rankdatary  r   r=  )rc   r  r  r  r  permr  ranksr  r  r  res4res5s   &            rm   test_optionsTestPageTrendTest.test_options"  s   ii##I.21))Aqs+ryy|,zz1&!t!,$$U+$$U48$$T%8$$UL$$U1d7^5D5JLT^^T^^4T^^T^^4T^^T^^4T^^T^^4rp   c                   . R
O. RO. RO. RO. RO. RO.p\         P                  ! V4      P                  p\         P                  ! ^^4      p\        P
                  ! VRVRR7      p\        VP                  R4       \        VP                  R^R7       \        P
                  ! VRVRR7      p\        VP                  R4       \        VP                  R^R7       R	# )rZ  Fr  )rw  r  r  i  gy&1l?rJ  r  gHPsb?N)rZ  u   o   )r?  r-  k   )g      y   )r7        )         )   r
  t   )
r   r   r   r   r[   ry  r   r=  r   r<  )rc   r  r  r   s   &   rm   test_Ames_assay!TestPageTrendTest.test_Ames_assay"  s    /Cxx~))Aq/##D4C+79 	S]]C(CJJ:##D4C+24 	S]]C(CJJ:rp   c                ,
   \        \        R R7      ;_uu_ 4        \        P                  ! R4       RRR4       \        \        R R7      ;_uu_ 4        \        P                  ! . 4       RRR4       \        \        R R7      ;_uu_ 4        \        P                  ! ^^.4       RRR4       \        \        R R7      ;_uu_ 4        \        P                  ! ^...4       RRR4       \        P
                  P                  R4      p\        \        RR7      ;_uu_ 4        \        P                  ! VP                  R4      4       RRR4       \        \        RR7      ;_uu_ 4        \        P                  ! VP                  R4      4       RRR4       Rp\        \        VR7      ;_uu_ 4        \        P                  ! . RO. RO.. ROR7       RRR4       \        \        VR7      ;_uu_ 4        \        P                  ! . RO. RO.. ROR7       RRR4       \        \        VR7      ;_uu_ 4        \        P                  ! . RO. RO.. ROR7       RRR4       \        \        VR7      ;_uu_ 4        \        P                  ! . RO. RO.RR7       RRR4       \        \        RR7      ;_uu_ 4        \        P                  ! . RO. RO.R	4       RRR4       \        \        RR7      ;_uu_ 4        \        P                  ! . RO. RO.R	4       RRR4       \        \        R
R7      ;_uu_ 4        \        P                  ! . RO^^\        P                  ..RR7       RRR4       \        \        RR7      ;_uu_ 4        \        P                  ! . RO. RO.RR7       RRR4       \        \        RR7      ;_uu_ 4        \        P                  ! . RO. RO.RR7       RRR4       R#   + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     ELx; i  + '       g   i     ELQ; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     ELn; i  + '       g   i     EL@; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     ELW; i  + '       g   i     R# ; i)z`data` must be a 2d array.r   Nl   s' zPage's L is only appropriatez+`predicted_ranks` must include each integer)r  r  rq  z`data` is not properly rankedTz`data` contains NaNsFr  z`method` must be inekki)r  r  z`ranked` must be boolean.)r  rw  rQ  rR  r  r  )r=  rE   r   )rW   rE   r   r   )ry   rE   r   r  )	r   r   r[   ry  r   r  r  rb   r/  )rc   r  r  s   &  rm   r  'TestPageTrendTest.test_input_validation"  sS   :-IJJ!!$' K:-IJJ!!"% K:-IJJ!!1a&) K:-IJJ!!QC5'* K ii##J/:-KLL!!#**V"45 M:-KLL!!#**V"45 M @:W55!!	9'=2;= 6 :W55!!	9'=2=? 6 :W55!!	9'=2>@ 6 :W55!!	9'=2;= 6
 :-LMM!!9i"8$? N:-LMM!!9i"8$? N :-CDD!!9q!RVVn"=).0 E :-BCC!!	9'=)/1 D 9,GHH!!	9'=)/1 IHY KJJJJJJJJJJJ
 MLLLLL
 655 655 655 655
 NMMMMM EDD DCC IHHs   O*O>
PP&&P:%&Q.!Q"0!Q62!R
4R4R23S2.SS.T*O;	>P	P#	&P7	:Q	Q	"Q3	6R	
R	R/	2S	S	S+	.S?	T	r  N)r   r  )rO      )rB  r@  I   r  r@  `   r  ;   r
  r  r>  1   r=  +   rq  r@     r  rC  r  rK   r  r`     r  )D   4   r[  "   rX	  r  A   X   rL   r=  rD     r  C   E   ^   r  r  r  W   rq  r  r  r  r  )r=  rR   U   r  O   rQ   \   V   rL   @   r
  r  r  rY	  r
  Y   rM  r  r  r  6   rR   B   3   r  )r2   r   g @rw   r  rP   )rw   r   r  rO   r  rL   )r  rX
  rO   rQ   rM   r~  )r   r   rE   rW   )r   r   rW   rE   r  )r   rE   rW   r  r  )rz   rw   r   r   rE   rW   )rW   r   r   rw   rE   rz   )rw   r   r   rE   rW   )r   rW   r   rE   rw   r  )rJ   rz   rw   r   r   rE   rW   )rz   rw   rJ   r   r   rE   rW   r  )
rO   rI   rF   rJ   rz   rw   r   r   rE   rW   )
rW   rF   r   rJ   rz   rw   rI   r   rE   rO   )
rI   rE   rF   rJ   rz   rw   r   r   rO   rW   r`  )rF   rJ   rz   rw   r   r   rE   rW   )rW   r   rw   rz   r   rJ   rE   rF   r  )r   r   r   r   ru  r   r  r  r  	data_3_25
data_10_26tsr   r   r  r|  ts2r  r  r  r  r  r   r   r   s   @rm   rr  rr  ."  s    5" ))



+C

7#I
))



+CH%J .%y
A/5,

C$e\===	>? %ug%#&() "D',l,l,l,()
 "D'y)Y	9y)Y	9y)Y	9y)-.
 "D' 24FGI"D'_o_o_o
 "D'y)Y	9y)Y	9y)Y	9
 !4!#8!#8:; "D'y)Y	9y)Y	CDO*
BX [[92>) ?) #T7,,./ $dG,.M,.M,./ $dG%'?%'?%'?%'?%'?%'?%'?%'(C( [[93?[[)  @)5$;&01 01rp   rr  iv5z	fun, argsc           	         V ! VR R/ pV ! VRR/ p\        W#4       V P                   R2p\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        V ! VR RRR/  RRR4       R#   + '       g   i     R# ; i)r  r  r  z#() got multiple values for argumentr   N)r   r   r   r   r/  reescape)r  rW  r   r  errs   &&   rm   test_rename_mode_methodr  "  su     t
$G
$C#7#Dll^>
?C	y		#	7	7T0'00 
8	7	7	7s   #A88B		c                   
  a  ] tR tRt o R tR tR tR t]P                  P                  R. RO4      ]P                  P                  R^R.4      R	 4       4       t]P                  P                  R^R.4      R
 4       tRtV tR# )TestExpectilei#  c                    \         P                  P                  ^*4      pVP                  ^R7      p\        \        P
                  ! VRR7      \         P                  ! V4      4       R# )r  r  r1   rI  N)r   r  r  r
   r[   	expectiler^   rc   r  rf   s   &  rm   test_same_as_meanTestExpectile.test_same_as_mean#  sC    ii##B'JJBJ5rwwqzBrp   c                    \         P                  P                  ^*4      pVP                  ^R7      p\        \        P
                  ! V^ R7      \         P                  ! V4      4       R# r  r  r  N)r   r  r  r
   r[   r  aminr  s   &  rm   test_minimumTestExpectile.test_minimum#  C    ii##B'JJBJ3RWWQZ@rp   c                    \         P                  P                  ^*4      pVP                  ^R7      p\        \        P
                  ! V^R7      \         P                  ! V4      4       R# r  )r   r  r  r
   r[   r  amaxr  s   &  rm   test_maximumTestExpectile.test_maximum#  r  rp   c                  a	 \         P                  P                  R 4      pR o	V	3R lp^
pVP                  V4      pVP                  4       pVP                  V4      p\        P                  ! WEVR7      pV! WEV4      p\        Wx4       R# )l   b@lN c                     \         P                  ! WR 7      p^V,
          WAV 8*  &   \         P                  ! WC,          W,
          ^,          ,          4      # )r  )r   r  r^  )r
  rJ  rI  ri
  r  s   &&&& rm   r  'TestExpectile.test_weights.<locals>.fun#  s;    Q1AE	A1fI66!+
233rp   c                    < \         P                  ! V 4      \         P                  ! V 4      3p\        P                  ! SVWV3R 7      P
                  # ))bracketrW  )r   r  r  r   minimize_scalarrf   )rJ  rI  ri
  r  r  s   &&& rm   
expectile2.TestExpectile.test_weights.<locals>.expectile2#  sC    ffQi*G++C23G1DFFGaHrp   r
  N)r   r  r  r[   r  r
   )
rc   r  r  r  rJ  rI  ri
  r   r  r  s
   &        @rm   test_weightsTestExpectile.test_weights#  su    
 ii##$78	4
	H
 JJqM

**Q-ooa87+!rp   rI  r  r<  c                   \         P                  P                  ^*4      pVP                  VR7      pR
 F:  p\	        \
        P                  ! \         P                  ! W%R7      VR7      V4       K<  	  VP                  4       p\	        \
        P                  ! WE,           VR7      \
        P                  ! WAR7      V,           4       \	        \
        P                  ! WE,
          VR7      \
        P                  ! WAR7      V,
          4       \	        \
        P                  ! WT,          VR7      V\
        P                  ! WAR7      ,          4       VP                  V^
R7      pVR8X  d   R pMVR8  d   R pMR pV! \
        P                  ! \         P                  WF,           ,          VR7      \
        P                  ! WAR7      \
        P                  ! WaR7      ,           4       VP                  V^R7      p\
        P                  ! WAR7      \
        P                  ! WaR7      8:  g   Q hVP                  V^
R7      pR F  pV! \
        P                  ! ^V,
          V,          WV,          ,           VR7      ^V,
          \
        P                  ! WAR7      ,          V\
        P                  ! WaR7      ,          ,           4       K  	  \	        \
        P                  ! V) VR7      \
        P                  ! V^V,
          R7      ) 4       R	# )ub  
See Section 6 of
I. Steinwart, C. Pasin, R.C. Williamson & S. Zhang (2014).
"Elicitation and Identification of Properties". COLT.
http://proceedings.mlr.press/v35/steinwart14.html

and

Propositions 5, 6, 7 of
F. Bellini, B. Klar, and A. Müller and E. Rosazza Gianin (2013).
"Generalized Quantiles as Risk Measures"
http://doi.org/10.2139/ssrn.2225751
r  r1   )r  r	  r  r  c                     \        W4       R # r  )r
   rJ  rV  s   &&rm   	assert_op:TestExpectile.test_expectile_properties.<locals>.assert_ope#  s
    %rp   c                     W8  g   Q hR # r  r   r  s   &&rm   r  r  i#      uurp   c                     W8  g   Q hR # r  r   r  s   &&rm   r  r  m#  r  rp   N)r  ry   r1   )rD  r1   rh  )r   r  r  r  r
   r[   r  r~   exponentiallogisticr_)rc   rI  r  r  rf   rj  rg   r  s   &&&     rm   test_expectile_properties'TestExpectile.test_expectile_properties,#  s'   $ ii##B'JJAJ
 Aa >eL  OOOOAE/OOA+a/	
 	OOAE/OOA+a/	
 	OOAE///	
 LLaRL(C<& S[ 	OOBEE!%L6OOA+ooa-.	
 JJA1J%OOA+uq/NN	
N LLaRL( A1a!#U;177EOOA334 ! 	OOQBe,__Qag..	
rp   c                   \         P                  P                  ^*4      pVP                  ^VR7      p. p\         P                  ! R\         P
                  ! R4      ^d4      p\         P                  ^ V^VRRR1,          ,
          ^3,           F)  pVP                  \        P                  ! W6R7      4       K+  	  \         P                  ! \         P                  ! V4      ^ 8  4      '       g   Q hR# )r  )rJ  r  r1   Nr  r  rU   )r   r  r  paretologspacelog10r  rI  r[   r  r  diff)rc   r  r  rf   e_list	alpha_seqrI  s   &&     rm   test_monotonicity_in_alpha(TestExpectile.test_monotonicity_in_alpha#  s    ii##B'JJJ#KKRXXc]C8	UU1iYv2v->)>ABBEMM%//!9: Cvvbggfo)****rp   r   N)r'  g?r1   g/#    ?rh  )r   r   r   r   r  r  r  r  r   r   r  r  r  r   r   r   s   @rm   r  r  #  s     C
A
A
"4 [[: [[S2t*-_
 ._
B [[S2t*-+ .+rp   r  c            	         a  ] tR tRt o . RNRNRNRNRNRNRNRNRNR	NR
NRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNR NR!NR"NR#NR$NR%NR&NR'NR(NRNR)NRNR*NR+NR,NR-NR.NR/NR0NR1NR'NR2NR3NR(NR4NR-NR5NR6NR7NR8NR9NR:NR;NR<NR=NR>NRNR4NR?NRNR@NRANR;NRNRBNRCNR3NRDNRENR	NRNRFNRGNRHNRINRNRNRJNRKNRENRLNRMNR%NRDNRNRNNRONRPNRKNR6NRQNRNRRNRSNRTNRUNRNRVNRNRWNRXNRNR)NR#NRYNRZNRNR[NtR. RnO]P                  ]P                  .tR\ t	]
R] 4       t]P                  P                  R^]^ Ro. . RpO..,           4      R_ 4       t]P                  P                  R`]4      Ra 4       t]P                  P                  Rb]4      Rc 4       t]P                  P                  Rd]4      Re 4       t]P                  P                  R^^^. RqO.4      ]P                  P                  RdRfRg.4      ]P                  P                  RhRfRg.4      Ri 4       4       4       tRj t]P                  P                  R`^ ^.4      Rk 4       tRltV tRm# )rTestLMomenti#  gףp=
?gp=
ף?r2   r[
  r"  r1   r   r  rY
  g{Gz?g@g(\?gףp=
?g
ףp=
?g)\(?gRQ @r  g{Gz?gffffff @r  g{Gz@gRQ?gGz@gQ?g(\?gzG?g
ףp=
?gQ?gffffff?gGz
@g(\?g(\?gQ?gq=
ףp?g(\@gQ?gGz	@r
  gQ?gp=
ף @gp=
ף@gq=
ףp@gRQ?gGz?g
ףp=
?rE  gHzG?g      @gQ?r  gRQ?gQ?gp=
ף?gQ@gGz?gQ?gp=
ף?gq=
ףp?r\
  gp=
ף?gQ?g@g)\( @gzG@gGz?g(\?g333333?g)\(?gGz@rh  g(\?g=
ףp=?gHzG?g{Gz?g
ףp=
?gףp=
?gQ?r	  g?g(\?gQ?gffffff@gQ?g?gGz?g{Gz?gHzG@g\(\?g(\?g(\?c           	        R p\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! VP                  V P                  VP                  R7      4       RRR4       R#   + '       g   i     R# ; iz*`sample` must be an array of real numbers.r   r6   N)r   r   r   r[   lmomentrY   r  r  r  s   && rm   test_dtype_ivTestLMoment.test_dtype_iv#  sH    >]]:W55MM"**TYYbmm*DE 6555s   <A--A>	c           	         R p\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! \
        P                  ! V P                  \        R7      4       RRR4       R#   + '       g   i     R# ; ir  )	r   r   r   r[   r  r   r   r  rD  r;  s   & rm   test_dtype_iv_non_numeric%TestLMoment.test_dtype_iv_non_numeric#  sB    >]]:W55MM"((499F;< 6555s   ;A,,A=	r  c                    R p\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! VP                  V P                  4      VR7       RRR4       R#   + '       g   i     R# ; i)z*`order` must be a scalar or a non-empty...r   r  Nr   r   r   r[   r  rY   r  )rc   r  rd   r  s   &&& rm   test_order_ivTestLMoment.test_order_iv#  sB    >]]:W55MM"**TYY/u= 6555   2A##A4	r?   c                    R p\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! VP                  V P                  4      VR7       RRR4       R#   + '       g   i     R# ; i)z`axis` must be an integerr   r>   Nr  )rc   r?   rd   r  s   &&& rm   test_axis_ivTestLMoment.test_axis_iv#  sB    -]]:W55MM"**TYY/d; 6555r  sortedc                    R p\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! VP                  V P                  4      VR7       RRR4       R#   + '       g   i     R# ; i)z`sorted` must be True or False.r   )r  Nr  )rc   r  rd   r  s   &&& rm   test_sorted_ivTestLMoment.test_sorted_iv#  sB    3]]:W55MM"**TYY/? 6555r  standardizec                    R p\         P                  ! \        VR7      ;_uu_ 4        \        P                  ! VP                  V P                  4      VR7       RRR4       R#   + '       g   i     R# ; i)z$`standardize` must be True or False.r   )r
  Nr  )rc   r
  rd   r  s   &&& rm   test_standardize_ivTestLMoment.test_standardize_iv#  sB    8]]:W55MM"**TYY/[I 6555r  FT	presortedc                   VP                  . RO4      pV'       g4   \        P                  ! V4      R,          P                  V^,          4      pV'       d   \	        V P
                  4      MV P
                  pVP                  V4      p\        P                  ! WaW#R7      p\        WuVP                  V4      ^,
          ,          4       R# )0ʻEH?r  )r
  r  N)r  gk?gz[?g+3 ?)	rY   r_   r`   multiplyr  r  r[   r  r/   )rc   r  r
  r  rd   r  r  r   s   &&&&&   rm   test_lmomentTestLMoment.test_lmoment#  s     jj B C &&+b/**3q62C$-vdii 499zz$mmD[SE!21!456rp   c                    VP                   pVP                  V P                  4      p\        P                  ! VP                  W24      4      pVP                  \        P                  ! V4      V4      p\        WER R7       VP                  pVP                  . RO4      p\        P                  ! VP                  W24      4      p\        P                  ! VP                  V\        V4      4      4      p\        WE4       R# )r  r  Nr  )	r   rY   r  r[   r  r  r/   int64r)   )rc   rd   r7   r  r   r  s   &&    rm   
test_dtypeTestLMoment.test_dtype#  s    

DII&mmBIIf45iif-u5t,O,mmBIIf45mmBIIf.>r.BCD!rp   c                   \         P                  P                  R 4      pVP                  RR7      p\        P                  ! VP                  V4      VR7      pVP                  \        P                  ! WAR7      4      p\        WV4       R# )l   jU3a r  r>   N)rO   rP   )r   r  r  r[   r  rY   r/   )rc   r?   rd   r  rf   r   r  s   &&&    rm   r  TestLMoment.test_axis#  s`     ii##$9:JJHJ%mmBJJqM5jjq45!rp   r   N)rW   rE   r  rU   r  r  )r   r   r   r   r  mathrb   r!  not_integersr  r#   r  r   r   r  r   r  r  r  r  r  r  r   r   r   s   @rm   r  r  #  s    
ND 
N$ 
N 
Nc 
N3 
N 
Nc 
N3 
N 
ND 
N# 
N
N
N
N"
N$(
N*.
N04
N69
N;?
NAE
NGK
N
N
N
N"
N$(
N*.
N04
N6:
N<@
NBF
NHL
N 
N 
N 
N #
N %)
N +/
N 15
N 7;
N =A
N CG
N IM
N 	
N 	
N 	
N #	
N %)	
N +/	
N 14	
N 6:	
N <@	
N BF	
N HL	
N
 
N
 
N
 
N
 #
N
 %)
N
 +/
N
 15
N
 7;
N
 =A
N
 CG
N
 IM
N 
N 
N 
N "
N $(
N *.
N 04
N 6:
N <@
N BF
N HL
N 
N 
N 
N #
N %)
N +/
N 15
N 7;
N =@
N BF
N HL
N 
N 
N 
N #
N %)
N +/
N 15
N 7;
N =A
N CG
N IM
N 
N 
N 
N "
N $(
N *.
N 04
N 6:
N <@
N BF
N HL
N 
N 
N 
N #
N %)
N +/
N 15
N 7;
N =A
N CG
N IM
ND dhh9LF
 = =
 [[WlaR)5M&MN> O>
 [[V\2< 3<
 [[X|4@ 5@
 [[]L9J :J
 [[Wq!\&:;[[]UDM:[[[5$-87 9 ; <7$" [[VaV," -"rp   r  c                   $  a  ] tR tRt o ]P
                  P                  R. RO4      ]P
                  P                  RRR.4      ]P
                  P                  RRR.4      R 4       4       4       tR	 t]P
                  P                  R
4      ]P
                  P                  R4      R 4       4       t
]P
                  P                  R4      R 4       t]! RR7      R 4       tR t]P
                  P                  R4      R 4       tR tR tRtV tR# )TestXP_Meani#  r?   Nri
  Tr  Fc                   \         P                  P                  R 4      pVP                  R4      pVP                  V4      pR;rV'       d;   VP                  R4      pVP                  V4      p	\         P                  ! Wh4      w  rh\        WyW$R7      p
\         P                  ! WhW$R7      p\        WP                  V4      4       R# )   -fH N)ri
  r?   r  r  rv   )r   r  r  rY   r  r   r	  r/   )rc   rd   r?   ri
  r  r  rf   x_xpr  w_xpr   r  s   &&&&&       rm   test_xp_mean_basicTestXP_Mean.test_xp_mean_basic#  s     ii##N3JJy!zz!}

6"A::a=D&&q,DAtHjjDDZZ_-rp   c                    VP                  R 4      VP                  ^4      r2Rp\        P                  ! \        VR7      ;_uu_ 4        \        W#R7       RRR4       R#   + '       g   i     R# ; i)r   z/Array shapes are incompatible for broadcasting.r   r
  N)r   rY  r   r   r   r   )rc   rd   rf   r  r  s   &&   rm   test_non_broadcastable"TestXP_Mean.test_non_broadcastable$  sF    yy~rxx{1C]]:W55Q" 6555s   AA0	r}  r|  c                   VP                  . RO4      p\        VP                  . RO4      VR7      p\        W1P                  VP                  4      4       \        VP                  . RO4      VR7      p\        W1P                  \        P
                  ) 4      4       \        VP                  . RO4      VR7      p\        W1P                  \        P
                  4      4       R# )r   r
  NrP  r  )r   r   r   )r   r   r   )rY   r   r/   rb   r   r!  )rc   rd   ri
  r   s   &&  rm   test_special_casesTestXP_Mean.test_special_cases$  s     **]+rzz,/AZZ/0rzz,/AZZ01rzz,/AZZ/0rp   r	  c                   VP                  R 4      pV^8H  pVP                  W1P                  V4      p\        V4      '       d<   \        P
                  ! \        RR7      ;_uu_ 4        \        VRR7       RRR4       M:\        P
                  ! \        RR7      ;_uu_ 4        \        VRR7       RRR4       \        V4      p\        VRR7      pVP                  VP                  4      p\        WF4       \        WV4       \        VRR7      pVP                  W#( ,          4      p\        Wv4       VP                  ^
4      pVP                  W1P                  V4      p\        VP                  R 4      VRR	7      pVP                  W#( ,          4      p\        Wv4       R#   + '       g   i     L; i  + '       g   i     EL; i)
r   r	  r   r   r   Nr   r  r   )ri
  r   )r   rY  rb   r&   r   r   r/  r   r   rY   r0   r^   r/   r  )	rc   rd   rf   r  r  r  r  r   ri
  s	   &&       rm   r  TestXP_Mean.test_nan_policy'$  sO    IIcNQHHT661% y0OPPw/ QP z1PQQw/ R {k2jj "" qV,ggah! ''"+((41ryy~w6Jggah!/ QP RQQs   (F!#F4!F1	4G	r  c                ~   VP                  R 4      pVP                  V^8H  VP                  V4      pRp\        P                  ! \
        VR7      ;_uu_ 4        \        V\        P                  ,          RR7      pVP                  VP                  4      p\        WE4       RRR4       R#   + '       g   i     R# ; ir   zAfter omitting NaNs...r   r   r   N)
r   rY  rb   r   rC  r   r   r   rY   r0   rc   rd   rf   r  r   r  s   &&    rm   test_nan_policy_warns!TestXP_Mean.test_nan_policy_warnsJ$  s~    IIcNHHQ!VRVVQ' +\\.881rvv:&9C**RVV$CC% 9888   A	B++B<	c                   R p\         P                  ! \        VR7      ;_uu_ 4        \        VP	                  . 4      4      pVP	                  VP
                  4      p\        W44       RRR4       Rp\         P                  ! \        VR7      ;_uu_ 4        \        VP	                  . .4      ^R7      pVP	                  VP
                  .4      p\        W44       RRR4       \        VP	                  . .4      ^ R7      pVP	                  . 4      p\        W44       R#   + '       g   i     L; i  + '       g   i     L^; iz,One or more sample arguments is too small...r   Nz2All axis-slices of one or more sample arguments...r>   )r   rC  r   r   rY   rb   r0   rc   rd   r  r   r  s   &&   rm   r  TestXP_Mean.test_emptyV$  s    @\\,G<<2::b>*C**RVV$CC% =
 G\\,G<<2::rd+!4C**bffX&CC% =
 rzz2$'a0jjn! =< =<   ADAD1D.	1E	4ignore:overflow encountered in reduce:RuntimeWarningc           	        VP                  VP                  4      P                  p\        P                  ! W".\        P                  R 7      pVP	                  V4      p\        P
                  ! RR7      ;_uu_ 4        \        V4      p\        P                  ! V4      p\        P                  P                  V\        P                  4       \        WQP	                  V4      4       RRR4       \        WAP                  R 7      pVP	                  \        P                  ! \        P                  ! V\        P                  R 7      4      4      p\        WV4       R#   + '       g   i     L|; i)r6   r   )overN)r   r   r  r   rY   rr  r   r^   r"  r   r!  r/   r   rc   rd   r  x_npr   r   r  s   &&     rm   r  TestXP_Mean.test_dtypeg$  s     hhrzz"&&zz3*BJJ7zz$ [[h''4.C''$-CJJ##C0CC1	 ( t::.jjD

!CDE! ('s   =A*EE+	c                    VP                  ^
4      pVP                  R4      p\        \        V4      \        V4      4       \        \        W2R7      \        W3R7      4       R# )rO   r   r
  N)r   r0   r   r   s   &&  rm   test_integerTestXP_Mean.test_integer{$  sB    IIbMIIcNXa[1.0FGrp   c                   \         P                  P                  R 4      pVP                  R4      w  r4rV\        VP	                  W4R,          ,           4      VP	                  WVR,          ,           4      R7      p\         P
                  ! W4R,          ,           WVR,          ,           R7      p\        WqP	                  V4      4       R# )r  r  r
  N)r   r  )r   r  r  r   rY   r	  r/   )	rc   rd   r  rf   rg   wxwyr   r  s	   &&       rm   r   TestXP_Mean.test_complex_gh22404$  s~    ii##N3zz'*brzz!d(+RZZU
5KLjjrT22:6ZZ_-rp   r   NrW   rU   )rM  rE   )r   r   r   r   r   r   r  r"  r%  r   r(  r  r   r/  r  r  r>  r  r   r   r   s   @rm   r  r  #  s!    [[V%;<[[Yt5[[Z%7. 8 6 =. # [[ WX[[ VW1 X Y1 [[9""@ &	& '	&"" [[>"""H. .rp   r  c                     a  ] tR tRt o ]P
                  P                  R. RO4      ]P
                  P                  RRR.4      ]P
                  P                  R^ ^.4      ]P
                  P                  RR	R
.4      R 4       4       4       4       tR tR t	]
! RR7      R 4       t]
! RR7      R 4       tR t]P
                  P                  R4      R 4       tR tR tRtV tR# )
TestXP_Vari$  r?   Nr  FTrs   r   r  r   c           	     F   \         P                  P                  R 4      pVP                  R	4      p\         P                  pVR8X  dB   VP                  VP                  R7      R8  p	\         P
                  Wy&   \         P                  pVP                  V4      p
\        WW4VR7      p\        P                  ! 4       ;_uu_ 4        \        P                  ! RR\        4       V! WrW4R7      pRRR4       \        WP                  X4      4       R#   + '       g   i     L,; i)
r  r   r  r1   )r?   r  rs   r   r   r  )r?   r  rW  Nr  )r   r  r  r}   r  rb   nanvarrY   r    r   r   r   r   r/   )rc   rd   r?   r  rs   r   r  rf   var_refnan_maskr   r   r  s   &&&&&&       rm   test_xp_var_basicTestXP_Var.test_xp_var_basic$  s    
 ii##N3JJy!&&zzqwwz/#5H&&AKiiGzz!}d!+- $$&&##=~O!KC '
 	ZZ_- '&s   'DD 	c                    \        VP                  R R.4      ^R7      p\        W!P                  VP                  4      4       R# )r   r   rr   N)r    rY   r/   rb   )rc   rd   r   s   && rm   r(  TestXP_Var.test_special_cases$  s0    bjj"b*q9ZZ/0rp   c                \   VP                  R 4      pV^8H  pVP                  W1P                  V4      p\        V4      p\        VRR7      pVP	                  VP                  4      p\        WF4       \        WV4       \        VRR7      pVP                  W#( ,          4      p\        Wv4       R# )r   r  r   r   N)r   rY  rb   r    rY   r0   r}   r/   )rc   rd   rf   r  r  r  r  r   s   &&      rm   r  TestXP_Var.test_nan_policy$  s    IIcNQHHT661% qzq[1jj "" aF+ffQuX!rp   r  c                ~   VP                  R 4      pVP                  V^8H  VP                  V4      pRp\        P                  ! \
        VR7      ;_uu_ 4        \        V\        P                  ,          RR7      pVP                  VP                  4      p\        WE4       RRR4       R#   + '       g   i     R# ; ir-  )
r   rY  rb   r   rC  r   r    r   rY   r0   r.  s   &&    rm   r/   TestXP_Var.test_nan_policy_warns$  s~    IIcNHHQ!VRVVQ' +\\.88!bff*8C**RVV$CC% 9888r1  c           	         R p\         P                  ! \        VR7      ;_uu_ 4        \        VP	                  ^^VP
                  .4      RR7       RRR4       R#   + '       g   i     R# ; i)r   r   r   r   N)r   r   r   r    rY   rb   r  s   && rm   r   TestXP_Var.test_nan_policy_raise$  sF     2]]:W55BJJ1bff~.7C 6555s   *AA,	c                   R p\         P                  ! \        VR7      ;_uu_ 4        \        VP	                  . 4      4      pVP	                  VP
                  4      p\        W44       RRR4       Rp\         P                  ! \        VR7      ;_uu_ 4        \        VP	                  . .4      ^R7      pVP	                  VP
                  .4      p\        W44       RRR4       \        VP	                  . .4      ^ R7      pVP	                  . 4      p\        W44       R#   + '       g   i     L; i  + '       g   i     L^; ir3  )r   rC  r   r    rY   rb   r0   r4  s   &&   rm   r  TestXP_Var.test_empty$  s    @\\,G<<"**R.)C**RVV$CC% =
 G\\,G<<"**bT*3C**bffX&CC% =
 bjj"&Q/jjn! =< =<r6  r7  c           	     t   VP                  VP                  4      P                  p\        P                  ! W"^,          .\        P                  R7      pVP	                  V4      p\        V4      p\        P                  ! V4      p\        P                  P                  V\        P                  4       \        WQP	                  V4      4       \        WAP                  R7      pVP	                  \        P                  ! \        P                  ! V\        P                  R7      4      4      p\        WV4       R# )rE   r6   N)r   r   r  r   rY   r    r}   r"  r   r!  r/   r   r:  s   &&     rm   r  TestXP_Var.test_dtype$  s     hhrzz"&&zz3A,bjj9zz$dmffTl


RVV,ZZ_- d**-jj

4rzz BCD!rp   c                    VP                  ^
4      pVP                  R4      p\        \        V4      \        V4      4       R# )rO   r   N)r   r0   r    r   s   &&  rm   r>  TestXP_Var.test_integer$  s.    IIbMIIcN
GAJ/rp   c                6   \         P                  P                  R 4      pVP                  R4      w  r4\        VP	                  W4R,          ,           4      4      p\         P
                  ! W4R,          ,           4      p\        WQP	                  V4      RR7       R# )r  r  F)check_dtypeN)rE   r  )r   r  r  r    rY   r}   r/   r   s   &&     rm   r  TestXP_Var.test_complex_gh22404$  se    ii##N3zz'"bjjrT*+ffQ2XZZ_%@rp   r   rD  )r   r   r   r   r   r   r  rK  r(  r  r   r/  r  r  r   r  r>  r  r   r   r   s   @rm   rF  rF  $  s     [[V%;<[[Z%7[[\Aq62[[\K+@A. B 3 8 =.,1
"" &	& '	& &D 'D"" [[>""0A Arp   rF  c           	      0   \         P                  P                  R 4      pVP                  RR7      pV P                  V4      p^p\	        W4V R7      w  rV\        WPP                  V4      4       \        Wd4       Rp\	        W4V R7      w  rV\        WPP                  VP                  4       4      4       \        V^ 4       ^p\	        VR,          W@R7      w  rV\        WPP                  \         P                  ! VR,          4      4      4       \        Wd4       R# )l   ~Mr  r
  Nr  r  )	r   r  r  rY   r   r0   r   r  
atleast_1d)rd   r  r  rf   r?   x_outaxis_outs   &      rm   test_chk_asarrayrb  $  s    
))


.C		#B


2AD"1B7OEE::b>* D"1B7OEE::bhhj121D"1W:D@OEE::bmmBwK&@AB rp   )	rW   rE   r   r   rw   rz   rJ   rF   rI   )	ry   ry   ry   ry   ry   ry   ry   ry   ry   )	iiiiiiiii)	g~?g<?gEk?g?ge(?gq?g?g8C?gG?)	g   mBg   }Bg  yӅBg   Bg  @0Bg  yӕBg  BwBg   Bg   ^B)	r  g-=gAfc=g-=gdy=gAfc=gYLɞ=g-=gSSʣ=)	r1   r2   rt   r  rA   rB   rC   rq  r  )r   rF   rQ   rF   r   rH  gfx(@)rE   r
  rQ   rE   r   rA  g{T4@)r   rw   rJ   rI   r  r	  r  r~	  r	  rn  r  (  r5  r  r  r  r   collectionsr   	itertoolsr   hypothesis.extra.numpyextranumpyr  r  r
  numpy.testingr   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   scipy.statsr[   scipy.stats._mstats_basic_mstats_basicr  scipy.stats._ksstatsr   scipy.special._testutilsr   scipyr   r   common_testsr   scipy.stats._axis_nan_policyr   r   r   r   r   r   r  r   r   r   r   r    r!   scipy._lib._utilr"   scipy.conftestr#   scipy._lib._array_apir$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   scipy._lib._array_api_no_0dr/   r0   scipy._lib.array_api_extra_libarray_api_extrar_   lazy_xp_modulesr   r   rB  r  rZ   r"  r   r   r   r   r  r4   r   r   r7  r  rq  r  thread_unsafer  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  rP  rM  rb  r`  r  r  r  r  r  r  r%  r)  r'  r  r  r  r  r  r  r  r  	compositer  r  r  rT  PowerDivCaser  r  r   r  r  r  r  r  r  r  r  r  r,  rY  r  r  r  r  rK  r  r  r  r  r  r  r	  r	  r	  r
	  r	  r   r	  r1	  rQ	  ru	  r	  r	  r	  r	  r	  r  r	  r	  r	  r	  r	  r	  r	  r

  r	  r
  r)
  r(
  r.
  r?
  r=
  r^
  rh
  rm
  rq
  ru
  rx
  rt
  rz
  r  r
  rw
  r
  r  r  rH  r[  ra  rc  ru  rr  r  r  r  r  r  r  rJ  rH  rt  rn  r  r  r  r  r  r  rJ  rr  r  r  r  rf   rg   wilcoxonrX  r  r[  r  r  r  r  r  r  rF  rb  r   rp   rm   <module>r}     s    	 	  "  % %  ? ? ?  * / /   0 0 ( - # -T TU U & .0 0 0 0 I ( (';;// KK11  

u% %(  !&(	 238
:DeLDeL3U;LT LT^p# p#f 5>>"L> L> #L>^DL DLN{6 {6|~5 ~5T "56V: 7V:r4 < "563 73$TE TEnY2x	*&Ro# o#d0D)3"rN rNj 5::I3 I3 I3X 599+E +E +E\ 5::j" j" j"Z 5<< f& f& !f&R 5==!0 0 "0* 5--.GL GL /GLT1 599U" U" U"p 5<< \" \" !\"~
1 
1 5::_" _" _"D 5>>"`"# `" #`"F    !< 5$$%Q) Q) &Q)hw8 w8t & }Dqt"&&+266$<78AbffSkMAbffTlN:;I	K }N"&&+"&&,6266#;FGAbffSkMBrvvd|O;asmKL1	2 }AAD"&&+266$<78AbffSkMAbffTlN:;I	K |<aaQa1+ : r!!Qa1
 rxxBr
+--!!" rxxBr
+!!# 4 5))*A< A< +A<H 5??#(' (' $('V 5**+-T -T ,-T`+( +(` 5>>"jQ jQ #jQ^c. c.L	sEl1*+ ,88I.788I.79:0:0
. (HI J. ) ,,ryy}a.@A ??RYYr]BIIbM,JKMN5N5
/d 
/ 5??E$>$>?Q% @Q%h7At DEjF jF FjFZD5 D5NC7 C7L 5??#IB IB $IBXL$ 5??#v* v* $v*r 5--.) ) /), t4HIRSST< U T J<6% STRS5$$%:> & T U :>z $'QR S. 5$$%k2RS% T &%: 5>>"L+ L+ #L+^*- *-Z 5>>"-> - #-2 5%%&-~ - '-> 5##$-^ - %-A A. 5$$%61 61 &61r1"(>V+ +D ++)-+ DDD 5;;q3 q3  q3h 5;;n3 n3  n3b 5;;y% y%  y%x 5::S3 S3 S3l(.90[;|.3 .3b 5??#0V 0V $0Vf 5??#.2 .2 $.2b 5(()C< C< *C<L 5>>"t) t) #t)n 5==!k k "k\ 5(()`4 `4 *`4F#A #ALl  l ^Z Zz? ?D 5&&'S+ S+ (S+lHA HAV{1 {1| 	iiI&JJrNJJrN  >>A40 >>Auzz~~+>? >>Aq62 <<!Q011X+ X+v 5==!\" \" "\"~J. J.ZrA rAj!rp   