%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /lib64/python3.9/site-packages/numpy/lib/tests/__pycache__/
Upload File :
Create Path :
Current File : //lib64/python3.9/site-packages/numpy/lib/tests/__pycache__/test_nanfunctions.cpython-39.pyc

a

z[yc/��@s�ddlZddlZddlZddlZddlmZmZddlm	Z	m
Z
mZmZm
Z
mZe�dejddejdgdd	ejd
ddgejejejd
ejdgdejejddejgg�Ze�gd��e�gd��e�d
dg�e�gd��gZe�gd�gd�gd�gd�g�Ze�gd�gd�gd�gd�g�ZGdd�d�ZGdd �d �ZGd!d"�d"�Ze�d#�e�gd$��d%�Ze��D]Zejd&d'��qjej�d(ejd)ejd*d+�ejjd,e��e��d-�Gd.d/�d/���Z Gd0d1�d1�Z!Gd2d3�d3e!�Z"Gd4d5�d5e!�Z#Gd6d7�d7e!�Z$d8Z%e&ejd*�Z'e'd9d:�e%D�7Z'Gd;d<�d<�Z(Gd=d>�d>�Z)Gd?d@�d@�Z*ej�dAe�ejdBejej+g�e�gdC��fejgdD�ej,dE�dFfe�gdC��dFfejejdBgejej+ggej-dE�e�d&dFgd&dFgg�fg�dGdH��Z.dIdJ�Z/dS)K�N)�	_nan_mask�_replace_nan)�assert_�assert_equal�assert_almost_equal�
assert_raises�assert_array_equal�suppress_warnings��s���?�&S��:�?������?�ʡE��?��	��?绸�����z�G��?�L�
F%u�?�6<�R�!�?�[B>�٬�?�:M�
���S㥛�?�z�):���?���	h"�?)r
rrr
)rrrrr)rrr)r
��?rrrr
)rrrrrr)rrrrrr)rrrrrr)r
�rrrr
)rrrrrr)rrrrrr)rrrrrrc@s�eZdZejejejejejej	ej
ejejej
ejejejejejejejejejejejejejejejejejejiZ dd�e D�Z!e"d
dd��Z#e$j%j&de �'�e!d�dd	��Z(d
d�Z)dS)�TestSignatureMatchcCsg|]
}|j�qS���__name__)�.0�krr�G/usr/lib64/python3.9/site-packages/numpy/lib/tests/test_nanfunctions.py�
<listcomp>8�zTestSignatureMatch.<listcomp>�...cCsTg}t�|�}|j��D]0}|jtjjur6|�|�q|�|j|d��qt�	|�S)z?Construct a signature and replace all default parameter-values.)�default)
�inspect�	signature�
parameters�valuesr$Z	Parameter�empty�append�replaceZ	Signature)�funcr$Zprm_listr&Zprmrrr �
get_signature:s
z TestSignatureMatch.get_signaturez
nan_func,func�ZidscCs&|�|�}|�|�}tj�||�dS�N)r-�np�testingr)�selfZnan_funcr,r&Z
nan_signaturerrr �test_signature_matchFs

z'TestSignatureMatch.test_signature_matchcCs"tj�t|j�ttjjj��dS)z4Validate that all nan functions are actually tested.N)r0r1r�set�IDS�libZnanfunctions�__all__�r2rrr �test_exhaustivenessOs�z&TestSignatureMatch.test_exhaustivenessN)r#)*r�
__module__�__qualname__r0�nanminZamin�nanmaxZamax�	nanargmin�argmin�	nanargmax�argmax�nansum�sum�nanprod�prod�	nancumsum�cumsum�
nancumprod�cumprod�nanmean�mean�	nanmedian�median�
nanpercentile�
percentile�nanquantile�quantile�nanvar�var�nanstd�stdZNANFUNCSr5�staticmethodr-�pytest�mark�parametrize�itemsr3r9rrrr r's*�
rc	@s�eZdZejejgZejejgZ	dd�Z
dd�Zdd�Zdd�Z
d	d
�Zej�dgd��ej�d
ejd�ejjde�ej�e�dej�gddgd�dd����Zdd�Zdd�Zdd�Zdd�Zej�d
ejd�dd��Zej�d
ejd�d d!��Zd"S)#�TestNanFunctions_MinMaxcCs*t��}|jD]}||�t|t�qdSr/��_ndat�copy�nanfuncsr�r2�ndat�frrr �
test_mutation[s
z%TestNanFunctions_MinMax.test_mutationcCs\t�d�}t|j|j�D]>\}}dD]0}|||dd�}|||dd�}t|j|jk�q$qdS�N��Nr�T��axis�keepdims�r0�eye�zipr_�stdfuncsr�ndim�r2�mat�nf�rfri�tgt�resrrr �
test_keepdimsbs
z%TestNanFunctions_MinMax.test_keepdimscCs^t�d�}t|j|j�D]@\}}t�d�}||dd�}||d|d�}t||�t||�qdS�Nrerg�ri�ri�out�r0rlrmr_rn�zerosr�r2rqrrrs�resoutrtrurrr �test_outjs


z TestNanFunctions_MinMax.test_outcCs�d}t|j|j�D]x\}}|D]j}tjd|d�}||dd�jj}||dd�jj}t||u�||dd�jj}||dd�jj}t||u�qqdS)N�efdgFDGre��dtypergrx�rmr_rnr0rlr��typer�r2�codesrrrs�crqrtrurrr �test_dtype_from_inputssz-TestNanFunctions_MinMax.test_dtype_from_inputcsDt|j|j�D]0\}��fdd�tD�}|tdd�}t||�qdS)Ncsg|]}�|��qSrr�r�d�rsrr r!�r"z>TestNanFunctions_MinMax.test_result_values.<locals>.<listcomp>rgrx�rmr_rn�_rdatr]r�r2rrrtrurr�r �test_result_values�sz*TestNanFunctions_MinMax.test_result_valuesrirfr��AllFloat�array�rere�0d�2dr.c	Cs�|dur|jdkrt�d�|�|�}d}|jD]`}tjt|d��|||d�}Wd�n1sd0Yt�|��	�s�J�|j
|j
ks0J�q0dS�Nr�*`axis != None` not supported for 0d arrays�All-NaN slice encountered��matchrx)rorW�skip�astyper_�warns�RuntimeWarningr0�isnan�allr��r2rir�r�r�r,rzrrr �test_allnans�s


*z$TestNanFunctions_MinMax.test_allnanscCsjtj�t�}|j��}tjfD]F}||dd�}|tdd�}t||�t|j|�tt�	|��
��qdS)Nrgrx)r0ZmaZfix_invalidr]Z_maskr^r<rrZisinf�any)r2rqZmskrbrurtrrr �test_masked�s

z#TestNanFunctions_MinMax.test_maskedcCs |jD]}t|d�dk�qdS�Nr�r_r�r2rbrrr �test_scalar�s
z#TestNanFunctions_MinMax.test_scalarc	CsBGdd�dtj�}t�d��|�}|jD]j}||dd�}tt||��t|jdk�||dd�}tt||��t|jdk�||�}t|jdk�q(tj|d<|jD�]�}t	j
d	d
��Z}t	�d�||dd�}tt||��tt�t�
|���tt|�dk�Wd�n1�s0Yt	j
d	d
���}t	�d�||dd�}tt||��tt�
|d��o�t�
|d��o�t�
|d��tt|�dkd
�tt|djt��Wd�n1�s�0Yt	j
d	d
��N}t	�d�||�}t|jdk�t|tjk�tt|�dk�Wd�q�1�s20Yq�dS)Nc@seZdZdS)z8TestNanFunctions_MinMax.test_subclass.<locals>.MyNDArrayN�rr:r;rrrr �	MyNDArray�sr�rerrx�rergrT��record�always��no warning raised)r0�ndarrayrl�viewr_r�
isinstance�shape�nan�warnings�catch_warnings�simplefilterr�r��len�
issubclass�categoryr�)r2r��minerbru�wrrr �
test_subclass�sD


0
$�4
z%TestNanFunctions_MinMax.test_subclasscCs�tjddgtjdgtjtjggtd�}tt�|�d�ttj|dd�ddg�tjdd��`}t�d	�tt	tj|d
d��ddtjg�t
t|�d
kd�t
t|dj
t��Wd�n1s�0YdS)Nrg@�@r�rrxTr�r�rgr�)r0r�r��objectrr<r�r�r��listrr�r�r�r�)r2�arrr�rrr �test_object_array�s&
 z)TestNanFunctions_MinMax.test_object_arraycCs�Gdd�dtj�}t�d��|�}tj|dd�<|jD]h}|tjurHdnd}|||d�}|j|ksfJ�||ksrJ�||�|�|d�}|j|ks�J�||ks6J�q6dS)Nc@seZdZdS)z7TestNanFunctions_MinMax.test_initial.<locals>.MyNDArrayNr�rrrr r��sr��	��dr��initial)	r0r��aranger�r�r_r=r�r�)r2r�r��arrbr��ret1�ret2rrr �test_initial�s
z$TestNanFunctions_MinMax.test_initialc	Cs�Gdd�dtj�}t�d��dd��|�}tj|ddd�f<tj|tjd�}d|dd�df<|jD]l}|tj	urtdnd	}|||d
d�}|j
|ks�J�||ks�J�||�|�|d
d�}|j
|ks�J�||ksbJ�qbdS)Nc@seZdZdS)z5TestNanFunctions_MinMax.test_where.<locals>.MyNDArrayNr�rrrr r��sr�r�rerr�F��r���wherer�)r0r�r��reshaper�r��	ones_like�bool_r_r<r�r�)	r2r�r�r�r�rb�	referencer�r�rrr �
test_where�s
z"TestNanFunctions_MinMax.test_whereN)rr:r;r0r<r=r_�min�maxrnrcrvrr�r�rWrXrY�	typecodesr�r��fullr�r�r�r�r�r�r�rrrr r[Vs0	

��
+
r[c	@s�eZdZejejgZdd�Zdd�Ze	j
�dgd��e	j
�dejd�e	j
jd	e�
ej�e�d
ej�gddgd
�dd����Zdd�Zdd�Zdd�Ze	j
�dejd�dd��Ze	j
�dejd�dd��ZdS)�TestNanFunctions_ArgminArgmaxcCs*t��}|jD]}||�t|t�qdSr/r\r`rrr rc
s
z+TestNanFunctions_ArgminArgmax.test_mutationc
Cs�t|jtjtjg�D]�\}}tD]�}t��n}|�td�||�}||}t	t�
|��t	|||����t	t�||d|�����Wd�q 1s�0Yq qdS)Nzinvalid value encountered in)
rmr_r0ZgreaterZlessr]r	�filterr�rr�r�Zequal)r2rbZfcmp�row�supZind�valrrr r�sz0TestNanFunctions_ArgminArgmax.test_result_valuesrirfr�r�r�r�r�r�r.c	Csp|dur|jdkrt�d�|�|�}|jD]>}tjtdd��|||d�Wd�q,1s`0Yq,dSr�)rorWr�r�r_Zraises�
ValueError)r2rir�r�r,rrr r�s


z*TestNanFunctions_ArgminArgmax.test_allnanscCsZt�d�}|jD]D}dD]}tt|||d�qdD] }|||d�}t|t�d��q2qdS)N�rre�rNrx�rgr)r0r|r_rr�r)r2rqrbrirurrr �
test_empty-s

z(TestNanFunctions_ArgminArgmax.test_emptycCs |jD]}t|d�dk�qdSr�r�r�rrr r�6s
z)TestNanFunctions_ArgminArgmax.test_scalarcCs�Gdd�dtj�}t�d��|�}|jD]j}||dd�}tt||��t|jdk�||dd�}tt||��t|jdk�||�}t|jdk�q(dS)	Nc@seZdZdS)z>TestNanFunctions_ArgminArgmax.test_subclass.<locals>.MyNDArrayNr�rrrr r�;sr�rerrxr�rgr)r0r�rlr�r_rr�r�)r2r�r�rbrurrr r�:s
z+TestNanFunctions_ArgminArgmax.test_subclasscCsht�d��|�}tj|dd�<|jD]>}|tjur6dnd}||dd�}|j|jksVJ�||ks$J�q$dS)Nr�r�r�T)rj)r0r�r�r�r_r>ro�r2r�r�rbr��retrrr rvKs
z+TestNanFunctions_ArgminArgmax.test_keepdimscCstt�d��|�}tj|dd�<|jD]J}tjdtjd�}|tjurFdnd}|||d�}||usbJ�||ks$J�q$dS)Nr�r�rr�r��rz)r0r�r�r�r_r|�intpr>)r2r�r�rbrzr�r�rrr rVs
z&TestNanFunctions_ArgminArgmax.test_outN)rr:r;r0r>r@r_rcr�rWrXrYr�r�r�r�r�r�r�r�rvrrrrr r�s&

��		

r�r�)��'�]�W�.)r�Z1dF)�writer�Z
AllIntegerr��Orqr.c@seZdZejejejejejej	ej
ejejej
ejejejejejejejejejejejejejejiZdd�eD�Zejj de�!�ed�ej"dd�dd���Z#ejj dej$ej%fej&ej'fgd	d
gd�dd��Z(ejj dejejfejejfgd
dgd�dd��Z)dS)�TestNanFunctions_NumberTypescCsg|]
}|j�qSrr)r�irrr r!�r"z'TestNanFunctions_NumberTypes.<listcomp>znanfunc,funcr.�ignore)ZovercCsV|�|�}||�}||�}t||�|dkrBt|�t|�usRJ�n|j|jksRJ�dS)Nr��r�rr�r��r2rqr�Znanfuncr,rtrzrrr �test_nanfunc�s

z)TestNanFunctions_NumberTypes.test_nanfuncrPrNcCs^|�|�}||dd�}||dd�}t||�|dkrJt|�t|�usZJ�n|j|jksZJ�dS)Nrg��qr�r�r�rrr �test_nanfunc_q�s

z+TestNanFunctions_NumberTypes.test_nanfunc_qrRrTcCs^|�|�}||dd�}||dd�}t||�|dkrJt|�t|�usZJ�n|j|jksZJ�dS)N��?��ddofr�r�r�rrr �test_nanfunc_ddof�s

z.TestNanFunctions_NumberTypes.test_nanfunc_ddofN)*rr:r;r0r<r�r=r�r>r?r@rArBrCrDrErFrGrHrIrJrKrLrMrRrSrTrUr_Znanfunc_idsrWrXrYrZZerrstater�rPrQrNrOr�r�rrrr r�ls:�
�
�r�c@sTeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�ZdS)�SharedNanFunctionsTestsMixincCs*t��}|jD]}||�t|t�qdSr/r\r`rrr rc�s
z*SharedNanFunctionsTestsMixin.test_mutationcCs\t�d�}t|j|j�D]>\}}dD]0}|||dd�}|||dd�}t|j|jk�q$qdSrdrkrprrr rv�s
z*SharedNanFunctionsTestsMixin.test_keepdimscCs^t�d�}t|j|j�D]@\}}t�d�}||dd�}||d|d�}t||�t||�qdSrwr{r}rrr r�s


z%SharedNanFunctionsTestsMixin.test_outc	
Cs�t�d�}d}t|j|j�D]�\}}|D]�}t���}|tjtjhvrX|dvrX|�tj	�||t�
|�dd�j
j}||t�
|�dd�j
j}t||u�||t�
|�dd�j
j}||t�
|�dd�j
j}t||u�Wd�q(1s�0Yq(qdS�Nrer�ZFDGrg)r�ri�
r0rlrmr_rnr	rTrRr��ComplexWarningr�r�r�	r2rqr�rrrsr�r�rtrurrr �test_dtype_from_dtype�s
z2SharedNanFunctionsTestsMixin.test_dtype_from_dtypec	
Cs�t�d�}d}t|j|j�D]�\}}|D]�}t���}|tjtjhvrX|dvrX|�tj	�|||dd�j
j}|||dd�j
j}t||u�|||dd�j
j}|||dd�j
j}t||u�Wd�q(1s�0Yq(qdSr�r�rrrr �test_dtype_from_char�s
z1SharedNanFunctionsTestsMixin.test_dtype_from_charcCs�d}t|j|j�D]�\}}|D]t}tjd|d�}||dd�jj}||dd�jj}t||ud||f�||dd�jj}||dd�jj}t||u�qqdS)Nr�rer�rgrxzres %s, tgt %sr�r�rrr r��sz2SharedNanFunctionsTestsMixin.test_dtype_from_inputcsDt|j|j�D]0\}��fdd�tD�}|tdd�}t||�qdS)Ncsg|]}�|��qSrrr�r�rr r!�r"zCSharedNanFunctionsTestsMixin.test_result_values.<locals>.<listcomp>rgrxr�r�rr�r r��sz/SharedNanFunctionsTestsMixin.test_result_valuescCs |jD]}t|d�dk�qdSr�r�r�rrr r��s
z(SharedNanFunctionsTestsMixin.test_scalarcCs�Gdd�dtj�}t�d�}|�|�}|jD]�}||dd�j}||dd�}tt||��t|j|k�||dd�j}||dd�}tt||��t|j|k�||�j}||�}tt||��t|j|k�q,dS)Nc@seZdZdS)z=SharedNanFunctionsTestsMixin.test_subclass.<locals>.MyNDArrayNr�rrrr r�sr�rerrxrg)r0r�rlr�r_r�rr�)r2r�r�r�rbZexpected_shaperurrr r�s 



z*SharedNanFunctionsTestsMixin.test_subclassN)rr:r;rcrvrrrr�r�r�r�rrrr r��s	
r�c	@s�eZdZejejgZejejgZ	e
j�dgd��e
j�dej
d�e
jjde�ej�e�dej�gddgd	�d
d����Zdd
�Ze
j�dej
d�dd��Ze
j�dej
d�dd��ZdS)�TestNanFunctions_SumProdrirfr�r�r�r�r�r�r.cCsr|dur|jdkrt�d�|�|�}t|jddg�D]6\}}|||d�}t�||k�s\J�|j|jks6J�q6dS)Nrr�rgrx�	rorWr�r�rmr_r0r�r��r2rir�r�r,�identityrzrrr r�s

z%TestNanFunctions_SumProd.test_allnanscCs�ttjtjgddg�D]f\}}t�d�}|gd}||dd�}t||�g}||dd�}t||�|}||dd�}t||�qdS)Nrrgr�rerx)rmr0rBrDr|r�r2rbZ	tgt_valuerqrtrurrr r�.s



z#TestNanFunctions_SumProd.test_emptycCsft�d��|�}tj|dd�<|jD]<}|tjur6dnd}||dd�}|j|ksTJ�||ks$J�q$dS)Nr�r��i 
r�r�)r0r�r�r�r_rBr�r�rrr r�;s
z%TestNanFunctions_SumProd.test_initialcCs�t�d��dd��|�}tj|ddd�f<tj|tjd�}d|dd�df<|jD]>}|tjurbdnd}|||dd	�}|j	|ks�J�||ksPJ�qPdS)
Nr�rerr�F�i�r�r�)
r0r�r�r�r�r�r�r_rBr�)r2r�r�r�rbr�r�rrr r�Fs
z#TestNanFunctions_SumProd.test_whereN)rr:r;r0rBrDr_rCrErnrWrXrYr�r�r�r�r�r�r�r�rrrr rs 
��



rc	@s�eZdZejejgZejejgZ	e
j�dgd��e
j�dej
d�e
jjde�ej�e�dej�gddgd	�d
d����Zdd
�Zdd�Zdd�Zdd�ZdS)�TestNanFunctions_CumSumProdrirfr�r�r�r�r�r�r.cCsn|dur|jdkrt�d�|�|�}t|jddg�D]2\}}||�}t�||k�sXJ�|j|jks6J�q6dS)Nrr�rgrrrrr r�Ys

z(TestNanFunctions_CumSumProd.test_allnanscCs�t|jddg�D]p\}}t�d�}|t�d�}||dd�}t||�|}||dd�}t||�t�d�}||dd�}t||�qdS)Nrrgr�rx)rmr_r0r|�onesrrrrr r�is



z&TestNanFunctions_CumSumProd.test_emptyc	Cs�t|j|j�D]H\}}t�d�}dD]0}|||dd�}|||dd�}t|j|jk�q$q|jD]p}t�d�}tj�	d�}tj
||j|j�dk<||dd�}t
|jd�t�d	�D]}|||d�}t
|jd�q�q^dS)
Nrerfry�rer���rr�rx)i�r�)rmr_rnr0rlrror�randomZRandomStater��randr�rr�)	r2rb�grqrirtrur�Zrsrrr rvvs


z)TestNanFunctions_CumSumProd.test_keepdimscCsZdD]P}tjt|d�}tjt|d�}t||�tjt|d�}tjt|d�}t||�qdS)N)������rrgNrx)	r0rI�
_ndat_onesrHr]rrG�_ndat_zerosrF)r2rirtrurrr r��s
z.TestNanFunctions_CumSumProd.test_result_valuescCsht�d�}t|j|j�D]J\}}t�d�}dD]2}|||d�}||||d�}t||�t||�q.qdS)Nre)rrrrgrxry)r0rlrmr_rnr)r2rqrrrsr~rirtrurrr r�s


z$TestNanFunctions_CumSumProd.test_outN)rr:r;r0rFrHr_rGrIrnrWrXrYr�r�r�r�r�r�rvr�rrrrr r
Ts
��

	r
c	@s�eZdZejejejgZejej	ej
gZdd�Zdd�Z
dd�Zdd�Zej�d	gd
��ej�dejd�ejjd
e�ej�e�dej�gddgd�dd����Zdd�Zej�dejd�dd��ZdS)�TestNanFunctions_MeanVarStdc	Cs8|jD],}tjtjtjfD]}tt|td|d�qqdS)Nrg)rir�)r_r0r��int_�object_r�	TypeErrorr])r2rbr�rrr �test_dtype_error�s
z,TestNanFunctions_MeanVarStd.test_dtype_errorc	CsL|jD]@}tjtjtjfD]*}tjtjd|d�}tt	|td|d�qqdS)Nrr�rgry)
r_r0r�rrr)r]r�rr)r2rbr�rzrrr �test_out_dtype_error�s
z0TestNanFunctions_MeanVarStd.test_out_dtype_errorcsftjtjg}tjtjg}t||�D]>\}�dD]0���fdd�tD�}|td�d�}t||�q.q"dS)N�rrgcsg|]}�|�d��qS)r�rr��r�rsrr r!�r"z9TestNanFunctions_MeanVarStd.test_ddof.<locals>.<listcomp>rg�rir�)	r0rRrTrSrUrmr�r]r)r2r_rnrrrtrurrr �	test_ddof�sz%TestNanFunctions_MeanVarStd.test_ddofc	
s�tjtjg}tjtjg}dd�tD�}t||�D]�\}}td�D]��t���}|�	t
�|�tj��fdd�|D�}|t
d�d�}tt�|�|�t|�r�tt|j�dk�ntt|j�dk�Wd�q@1s�0Yq@q0dS)NcSsg|]}t|��qSr)r�r�rrr r!�r"zATestNanFunctions_MeanVarStd.test_ddof_too_big.<locals>.<listcomp>r�csg|]}�|k�qSrrr�r�rr r!�r"rgrr)r0rRrTrSrUr�rm�ranger	r�r�r�r�r]rr�r�rr��log)	r2r_rnZdsizerrrsr�rtrurr�r �test_ddof_too_big�s
z-TestNanFunctions_MeanVarStd.test_ddof_too_bigrirfr�r�r�r�r�r�r.c	Cs�|dur|jdkrt�d�|�|�}d}|jD]�}tjt|d��|||d�}Wd�n1sd0Yt�|��	�s�J�|tj
ur�|j|jks�J�q0|jt�|�jks0J�q0dS)Nrr�z:(Degrees of freedom <= 0 for slice.)|(Mean of empty slice)r�rx)
rorWr�r�r_r�r�r0r�r�rJr��absr�rrr r��s


*
z(TestNanFunctions_MeanVarStd.test_allnansc
Cst�d�}|jD]�}dD]x}tjdd��X}t�d�tt�|||d�����tt	|�dk�tt
|djt��Wd�q1s�0Yqd	D]b}tjdd��B}t�d�t
|||d�t�g��tt	|�dk�Wd�q�1s�0Yq�qdS�
Nr�r�Tr�r�rxrgrr�)r0r|r_r�r�r�rr�r�r�r�r�r�r)r2rqrbrir�rrr r��s


4
z&TestNanFunctions_MeanVarStd.test_emptyc	Cs�t�d��dd��|�}tj|ddd�f<tj|tjd�}d|dd�df<t|j|j	�D]Z\}}|||dd��}|tj
ur�|n|jj}|||d�}|j|ks�J�tj
�||�qXdS)Nr�rerr�Fr�)r�)r0r�r�r�r�r�r�rmr_rnrJ�realr�r1Zassert_allclose)	r2r�r�r�rbZf_stdr�Zdtype_referencer�rrr r��sz&TestNanFunctions_MeanVarStd.test_whereN)rr:r;r0rJrRrTr_rKrSrUrnrrrr"rWrXrYr�r�r�r�r�r�r�rrrr r�s$	
��r)
�Y�M�W�D�h�m�s�ms�us�nsZpsZfs�ascCsg|]}d|�d��qS)zm8[�]r)rZunitrrr r!r"r!c@s|eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zej	�
dgd��ej	�
d
e�dd���Zdd�Z
dd�Zdd�Zdd�ZdS)�TestNanFunctions_MediancCs t��}t�|�t|t�dSr/)r]r^r0rLr�r2rarrr rc	s
z%TestNanFunctions_Median.test_mutationcCsnt�d�}dD]8}tj||ddd�}tj||ddd�}t|j|jk�qt�d�}tj�d�t�|j	�dd�df}|�
tj�}tj|t
|�<t���}|�t�tj|ddd�}t|j	d	�tj|d
dd�}t|j	d�tj|ddd�}t|j	d
�tj|ddd�}t|j	d�tj|ddd�}t|j	d	�tj|ddd�}t|j	d�Wd�n1�s`0YdS)NrerfF�rirz�overwrite_inputr�r���Trh�rgrgrgrgr�rgrgr
rr��rgr�r
rgr��rergr
r�rrgr�re�rrgre�rgrgr
rg)r0rlrMrLrrorrr�r�r�r�r��tupler	r�r�r�r2rqrirtrur�r�r�rrr rvs.

$
z%TestNanFunctions_Median.test_keepdimscCs�tj�dd�}tj|ddgtjdd�}t�d�}tj|dd�}tj|d|d�}t||�t||�t�d�}tj|dd�}tj|d|d�}t||�t||�tj|d|d�}t||�t||�dS)	Nrerr�rgrxryrr)	r0rr�insertr�r|rMrLr�r2rq�nan_matr~rtrurrr r*s






z TestNanFunctions_Median.test_outcCs�dD]�}tj�d|�}tjjd|j|jdd�}tj|��|<d|dd�df<g}|D],}t�t�|�|�}|�	tj
|dd��qVttj|d	d
�|�qdS)N)r���3r7i�r�rr�)�sizerT)r5rrx)
r0rZrandnZrandintrFr�Zravel�compressr�r*rMrrL)r2r,r�r�rt�xZnonanrrr �test_small_large<sz(TestNanFunctions_Median.test_small_largecCs*dd�tD�}tjtdd�}t||�dS)NcSsg|]}t�|��qSr)r0rMr�rrr r!Mr"z>TestNanFunctions_Median.test_result_values.<locals>.<listcomp>rgrx)r�r0rLr]r�r2rtrurrr r�Lsz*TestNanFunctions_Median.test_result_valuesrirfr�cCst�dtj��|�}t���}|�t�tj||d�}|j|jksDJ�t�	|��
�sVJ�|durrtt|j
�dk�ntt|j
�dk�t�tj��|�d}t�|�}|j|jks�J�t�	|�s�J�|dur�tt|j
�dk�ntt|j
�dk�Wd�n1�s0YdS)Nr�rxrgrerr�r�)r0r�r�r�r	r�r�rLr�r�r�rr�r!r�)r2r�rirqr��outputZscalarZ
output_scalarrrr r�Qs 

z$TestNanFunctions_Median.test_allnansc	Cs�t�d�}dD]z}tjdd��Z}t�d�tt�tj||d�����tt	|�dk�tt
|djt��Wd�q1s~0Yqd	D]d}tjdd��D}t�d�t
tj||d�t�g��tt	|�dk�Wd�q�1s�0Yq�dSr$)r0r|r�r�r�rr�rLr�r�r�r�r�r�r2rqrir�rrr r�ls

4
z"TestNanFunctions_Median.test_emptycCstt�d�dk�dSr�)rr0rLr8rrr r�zsz#TestNanFunctions_Median.test_scalarcCspt�d�}ttjtj|dd�ttjtj|dd�ttjtj|dd�ttjtj|dd�tttj|dd�dS)Nr���rx�rrMr��rr��rgrg)r0rr�	AxisErrorrLr��r2r�rrr �test_extended_axis_invalid}s
z2TestNanFunctions_Median.test_extended_axis_invalidc	Cs�t����}|�t�tjtjfD�]�}t�|tjgtjtjgg�}ttj|dd�|tjg�ttj|dd�|tjg�tt�|�|�t�tjtj|gtjtj|gg�}tt�|�|�ttj|dd�tjtj|g�ttj|dd�|�t�||g||gg�}ttj|dd�|�tj|d|dgdtjtjdgdtjtj|ggtj	d	�}|dk�r�ttj|dd�d
d|dg�tt�|�d
�n.ttj|dd�dd|dg�tt�|�d�ttj|dd�dd|g�t
dd�D]�}t
dd�D]�}t�tjg||g|gd�}tt�|�|�ttj|dd�|�ttj|dd�tjg||g|�t�tjg||g|gd�}tt�|�|�ttj|dd�|�ttj|dd�tjg||g|��q�q�q"Wd�n1�s�0YdS)Nrrxrgr
i����i����r�r�r�r�g@�@g@g$�g"�g�rg��
r�)r	r�r�r0�infr�r�rrL�float32r )r2r�rV�ar��jrrr �test_float_special�sR

���
"�$�z*TestNanFunctions_Median.test_float_specialN)rr:r;rcrvrrIr�rWrXrY�_TYPE_CODESr�r�r�rSrZrrrr r2sr2c	@s�eZdZdd�Zdd�Zdd�Zdd�Zej�	d	gd
��ej�	de
jd�ejj	d
e
�e
j
�e
�de
j
�gddgd�dd����Zdd�Zdd�Zdd�Zdd�ZdS)�TestNanFunctions_PercentilecCs"t��}t�|d�t|t�dS)N�)r]r^r0rNrr3rrr rc�sz)TestNanFunctions_Percentile.test_mutationcCs~t�d�}dD]<}tj|d|ddd�}tj|d|ddd�}t|j|jk�qt�d�}tj�d�t�|j	�dd�df}|�
tj�}tj|t
|�<t���}|�t�tj|ddd	d
�}t|j	d�tj|ddd	d
�}t|j	d
�tj|ddd	d
�}t|j	d�tj|ddd	d
�}t|j	d�tj|ddd	d
�}t|j	d�tj|ddd	d
�}t|j	d�Wd�n1�sp0YdS)Nrerf�FFr4rr6�ZTrhr8rr9r�r:r�r;r<r=r>)r0rlrOrNrrorrr�r�r�r�r�r?r	r�r�rr@rrr rv�s6
��
$
z)TestNanFunctions_Percentile.test_keepdimscCs�tj�dd�}tj|ddgtjdd�}t�d�}tj|ddd�}tj|dd|d�}t||�t||�t�d�}tj|ddd�}tj|dd|d�}t||�t||�tj|dd	|d�}t||�t||�dS)
Nrerr�rgrx�*ryrr)	r0rrrAr�r|rOrNrrBrrr r�s






z$TestNanFunctions_Percentile.test_outcCsZdd�tD�}tjtddd�}t||�t�dd�tD��}tjtddd�}t||�dS)NcSsg|]}t�|d��qS)r�r0rOr�rrr r!�r"zBTestNanFunctions_Percentile.test_result_values.<locals>.<listcomp>rrgrxcSsg|]}t�|d��qS)�r�brar�rrr r!�r"rb)r�r0rNr]rZ	transposerJrrr r��s
z.TestNanFunctions_Percentile.test_result_valuesrirfr�r�r�r�r�r�r.cCs�|dur|jdkrt�d�|�|�}tjtdd�� tj|d|d�}Wd�n1sZ0Yt�|��	�svJ�|j
|j
ks�J�dS)Nrr�r�r��<rx)rorWr�r�r�r�r0rNr�r�r��r2rir�r�rzrrr r��s

.z(TestNanFunctions_Percentile.test_allnansc
Cs�t�d�}dD]|}tjdd��\}t�d�tt�tj|d|d�����tt	|�dk�tt
|d	jt��Wd�q1s�0Yqd
D]f}tjdd��F}t�d�t
tj|d|d�t�g��tt	|�d	k�Wd�q�1s�0Yq�dS)Nr�r�Tr�r��(rxrgrr�)r0r|r�r�r�rr�rNr�r�r�r�r�rrLrrr r�s

4
z&TestNanFunctions_Percentile.test_emptycCsHtt�dd�d�t�d�}tj|ddd�}t|d�tt�|��dS)Nrr���2rrxg@)rr0rNr�rZisscalar)r2rX�rrrr r�s


z'TestNanFunctions_Percentile.test_scalarcCszt�d�}ttjtj|ddd�ttjtj|ddd�ttjtj|ddd�ttjtj|ddd�tttj|ddd�dS)	Nrr�rM�r�rirNr�rOrP)r0rrrQrNr�rRrrr rSs
z6TestNanFunctions_Percentile.test_extended_axis_invalidc
Cs0ddg}t�d�}tj|}t�d�}d|dd�ddd�dd�f<|dd�dd�dd�fd9<d	D]�}d
D]�}t��|}|�td�tj||||d�}tj||||d�}	t|	j	|j	�tj||||d�}tj||||d�}	t|	|�Wd�qp1s�0Yqpqht�d
�}
ttj|
|dd�j	d�dS)Nrhr�)r�re)rer�r�rr�r�rerf)FTr�rh)rer�r�rg)rgr�rx)r�rerg)
r0rr�r	r�r�rOrNrr�)r2�percrqrCZ	large_matriZkeepdimr�r�Znan_valZmegamatrrr �test_multiple_percentiles!s0


"
�
�
�,
z5TestNanFunctions_Percentile.test_multiple_percentilesN)rr:r;rcrvrr�rWrXrYr0r�r�r�r�r�r�r�rSrlrrrr r\�s"	
��
r\c	@s~eZdZdd�Zdd�Zdd�Zej�dgd��ej�d	e	j
d
�ejjde	�e	j�e	�
de	j�gd
dgd�dd����ZdS)�TestNanFunctions_QuantilecCs�t�d��ddd��t�}tj|dd<ttj|dd�tj|d	d��ttj|ddd
�tj|d	dd
��ttj|ddd
�tj|d	dd
��ttj|dgdd
�tj|d	gdd
��ttj|gd�dd
�tj|gd�dd
��dS)
N�r�rer�rrgr�r�rhrj)��?r���?)�rh�K)	r0r�r�r��floatr�rrPrN)r2r�rrr �test_regression?s����z)TestNanFunctions_Quantile.test_regressioncCsHt�d�d}tt�|d�d�tt�|d�d�tt�|d�d�dS)Nr�r�rrrgg@g�?)r0r�rrP)r2rHrrr �
test_basicMsz$TestNanFunctions_Quantile.test_basiccCsjt�gd��}|��}tjt�d�|dd�t||�|��}|��}tjt�d�|dd�t||�dS)N)rrpror�rgY@Zmidpoint)�method)r0r�r^rPr�r�tolist)r2Zp0�prrr �test_no_p_overwriteSs
z-TestNanFunctions_Quantile.test_no_p_overwriterirfr�r�r�r�r�r�r.cCs�|dur|jdkrt�d�|�|�}tjtdd�� tj|d|d�}Wd�n1sZ0Yt�|��	�svJ�|j
|j
ks�J�dS)Nrr�r�r�rgrx)rorWr�r�r�r�r0rPr�r�r�rerrr r�_s

.z&TestNanFunctions_Quantile.test_allnansN)rr:r;rtruryrWrXrYr0r�r�r�r�r�rrrr rm<s
��rmz
arr, expectedrT)FTFT)rgr�r
r�r�TcCsPdtj|jtjd�fD]4}t||d�}t||�t|�tjur|dusJ�qdS)Nr�r�T)r0r)r�r�rrr�r�)r�Zexpectedrz�actualrrr �test__nan_maskos

r{cCstjtjtjfD]<}tjddg|d�}t|d�\}}|dus@J�||usJ�qtjtjfD]�}tjddg|d�}t|d�\}}|dk��s�J�||us�J�t	||�tjddtj
g|d�}t|d�\}}t	|t�gd���||us�J�t	|t�gd���t�|d	�sZJ�qZdS)
z] Test that _replace_nan returns the original array if there are no
    NaNs, not a copy.
    rrgr�Nr�F)FFT)rrgr�r)r0r�Zint32�int64r�rrWZfloat64r�rr�r�)r�r��result�maskZarr_nanZ
result_nanZmask_nanrrr �test__replace_nan�s"
r)0r�rWr%Znumpyr0Znumpy.lib.nanfunctionsrrZ
numpy.testingrrrrrr	r�r�r]r�rrrr[r�Z_TEST_ARRAYSr(Z_vZsetflagsrXrYr��keysr�r�rr
rZ_TIME_UNITSr�r[r2r\rmrVr|Z	complex64r{rrrrr �<module>s� ��
�
�/1_��?i;Ia.	3���
��
���


Zerion Mini Shell 1.0