403Webshell
Server IP : 217.160.0.135  /  Your IP : 216.73.217.85
Web Server : Apache
System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64
User : sws1074145052 ( 1074145052)
PHP Version : 8.3.32
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /usr/lib/python3/dist-packages/numpy/lib/tests/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/lib/python3/dist-packages/numpy/lib/tests/__pycache__/test_nanfunctions.cpython-311.pyc
�

���c������ddlZddlZddlZddlZddlmZddlmZm	Z	ddl
mZmZm
Z
mZmZmZejdejddejdgd	d
ejddd
gejejejdejdgdejejddejgg��Zejgd���ejgd���ejddg��ejgd���gZejgd�gd�gd�gd�g��Zejgd�gd�gd�gd�g��ZGd�d��ZGd �d!��ZGd"�d#��Zejd$��ejgd%���d&�Ze���D]Ze�d'�(���ej�d)ej d*ej d+zd,z��ej�d-e���e�!���.��Gd/�d0������Z"Gd1�d2��Z#Gd3�d4e#��Z$Gd5�d6e#��Z%Gd7�d8e#��Z&d9Z'e(ej d+��Z)e)d:�e'D��z
Z)Gd;�d<��Z*Gd=�d>��Z+Gd?�d@��Z,ej�dAejejdBejej-g��ejgdC���fejgdD�ej.�E��dFfejgdC���dFfejejdBgejej-ggej/�E��ejd'dFgd'dFgg��fg��dG���Z0dH�Z1dS)I�N)�normalize_axis_tuple)�	_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r
rr)rrrrr)rrr)r��?r
rrr)rrrrrr)rrrrrr)rrrrrr)r�r
rrr)rrrrrr)rrrrrr)rrrrrrc��eZdZejejejejejej	ej
ejejej
ejejejejejejejejejejejejejejejejejejiZ d�e D��Z!e"d	d���Z#e$j%�&de �'��e!���d���Z(d�Z)dS)
�TestSignatureMatchc��g|]	}|j��
S���__name__)�.0�ks  �C/usr/lib/python3/dist-packages/numpy/lib/tests/test_nanfunctions.py�
<listcomp>zTestSignatureMatch.<listcomp>9s��
(�
(�
(�!�1�:�
(�
(�
(��...c�<�g}tj|��}|j���D]Y}|jtjjur|�|���0|�|�|������Ztj	|��S)z?Construct a signature and replace all default parameter-values.)�default)
�inspect�	signature�
parameters�valuesr)�	Parameter�empty�append�replace�	Signature)�funcr)�prm_listr+�prms     r$�
get_signaturez TestSignatureMatch.get_signature;s������%�d�+�+�	��'�.�.�0�0�	>�	>�C��{�g�/�5�5�5�����$�$�$�$�������G�� <� <�=�=�=�=�� ��*�*�*r&z
nan_func,func��idsc��|�|��}|�|��}tj�||��dS�N)r6�np�testingr)�self�nan_funcr3r+�
nan_signatures     r$�test_signature_matchz'TestSignatureMatch.test_signature_matchGsH��
�&�&�t�,�,�	��*�*�8�4�4�
�
�
���	�=�9�9�9�9�9r&c��tj�t|j��ttjjj����dS)z4Validate that all nan functions are actually tested.N)r;r<r�set�IDS�lib�nanfunctions�__all__�r=s r$�test_exhaustivenessz&TestSignatureMatch.test_exhaustivenessPsC��
�
������M�M�3�r�v�2�:�;�;�	
�	
�	
�	
�	
r&N)r')*r!�
__module__�__qualname__r;�nanmin�amin�nanmax�amax�	nanargmin�argmin�	nanargmax�argmax�nansum�sum�nanprod�prod�	nancumsum�cumsum�
nancumprod�cumprod�nanmean�mean�	nanmedian�median�
nanpercentile�
percentile�nanquantile�quantile�nanvar�var�nanstd�std�NANFUNCSrC�staticmethodr6�pytest�mark�parametrize�itemsr@rHrr&r$rr(s������
�	�2�7�
�	�2�7�
��b�i�
��b�i�
�	�2�6�
�
�B�G�
��b�i�
�
�r�z�
�
�B�G�
��b�i�
��"�-�
����
�	�2�6�
�	�2�6��H� )�
(�x�
(�
(�
(�C��	+�	+�	+��\�	+��[���_�h�n�n�.>�.>�C��H�H�:�:�I�H�:�
�
�
�
�
r&rc
�x�eZdZejejgZejejgZ	d�Z
d�Zd�Zd�Z
d�Zej�dgd���ej�dejd	��ej�d
ejej��ejdej��gdd
g���d�������Zd�Zd�Zd�Zd�Zej�dejd	��d���Zej�dejd	��d���ZdS)�TestNanFunctions_MinMaxc��t���}|jD]"}||��t|t���#dSr:��_ndat�copy�nanfuncsr�r=�ndat�fs   r$�
test_mutationz%TestNanFunctions_MinMax.test_mutation\�J���z�z�|�|����	&�	&�A�
�A�d�G�G�G���u�%�%�%�%�	&�	&r&c���tjd��}t|j|j��D]C\}}dD];}|||d���}|||d���}t|j|jk���<�DdS�N��Nr�T��axis�keepdims�r;�eye�ziprs�stdfuncsr�ndim�r=�mat�nf�rfr�tgt�ress       r$�
test_keepdimsz%TestNanFunctions_MinMax.test_keepdimsc����f�Q�i�i���$�-���7�7�	.�	.�F�B��$�
.�
.���b��4�$�7�7�7���b��4�$�7�7�7�����C�H�,�-�-�-�-�
.�	.�	.r&c��tjd��}t|j|j��D]T\}}tjd��}||d���}||d|���}t
||��t
||���UdS�Nr{r}�r�r�out�r;r�r�rsr��zerosr�r=r�r�r��resoutr�r�s       r$�test_outz TestNanFunctions_MinMax.test_outk����f�Q�i�i���$�-���7�7�	*�	*�F�B���X�a�[�[�F��"�S�q�/�/�/�C��"�S�q�f�-�-�-�C���V�,�,�,���S�)�)�)�)�	*�	*r&c�|�d}t|j|j��D]�\}}|D]�}tjd|���}||d���jj}||d���jj}t||u��||d���jj}||d���jj}t||u������dS)N�efdgFDGr{��dtyper}r��r�rsr�r;r�r��typer�r=�codesr�r��cr�r�r�s        r$�test_dtype_from_inputz-TestNanFunctions_MinMax.test_dtype_from_inputts������$�-���7�7�		$�		$�F�B���
$�
$���f�Q�a�(�(�(���b��1�o�o�o�+�0���b��1�o�o�o�+�0����s�
�#�#�#��b��4�(�(�(�.�3���b��4�(�(�(�.�3����s�
�#�#�#�#�
$�		$�		$r&c���t|j|j��D]:\}��fd�tD��}|td���}t||���;dS)Nc�&��g|]
}�|����Srr�r"�dr�s  �r$r%z>TestNanFunctions_MinMax.test_result_values.<locals>.<listcomp>��!���(�(�(�Q�2�2�a�5�5�(�(�(r&r}r��r�rsr��_rdatrqr�r=r�r�r�r�s    @r$�test_result_valuesz*TestNanFunctions_MinMax.test_result_values��n����$�-���7�7�	*�	*�F�B��(�(�(�(�%�(�(�(�C��"�U��#�#�#�C���S�)�)�)�)�	*�	*r&rr|r��AllFloat�array�r{r{�0d�2dr7c�~�|�|jdkrtjd��|�|��}d}|jD]|}tjt|���5|||���}ddd��n#1swxYwYtj|���	��sJ�|j
|j
ksJ��}dS�Nr�*`axis != None` not supported for 0d arrays�All-NaN slice encountered��matchr�)r�ri�skip�astypers�warns�RuntimeWarningr;�isnan�allr��r=rr�r�r�r3r�s       r$�test_allnansz$TestNanFunctions_MinMax.test_allnans�s�����
�a����K�E�F�F�F����U�#�#��+���M�	,�	,�D���n�E�:�:�:�
-�
-��d�5�t�,�,�,��
-�
-�
-�
-�
-�
-�
-�
-�
-�
-�
-����
-�
-�
-�
-��8�C�=�=�$�$�&�&�&�&�&��9���+�+�+�+�+�		,�	,��A7�7A;	�>A;	c��tj�t��}|j���}tjfD]z}||d���}|td���}t||��t|j|��ttj	|���
�����{dS)Nr}r�)r;�ma�fix_invalidrq�_maskrrrKrr�isinf�any)r=r��mskrvr�r�s      r$�test_maskedz#TestNanFunctions_MinMax.test_masked�s����e����&�&���i�n�n�����)��	-�	-�A��!�C�a�.�.�.�C��!�E��"�"�"�C���c�"�"�"����C�(�(�(�����
�
�)�)�+�+�+�,�,�,�,�	-�	-r&c�R�|jD]}t|d��dk���dS�Nr�rsr�r=rvs  r$�test_scalarz#TestNanFunctions_MinMax.test_scalar��:����	!�	!�A��A�A�b�E�E�R�K� � � � �	!�	!r&c	��Gd�dtj��}tjd���|��}|jD]�}||d���}tt
||����t|jdk��||d���}tt
||����t|jdk��||��}t|jdk����tj|d<|jD�]y}tj
d	�
��5}tjd��||d���}tt
||����ttjtj
|������tt|��dk��ddd��n#1swxYwYtj
d	�
��5}tjd��||d���}tt
||����ttj
|d��o5tj
|d��otj
|d����tt|��dkd
��tt|djt"����ddd��n#1swxYwYtj
d	�
��5}tjd��||��}t|jdk��t|tjk��tt|��dk��ddd��n#1swxYwY��{dS)Nc��eZdZdS)�8TestNanFunctions_MinMax.test_subclass.<locals>.MyNDArrayN�r!rIrJrr&r$�	MyNDArrayr����������Dr&r�r{rr��r{r}rT��record�always��no warning raised)r;�ndarrayr��viewrsr�
isinstance�shape�nan�warnings�catch_warnings�simplefilterr�r��len�
issubclass�categoryr�)r=r��minervr��ws      r$�
test_subclassz%TestNanFunctions_MinMax.test_subclass�s��	�	�	�	�	��
�	�	�	�
�v�a�y�y�~�~�i�(�(����	%�	%�A��!�D�q�/�/�/�C��J�s�I�.�.�/�/�/��C�I��%�&�&�&��!�D�q�/�/�/�C��J�s�I�.�.�/�/�/��C�I��%�&�&�&��!�D�'�'�C��C�I��O�$�$�$�$��&��Q����	%�	%�A��(��5�5�5�
%���%�h�/�/�/��a��1�o�o�o���
�3�	�2�2�3�3�3��B�F�2�8�C�=�=�1�1�1�2�2�2���A���!��$�$�$�
%�
%�
%�
%�
%�
%�
%�
%�
%�
%�
%����
%�
%�
%�
%��(��5�5�5�
C���%�h�/�/�/��a��1�o�o�o���
�3�	�2�2�3�3�3�����Q��(�(�1���#�a�&�1A�1A�-A�1� "���Q�� 0� 0�0�2�2�2���A���!��%8�9�9�9��
�1�Q�4�=�.�A�A�B�B�B�
C�
C�
C�
C�
C�
C�
C�
C�
C�
C�
C����
C�
C�
C�
C��(��5�5�5�
%���%�h�/�/�/��a��g�g����	�R��(�(�(���r�v�
�&�&�&���A���!��$�$�$�
%�
%�
%�
%�
%�
%�
%�
%�
%�
%�
%����
%�
%�
%�
%��#	%�	%s9�BF>�>G	�G	�C*K�K	�K	�4A5M5�5M9	�<M9	c	��tjddgtjdgtjtjggt���}t	tj|��d��t	tj|d���ddg��t
jd���5}t
jd	��t	ttj|d
�����ddtjg��tt|��d
kd��tt|dj
t����ddd��dS#1swxYwYdS)Nrg@�@r�rr�Tr�r�r}r�)r;r�r��objectrrKr�r�r��listrr�r�r�r�)r=�arrr�s   r$�test_object_arrayz)TestNanFunctions_MinMax.test_object_array�sZ���h��c�
�R�V�S�M�B�F�B�F�3C�D�F�S�S�S���R�Y�s�^�^�S�)�)�)��R�Y�s��+�+�+�c�3�Z�8�8�8�
�
$�D�
1�
1�
1�	?�Q��!�(�+�+�+���b�i��!�4�4�4�5�5��S�"�&�7I�J�J�J��C��F�F�a�K�!4�5�5�5��J�q��t�}�n�=�=�>�>�>�	?�	?�	?�	?�	?�	?�	?�	?�	?�	?�	?�	?����	?�	?�	?�	?�	?�	?s� B!E�E�Ec��Gd�dtj��}tjd���|��}tj|dd�<|jD]k}|tjurdnd}|||���}|j|ksJ�||ksJ�||�|��|���}|j|ksJ�||ksJ��ldS)Nc��eZdZdS)�7TestNanFunctions_MinMax.test_initial.<locals>.MyNDArrayNr�rr&r$r�r��r�r&r��	��dr��initial)	r;r��aranger�r�rsrMr�r�)r=r�r��arrvr��ret1�ret2s        r$�test_initialz$TestNanFunctions_MinMax.test_initial�s���	�	�	�	�	��
�	�	�	��Y�q�\�\�
 �
 ��
'�
'�����2�A�2����		#�		#�A��"�)�^�^�c�c��G��1�R��)�)�)�D��:��&�&�&�&��7�?�?�?�?��1�R�W�W�Y�'�'��9�9�9�D��:��&�&�&�&��7�?�?�?�?�?�		#�		#r&c��Gd�dtj��}tjd���dd���|��}tj|ddd�f<tj|tj���}d|dd�df<|jD]m}|tj	urdnd	}|||d
���}|j
|ksJ�||ksJ�||�|��|d
���}|j
|ksJ�||ksJ��ndS)Nc��eZdZdS)�5TestNanFunctions_MinMax.test_where.<locals>.MyNDArrayNr�rr&r$r�r��r�r&r�r�r{rr�F��r���wherer�)r;r�r��reshaper�r��	ones_like�bool_rsrKr�r�)	r=r�r�r�rrv�	referencer�r�s	         r$�
test_wherez"TestNanFunctions_MinMax.test_where�sF��	�	�	�	�	��
�	�	�	��Y�q�\�\�
!�
!�!�Q�
'�
'�
.�
.�u�
5�
5���6��1�a�a�a�4����R�r�x�0�0�0����a�a�a��d����		%�		%�A��"�)�^�^����I��1�R�u�a�0�0�0�D��:��&�&�&�&��9�$�$�$�$��1�R�W�W�Y�'�'�u�a�@�@�@�D��:��&�&�&�&��9�$�$�$�$�$�		%�		%r&N)r!rIrJr;rKrMrs�min�maxr�rwr�r�r�r�rirjrk�	typecodesr�r��fullr�r�r�r�r�r�rrr&r$rnrnWs��������	�2�9�%�H������H�&�&�&�.�.�.�*�*�*�$�$�$�*�*�*��[���V�\�\�\�2�2��[���W�b�l�:�&>�?�?��[���W����������������'�
�$�<����
,�
,�	��@�?�3�2�
,�-�-�-�!�!�!�)%�)%�)%�V
?�
?�
?��[���W�b�l�:�&>�?�?�#�#�@�?�#�$�[���W�b�l�:�&>�?�?�%�%�@�?�%�%�%r&rnc
�D�eZdZejejgZd�Zd�Ze	j
�dgd���e	j
�dejd��e	j
�dej
ej��ejdej��gd	d
g���d�������Zd
�Zd�Zd�Ze	j
�dejd��d���Ze	j
�dejd��d���ZdS)�TestNanFunctions_ArgminArgmaxc��t���}|jD]"}||��t|t���#dSr:rprts   r$rwz+TestNanFunctions_ArgminArgmax.test_mutationrxr&c�:�t|jtjtjg��D]�\}}t
D]�}t
��5}|�td��||��}||}ttj
|����t|||�������ttj||d|��������ddd��n#1swxYwY���dS)Nzinvalid value encountered in)
r�rsr;�greater�lessrqr�filterr�rr�r��equal)r=rv�fcmp�row�sup�ind�vals       r$r�z0TestNanFunctions_ArgminArgmax.test_result_valuess\���4�=�2�:�r�w�*?�@�@�
	@�
	@�G�A�t��	
@�	
@��&�(�(�@�C��J�J�~�/M�N�N�N��!�C�&�&�C��c�(�C�����
�
�-�.�.�.����S�#��� 2� 2� 4� 4�4�5�5�5�����c�$�3�$�i� 8� 8� <� <� >� >�>�?�?�?�@�@�@�@�@�@�@�@�@�@�@����@�@�@�@��	
@�
	@�
	@s�B:D�D�Drr|r�r�r�r�r�r�r7c��|�|jdkrtjd��|�|��}|jD]B}tjtd���5|||���ddd��n#1swxYwY�CdSr�)r�rir�r�rs�raises�
ValueError)r=rr�r�r3s     r$r�z*TestNanFunctions_ArgminArgmax.test_allnanss������
�a����K�E�F�F�F����U�#�#���M�	'�	'�D���z�1L�M�M�M�
'�
'���U��&�&�&�&�
'�
'�
'�
'�
'�
'�
'�
'�
'�
'�
'����
'�
'�
'�
'��	'�	's�A5�5A9	�<A9	c���tjd��}|jD]S}dD]}tt|||����dD]1}|||���}t|tjd�����2�TdS)N�rr{�rNr��r}r)r;r�rsr	rr)r=r�rvrr�s     r$�
test_emptyz(TestNanFunctions_ArgminArgmax.test_empty.s����h�v������	/�	/�A�!�
=�
=���j�!�S�t�<�<�<�<�<��
/�
/���a��$�'�'�'���S�"�(�1�+�+�.�.�.�.�
/�	/�	/r&c�R�|jD]}t|d��dk���dSr�r�r�s  r$r�z)TestNanFunctions_ArgminArgmax.test_scalar7r�r&c���Gd�dtj��}tjd���|��}|jD]�}||d���}tt
||����t|jdk��||d���}tt
||����t|jdk��||��}t|jdk����dS)	Nc��eZdZdS)�>TestNanFunctions_ArgminArgmax.test_subclass.<locals>.MyNDArrayNr�rr&r$r�r$<r�r&r�r{rr�r�r}r)r;r�r�r�rsrr�r�)r=r�r�rvr�s     r$r�z+TestNanFunctions_ArgminArgmax.test_subclass;s��	�	�	�	�	��
�	�	�	�
�v�a�y�y�~�~�i�(�(����	%�	%�A��!�D�q�/�/�/�C��J�s�I�.�.�/�/�/��C�I��%�&�&�&��!�D�q�/�/�/�C��J�s�I�.�.�/�/�/��C�I��%�&�&�&��!�D�'�'�C��C�I��O�$�$�$�$�	%�	%r&c��tjd���|��}tj|dd�<|jD];}|tjurdnd}||d���}|j|jksJ�||ksJ��<dS)Nr�r�rT)r�)r;r�r�r�rsrOr��r=r�r�rvr�rets      r$r�z+TestNanFunctions_ArgminArgmax.test_keepdimsLs���
�Y�q�\�\�
 �
 ��
'�
'�����2�A�2����	$�	$�A��"�,�.�.���A�I��!�B��&�&�&�C��8�r�w�&�&�&�&��)�#�#�#�#�#�		$�	$r&c�$�tjd���|��}tj|dd�<|jD]O}tjdtj���}|tjurdnd}|||���}||usJ�||ksJ��PdS)Nr�r�rr�r�r�)r;r�r�r�rsr��intprO)r=r�r�rvr�rr's       r$r�z&TestNanFunctions_ArgminArgmax.test_outWs���
�Y�q�\�\�
 �
 ��
'�
'�����2�A�2����	$�	$�A��(�2�R�W�-�-�-�C��"�,�.�.���A�I��!�B�C�.�.�.�C��#�:�:�:�:��)�#�#�#�#�#�	$�	$r&N)r!rIrJr;rOrQrsrwr�rirjrkr
r�r�rr�r r�r�r�r�rr&r$r
r
s���������b�l�+�H�&�&�&�@�@�@��[���V�\�\�\�2�2��[���W�b�l�:�&>�?�?��[���W����������������'�
�$�<����'�'�	��@�?�3�2�'�/�/�/�!�!�!�%�%�%�"�[���W�b�l�:�&>�?�?�$�$�@�?�$��[���W�b�l�:�&>�?�?�	$�	$�@�?�	$�	$�	$r&r
r�)��'�]�W�.)r��1dF)�writer��
AllIntegerr��Or�r7c���eZdZejejejejejej	ej
ejejej
ejejejejejejejejejejejejejejiZd�eD��Zej� de�!��e���ej"d���d�����Z#ej� dej$ej%fej&ej'fgddg���d	���Z(ej� dejejfejejfgd
dg���d���Z)d
S)�TestNanFunctions_NumberTypesc��g|]	}|j��
Srr )r"�is  r$r%z'TestNanFunctions_NumberTypes.<listcomp>�s��0�0�0�!�1�:�0�0�0r&znanfunc,funcr7�ignore)�overc���|�|��}||��}||��}t||��|dkr"t|��t|��usJ�dS|j|jksJ�dS)Nr3�r�rr�r��r=r�r��nanfuncr3r�r�s       r$�test_nanfuncz)TestNanFunctions_NumberTypes.test_nanfunc�s����j�j������d�3�i�i���g�c�l�l���C��%�%�%��C�<�<���9�9��S�	�	�)�)�)�)�)�)��9��	�)�)�)�)�)�)r&rar_c��|�|��}||d���}||d���}t||��|dkr"t|��t|��usJ�dS|j|jksJ�dS)Nr}��qr3r;r<s       r$�test_nanfunc_qz+TestNanFunctions_NumberTypes.test_nanfunc_q�s����j�j������d�3�!�n�n�n���g�c�Q������C��%�%�%��C�<�<���9�9��S�	�	�)�)�)�)�)�)��9��	�)�)�)�)�)�)r&rcrec��|�|��}||d���}||d���}t||��|dkr"t|��t|��usJ�dS|j|jksJ�dS)N��?��ddofr3r;r<s       r$�test_nanfunc_ddofz.TestNanFunctions_NumberTypes.test_nanfunc_ddof�s����j�j������d�3�S�!�!�!���g�c��$�$�$���C��%�%�%��C�<�<���9�9��S�	�	�)�)�)�)�)�)��9��	�)�)�)�)�)�)r&N)*r!rIrJr;rKrrMr	rOrPrQrRrSrTrUrVrWrXrYrZr[r\r]r^rcrdrerfrs�nanfunc_idsrirjrkrl�errstater>rarbr_r`rBrGrr&r$r5r5ms�������	�	�2�6�
�	�2�6�
��b�i�
��b�i�
�	�2�6�
�
�B�G�
��b�i�
�
�r�z�
�
�B�G�
��b�i�
�	�2�6�
�	�2�6�
�H�1�0�x�0�0�0�K��[���^�X�^�^�-=�-=�;��O�O��R�[�h����	*�	*� ��P�O�	*��[����
�.�"�+�	&��)9�2�=�(I�J�
�O�,����
	*�	*���
	*��[����
�)�R�V�	�r�y�"�&�1�2�
�x� ����
	*�	*���
	*�	*�	*r&r5c�D�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
S)�SharedNanFunctionsTestsMixinc��t���}|jD]"}||��t|t���#dSr:rprts   r$rwz*SharedNanFunctionsTestsMixin.test_mutation�rxr&c���tjd��}t|j|j��D]C\}}dD];}|||d���}|||d���}t|j|jk���<�DdSrzr�r�s       r$r�z*SharedNanFunctionsTestsMixin.test_keepdims�r�r&c��tjd��}t|j|j��D]T\}}tjd��}||d���}||d|���}t
||��t
||���UdSr�r�r�s       r$r�z%SharedNanFunctionsTestsMixin.test_out�r�r&c	���tjd��}d}t|j|j��D�]:\}}|D�]0}t��5}|tjtjhvr#|dvr|�tj	��||tj
|��d���j
j}||tj
|��d���j
j}t||u��||tj
|��d���j
j}||tj
|��d���j
j}t||u��ddd��n#1swxYwY��2��<dS�Nr{r��FDGr})r�r�
r;r�r�rsr�rrercr�ComplexWarningr�r�r�	r=r�r�r�r�r�rr�r�s	         r$�test_dtype_from_dtypez2SharedNanFunctionsTestsMixin.test_dtype_from_dtype�s����f�Q�i�i�����$�-���7�7�	(�	(�F�B���
(�
(��&�(�(�
(�C��b�i���3�3�3��U�
�
��
�
�2�#4�5�5�5��"�S������!�<�<�<�B�G�C��"�S������!�<�<�<�B�G�C��C�3�J�'�'�'��"�S������$�?�?�?�E�J�C��"�S������$�?�?�?�E�J�C��C�3�J�'�'�'�
(�
(�
(�
(�
(�
(�
(�
(�
(�
(�
(����
(�
(�
(�
(��
(�	(�	(s�
DE�E"�%E"c�F�tjd��}d}t|j|j��D]�\}}|D]�}t��5}|tjtjhvr#|dvr|�tj	��|||d���j
j}|||d���j
j}t||u��|||d���j
j}|||d���j
j}t||u��ddd��n#1swxYwY���dSrPrRrTs	         r$�test_dtype_from_charz1SharedNanFunctionsTestsMixin.test_dtype_from_char�sw���f�Q�i�i�����$�-���7�7�	(�	(�F�B���
(�
(��&�(�(�
(�C��b�i���3�3�3��U�
�
��
�
�2�#4�5�5�5��"�S���2�2�2�8�=�C��"�S���2�2�2�8�=�C��C�3�J�'�'�'��"�S���5�5�5�;�@�C��"�S���5�5�5�;�@�C��C�3�J�'�'�'�
(�
(�
(�
(�
(�
(�
(�
(�
(�
(�
(����
(�
(�
(�
(��
(�	(�	(s�CD�D�Dc	��d}t|j|j��D]�\}}|D]�}tjd|���}||d���jj}||d���jj}t||ud|�d|����||d���jj}||d���jj}t||u������dS)Nr�r{r�r}r�zres z, tgt r�r�s        r$r�z2SharedNanFunctionsTestsMixin.test_dtype_from_input�s������$�-���7�7�		$�		$�F�B���
$�
$���f�Q�a�(�(�(���b��1�o�o�o�+�0���b��1�o�o�o�+�0����s�
�
����S�S�$A�B�B�B��b��4�(�(�(�.�3���b��4�(�(�(�.�3����s�
�#�#�#�#�
$�		$�		$r&c���t|j|j��D]:\}��fd�tD��}|td���}t||���;dS)Nc�&��g|]
}�|����Srrr�s  �r$r%zCSharedNanFunctionsTestsMixin.test_result_values.<locals>.<listcomp>�r�r&r}r�r�r�s    @r$r�z/SharedNanFunctionsTestsMixin.test_result_values�r�r&c�R�|jD]}t|d��dk���dSr�r�r�s  r$r�z(SharedNanFunctionsTestsMixin.test_scalar�r�r&c��Gd�dtj��}tjd��}|�|��}|jD]�}||d���j}||d���}t
t||����t
|j|k��||d���j}||d���}t
t||����t
|j|k��||��j}||��}t
t||����t
|j|k����dS)Nc��eZdZdS)�=SharedNanFunctionsTestsMixin.test_subclass.<locals>.MyNDArrayNr�rr&r$r�r^r�r&r�r{rr�r})r;r�r�r�rsr�rr�)r=r�r�r�rv�expected_shaper�s       r$r�z*SharedNanFunctionsTestsMixin.test_subclasss_��	�	�	�	�	��
�	�	�	�
��q�	�	���z�z�)�$�$����	1�	1�A��Q�u�1�-�-�-�3�N��!�D�q�/�/�/�C��J�s�I�.�.�/�/�/��C�I��/�0�0�0��Q�u�1�-�-�-�3�N��!�D�q�/�/�/�C��J�s�I�.�.�/�/�/��C�I��/�0�0�0��Q�u�X�X�^�N��!�D�'�'�C��J�s�I�.�.�/�/�/��C�I��/�0�0�0�0�	1�	1r&N)r!rIrJrwr�r�rUrWr�r�r�r�rr&r$rKrK�s�������&�&�&�.�.�.�*�*�*�(�(�(�"(�(�(�"$�$�$�*�*�*�!�!�!�1�1�1�1�1r&rKc
�H�eZdZejejgZejejgZ	e
j�dgd���e
j�dej
d��e
j�dejej��ejdej��gddg�	��d
�������Zd�Ze
j�dej
d��d���Ze
j�dej
d��d
���ZdS)�TestNanFunctions_SumProdrr|r�r�r�r�r�r�r7c��|�|jdkrtjd��|�|��}t	|jddg��D]>\}}|||���}t
j||k��sJ�|j|jksJ��?dS)Nrr�r}r��	r�rir�r�r�rsr;r�r��r=rr�r�r3�identityr�s       r$r�z%TestNanFunctions_SumProd.test_allnanss������
�a����K�E�F�F�F����U�#�#��!�$�-�!�Q��8�8�	,�	,�N�D�(��$�u�4�(�(�(�C��6�#��/�*�*�*�*�*��9���+�+�+�+�+�	,�	,r&c�L�ttjtjgddg��D]z\}}tjd��}|gdz}||d���}t||��g}||d���}t||��|}||d���}t||���{dS)Nrr}rr{r�)r�r;rSrUr�r�r=rv�	tgt_valuer�r�r�s      r$r z#TestNanFunctions_SumProd.test_empty/s������B�J� 7�!�Q��@�@�
	#�
	#�L�A�y��(�6�"�"�C��+�a�-�C��!�C�a�.�.�.�C���c�"�"�"��C��!�C�a�.�.�.�C���c�"�"�"��C��!�C�d�#�#�#�C���c�"�"�"�"�
	#�
	#r&c���tjd���|��}tj|dd�<|jD]6}|tjurdnd}||d���}|j|ksJ�||ksJ��7dS)Nr�r��i 
r�r�)r;r�r�r�rsrSr�r&s      r$r�z%TestNanFunctions_SumProd.test_initial<s���
�Y�q�\�\�
 �
 ��
'�
'�����2�A�2����	$�	$�A��2�9�n�n���$�I��!�B��"�"�"�C��9��%�%�%�%��)�#�#�#�#�#�		$�	$r&c�r�tjd���dd���|��}tj|ddd�f<tj|tj���}d|dd�df<|jD]7}|tjurdnd}|||d�	��}|j	|ksJ�||ksJ��8dS)
Nr�r{rr�F�i�r�r)
r;r�rr�r�rrrsrSr�)r=r�r�rrvrr's       r$rz#TestNanFunctions_SumProd.test_whereGs���
�Y�q�\�\�
!�
!�!�Q�
'�
'�
.�
.�u�
5�
5���6��1�a�a�a�4����R�r�x�0�0�0����a�a�a��d����	$�	$�A��2�9�n�n���$�I��!�B�e�Q�/�/�/�C��9��%�%�%�%��)�#�#�#�#�#�		$�	$r&N)r!rIrJr;rSrUrsrTrVr�rirjrkr
r�r�rr�r r�rrr&r$rarasX�������	�2�:�&�H����� �H��[���V�\�\�\�2�2��[���W�b�l�:�&>�?�?��[���W����������������'�
�$�<����,�,�	��@�?�3�2�,�#�#�#��[���W�b�l�:�&>�?�?�$�$�@�?�$��[���W�b�l�:�&>�?�?�
$�
$�@�?�
$�
$�
$r&rac
��eZdZejejgZejejgZ	e
j�dgd���e
j�dej
d��e
j�dejej��ejdej��gddg�	��d
�������Zd�Zd�Zd
�Zd�ZdS)�TestNanFunctions_CumSumProdrr|r�r�r�r�r�r�r7c��|�|jdkrtjd��|�|��}t	|jddg��D]<\}}||��}t
j||k��sJ�|j|jksJ��=dS)Nrr�r}rcrds       r$r�z(TestNanFunctions_CumSumProd.test_allnansZs������
�a����K�E�F�F�F����U�#�#��!�$�-�!�Q��8�8�	,�	,�N�D�(��$�u�+�+�C��6�#��/�*�*�*�*�*��9���+�+�+�+�+�	,�	,r&c�p�t|jddg��D]�\}}tjd��}|tjd��z}||d���}t||��|}||d���}t||��tjd��}||d���}t||����dS)Nrr}rr�)r�rsr;r��onesrrgs      r$r z&TestNanFunctions_CumSumProd.test_emptyjs�����
��1�v�6�6�
	#�
	#�L�A�y��(�6�"�"�C��B�G�F�O�O�+�C��!�C�a�.�.�.�C���c�"�"�"��C��!�C�a�.�.�.�C���c�"�"�"��(�A�-�-�C��!�C�d�#�#�#�C���c�"�"�"�"�
	#�
	#r&c�Z�t|j|j��D]W\}}tjd��}dD];}|||d���}|||d���}t|j|jk���<�X|jD]�}tjd��}tj�	d��}tj
||j|j�dk<||d���}t|jd��tjd	��D]$}|||���}t|jd���%��dS)
Nr{r|r��r{r���rrDr�)i�r�)r�rsr�r;r�rr�rq�random�RandomStater��randr�rr�)	r=rv�gr�rr�r�r��rss	         r$r�z)TestNanFunctions_CumSumProd.test_keepdimswsL����
�t�}�5�5�	.�	.�D�A�q��&��)�)�C�$�
.�
.���a��$�D�1�1�1���a��$�D�1�1�1�����C�H�,�-�-�-�-�
.�
��		7�		7�A���
�&�&�A���&�&�q�)�)�B�)+��A�g�b�g�q�w��#�%�&��!�A�D�/�/�/�C����G�,�,�,��	�!���
7�
7���a���o�o�o���S�Y�
�6�6�6�6�
7�		7�		7r&c�(�dD]�}tjt|���}tjt|���}t||��tjt|���}tjt|���}t||����dS)N)������rr}Nr�)	r;rZ�
_ndat_onesrYrqrrX�_ndat_zerosrW)r=rr�r�s    r$r�z.TestNanFunctions_CumSumProd.test_result_values�s���(�	*�	*�D��*�Z�d�3�3�3�C��-��D�1�1�1�C���S�)�)�)��)�K�T�2�2�2�C��,�u�4�0�0�0�C���S�)�)�)�)�
	*�	*r&c��tjd��}t|j|j��D]Y\}}tjd��}dD]=}|||���}||||���}t||��t||���>�ZdS)Nr{)r|r}rr}r�r�)r;r�r�rsr�r)r=r�r�r�r�rr�r�s        r$r�z$TestNanFunctions_CumSumProd.test_out�s����f�Q�i�i���$�-���7�7�	.�	.�F�B���V�A�Y�Y�F�&�
.�
.���b��4�(�(�(���b��4�V�4�4�4��#�C��0�0�0�#�C��-�-�-�-�	
.�	.�	.r&N)r!rIrJr;rWrYrsrXrZr�rirjrkr
r�r�rr�r r�r�r�rr&r$rnrnUs��������b�m�,�H��	�2�:�&�H��[���V�\�\�\�2�2��[���W�b�l�:�&>�?�?��[���W����������������'�
�$�<����,�,�	��@�?�3�2�,�#�#�#�7�7�7�&*�*�*�.�.�.�.�.r&rnc
��eZdZejejejgZejej	ej
gZd�Zd�Z
d�Zd�Zej�dgd���ej�dejd��ej�d	ejej��ejd
ej��gddg�
��d�������Zd�Zej�dejd��d���ZdS)�TestNanFunctions_MeanVarStdc	��|jD]F}tjtjtjfD] }tt|td|����!�GdS)Nr})rr�)rsr;r�int_�object_r	�	TypeErrorrq)r=rvr�s   r$�test_dtype_errorz,TestNanFunctions_MeanVarStd.test_dtype_error�sa����	H�	H�A��(�B�G�R�Z�8�
H�
H���i��E���G�G�G�G�G�
H�	H�	Hr&c	���|jD]l}tjtjtjfD]F}tjtjd|���}tt|td|����G�mdS)Nrr�r}r�)
rsr;rr�r�r/rqr�r	r�)r=rvr�r�s    r$�test_out_dtype_errorz0TestNanFunctions_MeanVarStd.test_out_dtype_error�s{����	D�	D�A��(�B�G�R�Z�8�
D�
D���h�u�{�1�~�U�;�;�;���i��E��s�C�C�C�C�C�
D�	D�	Dr&c����tjtjg}tjtjg}t||��D]A\}�dD]9���fd�tD��}|td����}t||���:�BdS)N�rr}c�*��g|]}�|������S)rEr)r"r�rFr�s  ��r$r%z9TestNanFunctions_MeanVarStd.test_ddof.<locals>.<listcomp>�s(���7�7�7�A�r�r�!�$�'�'�'�7�7�7r&r}�rrF)	r;rcrerdrfr�r�rqr)r=rsr�r�r�r�rFr�s      @@r$�	test_ddofz%TestNanFunctions_MeanVarStd.test_ddof�s������I�r�y�)���F�B�F�#���(�H�-�-�	.�	.�F�B���
.�
.��7�7�7�7�7��7�7�7���b��Q�T�2�2�2��#�C��-�-�-�-�
.�	.�	.r&c���	�tjtjg}tjtjg}d�t
D��}t
||��D�]\}}td��D]��	t��5}|�	t��|�tj���	fd�|D��}|td�	���}ttj|��|��t!|��r&t#t%|j��dk��n%t#t%|j��dk��ddd��n#1swxYwY����dS)Nc�,�g|]}t|����Sr)r��r"r�s  r$r%zATestNanFunctions_MeanVarStd.test_ddof_too_big.<locals>.<listcomp>�s��'�'�'�A��Q���'�'�'r&r�c���g|]}�|k��	Srr)r"r�rFs  �r$r%zATestNanFunctions_MeanVarStd.test_ddof_too_big.<locals>.<listcomp>�s���4�4�4��4�1�9�4�4�4r&r}r�r)r;rcrerdrfr�r��rangerr�r�rrSrqrr�r�rr��log)
r=rsr��dsizer�r�rr�r�rFs
         @r$�test_ddof_too_bigz-TestNanFunctions_MeanVarStd.test_ddof_too_big�s�����I�r�y�)���F�B�F�#��'�'��'�'�'���(�H�-�-�	3�	3�F�B���a���

3�

3��&�(�(�	3�C��J�J�~�.�.�.��J�J�r�0�1�1�1�4�4�4�4�e�4�4�4�C��"�U���6�6�6�C� ���#����4�4�4��3�x�x�3���C�G���� 1�2�2�2�2���C�G���� 1�2�2�2�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3����	3�	3�	3�	3��

3�	3�	3s�8CE�E�"Err|r�r�r�r�r�r�r7c���|�|jdkrtjd��|�|��}d}|jD]�}tjt|���5|||���}ddd��n#1swxYwYtj|���	��sJ�|tj
ur|j|jksJ���|jtj|��jksJ���dS)Nrr�z:(Degrees of freedom <= 0 for slice.)|(Mean of empty slice)r�r�)
r�rir�r�rsr�r�r;r�r�r[r��absr�s       r$r�z(TestNanFunctions_MeanVarStd.test_allnans�s<�����
�a����K�E�F�F�F����U�#�#��L���M�
	8�
	8�D���n�E�:�:�:�
-�
-��d�5�t�,�,�,��
-�
-�
-�
-�
-�
-�
-�
-�
-�
-�
-����
-�
-�
-�
-��8�C�=�=�$�$�&�&�&�&�&��r�z�!�!��y�E�K�/�/�/�/�/��y�B�F�5�M�M�$7�7�7�7�7�7�
	8�
	8r�c��tjd��}|jD�]g}dD]�}tjd���5}tjd��t
tj|||����������t
t|��dk��t
t|djt����ddd��n#1swxYwY��d	D]�}tjd���5}tjd��t|||���tjg����t
t|��dk��ddd��n#1swxYwY����idS�
NrrTr�r�r�r}rr)r;r�rsr�r�r�rr�r�r�r�r�r�r)r=r�rvrr�s     r$r z&TestNanFunctions_MeanVarStd.test_empty�s����h�v������	)�	)�A�!�
G�
G���,�D�9�9�9�G�Q��)�(�3�3�3��B�H�Q�Q�s��%6�%6�%6�7�7�;�;�=�=�>�>�>��C��F�F�a�K�(�(�(��J�q��t�}�n�E�E�F�F�F�	G�G�G�G�G�G�G�G�G�G�G����G�G�G�G��
�
)�
)���,�D�9�9�9�)�Q��)�(�3�3�3� ���3�T�!2�!2�!2�B�H�R�L�L�A�A�A��C��F�F�a�K�(�(�(�)�)�)�)�)�)�)�)�)�)�)����)�)�)�)��
)�	)�	)s%�B C$�$C(�+C(�	A"E7�7E;�>E;c��tjd���dd���|��}tj|ddd�f<tj|tj���}d|dd�df<t|j|j	��D]t\}}|||dd���}|tj
ur|n|jj}|||���}|j|ksJ�tj
�||���udS)Nr�r{rr�Fr�)r)r;r�rr�r�rrr�rsr�r[�realr�r<�assert_allclose)	r=r�r�rrv�f_stdr�dtype_referencer's	         r$rz&TestNanFunctions_MeanVarStd.test_where�s��
�Y�q�\�\�
!�
!�!�Q�
'�
'�
.�
.�u�
5�
5���6��1�a�a�a�4����R�r�x�0�0�0����a�a�a��d���D�M�4�=�9�9�	7�	7�H�A�u���b��i����m�,�,�I�'(�B�J���e�e�B�G�M�O��!�B�e�$�$�$�C��9��/�/�/�/��J�&�&�s�I�6�6�6�6�
	7�	7r&N)r!rIrJr;r[rcrersr\rdrfr�r�r�r�r�rirjrkr
r�r�rr�r rrr&r$r�r��sn�������
�B�I�r�y�1�H�������(�H�H�H�H�
D�D�D�.�.�.�3�3�3�"�[���V�\�\�\�2�2��[���W�b�l�:�&>�?�?��[���W����������������'�
�$�<����8�8�	��@�?�3�2�8�$
)�
)�
)��[���W�b�l�:�&>�?�?�7�7�@�?�7�7�7r&r�)
�Y�M�W�D�h�m�s�ms�us�ns�ps�fs�asc��g|]}d|�d���	S)zm8[�]r)r"�units  r$r%r%s ��6�6�6�$�
�d�
�
�
�6�6�6r&c�`�eZdZd�Zd�Zej�dgd����ej�d��d�����Z	d�Z
d	�Zd
�Zej�dgd���ej�de
��d
�����Zd�Zd�Zd�Zd�ZdS)�TestNanFunctions_Medianc��t���}tj|��t	|t��dSr:)rqrrr;r]r�r=rus  r$rwz%TestNanFunctions_Median.test_mutation
s5���z�z�|�|��
��T�����T�5�!�!�!�!�!r&c��tjd��}dD]O}tj||dd���}tj||dd���}t	|j|jk���Ptjd��}tj�d��tj|j	��dd�dfz}|�
tj��}tj|t|��<t��5}|�t ��tj|dd���}t#|j	d	��tj|d
d���}t#|j	d��tj|dd���}t#|j	d
��tj|dd���}t#|j	d��tj|dd���}t#|j	d	��tj|dd���}t#|j	d��ddd��dS#1swxYwYdS)Nr{r|F�rr��overwrite_inputrs�r���Tr~�r}r}r}r}r��r}r}rtrur�r}r�rtr}r�r{r}rtru�rr}r�r{�rr}r{�r}r}rtr})r;r�r^r]rr�rqrvr�r�r�r*r��tuplerrr�r�r=r�rr�r�r�r�rs        r$r�z%TestNanFunctions_Median.test_keepdimss=���f�Q�i�i�� �	*�	*�D��)�C�d��e�L�L�L�C��,�s��4��O�O�O�C��C�H���(�)�)�)�)��G�M�"�"���I���X�&�&���!�'�):�):�1�1�1�d�7�)C�C��
�H�H�R�W�����f��%��(�(��
�
 �
 �
	2�C��J�J�~�&�&�&��,�q�t�d�;�;�;�C����L�1�1�1��,�q�v��=�=�=�C����M�2�2�2��,�q�v��=�=�=�C����L�1�1�1��,�q�t�d�;�;�;�C����M�2�2�2��,�q�|�d�C�C�C�C����L�1�1�1��,�q�y�4�@�@�@�C����L�1�1�1�
	2�
	2�
	2�
	2�
	2�
	2�
	2�
	2�
	2�
	2�
	2�
	2����
	2�
	2�
	2�
	2�
	2�
	2s�D#H7�7H;�>H;r�Nr}rr�)���r}��argnames�	argvalues�#ignore:All-NaN slice:RuntimeWarningc�\���tjd���tj�d��tj�j��dd�dfz}|�tj��}tj�t|��<|�d�j	z}nCt|�j	���t��fd�t�j	��D����}tj|��}tj
�|d|���}||usJ�t|j|��dS)Nrsr�rc3�>�K�|]}|�vrdn�j|V��dS�r}N�r��r"r7�	axis_normr�s  ��r$�	<genexpr>z<TestNanFunctions_Median.test_keepdims_out.<locals>.<genexpr>@�N�����L�L�89�Q�)�^�^�������L�L�L�L�L�Lr&T�rr�r�)r;rqrvr�r�r�r*r�r�r�rr�r/r]r)r=rr��	shape_outr��resultr�r�s      @@r$�test_keepdims_outz)TestNanFunctions_Median.test_keepdims_out+s'����
�G�M�"�"���I���X�&�&���!�'�):�):�1�1�1�d�7�)C�C��
�H�H�R�W�����f��%��(�(���<��q�v�
�I�I�,�T�1�6�:�:�I��L�L�L�L�L�=B�1�6�]�]�L�L�L�L�L�I��h�y�!�!����a�d�T�s�C�C�C����}�}�}�}��V�\�9�-�-�-�-�-r&c��tj�dd��}tj|ddgtjd���}tjd��}tj|d���}tj|d|���}t||��t||��tjd��}tj|d���}tj|d|���}t||��t||��tj|d|���}t||��t||��dS)	Nr{rr�r}r�r�rr�)	r;rvrx�insertr�r�r^r]r�r=r��nan_matr�r�r�s      r$r�z TestNanFunctions_Median.test_outGs���i�n�n�Q��"�"���)�C�!�Q����a�8�8�8����!�����i��!�$�$�$���l�7���7�7�7���C��(�(�(��C��%�%�%���"�����i��$�'�'�'���l�7��6�:�:�:���C��(�(�(��C��%�%�%��l�7��V�<�<�<���C��(�(�(��C��%�%�%�%�%r&c��dD]�}tj�d|��}tj�d|j|jdz���}tj|���|<d|dd�df<g}|D]S}tjtj|��|��}|�	tj
|d������Tttj|d	�
��|����dS)N)r���3r�i�r�rr�)�sizerT)r�r}r�)
r;rv�randn�randintr�r��ravel�compressr�r0r^r
r])r=r�r�r�r��x�nonans       r$�test_small_largez(TestNanFunctions_Median.test_small_largeYs���'�	>�	>�A��	����1�%�%�A��	�!�!�!�Q�V�!�&�A�+�!�>�>�A��6�A�G�G�I�I�a�L��A�a�a�a��c�F��C��
C�
C����R�X�a�[�[�L�!�4�4���
�
�2�9�U�D�A�A�A�B�B�B�B��r�|�A�B�7�7�7��=�=�=�=�	>�	>r&c�~�d�tD��}tjtd���}t	||��dS)Nc�6�g|]}tj|����Sr)r;r^r�s  r$r%z>TestNanFunctions_Median.test_result_values.<locals>.<listcomp>js ��/�/�/�A�2�9�Q�<�<�/�/�/r&r}r�)r�r;r]rqr�r=r�r�s   r$r�z*TestNanFunctions_Median.test_result_valuesis?��/�/��/�/�/�C��,�u�1�-�-�-�C���S�)�)�)�)�)r&r|r�c��tjdtj���|��}t	��5}|�t��tj||���}|j|jksJ�tj	|���
��sJ�|�&tt|j
��dk��n%tt|j
��dk��tjtj���|��d}tj|��}|j|jksJ�tj	|��sJ�|�&tt|j
��dk��n%tt|j
��dk��ddd��dS#1swxYwYdS)Nr�r�r}r{rr�r�)r;rr�r�rr�r�r]r�r�r�rr�r�r�)r=r�rr�r�output�scalar�
output_scalars        r$r�z$TestNanFunctions_Median.test_allnansns����g�f�b�f�%�%�,�,�U�3�3��
�
 �
 �	+�C��J�J�~�&�&�&��\�#�D�1�1�1�F��<�3�9�,�,�,�,��8�F�#�#�'�'�)�)�)�)�)��|���C�G����)�*�*�*�*���C�G����)�*�*�*��X�b�f�%�%�,�,�U�3�3�B�7�F��L��0�0�M� �&�&�,�6�6�6�6��8�M�*�*�*�*�*��|���C�G����)�*�*�*�*���C�G����)�*�*�*�+	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+�	+�	+s�E8G�G
�
G
c
��tjd��}dD]�}tjd���5}tjd��ttjtj||����������tt|��dk��tt|djt����ddd��n#1swxYwY��d	D]�}tjd���5}tjd��ttj||���tjg����tt|��dk��ddd��n#1swxYwY��dSr�)r;r�r�r�r�rr�r]r�r�r�r�r�r�r=r�rr�s    r$r z"TestNanFunctions_Median.test_empty�s����h�v�����	C�	C�D��(��5�5�5�
C���%�h�/�/�/������c��!=�!=�!=�>�>�B�B�D�D�E�E�E���A���!��$�$�$��
�1�Q�4�=�.�A�A�B�B�B�	
C�
C�
C�
C�
C�
C�
C�
C�
C�
C�
C����
C�
C�
C�
C��
�	%�	%�D��(��5�5�5�
%���%�h�/�/�/��R�\�#�D�9�9�9�2�8�B�<�<�H�H�H���A���!��$�$�$�
%�
%�
%�
%�
%�
%�
%�
%�
%�
%�
%����
%�
%�
%�
%��	%�	%s%�B)C#�#C'	�*C'	�A+E?�?F	�F	c�P�ttjd��dk��dSr�)rr;r]rGs r$r�z#TestNanFunctions_Median.test_scalar�s%�����R� � �B�&�'�'�'�'�'r&c��tjd��}ttjtj|d���ttjtj|d���ttjtj|d���ttjtj|d���tt
tj|d���dS)Nrs���r��rr�r��rr��r}r})r;rqr	�	AxisErrorr]r�r=r�s  r$�test_extended_axis_invalidz2TestNanFunctions_Median.test_extended_axis_invalid�s����G�M�"�"���b�l�B�L�!�"�=�=�=�=��b�l�B�L�!�'�B�B�B�B��b�l�B�L�!�!�<�<�<�<��b�l�B�L�!�&�A�A�A�A��j�"�,���?�?�?�?�?�?r&c
�	�t��5}|�t��tjtjfD�]b}tj|tjgtjtjgg��}ttj|d���|tjg��ttj|d���|tjg��ttj|��|��tjtjtj|gtjtj|gg��}ttj|��|��ttj|d���tjtj|g��ttj|d���|��tj||g||gg��}ttj|d���|��tj|d|dgdtjtjdgdtjtj|ggtj	�	��}|dkrLttj|d���d
d|dg��ttj|��d
��nKttj|d���dd|dg��ttj|��d��ttj|d���dd|g��tdd��D�]t}tdd��D�]_}tjtjg|z|g|zzgdz��}ttj|��|��ttj|d���|��ttj|d���tjg|z|g|zz��tjtjg|z|g|zzgdz��}ttj|��|��ttj|d���|��ttj|d���tjg|z|g|zz����a��v��d	ddd��dS#1swxYwYdS)Nrr�r}rti����i����r�r�r�r�g@�@g@g$�g"�g�r}g��
r�)rrr�r;�infr�r�rr]�float32r�)r=rr��ar7�js      r$�test_float_specialz*TestNanFunctions_Median.test_float_special�s���
�
 �
 �+	B�C��J�J�~�&�&�&������(�)
B�)
B���H�s�R�V�n�r�v�r�v�.>�?�@�@���R�\�!�!�4�4�4�s�R�V�n�E�E�E��R�\�!�!�4�4�4�s�R�V�n�E�E�E��R�\�!�_�_�c�2�2�2��H�r�v�r�v�s�3� �f�b�f�c�2�4�5�5���R�\�!�_�_�c�2�2�2��R�\�!�!�4�4�4�r�v�r�v�s�6K�L�L�L��R�\�!�!�4�4�4�c�:�:�:��H�s�C�j�3��*�5�6�6���R�\�!�!�4�4�4�c�:�:�:��H�s�A��t�R�0�"�B�F�B�F�A�6� �"�&�"�&�#�6�8�%'�J�0�0�0����7�7� ���a�a�!8�!8�!8�2�r�C�4��:L�M�M�M� ���a���#�6�6�6�6� ���a�a�!8�!8�!8�4��c�T�3�:O�P�P�P� ���a���$�7�7�7��R�\�!�"�5�5�5��T�3�7G�H�H�H��q�"���B�B�A�"�1�b�\�\�B�B���H���x�!�|����	�&B�%C�a�%G�H�H��$�R�\�!�_�_�c�:�:�:�$�R�\�!�!�%<�%<�%<�c�B�B�B�$�R�\�!�!�%<�%<�%<�')�v�h��l�s�e�a�i�%?�A�A�A��H���x�!�|�#����
�&C�%D�q�%H�I�I��$�R�\�!�_�_�s�d�;�;�;�$�R�\�!�!�%<�%<�%<�s�d�C�C�C�$�R�\�!�!�%<�%<�%<�')�v�h��l��t�f�q�j�%@�B�B�B�B�B�B�;)
B�+	B�+	B�+	B�+	B�+	B�+	B�+	B�+	B�+	B�+	B�+	B�+	B����+	B�+	B�+	B�+	B�+	B�+	Bs�RR5�5R9�<R9N)r!rIrJrwr�rirjrk�filterwarningsr�r�r�r��_TYPE_CODESr�r r�r�r�rr&r$r�r�sX������"�"�"�2�2�2�6�[����
�
�
��	�	��[��� E�F�F�.�.�G�F�	�	�.�"&�&�&�$>�>�>� *�*�*�
�[���V�\�\�\�2�2��[���W�k�2�2�+�+�3�2�3�2�+�2%�%�%�(�(�(�@�@�@�,B�,B�,B�,B�,Br&r�c
�V�eZdZd�Zd�Zej�ddddgg��ej�dgd����ej�d	��d
�������Z	d�Z
d�Zej�dgd
���ej�dej
d��ej�dejej��ejdej��gddg���d�������Zd�Zd�Zd�Zd�ZdS)�TestNanFunctions_Percentilec��t���}tj|d��t	|t��dS)N�)rqrrr;r_rr�s  r$rwz)TestNanFunctions_Percentile.test_mutation�s8���z�z�|�|��
���r�"�"�"��T�5�!�!�!�!�!r&c��tjd��}dD]Q}tj|d|dd���}tj|d|dd���}t	|j|jk���Rtjd��}tj�d��tj|j	��dd�dfz}|�
tj��}tj|t|��<t��5}|�t ��tj|ddd	�
��}t#|j	d��tj|ddd	�
��}t#|j	d
��tj|ddd	�
��}t#|j	d��tj|ddd	�
��}t#|j	d��tj|ddd	�
��}t#|j	d��tj|ddd	�
��}t#|j	d��ddd��dS#1swxYwYdS)Nr{r|�FFr�rsr��ZTr~r�r�r�rr�rr�r�r�r�)r;r�r`r_rr�rqrvr�r�r�r*r�r�rrr�rr�s        r$r�z)TestNanFunctions_Percentile.test_keepdims�sb���f�Q�i�i�� �	*�	*�D��-��R�d��05�7�7�7�C��"�3���4�38�:�:�:�C��C�H���(�)�)�)�)��G�M�"�"���I���X�&�&���!�'�):�):�1�1�1�d�7�)C�C��
�H�H�R�W�����f��%��(�(��
�
 �
 �
	2�C��J�J�~�&�&�&��"�1�b�t�d�C�C�C�C����L�1�1�1��"�1�b�v��E�E�E�C����M�2�2�2��"�1�b�v��E�E�E�C����L�1�1�1��"�1�b�t�d�C�C�C�C����M�2�2�2��"�1�b�|�d�K�K�K�C����L�1�1�1��"�1�b�y�4�H�H�H�C����L�1�1�1�
	2�
	2�
	2�
	2�
	2�
	2�
	2�
	2�
	2�
	2�
	2�
	2����
	2�
	2�
	2�
	2�
	2�
	2s�	D)H?�?I�IrArtr}rr�r�r�c����tjd���tj�d��tj�j��dd�dfz}|�tj��}tj�t|��<|�d�j	z}nCt|�j	���t��fd�t�j	��D����}tj|��|z}tj|��}tj
�||d|���}||usJ�t|j|��dS)Nrsr�rc3�>�K�|]}|�vrdn�j|V��dSr�r�r�s  ��r$r�z@TestNanFunctions_Percentile.test_keepdims_out.<locals>.<genexpr>r�r&Tr�)r;rqrvr�r�r�r*r�r�r�rr�r/r_r)	r=rArr�r�r�r�r�r�s	       @@r$r�z-TestNanFunctions_Percentile.test_keepdims_out�s<����
�G�M�"�"���I���X�&�&���!�'�):�):�1�1�1�d�7�)C�C��
�H�H�R�W�����f��%��(�(���<��q�v�
�I�I�,�T�1�6�:�:�I��L�L�L�L�L�=B�1�6�]�]�L�L�L�L�L�I��H�Q�K�K�)�+�	��h�y�!�!���!�!�Q�T�D�c�J�J�J����}�}�}�}��V�\�9�-�-�-�-�-r&c��tj�dd��}tj|ddgtjd���}tjd��}tj|dd���}tj|dd|���}t||��t||��tjd��}tj|dd���}tj|dd|���}t||��t||��tj|dd	|���}t||��t||��dS)
Nr{rr�r}r��*r�rr�)	r;rvrxr�r�r�r`r_rr�s      r$r�z$TestNanFunctions_Percentile.test_outs,���i�n�n�Q��"�"���)�C�!�Q����a�8�8�8����!�����m�C��!�,�,�,����w����?�?�?���C��(�(�(��C��%�%�%���"�����m�C��$�/�/�/����w���6�B�B�B���C��(�(�(��C��%�%�%���w���V�D�D�D���C��(�(�(��C��%�%�%�%�%r&c��d�tD��}tjtdd���}t	||��tjd�tD����}tjtdd���}t	||��dS)Nc�8�g|]}tj|d����S)rj�r;r`r�s  r$r%zBTestNanFunctions_Percentile.test_result_values.<locals>.<listcomp>(s$��3�3�3��r�}�Q��#�#�3�3�3r&rjr}r�c�8�g|]}tj|d����S)�rj�brr�s  r$r%zBTestNanFunctions_Percentile.test_result_values.<locals>.<listcomp>,s$��F�F�F�1�B�M�!�X�6�6�F�F�Fr&r)r�r;r_rqr�	transposer�s   r$r�z.TestNanFunctions_Percentile.test_result_values's���3�3�U�3�3�3����u�b�q�1�1�1���C��%�%�%��l�F�F��F�F�F�G�G����u�h�Q�7�7�7���C��%�%�%�%�%r&r|r�r�r�r�r�r�r7c�z�|�|jdkrtjd��|�|��}tjt
d���5t
j|d|���}ddd��n#1swxYwYt
j|���	��sJ�|j
|j
ksJ�dS)Nrr�r�r��<r�)r�rir�r�r�r�r;r_r�r�r��r=rr�r�r�s     r$r�z(TestNanFunctions_Percentile.test_allnans0s������
�a����K�E�F�F�F����U�#�#��
�\�.�0K�
L�
L�
L�	9�	9��"�5�"�4�8�8�8�C�	9�	9�	9�	9�	9�	9�	9�	9�	9�	9�	9����	9�	9�	9�	9��x��}�}� � �"�"�"�"�"��y�E�K�'�'�'�'�'�'��A6�6A:�=A:c��tjd��}dD]�}tjd���5}tjd��ttjtj|d|����������tt|��dk��tt|d	jt����ddd��n#1swxYwY��d
D]�}tjd���5}tjd��ttj|d|���tjg����tt|��d	k��ddd��n#1swxYwY��dS)NrrTr�r��(r�r}rr)r;r�r�r�r�rr�r_r�r�r�r�r�rr�s    r$r z&TestNanFunctions_Percentile.test_empty@s����h�v�����	C�	C�D��(��5�5�5�
C���%�h�/�/�/�����!1�#�r��!E�!E�!E�F�F�J�J�L�L�M�M�M���A���!��$�$�$��
�1�Q�4�=�.�A�A�B�B�B�	
C�
C�
C�
C�
C�
C�
C�
C�
C�
C�
C����
C�
C�
C�
C��
�	%�	%�D��(��5�5�5�
%���%�h�/�/�/��R�-�c�2�D�A�A�A�2�8�B�<�<�P�P�P���A���!��$�$�$�
%�
%�
%�
%�
%�
%�
%�
%�
%�
%�
%����
%�
%�
%�
%��	%�	%s%�B*C$�$C(	�+C(	�	A,F�F	�F	c��ttjdd��d��tjd��}tj|dd���}t|d��t	tj|����dS)Nrr���2rr�g@)rr;r_r�r�isscalar)r=r��rs   r$r�z'TestNanFunctions_Percentile.test_scalarNso���R�%�b�#�.�.��3�3�3��I�a�L�L����Q���+�+�+���Q��������A�������r&c��tjd��}ttjtj|dd���ttjtj|dd���ttjtj|dd���ttjtj|dd���tt
tj|dd���dS)	Nrsr�r��rArr�r�r�r�)r;rqr	r�r_rr�s  r$r�z6TestNanFunctions_Percentile.test_extended_axis_invalidUs����G�M�"�"���b�l�B�$4�a�1�2�F�F�F�F��b�l�B�$4�a�1�7�K�K�K�K��b�l�B�$4�a�1�1�E�E�E�E��b�l�B�$4�a�1�6�J�J�J�J��j�"�"2�A���H�H�H�H�H�Hr&c	���ddg}tjd��}tj|z}tjd��}d|dd�ddd�dd�f<|dd�dd�dd�fxxdzcc<d	D]�}d
D]�}t��5}|�t
d��tj||||���}tj||||���}	t|	j	|j	��tj||||���}tj||||���}	t|	|��ddd��n#1swxYwY�Ό�tjd
��}
ttj|
|d���j	d��dS)Nrr�)r�r{)r{r�r�rr�r�r{r|)FTr�r~)r{r�r�r)r}r�r�)r�r{r)
r;rqr�rrr�r`r_rr�)r=�percr�r��	large_matr�keepdimrr�nan_val�megamats           r$�test_multiple_percentilesz5TestNanFunctions_Percentile.test_multiple_percentiles]s����C�y���g�f�o�o���&�3�,���G�I�&�&�	�!"�	�!�!�!�Q�q��U�A�A�A�+���!�!�!�Q�Q�Q����(����q� ���� �
	/�
	/�D�(�
/�
/��&�(�(�/�C��J�J�~�/J�K�K�K��-��T��w�O�O�O�C� �.�w��4�8?�A�A�A�G� ����	�:�:�:��-�	�4�d�18�:�:�:�C� �.�y�$�T�8?�A�A�A�G� ��#�.�.�.�/�/�/�/�/�/�/�/�/�/�/����/�/�/�/��
/��'�,�'�'���R�%�g�t�&�A�A�A�G��S�S�S�S�Ss�:B&D,�,D0�3D0N)r!rIrJrwr�rirjrkr�r�r�r�r;r
r�r�rr�r r�r�r$rr&r$rr�s�������"�"�"�2�2�2�:�[���S�1�q�!�f�+�.�.��[����
�
�
��	�	��[��� E�F�F�.�.�G�F�	�	�/�.�.�&&�&�&�$&�&�&��[���V�\�\�\�2�2��[���W�b�l�:�&>�?�?��[���W����������������'�
�$�<����(�(�	��@�?�3�2�(�%�%�%� � � �I�I�I�T�T�T�T�Tr&rc
�`�eZdZd�Zd�Zd�Zej�dgd���ej�de	j
d��ej�de	je	j��e	j
d	e	j��gd
dg���d
�������ZdS)�TestNanFunctions_Quantilec��tjd���ddd���t��}tj|dd<t
tj|d���tj|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)
N�r�r{r�rr}rDr@rr)��?rD��?)�r�K)	r;r�rr��floatr�rrar_)r=r�s  r$�test_regressionz)TestNanFunctions_Quantile.test_regression{ss��
�Y�r�]�]�
"�
"�1�a��
+�
+�
2�
2�5�
9�
9���6��1��a���R�^�B�#�.�.�.��0@��r�0J�0J�0J�K�K�K��R�^�B�#�A�6�6�6��%�b�B�Q�7�7�7�	9�	9�	9��R�^�B�#�A�6�6�6��%�b�B�Q�7�7�7�	9�	9�	9��R�^�B�3�%�a�8�8�8��%�b�R�D�q�9�9�9�	;�	;�	;��R�^�B�*;�*;�*;�!�D�D�D��%�b�L�L�L�q�A�A�A�	C�	C�	C�	C�	Cr&c��tjd��dz}ttj|d��d��ttj|d��d��ttj|d��d��dS)NrrDrrr}g@g�?)r;r�rra)r=r�s  r$�
test_basicz$TestNanFunctions_Quantile.test_basic�sn���I�a�L�L�3����R�^�A�q�)�)�2�.�.�.��R�^�A�q�)�)�3�/�/�/��R�^�A�s�+�+�T�2�2�2�2�2r&c��tjgd���}|���}tjtjd��|d���t||��|���}|���}tjtjd��|d���t||��dS)N)rr*r)rDrgY@�midpoint)�method)r;r�rrrar�r
�tolist)r=�p0�ps   r$�test_no_p_overwritez-TestNanFunctions_Quantile.test_no_p_overwrite�s���
�X�/�/�/�
0�
0���G�G�I�I��
��r�y�����*�=�=�=�=��1�b�!�!�!�
�Y�Y�[�[��
�H�H�J�J��
��r�y�����*�=�=�=�=��1�b�!�!�!�!�!r&rr|r�r�r�r�r�r�r7c�z�|�|jdkrtjd��|�|��}tjt
d���5t
j|d|���}ddd��n#1swxYwYt
j|���	��sJ�|j
|j
ksJ�dS)Nrr�r�r�r}r�)r�rir�r�r�r�r;rar�r�r�rs     r$r�z&TestNanFunctions_Quantile.test_allnans�s������
�a����K�E�F�F�F����U�#�#��
�\�.�0K�
L�
L�
L�	6�	6��.����5�5�5�C�	6�	6�	6�	6�	6�	6�	6�	6�	6�	6�	6����	6�	6�	6�	6��x��}�}� � �"�"�"�"�"��y�E�K�'�'�'�'�'�'rN)r!rIrJr.r0r7rirjrkr;r
r�r�rr�rr&r$r&r&xs�������C�C�C�3�3�3�
"�
"�
"��[���V�\�\�\�2�2��[���W�b�l�:�&>�?�?��[���W����������������'�
�$�<����(�(�	��@�?�3�2�(�(�(r&r&z
arr, expectedr�)FTFT)r}r�rtr�r�Tc���dtj|jtj���fD]D}t	||���}t||��t
|��tjur|dusJ��EdS)Nr�r)T)r;r/r�rrrr�r�)r��expectedr��actuals    r$�test__nan_maskr<�sz��"�b�h�s�y���9�9�9�:�"�"���3�C�(�(�(���V�X�&�&�&���>�>���+�+��T�>�>�>�>��"�"r&c���tjtjtjfD]7}tjddg|���}t|d��\}}|�J�||usJ��8tjtjfD]�}tjddg|���}t|d��\}}|dk���sJ�||usJ�t||��tjddtj
g|���}t|d��\}}t|tjgd�����||usJ�t|tjgd�����tj|d	��sJ���dS)
z] Test that _replace_nan returns the original array if there are no
    NaNs, not a copy.
    rr}r�Nr�F)FFT)rr}r�r})r;r�int32�int64r�rr��float64r�rr�r�)r�r�r��mask�arr_nan�
result_nan�mask_nans       r$�test__replace_nanrE�s����(�B�H�b�h�/�����h��1�v�U�+�+�+��#�C��+�+�����|�|�|���}�}�}�}�}��*�b�j�)�
%�
%���h��1�v�U�+�+�+��#�C��+�+������
�"�"�$�$�$�$�$��S� � � � ��V�S�!�!�!��(�A�q�"�&�>��7�7�7��+�G�Q�7�7��
�H��X�r�x�(<�(<�(<�=�=�>�>�>���(�(�(�(��Z���)�)�)�!4�!4�5�5�5��x����$�$�$�$�$�$�
%�
%r&)2r�rir*�numpyr;�numpy.core.numericr�numpy.lib.nanfunctionsrr�
numpy.testingrrrr	r
rr�r�rqr�r~rrrnr
�_TEST_ARRAYSr-�_v�setflagsrjrkr
�keysr5rKrarnr��_TIME_UNITSr�r�r�rr&r�r?�	complex64r<rErr&r$�<module>rPsO������
�
�
�
���������3�3�3�3�3�3�:�:�:�:�:�:�:�:�����������������	���6�2�6�6�6�2�6�6�B��7�B�F�F�F�F�C��6�2�6�2�6�6�2�6�7�C��2�6�2�6�6�6�2�6�B�D�	E�	E��
���2�2�2�	3�	3�	���;�;�;�	<�	<�	���6�7�#�	$�	$�	���*�*�*�	+�	+�	-���R�X�A�A�A�E�E�E�<�<�<�>�>�>�@�A�A�
��b�h�B�B�B�F�F�F�=�=�=�?�?�?�A�B�B��,
�,
�,
�,
�,
�,
�,
�,
�^m%�m%�m%�m%�m%�m%�m%�m%�`Z$�Z$�Z$�Z$�Z$�Z$�Z$�Z$�~�"�(�1�+�+�
�"�(�(�(�(�
)�
)�����
�
�
�
���B��K�K�e�K�����������L�����j�!9�9�C�?��������� 3� 3� 5� 5�<�;L�;L�;N�;N��O�O�<*�<*�<*�<*�<*�<*�<*�P�O�	��
<*�~f1�f1�f1�f1�f1�f1�f1�f1�R8$�8$�8$�8$�8$�;�8$�8$�8$�vF.�F.�F.�F.�F.�">�F.�F.�F.�R^7�^7�^7�^7�^7�">�^7�^7�^7�B��
�d�2�<�
�+�,�,���6�6�+�6�6�6�6��FB�FB�FB�FB�FB�FB�FB�FB�RdT�dT�dT�dT�dT�dT�dT�dT�N1(�1(�1(�1(�1(�1(�1(�1(�f�����
�R�X�r�v�s�B�F�B�F�+�,�,�
�R�X�(�(�(�)�)�+��R�X�l�l�l�"�(�+�+�+�	���R�X�(�(�(�)�)�	���R�X����}������!�(*��6�6�6�
�R�X��t�}��t�}���� �+��� "�"�!�� "�%�%�%�%�%r&

Youez - 2016 - github.com/yon3zu
LinuXploit