id ddlZddlZddlZddlZddlmZddlmZm Z ddl m Z m Z m Z mZmZmZejdejddejdgd d ejd d d gejejejdejdgdejejddejggZejgdejgdejddgejgdgZejgdgdgdgdgZejgdgdgdgdgZGddZGd d!ZGd"d#Zejd$ejgd%d&ZeD]Zed'(ejd)ej d*ej d+zd,zejd-ee!.Gd/d0Z"Gd1d2Z#Gd3d4e#Z$Gd5d6e#Z%Gd7d8e#Z&d9Z'e(ej d+Z)e)d:e'Dz Z)Gd;d<Z*Gd=d>Z+Gd?d@Z,ejdAejejdBejej-gejgdCfejgdDej.EdFfejgdCdFfejejdBgejej-ggej/Eejd'dFgd'dFggfgdGZ0dHZ1dS)IN)normalize_axis_tuple) _nan_mask _replace_nan)assert_ assert_equalassert_almost_equal assert_raisesassert_array_equalsuppress_warningss?&S:??ʡE? ?绸zG?L F%u?6٬?:M S㥛?z):? h"?)r r rr)rrrrr)rrr)r ?r rrr)rrrrrr)rrrrrr)rrrrrr)r r rrr)rrrrrr)rrrrrr)rrrrrrceZdZejejejejejej ej ej ej ej ejejejejejejejejejejejejejejejejejejiZ de DZ!e"d dZ#e$j%&de 'e!dZ(dZ)dS) TestSignatureMatchcg|] }|j S__name__).0ks V/opt/cloudlinux/venv/lib/python3.11/site-packages/numpy/lib/tests/test_nanfunctions.py zTestSignatureMatch.9s ( ( (!1: ( ( (...c<g}tj|}|jD]Y}|jtjjur||0|||Ztj |S)z?Construct a signature and replace all default parameter-values.)default) inspect signature parametersvaluesr) Parameteremptyappendreplace Signature)funcr)prm_listr+prms r$ get_signaturez TestSignatureMatch.get_signature;s%d++ '..00 > >C{g/555$$$$ G < <==== ***r&z nan_func,funcidsc||}||}tj||dSN)r6nptestingr)selfnan_funcr3r+ nan_signatures r$test_signature_matchz'TestSignatureMatch.test_signature_matchGsH &&t,, **844   =99999r&ctjt|jttjjjdS)z4Validate that all nan functions are actually tested.N)r;r<rsetIDSlib nanfunctions__all__r=s r$test_exhaustivenessz&TestSignatureMatch.test_exhaustivenessPsC  MM3rv2:;;     r&N)r')*r! __module__ __qualname__r;nanminaminnanmaxamax nanargminargmin nanargmaxargmaxnansumsumnanprodprod nancumsumcumsum nancumprodcumprodnanmeanmean nanmedianmedian nanpercentile percentile nanquantilequantilenanvarvarnanstdstdNANFUNCSrC staticmethodr6pytestmark parametrizeitemsr@rHrr&r$rr(s 27 27 bi bi 26 BG bi rz BG bi "-   26 26H ) (x ( ( (C + + +\ + [_hnn.>.>CHH::IH:     r&rc xeZdZejejgZejejgZ dZ dZ dZ dZ dZejdgdejdejd ejd ejejejd ejgd d gdZdZdZdZdZejdejd dZejdejd dZdS)TestNanFunctions_MinMaxct}|jD]"}||t|t#dSr:_ndatcopynanfuncsrr=ndatfs r$ test_mutationz%TestNanFunctions_MinMax.test_mutation\Jzz|| & &A AdGGG u % % % % & &r&ctjd}t|j|jD]C\}}dD];}|||d}|||d}t |j|jkTestNanFunctions_MinMax.test_result_values..!(((Q22a55(((r&r}rrrsr_rdatrqrr=rrrrs @r$test_result_valuesz*TestNanFunctions_MinMax.test_result_valuesn$-77 * *FB((((%(((C"U###C S ) ) ) ) * *r&rr|rAllFloatarrayr{r{0d2dr7c ||jdkrtjd||}d}|jD]B}tjt |5|||}dddn #1swxYwYCdSNr*`axis != None` not supported for 0d arraysAll-NaN slice encounteredmatchr)rriskipastyperswarnsRuntimeWarningr=rrrrr3rs r$ test_allnansz$TestNanFunctions_MinMax.test_allnanss   a KE F F F U##+M , ,DnE::: - -d5t,,, - - - - - - - - - - - - - - - , ,A77A; >A; ctjt}|j}tjfD]z}||d}|td}t||t|j|ttj | {dS)Nr}r) r;ma fix_invalidrq_maskrrrKrrisinfany)r=rmskrvrrs r$ test_maskedz#TestNanFunctions_MinMax.test_maskedse&&inn) - -A!Ca...C!E"""C c " " " C ( ( (  ))+++ , , , ,  - -r&cR|jD]}t|ddkdSNrrsrr=rvs r$ test_scalarz#TestNanFunctions_MinMax.test_scalar: ! !A AAbEERK  ! !r&c Gddtj}tjd|}|jD]}||d}t t ||t |jdk||d}t t ||t |jdk||}t |jdktj|d<|jD]y}tj d 5}tj d ||d}t t ||t tj tj | t t|dkdddn #1swxYwYtj d 5}tj d ||d}t t ||t tj |do5tj |d otj |d  t t|dkd t t|djt"dddn #1swxYwYtj d 5}tj d ||}t |jdkt |tjkt t|dkdddn #1swxYwY{dS)NceZdZdS)8TestNanFunctions_MinMax.test_subclass..MyNDArrayNr!rIrJrr&r$ MyNDArrayr Dr&rr{rrr{r}rTrecordalwaysno warning raised)r;ndarrayrviewrsr isinstanceshapenanwarningscatch_warnings simplefilterrisnanlen issubclasscategoryr)r=rminervrws r$ test_subclassz%TestNanFunctions_MinMax.test_subclasss          vayy~~i(( % %A!Dq///C JsI.. / / / CI% & & &!Dq///C JsI.. / / / CI% & & &!D''C CIO $ $ $ $&Q % %A(555 %%h///a1ooo 3 22333BF28C==111222A! $$$  % % % % % % % % % % % % % % %(555 C%h///a1ooo 3 22333Q((1#a&1A1A-A1 "Q 0 00222A! %8999 1Q4=.AABBB C C C C C C C C C C C C C C C(555 %%h///agg R(((rv &&&A! $$$  % % % % % % % % % % % % % % %# % %s9BF>>G G C*KK K 4A5M55M9 <M9 c tjddgtjdgtjtjggt}t tj|dt tj|dddgt jd5}t jd t ttj|d ddtjgtt|d kd tt|dj tddddS#1swxYwYdS) Nrg@@rrrTrrr}r)r;rrobjectrrKrrrlistrrrrr)r=arrrs r$test_object_arrayz)TestNanFunctions_MinMax.test_object_arraysZhc RVSMBFBF3CDFSSSRYs^^S)))RYs+++c3Z888  $D 1 1 1 ?Q  !( + + + bi!44455S"&7I J J J CFFaK!4 5 5 5 Jqt}n== > > >  ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?s B!EEEc8Gddtj}tjd|}tj|dd<|jD]A}|tjurdnd}|||}||||}BdS)NceZdZdS)7TestNanFunctions_MinMax.test_initial..MyNDArrayNrrr&r$rrrr&r drinitial)r;rarangerrrsrMr)r=rrarrvrret1ret2s r$ test_initialz$TestNanFunctions_MinMax.test_initials         Yq\\  ' '2A2 # #A")^^ccG1R)))D1RWWY''999DD # #r&cGddtj}tjddd|}tj|dddf<tj|tj}d|dddf<|jD]C}|tj urdnd }|||d }|| ||d }DdS) NceZdZdS)5TestNanFunctions_MinMax.test_where..MyNDArrayNrrr&r$rrrr&rrr{rrFrwherer) r;rrreshaperr ones_likebool_rsrKr) r=rrrrrv referencerrs r$ test_wherez"TestNanFunctions_MinMax.test_wheres         Yq\\ ! !!Q ' ' . .u 5 561aaa4 Rrx000aaad  % %A")^^I1Rua000D1RWWY''ua@@@DD % %r&N)r!rIrJr;rKrMrsminmaxrrwrrrrrirjrk typecodesrrfullrrrrrrrrr&r$rnrnWs 29%HH&&&...*** $ $ $***  [V\\\22 [Wbl:&>?? [W' $< , , @?32 ,---!!!)%)%)%V ? ? ? [Wbl:&>??##@?#$ [Wbl:&>??%%@?%%%r&rnc DeZdZejejgZdZdZe j dgde j dej de j dej ejejdejgd d g d Zd ZdZdZe j dej ddZe j dej ddZdS)TestNanFunctions_ArgminArgmaxct}|jD]"}||t|t#dSr:rprts r$rwz+TestNanFunctions_ArgminArgmax.test_mutation rxr&c :t|jtjtjgD]\}}t D]}t 5}|td||}||}ttj | t||| ttj ||d| dddn #1swxYwYdS)Nzinvalid value encountered in) rrsr;greaterlessrqr filterrrrrequal)r=rvfcmprowsupindvals r$rz0TestNanFunctions_ArgminArgmax.test_result_valuess\4=2:rw*?@@ @ @GAt @ @&((@CJJ~/MNNN!C&&Cc(C -...S# 2 2 4 44555c$3$i 8 8 < < > >>???@@@@@@@@@@@@@@@ @ @ @sB:DD D rr|rrrrrrr7c||jdkrtjd||}|jD]B}tjt d5|||dddn #1swxYwYCdSr)rrirrrsraises ValueError)r=rrrr3s r$rz*TestNanFunctions_ArgminArgmax.test_allnanss   a KE F F F U##M ' 'Dz1LMMM ' 'U&&&& ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' 'sA55A9 <A9 ctjd}|jD]S}dD]}tt|||dD]1}|||}t |tjd2TdS)Nrr{rNrr}r)r;rrsr rr)r=rrvrrs r$ test_emptyz(TestNanFunctions_ArgminArgmax.test_empty.shv / /A! = =j!St<<<<< / /a$'''S"(1++.... / / /r&cR|jD]}t|ddkdSrrrs r$rz)TestNanFunctions_ArgminArgmax.test_scalar7rr&cGddtj}tjd|}|jD]}||d}t t ||t |jdk||d}t t ||t |jdk||}t |jdkdS) NceZdZdS)>TestNanFunctions_ArgminArgmax.test_subclass..MyNDArrayNrrr&r$rr#<rr&rr{rrrr}r)r;rrrrsrrr)r=rrrvrs r$rz+TestNanFunctions_ArgminArgmax.test_subclass;s          vayy~~i(( % %A!Dq///C JsI.. / / / CI% & & &!Dq///C JsI.. / / / CI% & & &!D''C CIO $ $ $ $ % %r&ctjd|}tj|dd<|jD]!}|tjurdnd}||d}"dS)NrrrT)r)r;rrrrsrOr=rrrvrrets r$rz+TestNanFunctions_ArgminArgmax.test_keepdimsLsr Yq\\  ' '2A2 $ $A",..AI!B&&&CC $ $r&ctjd|}tj|dd<|jD]A}tjdtj}|tjurdnd}|||}BdS)Nrrrrrr)r;rrrrsrintprO)r=rrrvrrr&s r$rz&TestNanFunctions_ArgminArgmax.test_outWs Yq\\  ' '2A2 $ $A(2RW---C",..AI!BC...CC $ $r&N)r!rIrJr;rOrQrsrwrrirjrkr rrr rrrrrrrr&r$r r s bl+H&&& @ @ @ [V\\\22 [Wbl:&>?? [W' $<'' @?32 '///!!!%%%" [Wbl:&>??$$@?$ [Wbl:&>?? $ $@? $ $ $r&r r)']W.)r1dF)writer AllIntegerrOrr7ceZdZejejejejejej ej ej ej ej ejejejejejejejejejejejejejeji ZdeDZej de!eej"ddZ#ej dej$ej%fej&ej'fgddgd Z(ej dejejfejejfgd d gd Z)d S)TestNanFunctions_NumberTypescg|] }|j Srr )r"is r$r%z'TestNanFunctions_NumberTypes.s000!1:000r&z nanfunc,funcr7ignore)overc||}||}||}t|||dkrdSdS)Nr2rrr=rrnanfuncr3rrs r$ test_nanfuncz)TestNanFunctions_NumberTypes.test_nanfuncsPjjd3iigcllC%%% C<<<<<S )T3! 4 4 4 4 )WcQ 7 7 7 7 7 7$sa...C'####C S ) ) )||||||r&rcrec||}||d}||d}t|||dkrdSdS)N?ddofr2r:r;s r$test_nanfunc_ddofz.TestNanFunctions_NumberTypes.test_nanfunc_ddofs^ jjd3S!!!gc$$$C%%% C<<<<<.rr&r}rrrs @r$rz/SharedNanFunctionsTestsMixin.test_result_valuesrr&cR|jD]}t|ddkdSrrrs r$rz(SharedNanFunctionsTestsMixin.test_scalarrr&cGddtj}tjd}||}|jD]}||dj}||d}t t||t |j|k||dj}||d}t t||t |j|k||j}||}t t||t |j|kdS)NceZdZdS)=SharedNanFunctionsTestsMixin.test_subclass..MyNDArrayNrrr&r$rr_ rr&rr{rrr})r;rrrrsrrr)r=rrrrvexpected_shapers r$rz*SharedNanFunctionsTestsMixin.test_subclass s_          q zz)$$ 1 1AQu1---3N!Dq///C JsI.. / / / CI/ 0 0 0Qu1---3N!Dq///C JsI.. / / / CI/ 0 0 0QuXX^N!D''C JsI.. / / / CI/ 0 0 0 0 1 1r&N) r!rIrJrwrrrVrXrrrrrr&r$rLrLs&&&...***((("(((" $ $ $*** !!!11111r&rLc HeZdZejejgZejejgZ e j dgde j dej de j dejejejdejgddg d Zd Ze j dej dd Ze j dej dd ZdS)TestNanFunctions_SumProdrr|rrrrrrr7c||jdkrtjd||}t |jddgD]\}}|||}dS)Nrrr}rrrirrrrsr=rrrr3identityrs r$rz%TestNanFunctions_SumProd.test_allnans%sy   a KE F F F U##!$-!Q88 , ,ND($u4(((CC , ,r&cLttjtjgddgD]z\}}tjd}|gdz}||d}t ||g}||d}t |||}||d}t ||{dS)Nrr}rr{r)rr;rSrUrrr=rv tgt_valuerrrs r$rz#TestNanFunctions_SumProd.test_empty5sBJ 7!Q@@ # #LAy(6""C+a-C!Ca...C c " " "C!Ca...C c " " "C!Cd###C c " " " " # #r&ctjd|}tj|dd<|jD]!}|tjurdnd}||d}"dS)Nrri rr)r;rrrrsrSr%s r$rz%TestNanFunctions_SumProd.test_initialBsp Yq\\  ' '2A2 $ $A29nn$I!B"""CC $ $r&cHtjddd|}tj|dddf<tj|tj}d|dddf<|jD]"}|tjurdnd}|||d }#dS) Nrr{rrFirr) r;rrrrrrrsrS)r=rrrrvrr&s r$rz#TestNanFunctions_SumProd.test_whereMs Yq\\ ! !!Q ' ' . .u 5 561aaa4 Rrx000aaad  $ $A29nn$I!BeQ///CC $ $r&N)r!rIrJr;rSrUrsrTrVrrirjrkr rrr rrrrrr&r$rbrb sX 2:&H H [V\\\22 [Wbl:&>?? [W' $<,, @?32 , # # # [Wbl:&>??$$@?$ [Wbl:&>?? $ $@? $ $ $r&rbc eZdZejejgZejejgZ e j dgde j dej de j dejejejdejgddg d Zd Zd Zd ZdZdS)TestNanFunctions_CumSumProdrr|rrrrrrr7c||jdkrtjd||}t |jddgD]\}}||}dS)Nrrr}rdres r$rz(TestNanFunctions_CumSumProd.test_allnans`sr   a KE F F F U##!$-!Q88 , ,ND($u++CC , ,r&cpt|jddgD]\}}tjd}|tjdz}||d}t |||}||d}t ||tjd}||d}t ||dS)Nrr}rr)rrsr;ronesrrhs r$rz&TestNanFunctions_CumSumProd.test_emptyps 1v66 # #LAy(6""CBGFOO+C!Ca...C c " " "C!Ca...C c " " "(A--C!Cd###C c " " " " # #r&cZt|j|jD]W\}}tjd}dD];}|||d}|||d}t |j|jkZdS)Nr{)r}r~rr}rr)r;rrrsrr)r=rrrrrrrs r$rz$TestNanFunctions_CumSumProd.test_outsfQii$-77 . .FBVAYYF& . .b4(((b4V444#C000#C----  . . .r&N)r!rIrJr;rWrYrsrXrZrrirjrkr rrr rrrrrrr&r$roro[s bm,H 2:&H [V\\\22 [Wbl:&>?? [W' $<,, @?32 , # # #777&***.....r&roc eZdZejejejgZejej ej gZ dZ dZ dZdZejdgdejdejdejd ejejejd ejgd d g dZdZejdejddZdS)TestNanFunctions_MeanVarStdc |jD]F}tjtjtjfD] }t t |td|!GdS)Nr})rr)rsr;rint_object_r rBrq)r=rvrs r$test_dtype_errorz,TestNanFunctions_MeanVarStd.test_dtype_errorsa H HA(BGRZ8 H HiEGGGGG H H Hr&c |jD]l}tjtjtjfD]F}tjt jd|}tt|t d|GmdS)Nrrr}r) rsr;rrrr/rqrr rB)r=rvrrs r$test_out_dtype_errorz0TestNanFunctions_MeanVarStd.test_out_dtype_errors{ D DA(BGRZ8 D Dhu{1~U;;;iEsCCCCC D D Dr&ctjtjg}tjtjg}t ||D]A\}dD]9fdt D}|td}t||:BdS)Nrr}c*g|]}|S)rFr)r"rrGrs r$r%z9TestNanFunctions_MeanVarStd.test_ddof..s(777Arr!$'''777r&r}rrG) r;rcrerdrfrrrqr)r=rsrrrrrGrs @@r$ test_ddofz%TestNanFunctions_MeanVarStd.test_ddofsIry)FBF#(H-- . .FB . .77777777bQT222#C---- . . .r&c tjtjg}tjtjg}dt D}t ||D]\}}tdD] t5}| t| tj  fd|D}|td }ttj||t!|r&t#t%|jdkn%t#t%|jdkdddn #1swxYwYdS)Nc,g|]}t|Sr)rr"rs r$r%zATestNanFunctions_MeanVarStd.test_ddof_too_big..s'''AQ'''r&rcg|]}|k Srr)r"rrGs r$r%zATestNanFunctions_MeanVarStd.test_ddof_too_big..s444419444r&r}rr)r;rcrerdrfrrranger rrrrTrqrrrrrlog) r=rsrdsizerrrrrrGs @r$test_ddof_too_bigz-TestNanFunctions_MeanVarStd.test_ddof_too_bigsIry)FBF#'''''(H-- 3 3FBa 3 3&(( 3CJJ~...JJr01114444e444C"U666C #4443xx3CG  12222CG  1222 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3s8CEE "E rr|rrrrrrr7c(||jdkrtjd||}d}|jD]Q}tjt |5|||}dddn #1swxYwY|tjurQRdS)Nrrz:(Degrees of freedom <= 0 for slice.)|(Mean of empty slice)rr) rrirrrsrrr;r[rs r$rz(TestNanFunctions_MeanVarStd.test_allnanss   a KE F F F U##LM 8 8DnE::: - -d5t,,, - - - - - - - - - - - - - - - rz!!!! 8 8rc tjd}|jD]g}dD]}tjd5}tjdt tj|||t t|dkt t|dj tdddn #1swxYwYd D]}tjd5}tjdt|||tjgt t|dkdddn #1swxYwYidS NrrTrrrr}rr)r;rrsrrrrrallrrrrr)r=rrvrrs r$rz&TestNanFunctions_MeanVarStd.test_emptyshv ) )A! G G,D999GQ)(333BHQQs%6%6%677;;==>>>CFFaK(((Jqt}nEEFFF GGGGGGGGGGGGGGG  ) ),D999)Q)(333 3T!2!2!2BHRLLAAACFFaK((())))))))))))))) ) ) )s%B C$$C( +C( A"E77E; >E; ctjddd|}tj|dddf<tj|tj}d|dddf<t|j|j D]g\}}|||dd}|tj ur|n |j j }|||}tj ||hdS)Nrr{rrFr)r)r;rrrrrrrrsrr[realrr<assert_allclose) r=rrrrvf_stdrdtype_referencer&s r$rz&TestNanFunctions_MeanVarStd.test_wheres Yq\\ ! !!Q ' ' . .u 5 561aaa4 Rrx000aaad DM4=99 7 7HAubim,,I'(BJeeBGMO!Be$$$C J & &sI 6 6 6 6  7 7r&N)r!rIrJr;r[rcrersr\rdrfrrrrrrirjrkr rrr rrrrr&r$rrsn BIry1H(HHHH DDD ...333" [V\\\22 [Wbl:&>?? [W' $<88 @?32 8$ ) ) ) [Wbl:&>?? 7 7@? 7 7 7r&r) YMWDhmsmsusnspsfsascg|]}d|d S)zm8[]r)r"units r$r%r% s 666$ d 666r&c`eZdZdZdZejdgdejddZ dZ d Z d Z ejdgd ejd e d ZdZdZdZdZdS)TestNanFunctions_Medianct}tj|t |tdSr:)rqrrr;r]rr=rus r$rwz%TestNanFunctions_Median.test_mutations5zz|| TT5!!!!!r&ctjd}dD]O}tj||dd}tj||dd}t |j|jkPtjd}tjdtj|j dddfz}| tj }tj |t|<t5}|t tj|dd}t#|j d tj|d d}t#|j d tj|d d}t#|j d tj|dd}t#|j dtj|dd}t#|j d tj|dd}t#|j dddddS#1swxYwYdS)Nr{r|Frroverwrite_inputrtrTr~r}r}r}r}rr}r}rurvrr}rrur}rr{r}rurvrr}rr{rr}r{r}r}rur})r;rr^r]rrrrrwrrrr)rtupler rrrr=rrrrrrrs r$rz%TestNanFunctions_Median.test_keepdimss=fQii  * *D)CdeLLLC,s4OOOC CH( ) ) ) ) GM " " I  X & &!'):):111d7)C C HHRW  f%((  2C JJ~ & & &,qtd;;;C L 1 1 1,qv===C M 2 2 2,qv===C L 1 1 1,qtd;;;C M 2 2 2,q|dCCCC L 1 1 1,qy4@@@C L 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2sD#H77H;>H;rNr}rr)r~argnames argvalues#ignore:All-NaN slice:RuntimeWarningcPtjdtjdtjjdddfz}|tj}tjt|<| dj z}nCt|j tfdtj D}tj |}tj |d|}t|j|dS)Nrtrrc3>K|]}|vrdn j|VdSr}Nrr"r6 axis_normrs r$ z.FNLL89Q)^^LLLLLLr&Trrr)r;rrrwrrrr)rrrrrr/r]r)r=rr shape_outrresultrrs @@r$test_keepdims_outz)TestNanFunctions_Median.test_keepdims_out1s GM " " I  X & &!'):):111d7)C C HHRW  f%(( <qv II,T16::ILLLLL=B16]]LLLLLIhy!!adTsCCCV\9-----r&ctjdd}tj|ddgtjd}tjd}tj|d}tj|d|}t||t||tjd}tj|d}tj|d|}t||t||tj|d|}t||t||dS) Nr{rrr}rrrr) r;rwryinsertrrr^r]rr=rnan_matrrrs r$rz TestNanFunctions_Median.test_outMsinnQ"")C!Qa888!i!$$$l7777C(((C%%%"i$'''l76:::C(((C%%%l7V<<<C(((C%%%%%r&cdD]}tjd|}tjd|j|jdz}tj||<d|dddf<g}|D]S}tjtj||}| tj |dTttj |d |dS) N)r3rirrr)sizerT)rr~r) r;rwrandnrandintrrravelcompressrr0r^r r])r=rrrrxnonans r$test_small_largez(TestNanFunctions_Median.test_small_large_s' > >A 1%%A !!!QV!&A+!>>A6AGGIIaLAaaacFC C C RXa[[L!44 29UDAAABBBB r|AB777 = = = = > >r&c~dtD}tjtd}t ||dS)Nc6g|]}tj|Sr)r;r^rs r$r%z>TestNanFunctions_Median.test_result_values..ps ///A29Q<<///r&r}r)rr;r]rqrr=rrs r$rz*TestNanFunctions_Median.test_result_valuesos?/////C,u1---C S ) ) ) ) )r&r|rctjdtj|}t 5}|t tj||}|&tt|j dkn%tt|j dktj tj|d}tj|}|&tt|j dkn%tt|j dkddddS#1swxYwYdS)Nrrr}r{rrr) r;r rrr rrr]rrrr)r=rrrroutputscalar output_scalars r$rz$TestNanFunctions_Median.test_allnanstsmgfbf%%,,U33   +C JJ~ & & &\#D111F|CG )****CG )***Xbf%%,,U33B7FL00M|CG )****CG )***+ + + + + + + + + + + + + + + + + + +sDE$$E(+E(c tjd}dD]}tjd5}tjdt tjtj||t t|dkt t|dj tdddn #1swxYwYd D]}tjd5}tjdttj||tjgt t|dkdddn #1swxYwYdSr)r;rrrrrrr]rrrrrrr=rrrs r$rz"TestNanFunctions_Median.test_emptyshv C CD(555 C%h///c!=!=!=>>BBDDEEEA! $$$ 1Q4=.AABBB  C C C C C C C C C C C C C C C  % %D(555 %%h///R\#D99928B<<HHHA! $$$ % % % % % % % % % % % % % % % % %s%B)C##C' *C' A+E??F F cPttjddkdSr)rr;r]rGs r$rz#TestNanFunctions_Median.test_scalars% R  B&'''''r&ctjd}ttjtj|dttjtj|dttjtj|dttjtj|dtt tj|ddS)Nrtrrrrrrr}r})r;rrr AxisErrorr]rr=rs r$test_extended_axis_invalidz2TestNanFunctions_Median.test_extended_axis_invalids GM " "blBL!"====blBL!'BBBBblBL!!<<<<blBL!&AAAAj",??????r&c  t5}|ttjtj fD]b}tj|tjgtjtjgg}ttj|d|tjgttj|d|tjgttj||tjtjtj|gtjtj|gg}ttj||ttj|dtjtj|gttj|d|tj||g||gg}ttj|d|tj|d| dgdtjtjdgdtjtj|ggtj }|dkrLttj|dd d | d gttj|d nKttj|ddd | dgttj|dttj|ddd|gtddD]t}tddD]_}tjtjg|z|g|zzgdz}ttj||ttj|d|ttj|dtjg|z|g|zztjtjg|z| g|zzgdz}ttj|| ttj|d| ttj|dtjg|z| g|zzavd ddddS#1swxYwYdS)Nrrr}ruiirrrrg@@g@g$g"gr~g r) r rrr;infrrrr]float32r)r=rrar6js r$test_float_specialz*TestNanFunctions_Median.test_float_specials  + BC JJ~ & & &() B) BHsRVnrvrv.>?@@R\!!444sRVnEEER\!!444sRVnEEER\!__c222Hrvrvs3 fbfc2455R\!__c222R\!!444rvrvs6KLLLR\!!444c:::HsCj3*566R\!!444c:::HsAtR0"BFBFA6 "&"&#68%'J00077 aa!8!8!82rC4:LMMM a#6666 aa!8!8!84cT3:OPPP a$777R\!"555T37GHHHq" B BA"1b\\ B BHx!| &B%Ca%GHH$R\!__c:::$R\!!%<%<%>> ***  [V\\\22 [Wk22++3232+2 % % %(((@@@,B,B,B,B,Br&rc \eZdZdZdZejddddggejdgdejd d Z d Z d Z d Z ejdgdejde jdejde je je jde jgddgdZdZdZdZdZdS)TestNanFunctions_Percentilect}tj|dt |tdS)N)rqrrr;r_rrs r$rwz)TestNanFunctions_Percentile.test_mutations8zz|| r"""T5!!!!!r&ctjd}dD]Q}tj|d|dd}tj|d|dd}t |j|jkRtjd}tjdtj|j dddfz}| tj }tj |t|<t5}|t tj|ddd }t#|j d tj|dd d }t#|j d tj|ddd }t#|j dtj|ddd }t#|j dtj|ddd }t#|j d tj|ddd }t#|j dddddS#1swxYwYdS)Nr{r|FFrrtrZTr~rrrrrrrrrr)r;rr`r_rrrrrwrrrr)rrr rrrrs r$rz)TestNanFunctions_Percentile.test_keepdimssbfQii  * *D-Rd05777C"3438:::C CH( ) ) ) ) GM " " I  X & &!'):):111d7)C C HHRW  f%((  2C JJ~ & & &"1btdCCCC L 1 1 1"1bvEEEC M 2 2 2"1bvEEEC L 1 1 1"1btdCCCC M 2 2 2"1b|dKKKC L 1 1 1"1by4HHHC L 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2s D)H??IIr@rur}rrrrctjdtjdtjjdddfz}|tj}tjt|<| dj z}nCt|j tfdtj D}tj||z}tj |}tj ||d|}t|j|dS)Nrtrrc3>K|]}|vrdn j|VdSrrrs r$rz@TestNanFunctions_Percentile.test_keepdims_out..rr&Tr)r;rrrwrrrr)rrrrrr/r_r) r=r@rrrrrrrs @@r$rz-TestNanFunctions_Percentile.test_keepdims_outs/ GM " " I  X & &!'):):111d7)C C HHRW  f%(( <qv II,T16::ILLLLL=B16]]LLLLLIHQKK)+ hy!!!!QTDcJJJV\9-----r&ctjdd}tj|ddgtjd}tjd}tj|dd}tj|dd|}t||t||tjd}tj|dd}tj|dd|}t||t||tj|dd |}t||t||dS) Nr{rrr}r*rrr) r;rwryrrrr`r_rrs r$rz$TestNanFunctions_Percentile.test_outs,innQ"")C!Qa888!mC!,,,w???C(((C%%%"mC$///w6BBBC(((C%%%wVDDDC(((C%%%%%r&c\tjgdd}tttj|dtjgdd}tttj|dtjgdd}tttj|ddSN)y?@y@?y?ffffff@GrrErF)r;rr rBr_r=arr_cs r$ test_complexz(TestNanFunctions_Percentile.test_complex-s777sCCCi!15#>>>777sCCCi!15#>>>777sCCCi!15#>>>>>r&cdtD}tjtdd}t ||tjdtD}tjtdd}t ||dS)Nc8g|]}tj|dS)rkr;r`rs r$r%zBTestNanFunctions_Percentile.test_result_values..6s$333r}Q##333r&rkr}rc8g|]}tj|dS)rkbrrs r$r%zBTestNanFunctions_Percentile.test_result_values..:s$FFF1BM!X66FFFr&r)rr;r_rqr transposers r$rz.TestNanFunctions_Percentile.test_result_values5s33U333ubq111C%%%lFFFFFGGuhQ777C%%%%%r&r|rFloatrrrrr7c||jdkrtjd||}tjt d5t j|d|}ddddS#1swxYwYdS)Nrrrr<r)rrirrrrr;r_r=rrrrs r$rz(TestNanFunctions_Percentile.test_allnans>s   a KE F F F U## \.0K L L L 9 9"5"4888C 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9A77A;>A;c tjd}dD]}tjd5}tjdt tjtj|d|t t|dkt t|d j tdddn #1swxYwYd D]}tjd5}tjdttj|d|tjgt t|d kdddn #1swxYwYdS) NrrTrr(rr}rr)r;rrrrrrr_rrrrrrrs r$rz&TestNanFunctions_Percentile.test_emptyNshv C CD(555 C%h///!1#r!E!E!EFFJJLLMMMA! $$$ 1Q4=.AABBB  C C C C C C C C C C C C C C C  % %D(555 %%h///R-c2DAAA28B<<PPPA! $$$ % % % % % % % % % % % % % % % % %s%B*C$$C( +C( A,FF F cttjdddtjd}tj|dd}t|dt tj|dS)Nrr2rrg@)rr;r_rrisscalar)r=rrs r$rz'TestNanFunctions_Percentile.test_scalar\soR%b#..333 IaLL  Q + + +Q Ar&ctjd}ttjtj|ddttjtj|ddttjtj|ddttjtj|ddtt tj|dddS) Nrtrrr@rrrrr)r;rrr rr_rrs r$rz6TestNanFunctions_Percentile.test_extended_axis_invalidcs GM " "blB$4a12FFFFblB$4a17KKKKblB$4a11EEEEblB$4a16JJJJj""2AHHHHHHr&c ddg}tjd}tj|z}tjd}d|dddddddf<|ddddddfxxdzcc<d D]}d D]}t5}|t d tj|||| }tj|||| } t| j |j tj|||| }tj|||| } t| |dddn #1swxYwYΌtjd } ttj| |dj ddS)Nr!r)rr{)r{rrrrrr{r|)FTrr~)r{rrr )r}rr)rr{r ) r;rrrr rrr`r_rr) r=percrr large_matrkeepdimrrnan_valmegamats r$test_multiple_percentilesz5TestNanFunctions_Percentile.test_multiple_percentilesksCygfoo&3,GI&& !" !!!QqUAAA+!!!QQQ(q  / /D( / /&(( /CJJ~/JKKK-TwOOOC .w48?AAAG  :::- 4d18:::C .y$T8?AAAG #... / / / / / / / / / / / / / / / /',''R%gt&AAAGSSSSSs:B&D,,D0 3D0 N)r!rIrJrwrrirjrkrrrrrr;r rrr rrrrr,rr&r$rrs""" 222: [S1q!f+.. [      [ EFF..GF  /..&&&&$???&&& [V\\\22 [Wbl7&;<< [W' $<(( =<32 ( % % %   IIITTTTTr&rc feZdZdZdZdZdZej dgdej de j dej d e j e j e jd e j gd d g dZdS)TestNanFunctions_Quantilectjddddt}tj|dd<t tj|dtj|d t tj|dd tj|d d t tj|dd tj|d d t tj|dgd tj|d gd t tj|gd d tj|gd d dS) Nrr{rrr}rEr?r!r%)?rE?)r!K) r;rrrfloatrrrar_)r=rs r$test_regressionz)TestNanFunctions_Quantile.test_regressionss Yr]] " "1a + + 2 25 9 961aR^B#...0@r0J0J0JKKKR^B#A666%bBQ777 9 9 9R^B#A666%bBQ777 9 9 9R^B3%a888%bRDq999 ; ; ;R^B*;*;*;!DDD%bLLLqAAA C C C C Cr&ctjddz}ttj|ddttj|ddttj|dddS)NrrErrr}g @g?)r;rrra)r=rs r$ test_basicz$TestNanFunctions_Quantile.test_basicsn IaLL3 R^Aq))2...R^Aq))3///R^As++T22222r&c\tjgdd}tttj|dtjgdd}tttj|dtjgdd}tttj|ddSr )r;rr rBrars r$rz&TestNanFunctions_Quantile.test_complexs777sCCCi<<<777sCCCi<<<777sCCCi<<<<}t ||}t ||t |tjur?dS)Nrr()r;r/rrrrrr)rexpectedractuals r$test__nan_maskrEsm"bhsy999:""3C(((VX&&& >> + + ""r&cPtjtjtjfD]-}tjddg|}t |d\}}.tjtjfD]}tjddg|}t |d\}}t||tjddtj g|}t |d\}}t|tjgdt|tjgddS)z] Test that _replace_nan returns the original array if there are no NaNs, not a copy. rr}rr)FFT)rr}rN) r;rint32int64rrrfloat64rr)rrrmaskarr_nan result_nanmask_nans r$test__replace_nanrNs (BHbh/h1vU+++#C++  *bj) % %h1vU+++#C++  VS!!!(Aq"&>777+GQ77 HXrx(<(<(<==>>>Z)))!4!45555 % %r&)2rrir*numpyr;numpy.core.numericrnumpy.lib.nanfunctionsrr numpy.testingrrrr r r rrrqrrrrrnr  _TEST_ARRAYSr-_vsetflagsrjrkr keysr4rLrbror _TIME_UNITSrrrrr.rrH complex64rErNrr&r$rYsW 333333:::::::: 62666266B7BFFFFC626266267C26266626BD E E 222 3 3 ;;; < < 67# $ $ *** + + - RXAAAEEE<<<>>>@AA bhBBBFFF===???ABB , , , , , , , , ^m%m%m%m%m%m%m%m%`Z$Z$Z$Z$Z$Z$Z$Z$~ "(1++ "(((( ) )      BKKeK Lj!99C? 3 3 5 5<;L;L;N;NOOB*B*B*B*B*B*B*PO  B*Jf1f1f1f1f1f1f1f1R8$8$8$8$8$;8$8$8$vF.F.F.F.F.">F.F.F.R^7^7^7^7^7">^7^7^7B d2< +,, 66+6666 FBFBFBFBFBFBFBFBRlTlTlTlTlTlTlTlT^9(9(9(9(9(9(9(9(v RXrvsBFBF+,, RX((())+RXlll"(+++  RX((())  RX}!(* 666 RXt}t} + ""! "%%%%%r&