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 :  /lib/python3/dist-packages/scipy/stats/tests/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/scipy/stats/tests/__pycache__/test_mstats_basic.cpython-311.pyc
�

d�c�D��&�dZddlZddlZddlZddlmZddlmZddlmZm	Z	ddl
mcmZddl
mZddlmZddlZddlmZdd	lmZmZmZmZmZmZmZdd
lmZddlmZGd�d
��ZdAd�Z dAd�Z!Gd�d��Z"Gd�d��Z#Gd�d��Z$Gd�d��Z%Gd�d��Z&Gd�d��Z'Gd�d��Z(Gd�d ��Z)Gd!�d"��Z*Gd#�d$��Z+d%�Z,d&�Z-d'�Z.d(�Z/d)�Z0d*�Z1d+�Z2d,�Z3Gd-�d.��Z4Gd/�d0��Z5Gd1�d2��Z6Gd3�d4��Z7Gd5�d6��Z8Gd7�d8��Z9Gd9�d:��Z:Gd;�d<��Z;Gd=�d>��Z<Gd?�d@��Z=dS)Bz?
Tests for the stats.mstats module (support for masked arrays)
�N)�nan)�masked�nomask)�stats�)�check_named_results)�raises)�assert_equal�assert_almost_equal�assert_array_almost_equal�assert_array_almost_equal_nulp�assert_�assert_allclose�assert_array_equal)�suppress_warnings)�
_mstats_basicc��eZdZd�ZdS)�TestMquantilesc���tjgd�gd�gd�gd�gd�gd�gd�gd�gd	�gd
�gd�g��}gd�gd
�gd�g}tj|dd���}t	||��dS)N)�@�@��?)g�G@�.@�@)g�H@�B@�@)r��C@�@)�E@�D@�8��)��D@r"r!)rr!r!)rr!r!)g�E@r!r!)r r!r!)rr!r!)g3333333@g333333-@g333333�?)r g�B@�@)gffffffE@gfffffD@gffffff@r)r�2)�axis�limit)�np�array�mstats�
mquantilesr)�self�data�desired�quantss    �E/usr/lib/python3/dist-packages/scipy/stats/tests/test_mstats_basic.py�test_mquantiles_limit_keywordz,TestMquantiles.test_mquantiles_limit_keywords����x����'���'���'���*�*�*�*�*�*�+�+�+�,�,�,�,�,�,�,�,�,�,�,�,�
.�
/�
/��&�%�%�$�$�$�&�&�&�(���"�4�a�w�?�?�?���F�G�,�,�,�,�,�N)�__name__�
__module__�__qualname__r0�r1r/rrs#������-�-�-�-�-r1r�H�����z>c��tj|||���}t|||���t|j|��dS�N)r%�dtype��rtol)r)�gmeanrr
r9��
array_liker-r%r9r;�xs      r/�check_equal_gmeanr@,sE����Z�d�%�8�8�8�A��A�w�T�*�*�*�*����%� � � � � r1c��tj|||���}t|||���t|j|��dSr8)r�hmeanrr
r9r=s      r/�check_equal_hmeanrC2sE��
��J�T��7�7�7�A��A�w�T�*�*�*�*����%� � � � � r1c��eZdZd�Zd�Zd�Zd�Zd�Zej	�
eed��d���d	���Z
d
�ZdS)�TestGeoMeanc�\�gd�}tjdd��}t||d���dS)N�r������?�+����=r:)r'�powerr@�r+�ar-s   r/�test_1dzTestGeoMean.test_1d9s7���L�L���(�7�E�*�*���!�W�5�1�1�1�1�1�1r1c���tjgd���}d}t||��tjgd�gd����}tjdd��}t||d�	��dS)
N�
�
���(r$�<�F�P�Z�dgs��ŤF@rG�rrrr��mask��UUUUUU�?rMr:)�mar(r@r'rNrOs   r/�
test_1d_mazTestGeoMean.test_1d_ma>su���H�>�>�>�?�?�����!�W�%�%�%��H�\�\�\����5�5�5���(�5�%�(�(���!�W�5�1�1�1�1�1�1r1c�t�tj�gd�gd����}d}t||��dS)NrS�
rrrrrrrrrrr^gd��q_�D@�r'rbr(r@rOs   r/�test_1d_ma_valuezTestGeoMean.test_1d_ma_valueHsB���E�K�K�A�A�A�Hf�Hf�Hf�K�g�g�����!�W�%�%�%�%�%r1c�l�tj�gd���}d}t||��dS)N)
rTrUrVrWr$rXrYrZr[rrrfrOs   r/�test_1d_ma0zTestGeoMean.test_1d_ma0Ns7���E�K�K�?�?�?�@�@�����!�W�%�%�%�%�%r1c���tj�gd���}tj}tjd���5t||��ddd��dS#1swxYwYdS)N)
rTrUrVrWr$rXrYrZr[����ignore)�invalid)r'rbr(r�errstater@rOs   r/�test_1d_ma_infzTestGeoMean.test_1d_ma_infTs����E�K�K�@�@�@�A�A���&��
�[��
*�
*�
*�	*�	*��a��)�)�)�	*�	*�	*�	*�	*�	*�	*�	*�	*�	*�	*�	*����	*�	*�	*�	*�	*�	*s�A!�!A%�(A%�float96�cannot find float96 so skipping��reasonc���tjgd�gd����}tjdd���tj��}t
||tjd���dS)NrGr]r^r`rarM)r9r;)rbr(r'rN�astyperpr@�r+rP�
desired_dts   r/�test_1d_float96zTestGeoMean.test_1d_float96[s^���H�\�\�\����5�5�5���X�e�U�+�+�2�2�2�:�>�>�
��!�Z�r�z��F�F�F�F�F�Fr1c���tjgd�gd�gd�ggd�gd�gd�g���}tjgd���}t||dd���tjtjd	d
��tjdd��tjd
d��g��}t||dd���gd�gd�gd�g}d}ttj�|��|��dS)NrG�rrrr�rrrr�rrrrr^rrM�r%r;rKrLr`��?rJrk�rTrUrVrW�r$rXrYrZ�r[r\�n�xg/,$�qJ@)rbr(r'r@rNrOs   r/�
test_2d_mazTestGeoMean.test_2d_maas���H�l�l�l�L�L�L�,�,�,�?�'�<�<����|�|�|�D�
F�
F�
F���(�<�<�<�(�(���!�W�1�5�9�9�9�9��(�B�H�W�e�4�4��H�S�%�0�0��H�S�%�0�0�2�3�3��	�!�W�2�E�:�:�:�:��
�
�/�/�/�1D�1D�1D�E�����"�%�+�+�a�.�.�'�2�2�2�2�2r1N)r2r3r4rQrcrgriro�pytest�mark�skipif�hasattrr'rxr�r5r1r/rErE8s�������2�2�2�
2�2�2�&�&�&�&�&�&�*�*�*��[���G�G�B�	�2�2�2�;\��]�]�G�G�^�]�G�
3�3�3�3�3r1rEc�z�eZdZd�Zej�eed��d���d���Z	d�Z
dS)�TestHarMeanc�6�tjgd�gd����}d}t||d���tj�gd���}d}t||��tj�gd�gd	����}d
}t||��dS)NrGr]r^�/�袋.�?rMr:rSg�=b�#A@reg����O�?@�rbr(rCr'rOs   r/rQzTestHarMean.test_1dss����H�\�\�\����5�5�5��+���!�W�5�1�1�1�1��E�K�K�A�A�A�B�B�����!�W�%�%�%��E�K�K�A�A�A�;�;�;�
�
=�
=�����!�W�%�%�%�%�%r1rprqrrc��tjgd�gd����}tjdtj���}t||tj���dS)NrGr]r^r��r9)rbr(r'�asarrayrprCrvs   r/rxzTestHarMean.test_1d_float96�sR���H�\�\�\����5�5�5���Z� 9���L�L�L�
��!�Z�r�z�:�:�:�:�:�:r1c�J�tjgd�gd�gd�ggd�gd�gd�g���}tjgd���}t||dd���gd	�}t||d
d���gd�gd�gd
�g}d}ttj�|��|��dS)NrGrzr{r|r^rrMr})g���Q��?g433333@g�������?rkrr�r�gm�W�UC@r�rOs   r/�test_2dzTestHarMean.test_2d�s����H�l�l�l�L�L�L�,�,�,�?�'�<�<����|�|�|�D�
F�
F�
F���(�<�<�<�(�(���!�W�1�5�9�9�9�9�L�L�L���!�W�2�E�:�:�:�:�
�
�
�/�/�/�1D�1D�1D�E�����"�%�+�+�a�.�.�'�2�2�2�2�2r1N)r2r3r4rQr�r�r�r�r'rxr�r5r1r/r�r�rst������&�&�&��[���G�G�B�	�2�2�2�;\��]�]�;�;�^�]�;�
3�3�3�3�3r1r�c��eZdZd�ZdS)�TestRankingc���tjgd���}ttj|��gd���t
|ddg<ttj|��gd���ttj|d���gd���tjgd	���}ttj|��gd
���tjgd�gd�g��}ttj|��gd
�gd�g��ttj|d���gd
�gd�g��ttj|d���gd�gd�g��dS)N)
rrrrrHrIrJ�r�r`)
rrIrIrIr�r`��!@r�rTrIrJ)
rr#r#rrrJr��@r��T)�use_missing)
rr#r#�@r�rJr�r�r�r�)
rrr�rrHrJrIr�rr`)
rrIr�rIr�r�r`r�rIrT)rrrrrH)rIrJr�r�r`)rrIrIrIr�)r`r�r�r�rTr�r%)rrH�@r�r�r�rrrrr�rHrHrHrHrH)rbr(rr)�rankdatar�r+r?s  r/�test_rankingzTestRanking.test_ranking�s����H�+�+�+�,�,���F�O�A�.�.�5�5�5�	7�	7�	7���1�Q�%���F�O�A�.�.�8�8�8�	:�	:�	:��F�O�A�4�@�@�@�=�=�=�	?�	?�	?��H�+�+�+�,�,���F�O�A�.�.�5�5�5�	7�	7�	7��H�k�k�k�<�<�<�0�1�1���F�O�A�.�.�(�[�[�*:�*:�*:�;�	=�	=�	=��F�O�A�A�6�6�6�'�K�K����9�	;�	;�	;��F�O�A�1�5�5�5�'�K�K����6�	8�	8�	8�	8�	8r1N)r2r3r4r�r5r1r/r�r��s#������8�8�8�8�8r1r�c���eZdZd�Zd�Zd�Zd�Zej�	e
j��dkd���d���Zej�	e
j��dkd���ejj
d	�����Zd
�Zej�dd��ej�d
d��d�����Zd�Zejjd���Zd�ZdS)�TestCorrc
�(�tjd��}tj��5tjdt
��t
tj||��dd��t
tj||ddd���dd��tj	|d���}tj||��}t|dtu��t|d	tu��ddd��n#1swxYwYtj	gd
���}tj	gd���}tj||��\}}t
|tj
d��d
z��t
|d��gd�}tj	gd�|���}tj	gd�|���}	tj||	��\}}t
|tj
d��d
z��t
|d��dS)NrT�errorrrrk��Tr^r)r��r)rrrIrIrHra)FFFT)r�r�rg�X@)rrrIrk)rb�arange�warnings�catch_warnings�simplefilter�RuntimeWarningrr)�pearsonrr(rrr'�sqrt)
r+r?�pr�x1�y1�r�pr_�x2�y2s
          r/�
test_pearsonrzTestCorr.test_pearsonr�s���I�b�M�M��
�
$�
&�
&�	%�	%�
�!�'�>�:�:�:�����1� 5� 5�a� 8�#�>�>�>�����1�T�T�r�T�7� ;� ;�A� >��E�E�E�����&�&�&�A����A�&�&�B��B�q�E�V�O�$�$�$��B�q�E�V�O�$�$�$�	%�	%�	%�	%�	%�	%�	%�	%�	%�	%�	%����	%�	%�	%�	%��X�&�&�&�
'�
'��
�X�i�i�i�
 �
 ����r�2�&�&���1��A�r�w�q�z�z�!�|�,�,�,��A�u�%�%�%�+�*�*��
�X�,�,�,�4�
8�
8�
8��
�X�m�m�m�$�
/�
/�
/����r�2�&�&���1��A�r�w�q�z�z�!�|�,�,�,��A�u�%�%�%�%�%s�CD
�
D�Dc��tj�gd�gd����}tj�gd�gd����}tjgd���}tjgd���}t	j||��\}}t
j||��\}}t||��t||��dS)N�rrHrIrJr�r`)rrrrrrr^)�	r�r�r`r�r�)rrrrrr)rrJr�r`)r�r`r�r�)r'rb�masked_arrayr(r)r�rr
)	r+�mx�myr?�y�mr�mpr�r�s	         r/�test_pearsonr_misaligned_maskz&TestCorr.test_pearsonr_misaligned_mask�s���
�U�
�
� 2� 2� 2�9K�9K�9K�
�
L�
L��
�U�
�
� 2� 2� 2�9K�9K�9K�
�
L�
L���H�\�\�\�"�"���H�\�\�\�"�"�����R�(�(���B��~�a��#�#���1��R������R������r1c�`�gd�gd�}}ttj||��dd��ddddtjgd	d
d
dtjg}}tj|��tj|��}}ttj||��dd��gd�}gd
�}ttj||��dd��dddddddddddddddtjg}dddd d!d"d#d$d%d"dd&dd'dtjg}tj|��tj|��}}ttj||��dd��ttd(����}ttd(����}|d)|dc|d<|d)<|d*|d+c|d+<|d*<|d,|d-c|d-<|d,<ttj||��dd.��tj||��}d/}t||d0�1��dS)2N)�333333@�@�G�z�	@�H�z�G@)�ffffff�?���Q�@r��������@rgI�Q=�r�r�r�r�r�r�r��r�33333�G@r皙����%@������N@�333333�?�P@�����̌O@r�ffffff�?皙����@�333333�?�333333@r��������@�皙����6@皙���� @�333333F@�������'@皙����8@�333333�?�������@�������D@r�r�r��ffffff@r�333333�?r�g�I
�?rr�rr�r�r�r�r�rr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r���r�i�rTi�i�gV-����?��correlation�pvalueT�rb)
rr)�	spearmanrr'rrb�fix_invalid�list�ranger�r+r?r��res�
attributess     r/�test_spearmanrzTestCorr.test_spearmanr�sF��'�'�'�)>�)>�)>�A���F�,�Q�q�1�1�!�4�j�A�A�A���T�$�r�v�.��T�$�t�B�F�/K�A���.��#�#�R�^�A�%6�%6�A���F�,�Q�q�1�1�!�4�j�A�A�A�
1�
1�
1��
1�
1�
1���F�,�Q�q�1�1�!�4�i�@�@�@�
�$��d�D�#�t�T��3��S�#�s�C���
9��
�3��d�D�#�s�D��3��S�#�s�C���
9���.��#�#�R�^�A�%6�%6�A���F�,�Q�q�1�1�!�4�i�@�@�@�

��t��������t�������q�T�1�Q�4�
��!��a��d��#���"��
��"��q��v��D�'�1�S�6���#���$��	�F�,�Q�q�1�1�!�4�e�<�<�<���q�!�$�$��.�
��C���5�5�5�5�5�5r1c��gd�}gd�}d}tj||��\}}t||��t|d��tj||d���\}}t||��t|d��tj||d���\}}t||��t|d	��d
}tjdd|��}d
|ztj�|��z}tj||��\}}tj||d���\}	}
t|
|dz��tj||d���\}}t|d|dzz
��||	cxkr|ksnJ�tjtd���5tj||d���ddd��dS#1swxYwYdS)Nr�r�g+�;
�?g����r?�greater��alternativeg����b?�lessg��cH}��?r\rr�皙�����?rHrzalternative must be 'less'...��matchz	ekki-ekki)
r)r�rr'�linspace�random�randr�r	�
ValueError)
r+r?r��r_expr�r��n�stat1�p1�stat2�p2�stat3�p3s
             r/�test_spearmanr_alternativez#TestCorr.test_spearmanr_alternative�s>��
0�
0�
0��
0�
0�
0��#�����1�%�%���1���5�!�!�!���,�-�-�-����1�)�<�<�<���1���5�!�!�!���,�-�-�-����1�&�9�9�9���1���5�!�!�!���?�+�+�+�
���K��1�a� � ����E�B�I�N�N�1�%�%�%���$�Q��*�*�	��r��$�Q��y�A�A�A�	��r���B��F�#�#�#��$�Q��v�>�>�>�	��r���A��Q��J�'�'�'���&�&�&�&��&�&�&�&�&�&�
�]�:�-L�
M�
M�
M�	<�	<���Q��{�;�;�;�;�	<�	<�	<�	<�	<�	<�	<�	<�	<�	<�	<�	<����	<�	<�	<�	<�	<�	<s�F:�:F>�F>�ppc64lezfails/crashes on ppc64lerrc�	�tjtjgd�����}tjtjgd�����}ddg}ttjtj||����|��tjtjd����}tjtjd����}ddg}ttjtj||����|��ttt
j||d���|d	}|d
|d	<||d
<ddg}ttjtj||����|��|d
}|d|d
<||d<ddg}ttjtj||����|��tjtjd����}tjtjd��ddd���}ddg}ttjtj||����|��|d	}|d
|d	<||d
<ddg}ttjtj||����|��|d
}|d|d
<||d<ddg}ttjtj||����|��tj
ddddtjg��}tj
ddddtjg��}tj
ddddtjg��}ttjtj||����dd g��ttjtj||d!�����dd"g��ttjtj||����d#d$g��tj
d%d%d%d%d&d&d%d'd%d&ddd%d(d%d&d%d%d%d%d%tjg��}tj
d%d)d)d)dd*d'd%d+d,d-d)d)d)d)d)d)d%dd.tjd%g��}tj||��}ttj|��d/d0g��d1}t||d2�3��dS)4N)r�rHr�r`)rJr�r��r�rrTg��x�O~�>�banana��methodrrHg?�>��?ga�V���>r�r`g}�'}�'�?go���&5�>rkr�g?�>��g}�'}�'�r�r�r�r�r�g�:@g���Q��gףp=
�@r�r�g���1UU�?��?�
asymptoticg�lgN��?g~�ȋ��g�QM����?rrUrXrWrZ�!�C���-g���XJĿgv�PwTk�?r�Tr�)
rbr(r'rr�r)�
kendalltaur��
assert_raisesr�r�rr)r+r?r��expected�b�z�resultr�s        r/�test_kendalltauzTestCorr.test_kendalltau(s���
�H�R�X�l�l�l�+�+�,�,���H�R�X�m�m�m�,�,�-�-����:���B�J�v�'8��A�'>�'>�?�?��J�J�J�
�H�R�Y�r�]�]�#�#���H�R�Y�r�]�]�#�#���+�,���B�J�v�'8��A�'>�'>�?�?��J�J�J�	�j�&�"3�Q��(�K�K�K�K�
�a�D����t��!����!��'�(:�;���B�J�v�'8��A�'>�'>�?�?��J�J�J�
�a�D����t��!����!��'�(:�;���B�J�v�'8��A�'>�'>�?�?��J�J�J�
�H�R�Y�r�]�]�#�#���H�R�Y�r�]�]�4�4�R�4�(�)�)���,�-���B�J�v�'8��A�'>�'>�?�?��J�J�J�
�a�D����t��!����!��(�);�<���B�J�v�'8��A�'>�'>�?�?��J�J�J�
�a�D����t��!����!��(�);�<���B�J�v�'8��A�'>�'>�?�?��J�J�J�
�N�D�$��d�B�F�;�<�<���N�D�$��t�R�V�<�=�=���N�D�$��d�B�F�;�<�<���B�J�v�'8��A�'>�'>�?�?�'��.�	0�	0�	0��B�J�v�'8��A�l�'S�'S�'S�T�T�'��3�	5�	5�	5��B�J�v�'8��A�'>�'>�?�?�'��3�	5�	5�	5�
�N�A�q�!�Q��B��2�q�"���A�r�1�b�!�Q��1�a���I�
J�
J���N�A�r�2�r�2�r�2�q�"�b���B��B��B��2�r�2�6�1�N�
O�
O���"�1�a�(�(���B�J�v�.�.��Y�0G�H�H�H�/�
��F�J�4�8�8�8�8�8�8r1c�\�tjdt���}tj|d��}tjdt���}tj|dd�|dd�f��}t
tjtj	||��d����dS)Nr�r�i���r)
r'r��floatrb�masked_greater�concatenater�isfiniter)r)r+r?r�s   r/�test_kendalltau_largezTestCorr.test_kendalltau_large�s���
�I�d�%�(�(�(����a��&�&���I�d�%�(�(�(���N�A�d�e�e�H�a����h�/�0�0�����F�-�a��3�3�A�6�7�7�8�8�8�8�8r1c�~�ttdddddddddddg
gd�dddd	d
ddddtddtg
td	ddd
td	ddddddg
g}tj|��j}t	j|��}t
|ddd��t
|d�d��gd���dS)NrJrH��r�rrI�
rJrIr�rIrHr�rIrrrHrIr�rIr`�r�r�zglobal p-value (indep)g����Mb�?zseasonal p-value)g
ףp=
�?g�(\���?皙�����?g{�G�z�?)rrbr��Tr)�kendalltau_seasonalr�round)r+r?�outputs   r/�test_kendalltau_seasonalz!TestCorr.test_kendalltau_seasonal�s����3��1�b�"�a��A�q�!�Q��
:�
4�
4�
4���A�q�"�a��A�q�#�q�!�S�
9��1�b�!�R��a��A�q�!�Q��
:�
<��
�N�1������+�A�.�.���F�#;�<�e�Q�G�G�G��F�#5�6�<�<�Q�?�?�1�1�1�	3�	3�	3�	3�	3r1r	)�exactrr���	two-sidedr�r�c��tj�d��d}tj�|��}tj�|��}tj�|��dk}t	j||���}t	j||���}t
j||||���}	|���}
|���}tj|
|||���}tj
||<tj
||<tj|||d|���}
t|	|��t|
|��dS)Nrr$r~r^)r	r��omit)r	�
nan_policyr�)r'r��seedr�rbr(r)r�
compressedrrr)r+r	r�r�r?r�r_�x_masked�y_masked�
res_masked�x_compressed�y_compressed�res_compressed�res_nans              r/�test_kendalltau_mstats_vs_statsz(TestCorr.test_kendalltau_mstats_vs_stats�sR��	�	���q�������I�N�N�1�����I�N�N�1�����y�~�~�a� � �3�&���8�A�D�)�)�)���8�A�D�)�)�)���&��h�v�;�H�H�H�
� �*�*�,�,���*�*�,�,���)��,�v�;�P�P�P���&��$���&��$���"�
�q��F��M�M�M��	�
�N�3�3�3����0�0�0�0�0r1c	��ddddddddd�}|���D]6\}}tj|d|d	��}t||���7dS)
Ng遣�m�?g��:�4W�?g,
�:�Hr�g�K����?g���(�6�?))r\iY	)�ei�	)�r)�r)r>r)�r)��iE&)��i�%rr��itemsr�_kendall_p_exactr�r+�expectations�ncrr�s     r/�test_kendall_p_exact_mediumz$TestCorr.test_kendall_p_exact_medium�s���&<�%;�"8�"%�"8�"%�%;�%;�=�=��)�.�.�0�0�	/�	/�L�B���0��A���1��>�>�C���X�.�.�.�.�	/�	/r1c��ddddddd�}|���D]6\}}tj|d|d	��}t||���7dS)
NgE���?g�U`Ux<�?g��ve��?g��Z���?g��=���?gG�����?))i�i5�)i�i\�)i idd)i!i�h)i@i �	)iAi �	rrrBrEs     r/�test_kendall_p_exact_largez#TestCorr.test_kendall_p_exact_large�s|��'=�&<�'=�'=�(>�(>�@�@��)�.�.�0�0�	/�	/�L�B���0��A���1��>�>�C���X�.�.�.�.�	/�	/r1c�X�gd�}gd�d�d�d�d�d�d�d	�d
�d�d�d
�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�tj�}ttj||��dd d!��tj||��}d"}t||d#�$��dS)%N)#rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrkg������-@g������+@g������(@g333333$@gffffff@gffffff@g333333@gffffff@g333333@r�gffffff
@g������	@rgffffff@r#g333333@gffffff@g������@r�g�?g�������?r�g�������?皙�����?gffffff�?r�r~r%r�rg�/��"�?r�r�Tr�)r'rrr)�pointbiserialrrr�s     r/�test_pointbiserialzTestCorr.test_pointbiserial�s���
5�
5�
5��
B�T�
B�4�
B��
B�t�
B�S�
B�#�
B�s�
B�C�
B��
B�c�
B�3�
B��
B�
�
B��
B��
B��
B�!$�
B�&)�
B�+.�
B�03�
B�58�
B�:=�
B�?B�
B�DG�
B�IL�
B�
�
B��
B��
B��
B�!$�
B�&)�
B�+.�
B�03�
B�58�
B�:<�&�
B��	�F�1�!�Q�7�7��:�G�Q�G�G�G��#�A�q�)�)��.�
��C���5�5�5�5�5�5r1N)r2r3r4r�r�r�rr�r�r��platform�machiner�slowrr*�parametrizer:rH�xslowrJrNr5r1r/r�r��s�������&�&�&�>���$6�$6�$6�L+<�+<�+<�Z�[���(��(�*�*�i�7�9��;�;�T9�T9�;�;�T9�l�[���(��(�*�*�i�7�9��;�;��[��9�9���;�;�9�
3�
3�
3��[���X�'>�?�?��[���]�,L�M�M�1�1�N�M�@�?�1�:
/�
/�
/��[��/�/���/�6�6�6�6�6r1r�c�8�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	dS)	�TestTrimmingc�~�tjd��}ttj|��gd���tjd��}ttj|d��gd���tjd��}ttj|dd���gd���tjd��}ttj|dd	�
��gd���tjd��}t
x|d
dg<|d<ttj|d��gd���tjd���dd��}dgdzd
gdzzdgdzz}tj|dd	d���}t|j���|��tj|dd	d
���}t|j���|��tj|dd	d���}t|jj	���|��tjd���dd��}t
|d<dgdzd
gdzzdgdzz}tj|dd	d���}t|j���|��tj|dd	d
���}t|j���|��tj|j	dd	d���}t|j	j���|��dS)NrT�
rrrHrIrJr�r`r�r�r�)rHr�)
NNrHrIrJr�r`r�r�N�FF��limits�	inclusive)
NNNrIrJr�r`r�NN)r�r%T)rZ�relative)
NrrHrIrJr�r`r�NN�rrkr�)NNrHrIrJNr`r�r�NNNr\rrYrU)r\r%r�r)
rbr�r
r)�trimr�reshape�_mask�ravelr&)r+rPr?r�trimxs     r/�	test_trimzTestTrimming.test_trim�s����I�b�M�M���V�[��^�^�%:�%:�%:�;�;�;��I�b�M�M���V�[��5�)�)�+I�+I�+I�J�J�J��I�b�M�M���V�[��%�-�H�H�H�9�9�9�	;�	;�	;��I�b�M�M���V�[��)�T�B�B�B�3�3�3�	5�	5�	5�
�I�b�M�M��!�!��1�R�&�	�A�a�D��V�[��E�*�*�K�K�K�	M�	M�	M�
�I�c�N�N�"�"�2�r�*�*���3�r�6�Q�C��F�?�a�S��V�+����A�y�4�d�C�C�C���U�[�&�&�(�(�(�3�3�3���A�y�4�a�@�@�@���U�[�&�&�(�(�(�3�3�3���A�y�4�b�A�A�A���U�[�]�(�(�*�*�H�5�5�5�
�I�c�N�N�"�"�2�r�*�*����!���3�r�6�Q�C��F�?�a�S��V�+����A�y�4�d�C�C�C���U�[�&�&�(�(�(�3�3�3���A�y�4�a�@�@�@���U�[�&�&�(�(�(�3�3�3���A�C��T��C�C�C���U�W�]�(�(�*�*�H�5�5�5�5�5r1c���tjd��}ttj|�����d��ttj|d������d��t|dd�<tj|��}t|���d��t|jd	gd
zdgdzzd	gd
zzdgdzzd	gd
zz��t|_d|_
ttj|�����d��ttj|�����d��dS)Nr\rXr�)�tailrZr$rY�0rr r�"rU�)rTrT)rbr�r
r)�trimboth�count�trimtailrr`r�shape)r+r?rbs   r/�
test_trim_oldzTestTrimming.test_trim_old
s7���I�c�N�N���V�_�Q�'�'�-�-�/�/��4�4�4��V�_�Q�C�0�0�0�6�6�8�8�"�=�=�=���"�R�%�����"�"���U�[�[�]�]�B�'�'�'��U�[�1�#�b�&�A�3�r�6�/�Q�C��F�":�a�S��V�"C�q�c�"�f�"L�M�M�M��������V�_�Q�'�'�-�-�/�/��4�4�4��V�_�Q�'�'�-�-�/�/��4�4�4�4�4r1c���tjd��}tj|dd���}tjgd�gd����}t||��t|j|j��dS)NrT)g333333�?g�Q���?rXrYrW)
rrrrrrrrrrr^)rbr�r)�trimrr(r
r_)r+r?rrs    r/�
test_trimrzTestTrimming.test_trimrsz���I�b�M�M����a���O�O�O���8�:�:�:�!?�!?�!?�A�A�A���V�X�&�&�&��V�[�(�-�0�0�0�0�0r1c�
�tjgd���}ttj|d��dd��ttj|d��dd��ttj|d��dd��dS)N��M�W�X�r�������ii(i+i2ixi�ii�ii3
r�iWr)r�r��r%r%i)rbr(rr)�trimmed_mean�r+r,s  r/�test_trimmedmeanzTestTrimming.test_trimmedmeans����x�@�@�@�A�A���F�/��S�9�9�3��B�B�B��F�/��Y�?�?��a�H�H�H��F�/��Y�?�?��a�H�H�H�H�Hr1c���tjgd���}ttj|d��dd��ttj|d��dd��dS)Nrrr|g>�
�L@r�r%)rbr(rr)�trimmed_stder~s  r/�test_trimmed_stdezTestTrimming.test_trimmed_stde&sk���x�@�@�@�A�A���F�/��Y�?�?��1�M�M�M��F�/��S�9�9�8�Q�G�G�G�G�Gr1c��tjgd���}ttj|d���d���dd��ttj|dd���d���dd��t|d<tj|��}t|j|j��dS)	Nrrr|r��ddofg������@rXgffff�7�@r�)	rbr(rr)�	winsorize�varrr
r_)r+r,�
winsorizeds   r/�test_winsorizationzTestTrimming.test_winsorization,s����x�@�@�@�A�A���F�,�T�)�<�<�@�@�a�@�H�H�#�Q�	(�	(�	(����T�9�]�;�;�?�?�Q�?�G�G��Q�	�	�	���Q���%�d�+�+�
��Z�_�d�i�0�0�0�0�0r1c
�,�tjtjtjdddg��}t	t
tj|dd���tt
j|d��tjgd�����tt
j|d	��tjtjtjtjtjtjg����tt
j|dd
���tjtjtjdddg����tt
j|d	d
���tjtjtjdddg����dS)NrrrH)皙�����?r��raise)r0)皙�����?r�r�)rLrLr/)	rbr(r'rrr�r)r�r
r~s  r/�test_winsorization_nanz#TestTrimming.test_winsorization_nan8sM���x������A�q�1�2�2���j�&�"2�D�,�!(�	*�	*�	*�	*�	�V�%�d�J�7�7��X�o�o�o�.�.�	0�	0�	0��V�%�d�J�7�7��X�r�v�r�v�r�v�r�v�r�v�F�G�G�	I�	I�	I��V�%�d�J�6�J�J�J��X�r�v�r�v�q�!�Q�7�8�8�	:�	:�	:��V�%�d�J�6�J�J�J��X�r�v�r�v�q�!�Q�7�8�8�	:�	:�	:�	:�	:r1N)
r2r3r4rcrmrprr�r�r�r5r1r/rUrU�s�������#6�#6�#6�J5�5�5�1�1�1�I�I�I�H�H�H�
1�
1�
1�:�:�:�:�:r1rUc��eZdZgd�Zejdddddejg��Zej	ej	gd�gd�gd	�gd
�gd�g��ej	gd�gd
�gd�gd�gd�ge
������Zddd�d�Zd�Z
d�Zd�Zd�Zd�ZdS)�TestMomentsrGg�p=
ף�?g�?�߾�?gD���9�?g��QI���?g}?5^�I�)g�q2��۪?g�{�!3�?gr!fa��?g��k�?g�
�Y�?)gSH*:/��?g#R
�/�?g>y�}zd�?gV߯��<�?g�F���?)ggˠw���?g�yZ��f�?g���=�?g!@Vyȧ?g#�1��?)geY(��9�?g���D$�?g�;����?g�JX<q0�?g#d����?)g�������?g��A��]�?g_.�����?g�����?g2^�9���?)TFFTF)TTTFT)FFFFF)TTTTT)FFTFFr�r^N�rlr9c��tj|��}|�tj||��}t||��|�|j}|j|ksJ�dS�N)r'r��broadcast_torr9)r+�actual�expectrlr9s     r/�
_assert_equalzTestMoments._assert_equal]s]����F�#�#�����_�V�U�3�3�F��6�6�*�*�*��=��L�E��|�u�$�$�$�$�$�$r1c��tj|jd��}t|dd��tj|jd��}t|d��tj|jd��}t|d��tj|jd��}t|d��tj|jgd	���}t	|gd
���tj|jd��}t	|d��tttj|jd��tj|jgd
���}t	|gd
���tjg��}|�|tj	tj
���tjtjgtj�����}|�|tj	tj���tjtj
d��d���}|�|gdtj
���tjggd���}|�|tj	dtj
���tjggddgd���}|�|gd���tjd��}tj	|d<ttj|d��t j��dS)Nrr�rTrH��?rIrJ��@rG)rr�rr�rr�)rrHrIrr�)rrrr�)rr�)r)�momentr%)rHr)rlg$@r�)r)r��testcaserrrr�r�r'r�float64r(�float32�zerosr�r
rbr)r+r�r?s   r/�test_momentzTestMoments.test_momentfs����M�$�-��*�*���A�c�"�%�%�%��M�$�-��*�*���A�d�#�#�#��M�$�-��*�*���A�c�"�"�"��M�$�-��*�*���A�f�%�%�%�
�M�$�-����6�6����/�/�/�0�0�0�
�M�$�-��-�-����3�����j�&�-����D�D�D��M�$�-�)9�)9�)9�:�:����/�/�/�0�0�0�
�M�"�������1�b�f�B�J��7�7�7��M�"�(�2�R�Z�8�8�8�9�9�����1�b�f�B�J��7�7�7��M�"�(�6�*�*��3�3�3�����1�b��B�J��?�?�?��M�2�$�Q�'�'�'�����1�b�f�D��
��C�C�C��M�2�$��1�v�A�6�6�6�����1�b���/�/�/��I�c�N�N���v��!���V�]�1�a�(�(�"�)�4�4�4�4�4r1c�Z�tj|j��}t|dd��dS)N���%��?rT)r)�	variationr�r)r+r�s  r/�test_variationzTestMoments.test_variation�s-����T�]�+�+���A�.��3�3�3�3�3r1c�~�tjgd���}tj|d���}t	|d��dS)N)rrHrIrJr�rr�g�<<'���?)r'r(r)r�r)r+rPr�s   r/�test_variation_ddofzTestMoments.test_variation_ddof�sC��
�H�_�_�_�%�%����Q�Q�'�'�'���A�1�2�2�2�2�2r1c	�n�tj|j��}t|dd��tj|jd���}t|dd��tj|j��}t|dd��tjtjgd���tjgd�t�	���
��}ttj|j
d��|��t|j
��D]-\}}ttj|��||���.tjtjgd���tjgd�t�	���
��}ttj|j
dd
���|��t|j
��D]/\}}ttj|d
���||���0ttj|j
ddd�f��tj|j
ddd�f����dS)Ng7l�*�ҿrTr��biasg��2۠�ۿr�)gҽ��r�?rg>HÛe�?rgI��Ǯ���FFFTFr�r^r)g`��٨��?r�g���n�?rg0���FrH)
r)�skew�
testmathworksrr�rbr(r'�boolr�testcase_2d�	enumerater�r+r��
correct_2d�i�row�correct_2d_bias_correcteds      r/�
test_skewnesszTestMoments.test_skewness�sE���K��*�+�+���A�/��3�3�3��K��*��2�2�2���A�0��4�4�4��K��
�&�&���A�c�"�%�%�%��X��H�/�/�/�
0�
0���<�<�<�D�I�I�I�
�
�
�
�
	���D�$4�a�8�8�*�E�E�E��� 0�1�1�	A�	A�F�A�s����C� 0� 0�*�Q�-�@�@�@�@�$&�H��H�,�,�,�
-�
-���<�<�<�D�I�I�I�%
�%
�%
�!�
	���D�$4�a�e�D�D�D�1�	3�	3�	3��� 0�1�1�	>�	>�F�A�s����C�e� <� <� <� 9�!� <�
>�
>�
>�
>�	���D�$4�Q����T�$:�;�;��
�4�#3�A�q�q�q�D�#9�:�:�	<�	<�	<�	<�	<r1c	�~�tj|jddd���}t|dd��tj|jdd���}t|dd��tj|jdd��}t|d��tjtjgd���tjgd	�t�
�����}ttj|j
d��|��t|j
��D]-\}}ttj|��||���.tjtjgd���tjgd	�t�
�����}ttj|j
dd
���|��t|j
��D]/\}}ttj|d
���||���0ttj|j
ddd�f��tj|j
ddd�f��d���dS)Nrr)�fisherr�gO߻S@rTg�x|�N
@g=
ףp=�?)�����g�'�@=���r�gt�
�Q�r�r�r^)r�r�g�?�<��r�g`��@7��Fr�rHrJ)�nulp)r)�kurtosisr�rr�rbr(r'r�rr�r�r
rr�s      r/�
test_kurtosiszTestMoments.test_kurtosis�sx��
�O�D�.��!�!�D�D�D���A���3�3�3�

�O�D�.�q�q�A�A�A���A�0�"�5�5�5��O�D�M�1�a�0�0���A�t�$�$�$��X�b�h�(8�(8�(8�9�9�#%�8�-4�-4�-4�;?�$A�$A�$A�B�B�B�
�	"�&�/�$�2B�A�"F�"F�",�	.�	.�	.��� 0�1�1�	E�	E�F�A�s����� 4� 4�j��m�D�D�D�D�$&�H��H�I�I�I�J�J���<�<�<�D�I�I�I�%K�%K�%K�!�	"�&�/�$�2B�A�7<�#>�#>�#>�";�	=�	=�	=� �� 0�1�1�	>�	>�F�A�s�����%� @� @� @� 9�!� <�
>�
>�
>�
>�	'�v��t�7G��1�1�1��7M�'N�'N�',�~�d�6F�q�!�!�!�t�6L�'M�'M�,-�	/�	/�	/�	/�	/�	/r1)r2r3r4r�rbr�r'rr�r(r�r�r�r�r�r�r�r�r5r1r/r�r�Fs`�������y�y�H�"�B�N�E�6�6�6�7�$&�F�$,�-�-�M��"�(��B�H�J�J�J�G�G�G�G�G�G�G�G�G�F�F�F�	H�I�I�

���4�4�4�*�*�*�.�.�.�)�)�)�-�-�-�	/�7;�	
<�
<�
<�
=�
=�
=�K�6:��%�%�%�%�%�#5�#5�#5�J4�4�4�3�3�3�<�<�<�B%/�%/�%/�%/�%/r1r�c��eZdZd�Zd�ZdS)�TestModec��gd�}tj|d��}tjgd���}tj|d��}tjtj|��dk|��}tj|dk|��}tj|dk|��}tjtj|��dk|��}tt
j|d���d��tt
j|d���d��tt
j|d���d	��tt
j|d���d��tt
j|d���d	��tt
j|d���d
��tt
j|d���d��tt
j|d���gd�ggd
�gf��tt
j|d���gd�ggd
�gf��tt
j|d���dgdgdggdgdgdggf��tt
j|d���dgdgdggdgdgdggf��tt
j|d���ddggddggf��tt
j|d���dgdgdggdgdgdggf��t
j|d���}	d}
t|	|
d���dS)N)rrrrrrrHrIrIrIrIrJr�r`r�)rIr�r�)rIrHrHr�)rIrJr)rrI)rr)rHr)rrrrrr�rkrIrr�)�moderjTr�)	r'r_r(rb�masked_wherer
r)r�r)r+�a1�a2�a3�a4�ma1�ma2�ma3�ma4�a1_resr�s           r/�	test_modezTestMode.test_mode�s���
,�
,�
,��
�Z��E�
"�
"��
�X�m�m�m�
$�
$��
�Z��E�
"�
"���o�b�h�r�l�l�Q�.��3�3���o�b�1�f�b�)�)���o�b�1�f�b�)�)���o�b�h�r�l�l�Q�.��3�3���V�[��$�/�/�/��7�7�7��V�[��!�,�,�,�e�4�4�4��V�[��4�0�0�0�%�8�8�8��V�[��$�/�/�/��7�7�7��V�[��4�0�0�0�%�8�8�8��V�[��$�/�/�/��7�7�7��V�[��4�0�0�0�%�8�8�8��V�[��!�,�,�,����}�{�{�{�m�.L�M�M�M��V�[��1�-�-�-����
����}�/M�N�N�N��V�[��"�-�-�-�!��a�S�!��
���Q�C���}�/M�N�N�N��V�[��2�.�.�.�1�#�q�c�1�#��!��a�S�!��
�0N�O�O�O��V�[��1�-�-�-�!�A���1�Q�%��/A�B�B�B��V�[��2�.�.�.�1�#�q�c�1�#��!��a�S�!��
�0N�O�O�O���R�d�+�+�+��'�
��F�J�4�8�8�8�8�8�8r1c��tjd��}|dd�dd�fxxdz
cc<|dd�dd�fxxdz
cc<|���}tj|d��t||��dS)N)r\r\r$r)r'r��copyr)r�r
)r+�im�cps   r/�test_mode_modifies_inputz!TestMode.test_mode_modifies_input�s����X�j�
!�
!��
�3�B�3����6�
�
�
�a��
�
�
�
�1�1�1�c�r�c�6�
�
�
�a��
�
�
�
�W�W�Y�Y����B������R������r1N)r2r3r4r�r�r5r1r/r�r��s2������9�9�9�:����r1r�c� �eZdZd�Zd�Zd�ZdS)�TestPercentilec�<�gd�|_gd�|_gd�|_dS)N)rIrJr�rT������r`)rI������r�r�rJrHr)rrJr�rTr�r�r�r)r�r�r��r+s r/�setup_methodzTestPercentile.setup_method	s-��*�*�*���,�,�,���1�1�1����r1c��tjd��dz}ttj|d��d��ttj|d��d��ttj|d��d��dS)	Nr�r~rr�r\r�r$g�?)r'r�r
r)�scoreatpercentiler�s  r/�test_percentilezTestPercentile.test_percentilesq���I�a�L�L�3����V�-�a��3�3�R�8�8�8��V�-�a��5�5�s�;�;�;��V�-�a��4�4�d�;�;�;�;�;r1c��tjgd�gd�gd�gd�gd�g��}ttj|d��gd���dS)N�rrr)rJrJrIr$)rbr(r
r)r�r�s  r/�test_2DzTestPercentile.test_2Dsc���H�i�i�i��i�i��i�i��i�i��i�i�	!�
"�
"��
	�V�-�a��4�4�i�i�i�@�@�@�@�@r1N)r2r3r4r�r�r�r5r1r/r�r�sF������2�2�2�
<�<�<�A�A�A�A�Ar1r�c�X�eZdZdZejddddejg��Zd�Z	d�Z
d�Zd	S)
�TestVariabilityz[  Comparison numbers are found using R v.1.5.1
         note that length(testcase) = 4
    rrHrIrJc�D�tj|j��}t|d��|j���}ttj|jd���t
j||dz
z��ztj|jd�����dS)Ng㝎���?rr�rH)r)�semr�rrjrr'r�)r+r�r�s   r/�test_semzTestVariability.test_sem#s����J�t�}�%�%���A�|�,�,�,��M���!�!����
�4�=�q�9�9�9�B�G�A�q��s�G�<L�<L�L��
�4�=�q�9�9�9�	;�	;�	;�	;�	;r1c��tj|j|j��}gd�}t||j|jdkd���dS)N)���OT\w�����%�ܿr����OT\w�?Fr]��decimal)r)�zmapr�rr,r_)r+r��desired_unmaskedvalss   r/�	test_zmapzTestVariability.test_zmap+sj��
�K��
�t�}�5�5��!D�!D�!D��!�"6�"#�&���5��"9�2�	G�	G�	G�	G�	G�	Gr1c��tj|j��}tjddddt
jg��}t||d���dS)Nr�r�r�r�r]r�)r)�zscorer�rbr�r'rr)r+r�r-s   r/�test_zscorezTestVariability.test_zscore4sX��
�M�$�-�(�(���.�"2�4E�"2�O�R�V�"M�N�N���G�Q��3�3�3�3�3�3r1N)r2r3r4�__doc__rbr�r'rr�r�r�r�r5r1r/r�r�sn���������r�~�q��1�Q�r�v�.�/�/�H�;�;�;�G�G�G�4�4�4�4�4r1r�c� �eZdZd�Zd�Zd�ZdS)�TestMiscc��dgdzdgdzzdgdzzdgdzzdgdzzd	gdzzdgdgdzzdgd
zzdgdzzd	gdzzg}ddgzdd
gzzddgzzddgzzddgzzddgzzdgddgzzd
dgzzddgzzddgzzg}ttjtj|�jd
��|d
��dS)Nr�r`rr�r�r�rIrHrTrJr g����_v	@g�1�%��?g"��u�?g���ZӼ�?g�!��u @g�q��&@g;pΈ��$@gTR'��p@g���9#�?g�HP�x?g���QI�?)rr'r(r)�obrientransformr&)r+�argsrs   r/�test_obrientransformzTestMisc.test_obrientransform?s*����A��q�c�"�f��a�S��U�"�A�3�q�5�(�!��Q��.��t�A�v�5���Q�C��E�	�1�#�a�%����A��%�r�d�2�g�-�/���V�H�*�R���[�(��F�8��3�A�v�h�J�>�q�&��z�I�!�W�I�+�U��)�A�v�h�J�&�q�&��z�1�!�V�H�*�<�R���[�H�J���B�H�V�%;�T�%B�%D�a�H�H�"�A�	'�	'�	'�	'�	'r1c�2�ttdddddddddddg
gd�dddd	d
ddddtddtg
td	ddd
td	ddddddg
g}tj|��j}|j\}}}}t	tjtj||��d��d��t	tjtj||d��d��d��t	tjtj||d��d��d��dS)NrJrHr r!r�rrIr"r`r#r�rr$)��4�8E�?gs��A��?�g)g�%䃞��?g���	�?�l)r�g�46<�?)	rrbr�r&rr'r(r)�ks_2samp)r+r?�winter�spring�summer�falls      r/�
test_ks_2sampzTestMisc.test_ks_2sampGs+���#�q�!�R��Q��1�a��A�q�
9�
4�
4�
4���A�q�"�a��A�q�#�q�!�S�
9��1�b�!�R��a��A�q�!�Q��
:�
<��
�N�1�����)*��&������B�H�V�_�V�V�%D�%D�a�H�H�,�	.�	.�	.��B�H�V�_�V�V�S�%I�%I�1�M�M�,�	.�	.�	.��B�H�V�_�V�V�S�%I�%I�1�M�M�,�	.�	.�	.�	.�	.r1c��gd�gd�gd�f}tj|�}t|ddd��t|ddd	��ttdd
ddd
dd
dd
ddg
gd�dd
d
d	dddddtddtg
td	dddtd	ddd
d
ddg
g}t	j|��}tj|�}t|ddd��t|ddd��d}t
||d���dS)N)
g"@�#@�@�@rr� @rr�r)
rr�rrrrrr�rr)
rrrrrr�rrr�rrg�:pΈ�$@rJrg�(�QG�u?r`rHr r!r�rIr"r#r�rr$gr����@g-C��6�?��	statisticr�Tr�)r)�friedmanchisquarerrrbr�r)r+r�rr?r�s     r/�test_friedmanchisqzTestMisc.test_friedmanchisqVs5��9�9�9�9�9�9�9�9�9�;���)�4�0���F�1�I�w��2�2�2��F�1�I�x��3�3�3��#�q�!�R��Q��1�a��A�q�
9�
4�
4�
4���A�q�"�a��A�q��a��3�
7��1�b�!�R��Q��1�a��A�q�
9�
;��
�N�1�����)�1�-���F�1�I�v�q�1�1�1��F�1�I�v�q�1�1�1�-�
��F�J�4�8�8�8�8�8�8r1N)r2r3r4r�rr
r5r1r/r�r�=sA������'�'�'�
.�
.�
.�9�9�9�9�9r1r�c�<�tjddd��}dtjddd��zdz}|tjtjddd����z
}tj||��}t
jj}tt||����d}t||d���d	t|��vsJ�t|j
d
��t|jd��t|jd��t|jd
��dS)Nrr\r%rTrU)�slope�	intercept�rvaluer��stderrTr��intercept_stderrg�5E%�?g�� �+l$@g�4_Q�c?g8���?)r'r��sinr)�
linregressr�_stats_mstats_common�LinregressResultr�
isinstancer�dirrrr
rr)r?r�r�lrr�s     r/�test_regress_simplerms��
��A�s�C� � �A��b�k�!�S�#�&�&�&��+�A������A�r�3�'�'�	(�	(�(�A�
�
�q�!�
$�
$�F�
�	#�	4�B��J�v�r�"�"�#�#�#�E�J���
�t�4�4�4�4���V���,�,�,�,����&9�:�:�:���(�*<�=�=�=���
�';�<�<�<���/�1D�E�E�E�E�Er1c��tjd��}tj�d��}d}tt|���5tj||��ddd��dS#1swxYwYdS)NrTzBCannot calculate a linear regression if all x values are identicalr�)r'r�r�rr�r)r)r?r��msgs   r/�test_linregress_identical_xr�s���
�����A�
�	������A�
N�C�	�z��	-�	-�	-� � ���!�Q���� � � � � � � � � � � � ���� � � � � � s�A/�/A3�6A3c��tjgd���\}}}}t|d��t|d��tjgd�d���\}}}}t|d��t|d��tj�gd�gd����}tj|��\}}}}t|d	��t|d
��tj|d���\}}}}t|d	��t|d��gd�}gd�}tj||d
��\}}}}t|d��t|d��t|dd���t|dd���tj||d
d���\}}}}t|d��t|d��t|dd���t|dd���dS)N)rrrr~�jointrr�)rrr\r)FFTFr^ragUUUUUU�?)rrHrIrJrTr]r#)r���rUr�7�Ng�Q���?rJrg��Q��@rHr�g�G�z�
@r)r)�theilslopesrr'rbr()rr
�lower�upperr�r?s      r/�test_theilslopesr%�s+��%+�%7�	�	�	�%B�%B�"�E�9�e�U���s�#�#�#��	�3�'�'�'�%+�%7�	�	�	�?F�&H�&H�&H�"�E�9�e�U���s�#�#�#��	�3�'�'�'�	����N�N�N�)D�)D�)D��E�E�A�%+�%7��%:�%:�"�E�9�e�U���t�$�$�$��	�4�(�(�(�%+�%7��?F�&H�&H�&H�"�E�9�e�U���t�$�$�$��	�3�'�'�'�	!� � �A�#�#�#�A�%+�%7��1�d�%C�%C�"�E�9�e�U���q�!�!�!��	�3�'�'�'���t�Q�/�/�/�/���t�Q�/�/�/�/�%+�%7��1�d�?F�&H�&H�&H�"�E�9�e�U���q�!�!�!��	�3�'�'�'���t�Q�/�/�/�/���t�Q�/�/�/�/�/�/r1c��tjtd���5tjddgddg��}tjtj|����sJ�	ddd��n#1swxYwYt��5}|�	td��tjgd�gd���}t|ddt
jt
jf��ddd��dS#1swxYwYdS)NzAll `x` coordinates are...r�rrzinvalid value encountered...�rrr)rrr)r��warnsr�r)r"r'�all�isnanr�filterrr)r��sups  r/�test_theilslopes_warningsr-�sc��	��n�,H�	I�	I�	I�%�%�� �!�Q��!�Q��0�0���v�b�h�s�m�m�$�$�$�$�$�$�%�%�%�%�%�%�%�%�%�%�%����%�%�%�%�
�	�	�5���
�
�>�#A�B�B�B�� ����I�I�I�6�6����a��B�F�B�F�3�4�4�4�5�5�5�5�5�5�5�5�5�5�5�5����5�5�5�5�5�5s%�AA+�+A/�2A/�AC.�.C2�5C2c��gd�}gd�}tj||��\}}}}tj||��}t||j��t||j��t||j��t||j��dS)zj
    Simple test to ensure tuple backwards-compatibility of the returned
    TheilslopesResult object
    �rrHrJ�rJr`r�N)r)r"r
rr
�	low_slope�
high_slope)r�r?rr
r1r2rs       r/�'test_theilslopes_namedtuple_consistencyr3�s���
	�	�	�A��	�	�A�.4�.@��A�.F�.F�+�E�9�i��
�
��1�
%�
%�F�����%�%�%���F�,�-�-�-���F�,�-�-�-���V�.�/�/�/�/�/r1c��dtjd��zdz}ttj|��d��ttj|d���d��dtjd��z}d|zdz
}ttj||��d	��ttj||d���d	��d
|dd�<ttj||��d	��tjd��}dd
|zzt
j�dd���z}tj||��\}}}}}tj||��\}}t||d���t||d���tj||d���\}}t||d���t||d���dS)NrHrTr~)rr~�separaterr�r)rr�rrJgffffff�r�����size�random_stater�r:)
r'r�r
r)�siegelslopesr�norm�rvsrr)r�r?�	slope_ols�
intercept_ols�_rr
s       r/�test_siegelslopesr@�s���	�B�I�b�M�M��C��A���$�Q�'�'��4�4�4���$�Q�z�:�:�:�J�G�G�G�	�B�I�b�M�M��A�	�A����A���$�Q��*�*�K�8�8�8���$�Q��*�=�=�=�{�K�K�K�
�A�b�q�b�E���$�Q��*�*�K�8�8�8�	�	�"�
�
�A��s�1�u��u�z�~�~�2�C�~�@�@�@�A�(-�(8��A�(>�(>�%�I�}�a��A��*�1�a�0�0��E�9��E�9�3�/�/�/�/��I�}�3�7�7�7�7��*�1�a�
�C�C�C��E�9��E�9�3�/�/�/�/��I�}�3�7�7�7�7�7�7r1c���gd�}gd�}tj||��\}}tj||��}t||j��t||j��dS)zl
    Simple test to ensure tuple backwards-compatibility of the returned
    SiegelslopesResult object.
    r/r0N)r)r:r
rr
)r�r?rr
rs     r/�(test_siegelslopes_namedtuple_consistencyrB�sl��
	�	�	�A��	�	�A��*�1�a�0�0��E�9�
�
 ��A�
&�
&�F�����%�%�%���F�,�-�-�-�-�-r1c��tjtjd��dd��}t	|jtjgd�����dS)NrIr)rLr~r
)r)�plotting_positionsr'r�rr,r()�poss r/�test_plotting_positionsrF�sG��
�
#�B�I�a�L�L�!�Q�
7�
7�C��c�h���1B�1B�1B�(C�(C�D�D�D�D�Dr1c���eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	e
j�dd	d
g��e
j�ddd
g��d�����Z
d�ZdS)�TestNormalitytestsc��tjd��dz}ttj|��tj|����ttj|��tj|����ttj|��tj|����t
jt
jt
jg}tjtjtjg}gd�}t||��D]1\}}tt||��tt||���2dS)N�r�rkrrrHrIr�rkrrrHrIr�rkrrrHrIr�rkrrrHrIrHrG)r'r(rr)�
normaltestr�skewtest�kurtosistest�ziprr�)r+r?�funcs�mfuncs�func�mfuncs      r/�test_vs_nonmaskedz$TestNormalitytests.test_vs_nonmaskeds���H�+�,�,�a�/��!�&�"3�A�"6�"6�"'�"2�1�"5�"5�	7�	7�	7�!�&�/�!�"4�"4�"'�.��"3�"3�	5�	5�	5�!�&�"5�a�"8�"8�"'�"4�Q�"7�"7�	9�	9�	9��!�5�>�5�3E�F���#�V�_�f�6I�J���L�L���u�f�-�-�	0�	0�K�D�%��*�d�A�.�.�.��*�e�Q�/�/�/�/�	0�	0r1c�x�tjd��dz}ttj|d���tj|����ttj|d���tj|����ttj|d���tj|����dS)NrJrHr�)r'r(rr)rKrLrMr�s  r/�test_axis_Nonez!TestNormalitytests.test_axis_Nones����H�&�'�'��*����)�!�$�7�7�7��9J�1�9M�9M�N�N�N������5�5�5�v��q�7I�7I�J�J�J���+�A�D�9�9�9��+�A�.�.�	0�	0�	0�	0�	0r1c� �tjd��dz}tj�tjtj|dftjddg|jzdf���}t
tj|��tj|����t
tj
|��tj
|����t
tj|��tj|����dS)NrJrHrTTFr^)r'r(rb�r_�infr8rr)rKrrLrM)r+r?�xms   r/�test_maskedarray_inputz)TestNormalitytests.test_maskedarray_inputs����H�+�,�,�a�/��
�U�[�[���r�v�q�"�}�-� �e�D�5�'�A�F�*:�D�$@�A��C�C����)�"�-�-�u�/?��/B�/B�C�C�C�����+�+�U�^�A�->�->�?�?�?���+�B�/�/��1C�A�1F�1F�G�G�G�G�Gr1c�f�tjd��dz}tj|gdz��j}tjtjtjfD]X}||��}||��}t|d|dgdz��t|d|dgdz���YdS)NrJrHrr)	r'r(�vstackr&r)rKrLrMr)r+r?�x_2drQ�res_1d�res_2ds      r/�
test_nd_inputz TestNormalitytests.test_nd_input#s����H�+�,�,�a�/���y�!��q��!�!�#���&����9L�M�	8�	8�D��T�!�W�W�F��T�$�Z�Z�F��F�1�I��q�	�{�Q��7�7�7��F�1�I��q�	�{�Q��7�7�7�7�		8�	8r1c��tjd��dz}tj|��}d}t	||d���dS�NrJrHrTr�)r'r(r)rKr�r+r?r�r�s    r/�!test_normaltest_result_attributesz4TestNormalitytests.test_normaltest_result_attributes,sG���H�+�,�,�a�/�����"�"��,�
��C���5�5�5�5�5�5r1c��tjd��dz}tj|��}d}t	||d���dSrb)r'r(r)rMrrcs    r/�#test_kurtosistest_result_attributesz6TestNormalitytests.test_kurtosistest_result_attributes2sG���H�+�,�,�a�/���!�!�$�$��,�
��C���5�5�5�5�5�5r1c��gd�}tjd�t|��D����}tt	j|��ddkd��dS)N)
�r�:r�r�)r rr�c�>�g|]\}}tj||����Sr5)r'�full)�.0r��cs   r/�
<listcomp>z;TestNormalitytests.regression_test_9033.<locals>.<listcomp><s&��C�C�C���A�r�w�q�!�}�}�C�C�Cr1rg{�G�z�?T)r'�hstackr�r
r)rM)r+�countsr?s   r/�regression_test_9033z'TestNormalitytests.regression_test_90338s`��7�6�6���I�C�C��6�1B�1B�C�C�C�D�D���V�(��+�+�A�.��5�t�<�<�<�<�<r1�testrLrMr�r�r�c�\�tj�dddd���}tt|��}tt|��}|||���\}}|||���\}}	t||d���t|	|d���tj|d	d
�<tj�	|t
j
|�����}||���|���\}}|||���\}}	t||d���t|	|d���dS)NrTr#rV�{��loc�scaler8r9r�g�-���q=��atolrr�r^)rr;r<�getattrr)rr'rrbr�r*r2)
r+rtr�r?�
stats_test�mstats_test�z_ex�p_exrr�s
          r/�test_alternativez#TestNormalitytests.test_alternative?s2��
�J�N�N�r��2�C�N�H�H���U�D�)�)�
��f�d�+�+���Z��{�;�;�;�
��d��{�1�+�6�6�6���1���4�e�,�,�,�,���4�e�,�,�,�,����!�A�#���E���q�r�x��{�{��3�3���Z������K�H�H�H�
��d��{�1�+�6�6�6���1���4�e�,�,�,�,���4�e�,�,�,�,�,�,r1c�r�tj�dd���}d}tjt
|���5t
j|d���ddd��n#1swxYwYtjt
|���5t
j|d���ddd��dS#1swxYwYdS)NrUrvr7�4alternative must be 'less', 'greater' or 'two-sided'r�r�r�)	rr;r<r�r	r�r)rLrM)r+r?rs   r/�test_bad_alternativez'TestNormalitytests.test_bad_alternativeTs.���J�N�N���N�5�5��E��
�]�:�S�
1�
1�
1�	4�	4��O�A�7�3�3�3�3�	4�	4�	4�	4�	4�	4�	4�	4�	4�	4�	4����	4�	4�	4�	4��]�:�S�
1�
1�
1�	8�	8����w�7�7�7�7�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8����	8�	8�	8�	8�	8�	8s#�A"�"A&�)A&�B,�,B0�3B0N)r2r3r4rSrUrZr`rdrfrsr�r�rRr�r�r5r1r/rHrHs�������0�0�0� 0�0�0�H�H�H�8�8�8�6�6�6�6�6�6�=�=�=��[���V�j�.�%A�B�B��[���]�V�Y�,?�@�@�-�-�A�@�C�B�-�&8�8�8�8�8r1rHc��eZdZd�ZdS)�TestFOnewayc���tjddgtj���}tjddgtj���}tj||��}d}t||d���dS)	Ni�ir�iirTr�)r'r(�uint16r)�f_onewayr)r+rPrr�r�s     r/�test_result_attributesz"TestFOneway.test_result_attributes`sg���H�c�3�Z�r�y�1�1�1���H�c�3�Z�r�y�1�1�1���o�a��#�#��,�
��C���5�5�5�5�5�5r1N�r2r3r4r�r5r1r/r�r�_s#������6�6�6�6�6r1r�c�b�eZdZejgd���Zejgd���Zd�Zd�ZdS)�TestMannwhitneyu)�rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr)�rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrc�l�tj|j|j��}d}t	||d���dS)NrTr�)r)�mannwhitneyur?r�r)r+r�r�s   r/r�z'TestMannwhitneyu.test_result_attributes�s8���!�$�&�$�&�1�1��,�
��C���5�5�5�5�5�5r1c���tj|j|j��}t	j|j|j��}|j|jksJ�t
|j|j��dSr�)r)r�r?r�rrrr�)r+�res1�res2s   r/�test_against_statsz#TestMannwhitneyu.test_against_stats�s_���"�4�6�4�6�2�2���!�$�&�$�&�1�1���~���/�/�/�/����T�[�1�1�1�1�1r1N)	r2r3r4r'r(r?r�r�r�r5r1r/r�r�hsx���������*�*�*�	+�	+�A�&	���"�"�"�	#�	#�A�6�6�6�
2�2�2�2�2r1r�c��eZdZd�ZdS)�TestKruskalc�h�gd�}gd�}tj||��}d}t||d���dS)N)rrIr�r�r�)rHrJr`r�rTrTr�)r)�kruskalrr�s     r/r�z"TestKruskal.test_result_attributes�sG���O�O�������n�Q��"�"��,�
��C���5�5�5�5�5�5r1Nr�r5r1r/r�r��s#������6�6�6�6�6r1r�c��eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	e
j�dd	d
g��d���Z
dS)
�
TestTtest_relc�t�tj�d��tj�dd��gd�z}t	j|dd�df|dd�df��}t
j|dd�df|dd�df��}t||��t	j|dd�df|dd�dfd���}t
j|dd�df|dd�dfd���}t||��t	j|dd�dd�f|dd�dd�fd���}t
j|dd�dd�f|dd�dd�fd���}t||��t
j|dd�dd�f|dd�dd�f��}t||��dS)	N��rUrJ�rrrrHrrr�rH)r'r�r1�randnr�	ttest_relr)r)r+�outcomer�r��res3s     r/rSzTestTtest_rel.test_vs_nonmasked�s���
�	���w�����)�/�/�"�a�(�(�<�<�<�7����w�q�q�q�!�t�}�g�a�a�a��d�m�<�<��������1��
�w�q�q�q�!�t�}�=�=����d�#�#�#���w�q�q�q�!�t�}�g�a�a�a��d�m�$�G�G�G��������1��
�w�q�q�q�!�t�}�4�H�H�H����d�#�#�#���w�q�q�q�"�1�"�u�~�w�q�q�q�!�"�"�u�~�A�F�F�F��������2�A�2�������1�2�2���Q�G�G�G����d�#�#�#�������2�A�2�������1�2�2���?�?����d�#�#�#�#�#r1c�f�tj�d��tjtj�dd��gd�gd�g���}t
��5}|�td��|dd�df|dd�d	fftj	tj	gd
dgffD]_}tj|�\}}t|tj	tj	f��t|tj	tj	f���`	ddd��dS#1swxYwYdS�Nr�rIrHr�r'r^�%invalid value encountered in absoluterrrr)
r'r�r1rbr�r�rr+r�rr)r�r�r+r�r,�pair�tr�s      r/�test_fully_maskedzTestTtest_rel.test_fully_masked�s_��
�	���w�����/�"�)�/�/�!�Q�"7�"7�(1�	�	�9�9�9�'=�?�?�?��
�
 �
 �	8�C��J�J�~�'N�O�O�O�!�!�!�!�Q�$�-�����A���7�2�6�2�6�:J�S�RU�J�9W�X�
8�
8���'��.���1�"�1�r�v�r�v�&6�7�7�7�"�1�r�v�r�v�&6�7�7�7�7�
8�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8����	8�	8�	8�	8�	8�	8��(B0D&�&D*�-D*c��tj�d��tj�dd��gd�z}t	j|dd�df|dd�df��}d}t
||d�	��dS�
Nr�rUrJr�rrrTr�)r'r�r1r�r)r�r�r+r�r�r�s    r/r�z$TestTtest_rel.test_result_attributes��~��
�	���w�����)�/�/�"�a�(�(�<�<�<�7����w�q�q�q�!�t�}�g�a�a�a��d�m�<�<��,�
��C���5�5�5�5�5�5r1c
���tttjt	jd��t	jd����t	jd��}tttj|�ddd��|�ddd��d���tttj|�ddd��|�ddd��d���dS)	NrTrrKrHrIrJrr�)rr�r)r�r'r�r_r�s  r/�test_invalid_input_sizez%TestTtest_rel.test_invalid_input_size�s����j�&�"2��i��m�m�R�Y�r�]�]�	4�	4�	4��I�b�M�M���j�&�"2��i�i��1�a�(�(�!�)�)�A�q�!�*<�*<�1�	F�	F�	F�	F��j�&�"2��i�i��1�a�(�(�!�)�)�A�q�!�*<�*<�1�	F�	F�	F�	F�	F�	Fr1c��tjgg��}ttjtj|������dSr�)r)r�rr'r)r*�r+r�s  r/�
test_emptyzTestTtest_rel.test_empty��:�����B�'�'�����r�x��~�~�&�&�'�'�'�'�'r1c�:�tjgd�gd���\}}ttj|��|ftjdf��t
��5}|�td��tjgd�gd���\}}t|tj
tjtjg����t|tj
tjtjg����ddd��dS#1swxYwYdS)Nr'r�rr�)r)�	ttest_indr
r'�absrXrr+r�rr(r�r+r�r�r,s    r/�test_zero_divisionz TestTtest_rel.test_zero_division�s(����	�	�	�9�9�9�5�5���1��b�f�Q�i�i��^�b�f�a�[�1�1�1�
�
 �
 �	>�C��J�J�~�'N�O�O�O��#�I�I�I�y�y�y�9�9�D�A�q��q�"�(�B�F�B�F�+;�"<�"<�=�=�=��q�"�(�B�F�B�F�+;�"<�"<�=�=�=�		>�	>�	>�	>�	>�	>�	>�	>�	>�	>�	>�	>����	>�	>�	>�	>�	>�	>s�B(D�D�Dc��d}tjt|���5tjgd�gd�d���ddd��dS#1swxYwYdS�Nr�r��rrHrI)rJr�r`�foor��r�r	r�r)r��r+rs  r/r�z"TestTtest_rel.test_bad_alternative����E��
�]�:�S�
1�
1�
1�	F�	F���Y�Y�Y�	�	�	�u�E�E�E�E�	F�	F�	F�	F�	F�	F�	F�	F�	F�	F�	F�	F����	F�	F�	F�	F�	F�	F��A�A�Ar�r�r�c�J�tj�dddd���}tj�dddd���}tj|||���\}}t	j|||���\}}t||d	�
��t||d	�
��tj|dd�<tj|dd�<tj�	|t
j
|�����}tj�	|t
j
|�����}t	j|||���\}}tj|���|���|���\}}t||d	�
��t||d	�
��dS)
NrTr�r�*rwr�rHr�rMr:rr^)rr;r<r�r)rr'rrbr�r*r2�r+r�r?r��t_exr�r�r�s        r/r�zTestTtest_rel.test_alternative�sw���J�N�N�r���"�N�E�E���J�N�N�q����N�D�D���_�Q��{�C�C�C�
��d����1�+�>�>�>���1���4�e�,�,�,�,���4�e�,�,�,�,��&��!�B�$���&��!�B�$���E���q�r�x��{�{��3�3���E���q�r�x��{�{��3�3�����1�+�>�>�>���1��_�Q�\�\�^�^�Q�\�\�^�^�1<�>�>�>�
��d���4�e�,�,�,�,���4�e�,�,�,�,�,�,r1N)r2r3r4rSr�r�r�r�r�r�r�r�rRr�r5r1r/r�r��s�������$�$�$�*	8�	8�	8�6�6�6�F�F�F�(�(�(�>�>�>�F�F�F�
�[���]�V�Y�,?�@�@�-�-�A�@�-�-�-r1r�c�~�eZdZd�Zd�Zd�Zd�Zd�Zd�Ze	j
�ddd	g��d
���ZdS)�
TestTtest_indc��tj�d��tj�dd��gd�z}t	j|dd�df|dd�df��}t
j|dd�df|dd�df��}t||��t	j|dd�df|dd�dfd���}t
j|dd�df|dd�dfd���}t||��t	j|dd�dd�f|dd�dd�fd���}t
j|dd�dd�f|dd�dd�fd���}t||��t
j|dd�dd�f|dd�dd�f��}t||��t	j|dd�df|dd�dfd	�
��}t
j|dd�df|dd�dfd	�
��}t||��t	j|dd�df|dd�dfd�
��}t
j|dd�df|dd�dfd�
��}t||��dS)Nr�rUrJr�rrr�rHT��	equal_varF)r'r�r1r�rr�r)r)r+r�r�r�r��res4�res5s       r/rSzTestTtest_ind.test_vs_nonmaskeds���
�	���w�����)�/�/�"�a�(�(�<�<�<�7����w�q�q�q�!�t�}�g�a�a�a��d�m�<�<��������1��
�w�q�q�q�!�t�}�=�=����d�#�#�#���w�q�q�q�!�t�}�g�a�a�a��d�m�$�G�G�G��������1��
�w�q�q�q�!�t�}�4�H�H�H����d�#�#�#���w�q�q�q�"�1�"�u�~�w�q�q�q�!�"�"�u�~�A�F�F�F��������2�A�2�������1�2�2���Q�G�G�G����d�#�#�#�������2�A�2�������1�2�2���?�?����d�#�#�#���w�q�q�q�!�t�}�g�a�a�a��d�m�t�L�L�L��������1��
�w�q�q�q�!�t�}��M�M�M����d�#�#�#���w�q�q�q�!�t�}�g�a�a�a��d�m�u�M�M�M��������1��
�w�q�q�q�!�t�}��N�N�N����d�#�#�#�#�#r1c�f�tj�d��tjtj�dd��gd�gd�g���}t
��5}|�td��|dd�df|dd�d	fftj	tj	gd
dgffD]_}tj|�\}}t|tj	tj	f��t|tj	tj	f���`	ddd��dS#1swxYwYdSr�)
r'r�r1rbr�r�rr+r�rr)r�rr�s      r/r�zTestTtest_ind.test_fully_maskedsX��
�	���w�����/�"�)�/�/�!�Q�"7�"7�y�y�y�)�)�)�>T�U�U�U��
�
 �
 �	8�C��J�J�~�'N�O�O�O�!�!�!�!�Q�$�-�����A���7�2�6�2�6�:J�S�RU�J�9W�X�
8�
8���'��.���1�"�1�r�v�r�v�&6�7�7�7�"�1�r�v�r�v�&6�7�7�7�7�
8�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8����	8�	8�	8�	8�	8�	8r�c��tj�d��tj�dd��gd�z}t	j|dd�df|dd�df��}d}t
||d�	��dSr�)r'r�r1r�r)r�rr�s    r/r�z$TestTtest_ind.test_result_attributes'r�r1c��tjgg��}ttjtj|������dSr�)r)r�rr'r)r*r�s  r/r�zTestTtest_ind.test_empty/r�r1c�
�tjgd�gd���\}}ttj|��|ftjdf��t
��5}|�td��tjgd�gd���\}}t|tj
tj
f��t|tj
tj
f��ddd��n#1swxYwYtjgd�gd�d���\}}ttj|��|ftjdf��ttjgd�gd�d���tj
tj
f��dS)Nr'r�rr�Fr�)r)r�r
r'r�rXrr+r�rrr�s    r/r�z TestTtest_ind.test_zero_division3s�����	�	�	�9�9�9�5�5���1��b�f�Q�i�i��^�b�f�a�[�1�1�1�
�
 �
 �	4�C��J�J�~�'N�O�O�O��#�I�I�I�y�y�y�9�9�D�A�q��q�2�6�2�6�"2�3�3�3��q�2�6�2�6�"2�3�3�3�		4�	4�	4�	4�	4�	4�	4�	4�	4�	4�	4����	4�	4�	4�	4���	�	�	�9�9�9��F�F�F���1��b�f�Q�i�i��^�b�f�a�[�1�1�1��6�+�I�I�I�y�y�y�6;�=�=�=�?A�v�r�v�>N�	P�	P�	P�	P�	Ps�BC+�+C/�2C/c��d}tjt|���5tjgd�gd�d���ddd��dS#1swxYwYdSr�r�r�s  r/r�z"TestTtest_ind.test_bad_alternativeBr�r�r�r�r�c�J�tj�dddd���}tj�dddd���}tj|||���\}}t	j|||���\}}t||d�	��t||d�	��tj|d
d�<tj|dd�<tj�	|t
j
|���
��}tj�	|t
j
|���
��}tj|���|���|���\}}t	j|||���\}}t||d�	��t||d�	��dS)NrTrHr\rvrwr�r�rMr:rrZr[r^)rr;r<r�r)rr'rrbr�r*r2r�s        r/r�zTestTtest_ind.test_alternativeGsw���J�N�N�r���3�N�G�G���J�N�N�q���#�N�F�F���_�Q��{�C�C�C�
��d����1�+�>�>�>���1���4�e�,�,�,�,���4�e�,�,�,�,��&��!�B�$���6��"�R�%���E���q�r�x��{�{��3�3���E���q�r�x��{�{��3�3���_�Q�\�\�^�^�Q�\�\�^�^�1<�>�>�>�
��d����1�+�>�>�>���1���4�e�,�,�,�,���4�e�,�,�,�,�,�,r1N�
r2r3r4rSr�r�r�r�r�r�r�rRr�r5r1r/r�r��s�������$�$�$�:8�8�8�6�6�6�(�(�(�
P�
P�
P�F�F�F�
�[���]�V�Y�,?�@�@�-�-�A�@�-�-�-r1r�c�~�eZdZd�Zd�Zd�Zd�Zd�Zd�Ze	j
�ddd	g��d
���ZdS)�TestTtest_1sampc�*�tj�d��tj�dd��gd�z}t	j|dd�dfd��}t
j|dd�dfd��}t||��dS)Nr�rUrJr�rr)r'r�r1r�r�ttest_1sampr)r)r+r�r�r�s    r/rSz!TestTtest_1samp.test_vs_nonmasked^s���
�	���w�����)�/�/�"�a�(�(�<�<�<�7��� �����A����2�2���!�'�!�!�!�Q�$�-��3�3����d�#�#�#�#�#r1c��tj�d��tjtj�d��gd����}tjtjf}t��5}|�td��tjtjfdf|dffD]3}tj|�\}}t||��t||���4	ddd��dS#1swxYwYdS)Nr�rIr�r^r�r�)
r'r�r1rbr�r�rrr+r�r)r�r)r+r�rr,r�r�r�s       r/r�z!TestTtest_1samp.test_fully_maskedgs+��
�	���w�����/�"�)�/�/�!�"4�"4�9�9�9�E�E�E���F�B�F�#��
�
 �
 �	0�C��J�J�~�'N�O�O�O��6�2�6�*�C�0�7�C�.�A�
0�
0���)�4�0���1�"�1�h�/�/�/�"�1�h�/�/�/�/�
0�	0�	0�	0�	0�	0�	0�	0�	0�	0�	0�	0�	0����	0�	0�	0�	0�	0�	0s�;A.C7�7C;�>C;c���tj�d��tj�dd��gd�z}t	j|dd�dfd��}d}t
||d�	��dSr�)r'r�r1r�r)r�rr�s    r/r�z&TestTtest_1samp.test_result_attributesrsr��
�	���w�����)�/�/�"�a�(�(�<�<�<�7��� �����A����2�2��,�
��C���5�5�5�5�5�5r1c��tjgd��}ttjtj|������dS)Nr)r)r�rr'r)r*r�s  r/r�zTestTtest_1samp.test_emptyzs:���!�"�a�(�(�����r�x��~�~�&�&�'�'�'�'�'r1c���tjgd�d��\}}ttj|��|ftjdf��t
��5}|�td��tjgd�d��\}}ttj
|����t|tjtjf��ddd��dS#1swxYwYdS)Nr'rrr�)
r)r�r
r'r�rXrr+r�rr*rrr�s    r/r�z"TestTtest_1samp.test_zero_division~s	���!�)�)�)�Q�/�/���1��b�f�Q�i�i��^�b�f�a�[�1�1�1�
�
 �
 �	4�C��J�J�~�'N�O�O�O��%�i�i�i��3�3�D�A�q��B�H�Q�K�K� � � ��q�2�6�2�6�"2�3�3�3�		4�	4�	4�	4�	4�	4�	4�	4�	4�	4�	4�	4����	4�	4�	4�	4�	4�	4s�A=C#�#C'�*C'c��d}tjt|���5tjgd�dd���ddd��dS#1swxYwYdS)Nr�r�r�rJr�r�)r�r	r�r)r�r�s  r/r�z$TestTtest_1samp.test_bad_alternative�s���E��
�]�:�S�
1�
1�
1�	@�	@���y�y�y�!��?�?�?�?�	@�	@�	@�	@�	@�	@�	@�	@�	@�	@�	@�	@����	@�	@�	@�	@�	@�	@s�A�A	�A	r�r�r�c�X�tj�dddd���}tj|d|���\}}t	j|d|���\}}t||d�	��t||d�	��tj|d
d�<tj�	|t
j
|�����}tj|���d|���\}}t	j|d|���\}}t||d�	��t||d�	��dS)NrTrHr\rvrwr�r�rMr:rr^)rr;r<r�r)rr'rrbr�r*r2)r+r�r?r�r�r�r�s       r/r�z TestTtest_1samp.test_alternative�s(���J�N�N�r���3�N�G�G���&�q�!��E�E�E�
��d��!�!�Q�K�@�@�@���1���4�e�,�,�,�,���4�e�,�,�,�,��&��!�B�$���E���q�r�x��{�{��3�3���&�q�|�|�~�~�q�3>�@�@�@�
��d��!�!�Q�K�@�@�@���1���4�e�,�,�,�,���4�e�,�,�,�,�,�,r1Nr�r5r1r/r�r�]s�������$�$�$�	0�	0�	0�6�6�6�(�(�(�4�4�4�@�@�@�
�[���]�V�Y�,?�@�@�-�-�A�@�-�-�-r1r�c��eZdZdZd�ZdS)�TestDescribez�
    Tests for mstats.describe.

    Note that there are also tests for `mstats.describe` in the
    class TestCompareWithStats.
    c���tj�gd�gd�ggd�gd�g���}tj|d���}t|jdd	g��|j\}}t|d
dg��t|d	dg��t|jdd
g��t|j	ddg��t|j
ddg��t|jddg��dS)N)rrrHrIrJr�)r�r�rr�rIrI)rrrrrr)rrrrrrr^rr�r�rJrrIrrrr�g���������)
r'rbr�r)�describer
�nobs�minmax�mean�variance�skewnessrr�)r+rPr�amin�amaxs     r/�test_basic_with_axisz!TestDescribe.test_basic_with_axis�s	���E��� 2� 2� 2� 2� 2� 2� 4�%7�%7�%7�%7�%7�%7�%9�
�
:�
:������+�+�+���V�[�1�a�&�)�)�)��]�
��d��T�A�q�6�"�"�"��T�A�q�6�"�"�"��V�[�3��*�-�-�-��V�_�s�C�j�1�1�1��V�_�s�C�j�1�1�1����$���6�6�6�6�6r1N)r2r3r4r�r�r5r1r/r�r��s-��������7�7�7�7�7r1r�c���eZdZdZd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z!d �Z"d!�Z#d"�Z$d#�Z%d$�Z&d%�Z'd&�Z(d'S)(�TestCompareWithStatsa
    Class to compare mstats results with stats results.

    It is in general assumed that scipy.stats is at a more mature stage than
    stats.mstats.  If a routine in mstats results in similar results like in
    scipy.stats, this is considered also as a proper validation of scipy.mstats
    routine.

    Different sample sizes are used for testing, as some problems between stats
    and mstats are dependent on sample size.

    Author: Alexander Loew

    NOTE that some tests fail. This might be caused by
    a) actual differences or bugs between stats and mstats
    b) numerical inaccuracies
    c) different definitions of routine interfaces

    These failures need to be checked. Current workaround is to have disabled these tests,
    but issuing reports on scipy-dev

    c�
�gd�S)z9 Returns list of sample sizes to be used for comparison. )rr\rTr�r5r�s r/�get_nzTestCompareWithStats.get_n�s��!�!�!�!r1c�B�tj�d��tj�|��}|tj�|��z}tjt|��dzd��}tjt|��dzd��}||dt|���<||dt|���<|dk}tj�||���}tj�||���}||||fS)Nr�r�g��7y�ACrg���s�?Cr^)r'r�r1r�rm�lenrbr()r+r�r?r�rY�ymr_s       r/�generate_xy_samplez'TestCompareWithStats.generate_xy_sample�s���	�	���w�����I�O�O�A����
��	����"�"�"��
�W�S��V�V�a�Z��
&�
&��
�W�S��V�V�a�Z��
&�
&����1�S��V�V�8����1�S��V�V�8���D�y��
�U�[�[��$�[�
'�
'��
�U�[�[��$�[�
'�
'���!�R��|�r1c��tj||ftj��}tj||ftj��}tj|dz|ftj��}tj|dz|ftj��}t|��D]*}|�|��\|dd�|f<|dd�|f<}}	�+|d|�|d|�dd�f<|d|�|d|�dd�f<tj�|tj|�����}tj�|tj|�����}||||fS)Nr�rr^)r'rmrr�r�rbr(r*)
r+r��nxr?r�rYr�r��dx�dys
          r/�generate_xy_sample2Dz)TestCompareWithStats.generate_xy_sample2D�s9���G�Q��G�R�V�$�$���G�Q��G�R�V�$�$��
�W�a��c�2�Y���
'�
'��
�W�a��c�2�Y���
'�
'���r���	B�	B�A�'+�'>�'>�q�'A�'A�$�A�a�a�a��d�G�Q�q�q�q�!�t�W�b�"�"��q��s�V��1�Q�3����6�
��q��s�V��1�Q�3����6�
�
�U�[�[��"�(�2�,�,�[�
/�
/��
�U�[�[��"�(�2�,�,�[�
/�
/���!�R��|�r1c�:�|���D]�}|�|��\}}}}tj||��}tj�||��}tt
j|��t
j|������dSr�)r�r�rrr)rr'r�)r+r�r?r�rYr��result1�result2s        r/�test_linregressz$TestCompareWithStats.test_linregress�s��������	F�	F�A��2�2�1�5�5�L�A�q�"�b��&�q�!�,�,�G��l�-�-�b�"�5�5�G��B�J�w�/�/���G�1D�1D�E�E�E�E�		F�	Fr1c�&�|���D]{}|�|��\}}}}tj||��\}}tj�||��\}}	t||d���t||	d����|dS)Nrhr�)r�r�rr�r)r�
r+r�r?r�rYr�r�r��rm�pms
          r/r�z"TestCompareWithStats.test_pearsonr�s��������	3�	3�A��2�2�1�5�5�L�A�q�"�b��>�!�Q�'�'�D�A�q��\�*�*�2�r�2�2�F�B����2�r�2�2�2�2���2�r�2�2�2�2�2�
	3�	3r1c�"�|���D]y}|�|��\}}}}tj||��\}}tj�||��\}}	t||d��t||	d���zdS�Nrh)r�r�rr�r)rr�s
          r/r�z#TestCompareWithStats.test_spearmanrs��������	+�	+�A��2�2�1�5�5�L�A�q�"�b��?�1�a�(�(�D�A�q��\�+�+�B��3�3�F�B����2�r�*�*�*���2�r�*�*�*�*�	+�	+r1c�r�tjd��}tttj||d��dS)Nr`F)r'r�rr�r)r�r�s  r/�!test_spearmanr_backcompat_usetiesz6TestCompareWithStats.test_spearmanr_backcompat_useties	s0��
�I�a�L�L���j�&�"2�A�q�%�@�@�@�@�@r1c���|���D]�}|�|��\}}}}tjt	|����}tj�t	|����}t
||d���tjt	|����}tj�t	|����}t
||d�����dS)Ng�vIh�%<=r:)r�r�rr<r�r)r�r+r�r?r�rYr�r�r�s        r/�
test_gmeanzTestCompareWithStats.test_gmeans��������	/�	/�A��2�2�1�5�5�L�A�q�"�b���C��F�F�#�#�A���#�#�C��G�G�,�,�B��A�r��.�.�.�.���C��F�F�#�#�A���#�#�C��G�G�,�,�B��A�r��.�.�.�.�.�	/�	/r1c���|���D]�}|�|��\}}}}tjt	|����}tj�t	|����}t
||d��tjt	|����}tj�t	|����}t
||d����dS�NrT)r�r�rrBr�r)rrs        r/�
test_hmeanzTestCompareWithStats.test_hmeans��������		+�		+�A��2�2�1�5�5�L�A�q�"�b���C��F�F�#�#�A���#�#�C��G�G�,�,�B���2�r�*�*�*���C��F�F�#�#�A���#�#�C��G�G�,�,�B���2�r�*�*�*�*�		+�		+r1c�x�|���D]�}|�|��\}}}}tj|��}tj�|��}t||d��tj|��}tj�|��}t||d����dSr)r�r�rr�r)rrs        r/�	test_skewzTestCompareWithStats.test_skew&s��������		+�		+�A��2�2�1�5�5�L�A�q�"�b��
�1�
�
�A���"�"�2�&�&�B���2�r�*�*�*��
�1�
�
�A���"�"�2�&�&�B���2�r�*�*�*�*�		+�		+r1c�x�|���D]�}|�|��\}}}}tj|��}tj�|��}t||d��tj|��}tj�|��}t||d����dSr)r�r�rr�r)rrs        r/r�z TestCompareWithStats.test_moment2s��������		+�		+�A��2�2�1�5�5�L�A�q�"�b���Q���A���$�$�R�(�(�B���2�r�*�*�*���Q���A���$�$�R�(�(�B���2�r�*�*�*�*�		+�		+r1c��|���D�]i}|�|��\}}}}||���z
|���z}||���z
|���z}t	tj|��|d���t	tj|��|d���t	tj|��t
j�|dt|�����d���t	tj|��t
j�|dt|�����d�����kdS)N绽���|�=r:r)	r�r�r��stdrrr�r)r�)r+r�r?r�rYr��zx�zys        r/r�z TestCompareWithStats.test_zscore>sG�������	(�	(�A��2�2�1�5�5�L�A�q�"�b��a�f�f�h�h�,�!�%�%�'�'�)�B��a�f�f�h�h�,�!�%�%�'�'�)�B�
�E�L��O�O�R�e�<�<�<�<��E�L��O�O�R�e�<�<�<�<�
�E�L��O�O�U�\�-@�-@��A�c�!�f�f�H��-N�-N�!&�
(�
(�
(�
(��E�L��O�O�U�\�-@�-@��A�c�!�f�f�H��-N�-N�!&�
(�
(�
(�
(�
(�	(�	(r1c�x�|���D]�}|�|��\}}}}tj|��}tj�|��}t||d��tj|��}tj�|��}t||d����dSr)r�r�rr�r)rrs        r/r�z"TestCompareWithStats.test_kurtosisPs��������	+�	+�A��2�2�1�5�5�L�A�q�"�b���q�!�!�A���&�&�r�*�*�B���2�r�*�*�*���q�!�!�A���&�&�r�*�*�B���2�r�*�*�*�*�	+�	+r1c	���tjd���dd��}tj�|��}tj|d���}t
j�|d���}t|dd���t|dd���|�	��D�]9}|�
|��\}}}}	tt
j�|dd	�
��tj|dd	�
��d���tt
j�|	dd	�
��tj|dd	�
��d���tt
j�|dd�
��tj|dd�
��d���tt
j�|	dd�
��tj|dd�
��d�����;dS)
NrUr�rJrr�g�'�e��@g�h㈵��>rzr)r%r��
r�)r'r�r_rbr(rr�r)rr�r�r)
r+rP�amr�r�r�r?r�rYr�s
          r/r�zTestCompareWithStats.test_sem[s����I�b�M�M�!�!�!�Q�'�'��
�U�[�[��^�^���I�a�a� � � ��
�\�
�
�b�q�
�
)�
)����:�D�1�1�1�1���J�T�2�2�2�2������		M�		M�A��2�2�1�5�5�L�A�q�"�b���� 0� 0��$�Q� 0� G� G� %�	�!�$�Q� ?� ?� ?��
M�
M�
M�
M���� 0� 0��$�Q� 0� G� G� %�	�!�$�Q� ?� ?� ?��
M�
M�
M�
M���� 0� 0��$�Q� 0� G� G� %�	�!�$�Q� ?� ?� ?��
M�
M�
M�
M���� 0� 0��$�Q� 0� G� G� %�	�!�$�Q� ?� ?� ?��
M�
M�
M�
M�
M�		M�		Mr1c	�~�|���D]�}|�|��\}}}}tj|d���}tj�|d���}td��D]D}t
tj||��tj||��d����E��dS)Nrr�r`r]r�)	r�r�rr�r)r�rr'r�)	r+r�r?r�rYr�r�r��iis	         r/�
test_describez"TestCompareWithStats.test_describeps��������	0�	0�A��2�2�1�5�5�L�A�q�"�b���q�q�)�)�)�A���&�&�r��&�2�2�B��A�h�h�
0�
0��#�B�J�q��u�$5�$5�$&�J�r�"�v�$6�$6�,.�0�0�0�0�0�
0�		0�	0r1c�z�tjtjd����}d}t	||d���dS)Nr�)r�r�r�r�r�r�Tr�)r)r�r'r�r)r+r�r�s   r/�test_describe_result_attributesz4TestCompareWithStats.test_describe_result_attributeszs;������1���.�.��"�
��F�J�4�8�8�8�8�8�8r1c���|���D]_}|�|��\}}}}tj|��}tj�|��}t||���`dSr�)r�r�rr�r)rrs        r/�
test_rankdataz"TestCompareWithStats.test_rankdata�su�������	#�	#�A��2�2�1�5�5�L�A�q�"�b���q�!�!�A���&�&�q�)�)�B��A�r�"�"�"�"�		#�	#r1c�h�|���D]�}|�|��\}}}}ttj|��tj�|��d��ttj|��tj�|��d����dSr�)r�r�rr�tmeanr)�r+r�r?r�rYr�s      r/�
test_tmeanzTestCompareWithStats.test_tmean�s��������	K�	K�A��2�2�1�5�5�L�A�q�"�b����A���u�|�/A�/A�"�/E�/E�r�J�J�J����A���u�|�/A�/A�"�/E�/E�r�J�J�J�J�	K�	Kr1c��|���D�])}|�|��\}}}}ttj|d��tj�|d��d��ttj|d��tj�|d��d��ttj|d���tj�|d���d��ttj|d���tj�|d���d����+dS)NrrTr)�
upperlimit)r�r�rr�tmaxr)rs      r/�	test_tmaxzTestCompareWithStats.test_tmax�s8�������
	J�
	J�A��2�2�1�5�5�L�A�q�"�b���
�1�R� 0� 0� %�� 1� 1�"�R� 8� 8�"�
>�
>�
>���
�1�R� 0� 0� %�� 1� 1�"�R� 8� 8�"�
>�
>�
>�
 ��
�1�� <� <� <� %�� 1� 1�"�� 1� D� D�b�
J�
J�
J���
�1�� <� <� <� %�� 1� 1�"�� 1� D� D�b�
J�
J�
J�
J�
	J�
	Jr1c�x�|���D�]#}|�|��\}}}}ttj|��tj�|����ttj|��tj�|����t
tj|d���tj�|d���d��t
tj|d���tj�|d���d����%dS)Nr�)�
lowerlimitrT)r�r�r
r�tminr)rrs      r/�	test_tminzTestCompareWithStats.test_tmin�s�������	K�	K�A��2�2�1�5�5�L�A�q�"�b����A�����(9�(9�"�(=�(=�>�>�>����A�����(9�(9�"�(=�(=�>�>�>���
�1�� =� =� =� %�� 1� 1�"�� 1� E� E�r�
K�
K�
K���
�1�� =� =� =� %�� 1� 1�"�� 1� E� E�r�
K�
K�
K�
K�	K�	Kr1c	� �|���D]x}|�|��\}}}}tj||��}tj�||��}t||dt
|���d����ydS)Nrrrz)r�r�rr�r)rr�)r+r�r?r�rYr�r�zms        r/r�zTestCompareWithStats.test_zmap�s��������	9�	9�A��2�2�1�5�5�L�A�q�"�b��
�1�a� � �A���"�"�2�r�*�*�B��A�r�!�C��F�F�(�|�%�8�8�8�8�8�		9�	9r1c�l�|���D]�}|�|��\}}}}ttj|��tj�|��d���ttj|��tj�|��d�����dS�Nr]r�)r�r�rrr�r)rs      r/r�z#TestCompareWithStats.test_variation�s��������	,�	,�A��2�2�1�5�5�L�A�q�"�b����� 2� 2�E�L�4J�4J�2�4N�4N�(*�
,�
,�
,�
,����� 2� 2�E�L�4J�4J�2�4N�4N�(*�
,�
,�
,�
,�
,�		,�	,r1c�l�|���D]�}|�|��\}}}}ttj|��tj�|��d���ttj|��tj�|��d�����dSr*)r�r�rr�tvarr)rs      r/�	test_tvarzTestCompareWithStats.test_tvar�s��������	,�	,�A��2�2�1�5�5�L�A�q�"�b���
�1�
�
�u�|�/@�/@��/D�/D�(*�
,�
,�
,�
,���
�1�
�
�u�|�/@�/@��/D�/D�(*�
,�
,�
,�
,�
,�		,�	,r1c��tjd��}tj|d��}tj�|d��}ttj|��|j|j��dS)NrUr�)	r'r�rrir)r�sortr,r_)r+rPr�bms    r/�
test_trimbothz"TestCompareWithStats.test_trimboth�s`���I�b�M�M���N�1�c�"�"��
�\�
"�
"�1�c�
*�
*������
�
�B�G�R�W�H�$5�6�6�6�6�6r1c��|���D]�}|�|��\}}}}ttj|��tj�|��d���ttj|��tj�|��d���ttj|d���tj�|d���d�����dS)Nrhr�)r�r)rZ)r�r�rr�tsemr)rs      r/�	test_tsemzTestCompareWithStats.test_tsem�s��������	,�	,�A��2�2�1�5�5�L�A�q�"�b���
�1�
�
�u�|�/@�/@��/D�/D�(*�
,�
,�
,�
,���
�1�
�
�u�|�/@�/@��/D�/D�(*�
,�
,�
,�
,���
�1�Y� ?� ?� ?� %�� 1� 1�"�Y� 1� G� G�(*�
,�
,�
,�
,�
,�
	,�	,r1c��|���D]e}|dkr]|�|��\}}}}tj|��}tj�|��}t||���fdS)Nr�)r�r�rrLr)rrs        r/�
test_skewtestz"TestCompareWithStats.test_skewtest�s|�������	'�	'�A��1�u�u�#�6�6�q�9�9���1�b�"��N�1�%�%���\�*�*�2�.�.����2�&�&�&��	'�	'r1c��tjd��dz}tj|��}d}t	||d���dSrb)r'r(r)rLrrcs    r/�test_skewtest_result_attributesz4TestCompareWithStats.test_skewtest_result_attributes�sF���H�+�,�,�a�/���o�a� � ��,�
��C���5�5�5�5�5�5r1c��tj�d��dz}tj|��}tj�|��}ttj|��tj|����dS)N)rUrHg4@)r'r�rrLr)rr�)r+r?r�r�s    r/�test_skewtest_2D_notmaskedz/TestCompareWithStats.test_skewtest_2D_notmasked�sf���I���W�%�%��+���N�1����
�\�
"�
"�1�
%�
%����
�1�
�
�r�z�"�~�~�6�6�6�6�6r1c��d}|���D]�}|dkr�|�||��\}}}}tj|��}tj�|��}t|dd|ddd���t|dd|ddd�����dS)NrHr�rrMr:r)r�r�rrLr)r)	r+r�r�r?r�rYr�r�r�s	         r/�test_skewtest_2D_WithMaskz.TestCompareWithStats.test_skewtest_2D_WithMask�s���
�������	?�	?�A��1�u�u�#�8�8��B�?�?���1�b�"��N�1�%�%���\�*�*�2�.�.����!��Q���A��q���>�>�>�>���!��Q���A��q���>�>�>�>��	?�	?r1c	�"�tjd���5t��5}|�td��|���D]�}|dkr�|�|��\}}}}tj|��}tj	�|��}ttj|��tj|������	ddd��n#1swxYwYddd��dS#1swxYwYdS)Nr�)�overz!kurtosistest only valid for n>=20r�)r'rnrr+�UserWarningr�r�rrKr)rr�)	r+r,r�r?r�rYr�r�r�s	         r/�test_normaltestz$TestCompareWithStats.test_normaltest�s���
�[�g�
&�
&�
&�	C�	C�(9�(;�(;�	C�s��J�J�{�$G�H�H�H��Z�Z�\�\�
C�
C���q�5�5�#'�#:�#:�1�#=�#=�L�A�q�"�b��(��+�+�A���0�0��4�4�B�#�B�J�q�M�M�2�:�b�>�>�B�B�B��
C�	C�	C�	C�	C�	C�	C�	C�	C�	C�	C�	C����	C�	C�	C�	C�	C�	C�	C�	C�	C�	C�	C�	C�	C�	C�	C�	C����	C�	C�	C�	C�	C�	Cs5�D�B:C,� D�,C0	�0D�3C0	�4D�D�Dc��tjgd����d��}tjgd����d��}|dk}tj�||���}|���|���}}t
j|��}tj�|��}t||��t||��t||��tj�g��\}	}
t|
tjdtj
�����dS)N)rrrHrHrIrIrIrJrJrJrJr)rrrHrHrIrIrIrJrJrJrJr�r�r�r�rr^rr�)r'r�rurbr(r�r�find_repeatsr)r
�intp)r+r?�tmpr_rY�x_orig�xm_origr�r�r?rrs           r/�test_find_repeatsz&TestCompareWithStats.test_find_repeats�s���J�8�8�8�9�9�@�@��I�I���j�F�F�F�G�G�N�N�w�W�W���r�	��
�U�[�[��4�[�
(�
(���&�&�(�(�B�G�G�I�I�����q�!�!��
�\�
&�
&�r�
*�
*���Q������Q������R��!�!�!��L�-�-�b�1�1�	��6��V�R�X�a�r�w�7�7�7�8�8�8�8�8r1c�J�|���D]�}|�|��\}}}}tj||��}tj�||��}t|d|dd���t|d|dd�����dS)NrrTr�rr�)r�r�rrr)rrs        r/rz$TestCompareWithStats.test_kendalltaus��������	8�	8�A��2�2�1�5�5�L�A�q�"�b�� ��A�&�&�A���(�(��R�0�0�B���!��b��e�R�8�8�8�8���!��b��e�Q�7�7�7�7�7�	8�	8r1c	�"�|���D]y}|�|��\}}}}tj|��}tj�|��}t|j|dt|������zdS)Nr)r�r�rr�r)rr&r�rs        r/r�z)TestCompareWithStats.test_obrientransforms��������	3�	3�A��2�2�1�5�5�L�A�q�"�b��%�a�(�(�A���-�-�b�1�1�B����R��#�a�&�&��\�2�2�2�2�		3�	3r1c
��dD�]L}t��5}dD�]}|���D�]}|�|��\}}}}tj|tjj||���}	tj�|tjj||���}
ttj
|	��tj
|
����tj|tjj||���}ttj
|	��tj
|�������� 	ddd��n#1swxYwY��NdS)zFChecks that mstats.ks_1samp and stats.ks_1samp agree on masked arrays.��autor+�asymp�r�r�r-�r�r�N)rr�r�r�ks_1sampr;�cdfr)r
r'r��r+r�r,r�r�r?r�rYr�r�r�r�s            r/�
test_ks_1sampz"TestCompareWithStats.test_ks_1samps���.�		I�		I�D�"�$�$�
I��#C�I�I�K�!�Z�Z�\�\�I�I��'+�'>�'>�q�'A�'A���1�b�"�$�~�a����[�_c�d�d�d��$�|�4�4�R����U`�gk�4�l�l��$�R�Z��%5�%5�r�z�$�7G�7G�H�H�H�$�~�b�%�*�.�k�`d�e�e�e��$�R�Z��%5�%5�r�z�$�7G�7G�H�H�H�H�
I�I�
I�
I�
I�
I�
I�
I�
I�
I�
I�
I�
I����
I�
I�
I�
I��		I�		Is�D#E�E	�E	c
�D�dD�]}t��5}dD]�}|���D]�}|�|��\}}}}tj|d||���}	tj�|d||���}
t
tj|	��tj|
����tj|d||���}t
tj|	��tj|�����،�	ddd��n#1swxYwY��dS)zKChecks that 1-sample mstats.kstest and stats.kstest agree on masked arrays.rKrNr;rON)	rr�r�r�kstestr)r
r'r�rRs            r/�test_kstest_1sampz&TestCompareWithStats.test_kstest_1samp's{��.�		I�		I�D�"�$�$�
I��#C�I�I�K�!�Z�Z�\�\�I�I��'+�'>�'>�q�'A�'A���1�b�"�$�|�A�v�;�UY�Z�Z�Z��$�|�2�2�2�v�;�]a�2�b�b��$�R�Z��%5�%5�r�z�$�7G�7G�H�H�H�$�|�B��K�VZ�[�[�[��$�R�Z��%5�%5�r�z�$�7G�7G�H�H�H�H�
I�I�
I�
I�
I�
I�
I�
I�
I�
I�
I�
I�
I����
I�
I�
I�
I��		I�		Is�C2D�D	�D	c
��dD�]<}t��5}|dvrd}|�t|��dD]�}|���D]�}|�|��\}}}}	tj||||���}
t
j�||	||���}ttj
|
��tj
|����tj||||���}ttj
|
��tj
|�����،�	ddd��n#1swxYwY��>dS)zVChecks that mstats.ks_2samp and stats.ks_2samp agree on masked arrays.
        gh-8431rK�rLr+�)ks_2samp: Exact calculation unsuccessful.rNrON)rr+r�r�r�rr�r)r
r'r��
r+r�r,�messager�r�r?r�rYr�r�r�r�s
             r/rz"TestCompareWithStats.test_ks_2samp4s���/�	I�	I�D�"�$�$�
I���,�,�,�I�G��J�J�~�w�7�7�7�#C�I�I�K�!�Z�Z�\�\�I�I��'+�'>�'>�q�'A�'A���1�b�"�$�~�a���RV�W�W�W��$�|�4�4�R���[_�4�`�`��$�R�Z��%5�%5�r�z�$�7G�7G�H�H�H�$�~�b�!��SW�X�X�X��$�R�Z��%5�%5�r�z�$�7G�7G�H�H�H�H�
I�I�	
I�
I�
I�
I�
I�
I�
I�
I�
I�
I�
I����
I�
I�
I�
I��	I�	I��DD4�4D8	�;D8	c
��dD�]<}t��5}|dvrd}|�t|��dD]�}|���D]�}|�|��\}}}}	tj||||���}
t
j�||	||���}ttj
|
��tj
|����tj||||���}ttj
|
��tj
|�����،�	ddd��n#1swxYwY��>dS)zKChecks that 2-sample mstats.kstest and stats.kstest agree on masked arrays.rKrXrYrNrON)rr+r�r�r�rrUr)r
r'r�rZs
             r/�test_kstest_2sampz&TestCompareWithStats.test_kstest_2sampEs���.�	I�	I�D�"�$�$�
I���,�,�,�I�G��J�J�~�w�7�7�7�#C�I�I�K�!�Z�Z�\�\�I�I��'+�'>�'>�q�'A�'A���1�b�"�$�|�A�q�k�PT�U�U�U��$�|�2�2�2�r�{�Y]�2�^�^��$�R�Z��%5�%5�r�z�$�7G�7G�H�H�H�$�|�B��{�QU�V�V�V��$�R�Z��%5�%5�r�z�$�7G�7G�H�H�H�H�
I�I�	
I�
I�
I�
I�
I�
I�
I�
I�
I�
I�
I����
I�
I�
I�
I��	I�	Ir\N))r2r3r4r�r�r�r�r�r�r�rrrr	r�r�r�r�rrrrr"r&r�r�r-r1r4r6r8r:r<r@rGrr�rSrVrr^r5r1r/r�r��sl��������,"�"�"�
�
�
�
�
�
�F�F�F�3�3�3�+�+�+�A�A�A�	/�	/�	/�
+�
+�
+�
+�
+�
+�
+�
+�
+�(�(�(�$	+�	+�	+�M�M�M�*0�0�0�9�9�9�#�#�#�K�K�K�J�J�J�	K�	K�	K�9�9�9�,�,�,�,�,�,�7�7�7�	,�	,�	,�'�'�'�6�6�6�7�7�7�	?�	?�	?�C�C�C�9�9�9�&8�8�8�3�3�3�I�I�I�I�I�I�I�I�I�"I�I�I�I�Ir1r�c��eZdZej�dddddejdddddddddejg��Zej�ddddejdddddddg��ZdZ	d�Z
d�Zd	�Zd
�Z
d�Zd�Zd
�ZdS)�TestBrunnerMunzelrrHrJrIr�rhc��tj|j|jd���\}}tj|j|jd���\}}tj|j|jd���\}}tj|j|jd���\}}t	|||j���t	|||j���t
||k��t	|d|j���t	|d|j���t	|d|j���t	|d|j���t	|d|j���t	|d|j���dS)	Nr�r�r�r��|	&��	@�|	&��	�g��ҏG�g?g@-p�L��?)r)�
brunnermunzel�X�Yr�significantr)	r+�u1r��u2r�u3r�u4�p4s	         r/�test_brunnermunzel_one_sidedz.TestBrunnerMunzel.test_brunnermunzel_one_sided]s����%�d�f�d�f�&�I�I�I���B��%�d�f�d�f�)�L�L�L���B��%�d�f�d�f�)�L�L�L���B��%�d�f�d�f�&�I�I�I���B��B��D�,<�=�=�=�=��B��D�,<�=�=�=�=���b������B� 2�$(�$4�	6�	6�	6�	6��B� 3�$(�$4�	6�	6�	6�	6��B� 2�$(�$4�	6�	6�	6�	6��B� 3�$(�$4�	6�	6�	6�	6��B� 5�$(�$4�	6�	6�	6�	6��B� 3�$(�$4�	6�	6�	6�	6�	6�	6r1c�N�tj|j|jd���\}}tj|j|jd���\}}t	|||j���t	|d|j���t	|d|j���t	|d|j���dS)Nr-r�r�rbrc��ҏG�w?�r)rdrerfrrg�r+rhr�rirs     r/�test_brunnermunzel_two_sidedz.TestBrunnerMunzel.test_brunnermunzel_two_sidedts����%�d�f�d�f�+�N�N�N���B��%�d�f�d�f�+�N�N�N���B��B��D�,<�=�=�=�=��B� 2�$(�$4�	6�	6�	6�	6��B� 3�$(�$4�	6�	6�	6�	6��B� 5�$(�$4�	6�	6�	6�	6�	6�	6r1c�F�tj|j|j��\}}tj|j|j��\}}t	|||j���t	|d|j���t	|d|j���t	|d|j���dS)Nr�rbrcrorprqs     r/�test_brunnermunzel_defaultz,TestBrunnerMunzel.test_brunnermunzel_default�s����%�d�f�d�f�5�5���B��%�d�f�d�f�5�5���B��B��D�,<�=�=�=�=��B� 2�$(�$4�	6�	6�	6�	6��B� 3�$(�$4�	6�	6�	6�	6��B� 5�$(�$4�	6�	6�	6�	6�	6�	6r1c��d}d}t|dv��tttj|j|j||��dS)Nr�r�r,�rrr�r)rdrerf�r+r��distributions   r/�$test_brunnermunzel_alternative_errorz6TestBrunnerMunzel.test_brunnermunzel_alternative_error�sT��������#C�C�D�D�D��j��*��f��f�!�"�	$�	$�	$�	$�	$r1c�N�tj|j|jd���\}}tj|j|jd���\}}t	|||j���t	|d|j���t	|d|j���t	|d|j���dS)N�normal)rxr�rbrcg�"H��[?rprqs     r/�$test_brunnermunzel_distribution_normz6TestBrunnerMunzel.test_brunnermunzel_distribution_norm�s����%�d�f�d�f�8�L�L�L���B��%�d�f�d�f�8�L�L�L���B��B��D�,<�=�=�=�=��B� 2�$(�$4�	6�	6�	6�	6��B� 3�$(�$4�	6�	6�	6�	6��B� 5�$(�$4�	6�	6�	6�	6�	6�	6r1c��d}d}t|dv��tttj|j|j||��dS)Nr-r�)r�r{rvrws   r/�%test_brunnermunzel_distribution_errorz7TestBrunnerMunzel.test_brunnermunzel_distribution_error�sS��!������?�2�3�3�3��j��*��f��f�!�"�	$�	$�	$�	$�	$r1c�6�tj|jg��\}}tjg|j��\}}tjgg��\}}t	tj|����t	tj|����t	tj|����t	tj|����t	tj|����t	tj|����dSr�)r)rdrerfrr'r*)r+rhr�rirrjrs       r/�test_brunnermunzel_empty_imputz0TestBrunnerMunzel.test_brunnermunzel_empty_imput�s����%�d�f�b�1�1���B��%�b�$�&�1�1���B��%�b�"�-�-���B��������������������������������������������������������r1N)r2r3r4r'rb�masked_invalidrrerfrgrmrrrtryr|r~r�r5r1r/r`r`Vs�������
����a��A�q�!�R�V�Q����A�q�!�Q��2�6�;�	<�	<�A�
����a��A�q�"�&�!�Q��1�a��A�F�G�G�A��K�6�6�6�.6�6�6�6�6�6�	$�	$�	$�	6�	6�	6�	$�	$�	$�
�
�
�
�
r1r`)NNr6)>r�r�rO�numpyr'r�numpy.marbrr�scipy.stats.mstatsrr)�scipy�common_testsrr�r	r�numpy.ma.testutilsr
rrr
rrr�
numpy.testingr�scipy.statsrrr@rCrEr�r�r�rUr�r�r�r�r�rrr%r-r3r@rBrFrHr�r�r�r�r�r�r�r�r`r5r1r/�<module>r�s�����������������������������#�#�#�#�#�#�#�#�#�#�#�#�#�#�#�#�#�������-�-�-�-�-�-�
�
�
�
�*�*�*�*�*�*�)�)�)�)�)�)�)�)�)�)�)�)�)�)�)�)�)�)�,�+�+�+�+�+�%�%�%�%�%�%�-�-�-�-�-�-�-�-�*!�!�!�!�!�!�!�!�73�73�73�73�73�73�73�73�t 3� 3� 3� 3� 3� 3� 3� 3�F8�8�8�8�8�8�8�8�,u6�u6�u6�u6�u6�u6�u6�u6�p	a:�a:�a:�a:�a:�a:�a:�a:�FV/�V/�V/�V/�V/�V/�V/�V/�r&�&�&�&�&�&�&�&�RA�A�A�A�A�A�A�A�*4�4�4�4�4�4�4�4�@-9�-9�-9�-9�-9�-9�-9�-9�`F�F�F�, � � �$0�$0�$0�N5�5�5�0�0�0�"8�8�8�:.�.�.�E�E�E�\8�\8�\8�\8�\8�\8�\8�\8�~6�6�6�6�6�6�6�6�.2�.2�.2�.2�.2�.2�.2�.2�b6�6�6�6�6�6�6�6�X-�X-�X-�X-�X-�X-�X-�X-�v[-�[-�[-�[-�[-�[-�[-�[-�|@-�@-�@-�@-�@-�@-�@-�@-�F7�7�7�7�7�7�7�7�0[I�[I�[I�[I�[I�[I�[I�[I�|c�c�c�c�c�c�c�c�c�cr1

Youez - 2016 - github.com/yon3zu
LinuXploit