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_resampling.cpython-311.pyc
�

d�cd���ddlZddlZddlmZmZmZddlmZm	Z	m
Z
ddlmZddlm
Z
ddlmZddlmZdd	lmZd
�Zej�dgd���ej�d
gd���d�����Zej�dgd���d���Zej�dgd���ej�d
gd���ej�dddg��d�������Zej�dgd���d���Zdddd�Zej�de�����d���Zdddd�Zd�Zd�Z ej�de�����d���Z!d d!d"�Z"ej�de"�����d#���Z#ej�dd$d%g��ej�d
dd&g��d'�����Z$ej�%d(��ej�dgd���ej�d
dd&g��d)�������Z&ej�dgd���d*���Z'ej�dgd���d+���Z(d,�Z)ej�d-dd.g��d/���Z*d0�Z+ej�d1d2d3g��d4���Z,ej�d5gd6���ej�d
gd���d7�����Z-d8�Z.ej�d
gd���d9���Z/ej�dgd���d:���Z0ejj1ej�2d;��d<�����Z3Gd=�d>��Z4Gd?�d@��Z5dA�Z6ej�dBgdC���dD���Z7dS)E�N)�	bootstrap�monte_carlo_test�permutation_test)�assert_allclose�assert_equal�suppress_warnings)�stats)�special�)�_resampling)�rng_integers)�rootc��	�d}tjt|���5tdtj��ddd��n#1swxYwYd}tjt|���5tt
��tj��ddd��n#1swxYwYd}tjt|���5tgd�dgftj��ddd��n#1swxYwYd}tjt|���5tgd�gd�ftjd	�
��ddd��n#1swxYwYd}tjt|���5tdtjd�
��ddd��n#1swxYwYd}tjt|���5tgd�ftjd���ddd��n#1swxYwYd}tjt|���5tgd�ftjd���ddd��n#1swxYwYd}tjt|���5tgd�ftjd���ddd��n#1swxYwYd}tjt|���5tgd�ftjd���ddd��n#1swxYwYd}tjt|���5tgd�ftjd���ddd��n#1swxYwYd}tjt|���5tgd�ftjd���ddd��n#1swxYwYd}tjt|���5tgd�ftjd���ddd��n#1swxYwYd}tjt|���5tgd�ftjd���ddd��n#1swxYwYd}tjt|���5tgd�ftjd ���ddd��n#1swxYwYd!}tjt|���5tgd�ftjd"�#��ddd��dS#1swxYwYdS)$Nz%`data` must be a sequence of samples.��match�z(`data` must contain at least one sample.z>each sample in `data` must contain two or more observations...�rr�z=When `paired is True`, all samples must have the same length �rrr�T)�paired�0`vectorized` must be `True`, `False`, or `None`.�ekki��
vectorized�`axis` must be an integer.��?��axisz!could not convert string to float�ni)�confidence_levelz-`n_resamples` must be a non-negative integer.������n_resamples�D�@�+`batch` must be a positive integer or None.��batchz`method` must be in��methodz?`bootstrap_result` must have attribute `bootstrap_distribution'�
)�bootstrap_resultz5Either `bootstrap_result.bootstrap_distribution.size`r�"'herring' cannot be used to seed a�herring��random_state)�pytest�raises�
ValueErrorr�np�mean�tuple)�messages �C/usr/lib/python3/dist-packages/scipy/stats/tests/test_resampling.py�test_bootstrap_ivr9s���5�G�	��z��	1�	1�	1����!�R�W����������������������9�G�	��z��	1�	1�	1�$�$��%�'�'�2�7�#�#�#�$�$�$�$�$�$�$�$�$�$�$����$�$�$�$�O�G�	��z��	1�	1�	1�-�-��9�9�9�q�c�"�B�G�,�,�,�-�-�-�-�-�-�-�-�-�-�-����-�-�-�-�O�G�	��z��	1�	1�	1�C�C��9�9�9�l�l�l�+�R�W�T�B�B�B�B�C�C�C�C�C�C�C�C�C�C�C����C�C�C�C�A�G�	��z��	1�	1�	1�1�1��!�R�W��0�0�0�0�1�1�1�1�1�1�1�1�1�1�1����1�1�1�1�+�G�	��z��	1�	1�	1�3�3��9�9�9�,���c�2�2�2�2�3�3�3�3�3�3�3�3�3�3�3����3�3�3�3�2�G�	��z��	1�	1�	1�@�@��9�9�9�,���$�?�?�?�?�@�@�@�@�@�@�@�@�@�@�@����@�@�@�@�>�G�	��z��	1�	1�	1�<�<��9�9�9�,���U�;�;�;�;�<�<�<�<�<�<�<�<�<�<�<����<�<�<�<�>�G�	��z��	1�	1�	1�=�=��9�9�9�,���V�<�<�<�<�=�=�=�=�=�=�=�=�=�=�=����=�=�=�=�<�G�	��z��	1�	1�	1�6�6��9�9�9�,���u�5�5�5�5�6�6�6�6�6�6�6�6�6�6�6����6�6�6�6�<�G�	��z��	1�	1�	1�7�7��9�9�9�,���v�6�6�6�6�7�7�7�7�7�7�7�7�7�7�7����7�7�7�7�$�G�	��z��	1�	1�	1�8�8��9�9�9�,����7�7�7�7�8�8�8�8�8�8�8�8�8�8�8����8�8�8�8�P�G�	��z��	1�	1�	1�>�>��9�9�9�,���"�=�=�=�=�>�>�>�>�>�>�>�>�>�>�>����>�>�>�>�F�G�	��z��	1�	1�	1�8�8��9�9�9�,���Q�7�7�7�7�8�8�8�8�8�8�8�8�8�8�8����8�8�8�8�3�G�	��z��	1�	1�	1�A�A��9�9�9�,���i�@�@�@�@�A�A�A�A�A�A�A�A�A�A�A�A����A�A�A�A�A�As
�A�A	�A	�-'B � B$�'B$� C4�4C8�;C8�#E�E�E�3F�F �#F � G0�0G4�7G4� I�I�I�, J�J�J� K,�,K0�3K0� M�M�M�( N�N�N�< O(�(O,�/O,� P<�<Q�Q�$ R�R�R�8 S%�%S)�,S)r*)�basic�
percentile�BCar�rrrc	���tj�d��tj�ddd��}t	|ftjd|d|d���}t	|ftjd|d|d���}t
|jj|jj��t
|jj	|jj	��t
|j
|j
��dS)Nrr+���d)r(r*r0rr$)r4�random�seed�randrr5r�confidence_interval�low�high�standard_error)r*r�x�res1�res2s     r8�test_bootstrap_batchrLKs����I�N�N�1����
�	���r�2�r�"�"�A��a�T�2�7�$�v�"#�$�C�A�A�A�D��a�T�2�7�"�V�"#�$�C�A�A�A�D���)�-�t�/G�/K�L�L�L���)�.��0H�0M�N�N�N���$�d�&9�:�:�:�:�:�c������tj�d��d}tj�|���tj�|���d	d��d	���fd�	}tjt�����}t
|f|d���}t
��f�dd���}t|j|j��t|j	|j	��dS)
NrrA���c�:�||z
dz�|���S)Nrr�r5�rI�yrs   r8�my_statisticz+test_bootstrap_paired.<locals>.my_statisticds���1��q����D��)�)�)rMc�@���|}�|}�||��}|S�N�)�ir�a�b�resrTrIrSs     ���r8�my_paired_statisticz2test_bootstrap_paired.<locals>.my_paired_statisticgs+���
�a�D��
�a�D���l�1�a� � ���
rMr/T)rr0�rO)
r4rBrCrD�arange�lenrrrErH)	r*�nr\rXrJrKrTrIrSs	      @@@r8�test_bootstrap_pairedra\s�������I�N�N�1�����A�
�	���q���A�
�	���q���A�*�*�*�*���������	�	�#�a�&�&���A��a�T�.�Q�?�?�?�D��a��V�\�$�Q�G�G�G�D��D�,�d�.F�G�G�G��D�'��)<�=�=�=�=�=rMrTFc	�z�tj�d��d	d�}d}||}tj�|��}tj�|��}tj�|��}t	|||f|||ddd���}	|	jj|	jjdzksJ�gd�}
||
|<tj|�	|
��|��}tj|�	|
��|��}tj|�	|
��|��}t	|||f|||d|d���}t|jj|	jj��t|jj
|	jj
��t|j|	j��t|��}|�|��t!|jjj|��t!|jj
j|��t!|jj|��dS)
NrrOc��|�|���|�|���z|�|���zS�NrrQ)rIrS�zrs    r8rTz/test_bootstrap_vectorized.<locals>.my_statistic�s<���v�v�4�v� � �1�6�6�t�6�#4�#4�4�q�v�v�4�v�7H�7H�H�HrM)r+r?r@rA)rr*r0rr$)rA)rrrr])r4rBrCrDr�bootstrap_distribution�shaperH�broadcast_to�reshaperrErFrG�list�popr)
r*rrrTrg�	n_samplesrIrSrerJrirK�result_shapes
             r8�test_bootstrap_vectorizedrnvs/���I�N�N�1����I�I�I�I�
�E��d��I�
�	���y�!�!�A�
�	���y�!�!�A�
�	���y�!�!�A��a��A�Y��V�F�"#�!��>�>�>�D��'�-��"�(�6�1�
2�
2�
2�
2��i�i�G��G�D�M�
���	�	�'�*�*�E�2�2�A�
���	�	�'�*�*�E�2�2�A�
���	�	�'�*�*�E�2�2�A��a��A�Y��V�F�"#�$�C�A�A�A�D��D�,�0��,�0�2�2�2��D�,�1��,�1�3�3�3��D�'��)<�=�=�=���;�;�L����T������)�-�3�\�B�B�B���)�.�4�l�C�C�C���$�*�L�9�9�9�9�9rMc���tj�dddd���}d}tjt	|��dz
tj|��tj|�����}|�|�	��}|�	��}t|ft
jd||d�
��}t|j|d���t|j
|d
���dS)N�r�r)�loc�scale�sizer0�ffffff�?r)�dfrrrs)�
confidence)r$r!r*r0g����Mb@?��rtolga2U0*�3?��atol)r	�norm�rvs�tr_r4r5�sem�interval�stdrrrErH)r*�data�alpha�dist�expected_interval�expected_ser[s       r8�test_bootstrap_against_theoryr��s����:�>�>�a�q�t�!�>�D�D�D��E��7�c�$�i�i��k�r�w�t�}�}�E�I�d�O�O�L�L�L�D��
�
��
�7�7���(�(�*�*�K�
�T�G�R�W�$�%*�6�!"�$�$�$�C��C�+�->�T�J�J�J�J��C�&��$�?�?�?�?�?�?rM)g��Q��7@gH�z��S@)g\��(�<@g=
ףp
U@)gH�z�'@@g�Q���V@zmethod, expectedc��tjgd���}t|ftjd|d���}t	|j|d���dS)N)r+r@�)@r�g������+@�����"�2�Q�Y�y���i@Br)r$r*r0g{�G�zt?rx)r4�arrayrr5rrE)r*�expectedrIr[s    r8�test_bootstrap_against_Rr��se��"	��5�5�5�	6�	6�A�
�Q�D�"�'�w�v�!"�$�$�$�C��C�+�X�E�B�B�B�B�B�BrMi�i�c�^�gd�}gd�}d�}tj�d��}tj||f|dd|���}tj||f|dd|���}tj||f|d	d|���}tj|j��}tj|j��}tj|j��}	d
}
||
z
t|
��z}||
z
t|
��z}|	|
z
t|
��z}
|dksJ�|dksJ�t|
��d
ksJ�dS)N)g���bF�?g�p�����?g��|�Hܿgxy[e}u׿g*g��_�?ggi��6��g��2��?)g���F���?g���K��?g��&F}/�?g������?g��(�iC�?g}�$ץ�?g��hu�?gfj��}!�?c�d�tj||���}tj||���}||z
Srd)r	�skew)rIrSr�s1�s2s     r8�	statisticz1test_multisample_BCa_against_R.<locals>.statistic�s3��
�Z���
%�
%�
%��
�Z���
%�
%�
%���B�w�rMltg�
y
4r:rA)r*r(r0r;�bcag1�*���g333333ÿg333333�?���Q��?)r4rB�default_rngr	rr5rE�abs)rIrSr��rng�	res_basic�res_percent�res_bca�	mid_basic�mid_percent�mid_bca�	mid_wboot�
diff_basic�diff_percent�diff_bcas              r8�test_multisample_BCa_against_Rr��s{��	.�	.�	.�A�	9�	9�	9�A�
���
�)�
�
� 2�
3�
3�C����A��	�'�&)��=�=�=�I��/�1�a�&�)�L�(+�#�?�?�?�K��o�q�!�f�i��$'�c�;�;�;�G���	�5�6�6�I��'�+�9�:�:�K��g�g�1�2�2�G��I��i�'��Y���7�J��)�+�S��^�^�;�L��)�#�S��^�^�3�H��������$������x�=�=�4������rMc��tjgd���}tjgd���}d	d�}||g}tj||��}d}d}|j}d}tj||||||��\}	}	}
t|
d��dS)
N)	r+���(�.r��4�h�)�r��&�^�c���rc�\�tj||���tj||���z
Srd�r4r5)rerSrs   r8r�z:test_BCa_acceleration_against_reference.<locals>.statistics+���w�q�t�$�$�$�r�w�q�t�'<�'<�'<�<�<rMrOrurAg��e{��?�r)r4r�r	rrfr�
_bca_intervalr)rSrer�r�r[rr��theta_hat_br(�_�a_hats           r8�'test_BCa_acceleration_against_referencer�s���	��7�7�7�8�8�A�
��/�/�/�0�0�A�=�=�=�=�
�q�6�D�
�/�$�	�
*�
*�C�
�D��E��,�K��E��+�D�)�T�5�,7��@�@�K�A�q�%��E�/�0�0�0�0�0rMc	���tj�d��d}d}d}tjdd���}|���}d}|�||f�	��}t|ftj||d
|d���}	|	j}
tj	|
d|k||
dkz��}||ksJ�tj
|||��j}|d
ksJ�dS)NrrA����������?rpr�rrrsi��rtr�rO�r�r!r$r(r*r皙�����?�r4rBrCr	r|r5r}rrE�sum�	binomtest�pvalue)
r*r�r`r$r!r��	stat_true�n_replicationsr�r[�ci�ci_contains_truer�s
             r8�#test_bootstrap_against_itself_1sampr�)s���I�N�N�1�����A��K����:�!�1�%�%�%�D��	�	���I��N��8�8�.�!�,�8�-�-�D�
�T�G� �g�%5� +��!��
���C�

�	 �B��v�r�!�u�y�0�Y��A��5F�G�H�H���x�'�'�'�'��_�-�~�-�/�/�/5���C�<�<�<�<�<�<rMi|iz)r:r;c	�T�tj�d��d}d}d}d}dd�}tjdd�	��}tjd
d�	��}|���|���z
}	d}
|�|
|f���}|�|
|f���}t||f|||d
|d���}
|
j}tj	|d|	k|	|dkz��}||ksJ�tj
||
|��j}|d
ksJ�dS)NrrA�xr�r�rOc�d�tj||���}tj||���}||z
Srdr�)�data1�data2r�mean1�mean2s     r8�my_statz4test_bootstrap_against_itself_2samp.<locals>.my_statcs4�����D�)�)�)�����D�)�)�)���u�}�rMrr�r���r�r�r�r]r�)r*r��n1�n2r$r!r��dist1�dist2r�r�r�r�r[r�r�r�s                 r8�#test_bootstrap_against_itself_2sampr�Ts^���I�N�N�1����	�B�	�B��K�������
�J�1�A�&�&�&�E��J�3�a�(�(�(�E��
�
���u�z�z�|�|�+�I��N��I�I�N�B�/�I�0�0�E��I�I�N�B�/�I�0�0�E�
�U�E�N�%�%5� +��!��
���C�

�	 �B��v�r�!�u�y�0�Y��A��5F�G�H�H���x�'�'�'�'��_�-�~�-�/�/�/5���C�<�<�<�<�<�<rMr:r;rc	����dd�d���fd�}tj�d��tj�dd��}tj�dd��}tj�dd��}t	|||f�d|d|d�	��}t	|||f|d
|d|d�	��}t|j|j��t|j|j��dS)Nrrc�:��t�fd�|D����S)Nc3�B�K�|]}|����V��dSrVrQ��.0�samplers  �r8�	<genexpr>zEtest_bootstrap_vectorized_3samp.<locals>.statistic.<locals>.<genexpr>��/�����9�9�&�F�K�K��%�%�9�9�9�9�9�9rM�r��rr�s` r8r�z2test_bootstrap_vectorized_3samp.<locals>.statistic��&����9�9�9�9�D�9�9�9�:�:�:rMc�8��|D]}|jdksJ���|ddi�S�Nrrr��ndim�r�r�r�s  �r8�statistic_1dz5test_bootstrap_vectorized_3samp.<locals>.statistic_1d��=����	$�	$�F��;�!�#�#�#�#�#��y�$�'�Q�'�'�'rMrrpTrA)rrr$r*r0F�r4rBrCrDrrrErH)	r*rr�rIrSrerJrKr�s	        @r8�test_bootstrap_vectorized_3sampr��s��� �;�;�;�;�;�(�(�(�(�(��I�N�N�1����
�	���q�!���A�
�	���q�!���A�
�	���q�!���A��a��A�Y�	�d��C��Q�P�P�P�D��a��A�Y����C��Q�P�P�P�D��D�,�d�.F�G�G�G��D�'��)<�=�=�=�=�=rMz'Failure is not concerning; see gh-14107c
�`��dd���fd�}tj�d��tj�dd��}t	|f�d|dd|d���}t	|f|d	|dd
|d���}t|j|j��t|j|j��dS)Nrc�.�|�|���SrdrQ�rIrs  r8r�z2test_bootstrap_vectorized_1samp.<locals>.statistic�s���v�v�4�v� � � rMc�8��|jdksJ��|d���S)Nrrrr�)rIr�s �r8r�z5test_bootstrap_vectorized_1samp.<locals>.statistic_1d�s'����v��{�{�{�{��y���#�#�#�#rMrrpTrA)rrr$r(r*r0Fr+r�r�)r*rr�rIrJrKr�s      @r8�test_bootstrap_vectorized_1sampr��s����!�!�!�!�$�$�$�$�$�
�I�N�N�1����
�	���q�!���A��a�T�9��D�!$�D��"#�%�%�%�D��a�T�<�E��!$�B�v�"#�%�%�%�D��D�,�d�.F�G�G�G��D�'��)<�=�=�=�=�=rMc��ddgz}|dkr�tjd���5d}tjtj|���5t
|gtj|���}t|j	tj
tj
f��ddd��n#1swxYwYddd��n#1swxYwYn2t
|gtj|���}t|j	d	��t|jd
��dS)N�#���@r<�ignore)�invalidz0The BCa confidence interval cannot be calculatedrr))r�r�r)r4�errstater1�warnsr	�DegenerateDataWarningrr5rrE�nanrH)r*r��msgr[s    r8�test_bootstrap_degenerater�s���
���=�D�
����
�[��
*�
*�
*�	H�	H�D�C���e�9��E�E�E�
H�
H����"�'�&�A�A�A���S�4�r�v�r�v�6F�G�G�G�
H�
H�
H�
H�
H�
H�
H�
H�
H�
H�
H����
H�
H�
H�
H�	H�	H�	H�	H�	H�	H�	H�	H�	H�	H�	H����	H�	H�	H�	H�����"�'�&�9�9�9���S�,�.>�?�?�?���#�Q�'�'�'�'�'s6�#B1�A	B�B1�B	�B1�!B	�"B1�1B5�8B5c	�<�tj�d��}tjdd���}|�d|���}|f}t
|tj|dtj�d�����}t
|tj|dtj�d��d	�
��}t|j	|j	��t|j
|j
��t|j
tj��sJ�dS)NlE<1

rrr�rA�rtr0i[%�r*r$r0F)r*r$r0r)
r4rBr�r	r|r}rr�rrErH�
isinstance�float64)r*r�r�r�r[�refs      r8�test_bootstrap_gh15678r�s���
�)�
�
��
0�
0�C��:�!�1�%�%�%�D��8�8��3�8�/�/�D��7�D�
�D�%�*�V��!#��!6�!6�t�!<�!<�>�>�>�C��D�%�*�V��!#��!6�!6�t�!<�!<��P�P�P�C��C�+�S�-D�E�E�E��C�&��(:�;�;�;��c�(�"�*�5�5�5�5�5�5�5rMc	��tj�d��}tjdd���}|�d|���}tj|��}|f}t|tjddtj�d���	��}||jj	ksJ�ttj
|��tjddtj�d���	��}t|jj	|jj
��t|jj
|jj	��dS)
Nln!|'x`5rrr�rArr<ifr)r4rBr�r	r|r}�minrrErFr��maxrrG)r�r�r��true_minr[rKs      r8�test_bootstrap_minr�s0��
�)�
�
� 0�
1�
1�C��:�!�1�%�%�%�D��8�8��3�8�/�/�D��v�d�|�|�H��7�D�
�D�"�&��C�!#��!6�!6�t�!<�!<�>�>�>�C��s�.�2�2�2�2�2��b�h�t�n�n�_�b�f�U��"$�)�"7�"7��"=�"=�?�?�?�D��S�,�0�0��,�1�3�3�3��S�,�1�1��,�0�2�2�2�2�2rM�additional_resamplesr�c	�N�tj�d��}|�d���}d}|}||z}tj�d��}tj|ftj||dd���}tj|ftj||d	d
|���}tj�d��}tj|ftj||d	d
���}t
|j|jd�
��t
|j|jd�
��dS)Nl ]�4�M�rAr�r�l�mdpi4� rur;)r$r0r!r*r�r<)r$r0r!r*r,�+����=rx)	r4rBr�r	rr5rrHrE)rr�rIr�r��n3r[rs        r8�test_re_boostrapr�s6��
�)�
�
� 0�
1�
1�C��
�
��
���A�	
�B�	�B�	�"�	"�B�
�)�
�
� 2�
3�
3�C�
�/�1�$���R�c�+/��F�F�F�C�
�/�1�$���R�c�+/��+.�0�0�0�C�
�)�
�
� 2�
3�
3�C�
�/�1�$���R�c�+/��?�?�?�C��C�&��(:��G�G�G�G��C�+�S�-D�� � � � � � rMc���d}tj�d��tjj|�}t	tj|����}t|d��D]=}|d|dd�f}tj||d���}tj	||��sJ��>tj
ttj|d�����d���}tj	||��sJ�dS)	N�rrrp�rrO.rrr'���)r4rBrCrD�nextr�_jackknife_resample�range�delete�array_equal�concatenaterj)rgrIrSrX�slcr��y2s       r8�test_jackknife_resampler#s����E��I�N�N�1����
�	����A��[�
,�Q�
/�
/�0�0�A�
�5��9�
�
�-�-����Q����	�l���9�Q���+�+�+���~�c�8�,�,�,�,�,�,�	���[�<�Q�a�H�H�H�I�I��
!�
!�
!�B�
�>�"�a� � � � � � � rM�rng_name�RandomStater�c���ttj|d��}|�tj|�d���|d��}|d��}d}d}tj�d��tjj|�}tj|||���}t|��D]N}|d|dd�f}	t|d|d|d��}
|d|
f}tj|	|��sJ��OdS)Nz not available.rr+rr/.rO)�getattrr4rBr1�skiprCrDr�_bootstrap_resamplerr
r)r$r��rng1�rng2r$rgrIrSrXr!�jsr�s            r8�test_bootstrap_resampler-s	��
�"�)�X�t�
,�
,�C�
�{���x�0�0�0�1�1�1��3�q�6�6�D��3�q�6�6�D��K��E��I�N�N�1����
�	����A��'��;�T�J�J�J�A�
�;�
�
�-�-����Q����	�l��
�$��5��9�e�B�i�
8�
8���S�"�W�:���~�c�8�,�,�,�,�,�,�-�-rM�score)r��?rc���d}tj�d��tjj|�}t	j||d���}d�}|||d���dz}t
||d��dS)N)r+��rrOrc�D�tjtj|||��SrV)r4�apply_along_axisr	�percentileofscore)rYr.rs   r8�vectorized_posz0test_percentile_of_score.<locals>.vectorized_pos9s���"�5�#:�D�!�U�K�K�KrMrA�V瞯�<)r4rBrCrDr�_percentile_of_scorer)r.rrgrI�pr6�p2s       r8�test_percentile_of_scorer;1s���
�E��I�N�N�1����
�	����A��(��E��;�;�;�A�L�L�L�
���5�r�	*�	*�	*�3�	.�B��A�r�5�!�!�!�!�!rMc�|�d}tj�d��tjj|�}tjj|dd��dz}t	j||��}t
|d��D]>}||}tj||||d���}t||d���?dS)N)r+r1rrOrArr7)	r4rBrCrDr�_percentile_along_axisrr;r)rgrI�qrSrXr[r�s       r8�test_percentile_along_axisr?As���

�E��I�N�N�1����
�	����A�
�	���c�r�c�
�#�c�)�A��*�1�a�0�0�A�
�5��8�_�_�.�.����d���=��1��q��t�"�5�5�5����X�u�-�-�-�-�.�.rMc���d���fd�}tj|��}tj�d��tj�ddd��}tj�ddd��}tj�ddd��}�||||���}|||||���}t
||��dS)	Nc�:��t�fd�|D����S)Nc3�B�K�|]}|����V��dSrVrQr�s  �r8r�z>test_vectorize_statistic.<locals>.statistic.<locals>.<genexpr>Xr�rMr�r�s` r8r�z+test_vectorize_statistic.<locals>.statisticVr�rMc�8��|D]}|jdksJ���|ddi�Sr�r�r�s  �r8r�z.test_vectorize_statistic.<locals>.statistic_1dZr�rMrrrprrr)r�_vectorize_statisticr4rBrCrDr)	rr��
statistic2rIrSrerJrKr�s	        @r8�test_vectorize_statisticrFRs����;�;�;�(�(�(�(�(��1�,�?�?�J��I�N�N�1����
�	���q�!�Q���A�
�	���q�!�Q���A�
�	���q�!�Q���A��9�Q��1�4�(�(�(�D��:�a��A�D�)�)�)�D��D�$�����rMc�2�tj�d��}d}tjj|d|d��}d�}t
|f||ddd�	��}tj|jj	j
|k|jjj
|kzd
���}tj|dk��sJ�tj|d
k��sJ�|jj	j
dksJ�|jjj
dksJ�|jj
dksJ�|jj
dksJ�dS)Nls:�)rr/)rArArc�~�tjtj||��tj||d���g��S)Nr)�ddof)r4�asarrayr5r�)r�rs  r8r�z/test_vector_valued_statistic.<locals>.statistic{s=���z�2�7�4��.�.��6�$��1�5�5�5�7�8�8�	8rMrO�'��)r*rr$r(rr�ZrA)rrA)rrArK)r4rBr�r	r|r}rr�rErF�TrG�allrgrHrf)r*r��paramsr�r�r[�countss       r8�test_vector_valued_statisticrRmsJ��
�)�
�
�
�
+�
+�C�
�F�
�Z�^�V�*�3�
G�
G�
G�F�8�8�8��V�I�y��b� $�C�1�1�1�C��V�S�,�0�2�V�;��.�3�5��>�@�����F��6�&�B�,������
�6�&�C�-� � � � � ��"�&�,��8�8�8�8��"�'�-��9�9�9�9���#�x�/�/�/�/��%�+�~�=�=�=�=�=�=rMzignore::RuntimeWarningc����tj�d��}d���fd���fd�}gd�gd�gd�gd�gd	�g}tj|��j}t|||d
���}t|�|d
���}t
|jjd|jjd
���t
|jj	d|jj	d
���dS)Nl\�Q�c��|�|��}|�|��}||dz
||dz
z�|��}d|z|�|��|�|��z||z
dzzzS)N).Nr)r5�var)rIrSr�xm�ym�covs      r8�concordancez9test_vector_valued_statistic_gh17715.<locals>.concordance�s��
�V�V�D�\�\��
�V�V�D�\�\���B�y�M�!�a�"�Y�-�&7�8�>�>�t�D�D���C��A�E�E�$�K�K�!�%�%��+�+�5��b��Q��F�G�GrMc�V��||z}||z}tj�|||����SrV)r4�
nan_to_num)�tp�tn�fp�fnr�actualr�rYs       �r8r�z7test_vector_valued_statistic_gh17715.<locals>.statistic�s3����b�����7���}�[�[���4�@�@�A�A�ArMc�<���g|�|�R�tjdfS)N.)r4�newaxis)r�argsr�s  �r8�statistic_extradimz@test_vector_valued_statistic_gh17715.<locals>.statistic_extradim�s)����y�%�$�%��%�%�%�b�j�#�o�6�6rM)rrrr)rrrr)rrrr)rrrr)r�rrT)r0rrr7rz)
r4rBr�r�rNrrrErFrG)r�rdr�r[rrYr�s     @@r8�$test_vector_valued_statistic_gh17715rf�s8����
�)�
�
� 2�
3�
3�C�H�H�H�B�B�B�B�B�
7�7�7�7�7�
�L�L��L�L��L�L��L�L��L�L�	�D�
�8�D�>�>��D�
�D�,�3�t�
L�
L�
L�C�
�D�)�#�d�
C�
C�
C�C��C�+�/��2��+�/�e�=�=�=�=��C�+�0��3��+�0�u�>�>�>�>�>�>rMc
��eZdZdZd�Zd�Zd�Zej�	de
dd����d���Zej�	d	d
��ej�	dej
dd
d����d�����Zej�	dejejf��ej�	d	d��ej�	dej
ddd����d�������Zej�	dejdd����d���Zej�	dej
dd
d����d���Zej�	dd��ej�	de
d����d�����Zd�ZdS)�TestMonteCarloHypothesisTestg�������?c������fd�S)Nc����|d�i|��S)Nr0rW)rc�kwds�rs�rvs_ins  ��r8�<lambda>z2TestMonteCarloHypothesisTest.rvs.<locals>.<lambda>�s���V�V�T�%K��%K�d�%K�%K�rMrW)�selfrmrls ``r8r}z TestMonteCarloHypothesisTest.rvs�s����K�K�K�K�K�KrMc�*�d�}d}tjt|���5tgd�tjj|d���ddd��n#1swxYwYd}tjt|���5tgd�tjj|d���ddd��n#1swxYwYd	}tjt|���5tgd�d|��ddd��n#1swxYwYd
}tjt|���5tgd�tjjd��ddd��n#1swxYwYd}tjt|���5tgd�tjj|d�
��ddd��n#1swxYwYd}tjt|���5tgd�tjj|d�
��ddd��n#1swxYwYd}tjt|���5tgd�tjj|d���ddd��n#1swxYwYd}tjt|���5tgd�tjj|d���ddd��n#1swxYwYd}tjt|���5tgd�tjj|d���ddd��dS#1swxYwYdS)Nc�4�tj|��jSrV)r	�skewnormr��rIs r8�statz@TestMonteCarloHypothesisTest.test_input_validation.<locals>.stat�s���>�!�$�$�.�.rMrrrrrrrz`rvs` must be callable.z`statistic` must be callable.�)`n_resamples` must be a positive integer.r"r#r%r&r'�`alternative` must be in...r��alternative)r1r2r3rr	r|r}�	TypeError�rortr7s   r8�test_input_validationz2TestMonteCarloHypothesisTest.test_input_validation�s���	/�	/�	/�/��
�]�:�W�
5�
5�
5�	H�	H��Y�Y�Y��
���3�G�G�G�G�	H�	H�	H�	H�	H�	H�	H�	H�	H�	H�	H����	H�	H�	H�	H�E��
�]�:�W�
5�
5�
5�	N�	N��Y�Y�Y��
����M�M�M�M�	N�	N�	N�	N�	N�	N�	N�	N�	N�	N�	N����	N�	N�	N�	N�,��
�]�9�G�
4�
4�
4�	4�	4��Y�Y�Y��d�3�3�3�	4�	4�	4�	4�	4�	4�	4�	4�	4�	4�	4����	4�	4�	4�	4�2��
�]�9�G�
4�
4�
4�	>�	>��Y�Y�Y��
���=�=�=�	>�	>�	>�	>�	>�	>�	>�	>�	>�	>�	>����	>�	>�	>�	>�>��
�]�:�W�
5�
5�
5�	0�	0��Y�Y�Y��
���).�
0�
0�
0�
0�	0�	0�	0�	0�	0�	0�	0�	0�	0�	0�	0����	0�	0�	0�	0�>��
�]�:�W�
5�
5�
5�	1�	1��Y�Y�Y��
���)/�
1�
1�
1�
1�	1�	1�	1�	1�	1�	1�	1�	1�	1�	1�	1����	1�	1�	1�	1�@��
�]�:�W�
5�
5�
5�	K�	K��Y�Y�Y��
���E�J�J�J�J�	K�	K�	K�	K�	K�	K�	K�	K�	K�	K�	K����	K�	K�	K�	K�@��
�]�:�W�
5�
5�
5�	L�	L��Y�Y�Y��
���F�K�K�K�K�	L�	L�	L�	L�	L�	L�	L�	L�	L�	L�	L����	L�	L�	L�	L�0��
�]�:�W�
5�
5�
5�	1�	1��Y�Y�Y��
���)/�
1�
1�
1�
1�	1�	1�	1�	1�	1�	1�	1�	1�	1�	1�	1�	1����	1�	1�	1�	1�	1�	1s��%A�A�A�:%B+�+B/�2B/�C3�3C7�:C7�#E
�
E�E�2%F#�#F'�*F'�%G<�<H�H�$%I�I�I�=%J.�.J2�5J2�%L�L�Lc���tj�d��}|�d��}�fd��d�_d�_|�ddd�}|�tjjtj�d����|d	<tdd
di|��}t�jd��t�jd��|�tjjtj�d����|d	<d�_tdd
d
i|��}t�jd��t�jd
��|�tjjtj�d����|d	<d�_tdi|��}t�jd��t�jd��t|j
|j
��t|j
|j
��dS)Nl�)�pr+c����|jdkrdnt|��}t|�j���_�xjdz
c_tj||���jS�Nrr)r�r_r�
batch_size�counterr	�skewtestr�)rIrrr�s   �r8r�z:TestMonteCarloHypothesisTest.test_batch.<locals>.statistic�s]����f��k�k���s�1�v�v�J�#&�z�9�3G�#H�#H�I� �����"����>�!�$�/�/�/�9�9rMrr�T)r�r�r$ri�"�r}r(r��r�r�rrW)r4rBr�r�rr}r	r|rrr�)ror�rIrkrJrK�res3r�s       @r8�
test_batchz'TestMonteCarloHypothesisTest.test_batch�s�����i�#�#�K�0�0���J�J�r�N�N��	:�	:�	:�	:�	:�
�	�� �	���)�#�4�9�9���h�h�u�z�~�r�y�/D�/D�X�/N�/N�O�O��U���0�0�a�0�4�0�0���Y�&��-�-�-��Y�)�1�-�-�-��h�h�u�z�~�r�y�/D�/D�X�/N�/N�O�O��U���	���1�1�b�1�D�1�1���Y�&��+�+�+��Y�)�2�.�.�.��h�h�u�z�~�r�y�/D�/D�X�/N�/N�O�O��U���	���'�'�$�'�'���Y�&��*�*�*��Y�)�4�0�0�0��T�[�$�+�.�.�.��T�[�$�+�.�.�.�.�.rMr���rc��tj�d��}|�tjj|��}gd�}d||<||���}t	j||���}d�}t|||dd|�	��}t|j	|j	��t|j
|j
|j�
��dS)Ni�t$�rrrrAr�rc�8�tj||���jSrd)r	r�r�r�s  r8r�z9TestMonteCarloHypothesisTest.test_axis.<locals>.statistics���>�!�$�/�/�/�9�9rMTi N)rr$rrz)r4rBr�r}r	r|r�rrr�r�r{)	rorr��norm_rvsrtrIr�r�r[s	         r8�	test_axisz&TestMonteCarloHypothesisTest.test_axis
s����i�#�#�G�,�,���8�8�E�J�N�C�0�0���y�y����T�
��H�$������>�!�$�/�/�/��	:�	:�	:��q�(�I�$�+0�t�=�=�=��	��
�x�'9�:�:�:���
�H�O�$�)�D�D�D�D�D�DrMrx��less�greaterrYg�r/rpc�2��tj�d��}tj�|d|���}tj|tjj����}�fd�}|�tjj|��}t|||dd����}t|j|j���d	kr#t|j|j|j
�
��dS�dkr&td|jz
|j|j
�
��dSdS)
Ni)��r2�rYrtr0rwc�\��tj|tjjd����jS�N�asymp)�moderx)r	�ks_1sampr|�cdfr�)rIrxs �r8�statistic1dzGTestMonteCarloHypothesisTest.test_against_ks_1samp.<locals>.statistic1d+s-����>�!�U�Z�^�'�.9�;�;�;�;D�
ErMr�F�r$rrxr�rzr�r)r4rBr�r	rrr}r�r|r�rrr�r�r{)	rorxrYr�rIr�r�r�r[s	 `       r8�test_against_ks_1sampz2TestMonteCarloHypothesisTest.test_against_ks_1samp"s$����i�#�#�H�-�-���N�����#��>�>���>�!�U�Z�^��M�M�M��	E�	E�	E�	E�	E��8�8�E�J�N�C�0�0���q�(�K�+/�E�+6�8�8�8��	��
�x�'9�:�:�:��)�#�#��C�J���d�i�H�H�H�H�H�H�
�F�
"�
"��A�c�j�L�(�/��	�J�J�J�J�J�J�#�
"rM�hypotest�r�r��	two-sidedrrc���tj�d��}tj�|d|���}�||���}�fd�}|�tjj|��}t|||d|���}	t|	j	|j	��t|	j
|j
|j���dS)	Ni
	�r�rwc�(���||���jSrd)r�)rIrr�s  �r8r�zLTestMonteCarloHypothesisTest.test_against_normality_tests.<locals>.statisticDs����8�A�D�)�)�)�3�3rMT�rrxrz)r4rBr�r	rrr}r|rrr�r�r{)
ror�rxrYr�rIr�r�r�r[s
 `        r8�test_against_normality_testsz9TestMonteCarloHypothesisTest.test_against_normality_tests:s����
�i�#�#�H�-�-���N�����3��?�?���8�A�;�7�7�7��	4�	4�	4�	4�	4��8�8�E�J�N�C�0�0���q�(�I�$�+6�8�8�8��	��
�x�'9�:�:�:���
�H�O�$�)�D�D�D�D�D�DrMc��tj�d��}tj�|d|���}tj|��}d�}|�tjj|��}t|||dd���}t|j
|j
��t|j|j|j���dS)	Ni!M�r�r�c�8�tj||���jSrd)r	�
normaltestr�r�s  r8r�zGTestMonteCarloHypothesisTest.test_against_normaltest.<locals>.statisticVs���#�A�D�1�1�1�;�;rMTr�r�rz)
r4rBr�r	rrr}r�r|rrr�r�r{)rorYr�rIr�r�r�r[s        r8�test_against_normaltestz4TestMonteCarloHypothesisTest.test_against_normaltestNs����i�#�#�H�-�-���N�����3��?�?���#�A�&�&��	<�	<�	<��8�8�E�J�N�C�0�0���q�(�I�$�+4�6�6�6��	��
�x�'9�:�:�:���
�H�O�$�)�D�D�D�D�D�DrMc��tj�d��}tj�|d|���}tj|tjj��}d�}|�tjj|��}t|||ddd���}t|j|j��t|j|j|j
�	��dS)
Ni�
r2r�c�T�tj|tjj��jSrV)r	�cramervonmisesr|r�r�rss r8r�zMTestMonteCarloHypothesisTest.test_against_cramervonmises.<locals>.statistic1dhs���'��5�:�>�:�:�D�DrMr�Fr�r�rz)r4rBr�r	rrr}r�r|r�rrr�r�r{)rorYr�rIr�r�r�r[s        r8�test_against_cramervonmisesz8TestMonteCarloHypothesisTest.test_against_cramervonmises`s����i�#�#�I�.�.���N�����#��>�>���'��5�:�>�:�:��	E�	E�	E��8�8�E�J�N�C�0�0���q�(�K�+/�E�+4�6�6�6��	��
�x�'9�:�:�:���
�H�O�$�)�D�D�D�D�D�DrM�	dist_name)r|�logisticrXc	�6�����fd�}t��5}|�t��t|d���}ddd��n#1swxYwY|jsJ�|jd}tj�d��}tj
�|d|���}tj|���}	|	j
}
|	j�dz}�fd�}|�tt���j|��}
t��5}|�t��t!||
|dd	d
���}ddd��n#1swxYwYt#|j
|
��t#|j|d|jz�
��dS)Nc����tj�d��}tj�|d|���}tj|���}|j|j�z
S)N�x�rAr)	r4rBr�r	�tukeylambdar}�andersonr��critical_values)rYr�rIr�r�rXs    ��r8�funz?TestMonteCarloHypothesisTest.test_against_anderson.<locals>.fun~s\����)�'�'�	�2�2�C��!�%�%�a�c��%�D�D�A��~�a��3�3�H��%��(@��(C�C�CrMr)�x0r�rArc�8��tj|���jSrV)r	r�r�)rIr�s �r8r�zGTestMonteCarloHypothesisTest.test_against_anderson.<locals>.statistic1d�s����>�!�Y�/�/�9�9rMr�Fr�r�rrz)r�filter�RuntimeWarningr�successrIr4rBr�r	r�r}r�r��significance_levelr'rrr�r{)ror�rXr��sup�solrYr�rIr��
expected_stat�
expected_pr��dist_rvsr[s ``            r8�test_against_andersonz2TestMonteCarloHypothesisTest.test_against_andersonss:����	D�	D�	D�	D�	D�	D�
�
 �
 �	"�C��J�J�~�&�&�&��s�q�/�/�/�C�	"�	"�	"�	"�	"�	"�	"�	"�	"�	"�	"����	"�	"�	"�	"��{����
�E�!�H���i�#�#�I�.�.����!�!�!�#�C�!�@�@���>�!�Y�/�/�� �*�
��0��3�C�7�
�	:�	:�	:�	:�	:��8�8�G�E�9�5�5�9�3�?�?��
�
 �
 �	L�C��J�J�~�&�&�&�"�1�h�#.�D�.3��L�L�L�C�	L�	L�	L�	L�	L�	L�	L�	L�	L�	L�	L����	L�	L�	L�	L�	��
�}�5�5�5���
�J�Q�t�y�[�A�A�A�A�A�As#�,A�A�A�0E�E�!Ec���tj�d��}tjd��}t	||jtjdd���}|jdksJ�dS)NlIL�~QH(srATr�r�g-C��6?)r4rBr��zerosrr5r�)ror�rIr[s    r8�test_p_never_zeroz.TestMonteCarloHypothesisTest.test_p_never_zero�sf���i�#�#�$7�8�8���H�S�M�M���q�#�*�b�g�*.�F�D�D�D���z�V�#�#�#�#�#�#rMN)�__name__�
__module__�__qualname__r{r}r{r�r1�mark�parametrizerr�r4�linspacer�r	r��kurtosistestr�r^r�r�r�r�rWrMr8rhrh�sV�������D�L�L�L�+1�+1�+1�Z#/�#/�#/�J�[���V�U�U�2�q�\�\�2�2�E�E�3�2�E�(�[���]�,?�@�@��[���S�+�"�+�d�C��";�";�<�<�K�K�=�<�A�@�K�,�[���Z�%�.�%�:L�)M�N�N��[���]�,L�M�M��[���S�+�"�+�b�!�Q�"7�"7�8�8�E�E�9�8�N�M�O�N�E�"�[���S�)�"�)�B��"2�"2�3�3�E�E�4�3�E�"�[���S�+�"�+�d�C��";�";�<�<�E�E�=�<�E�$�[���[�*>�?�?��[���S�%�%��(�(�+�+�(B�(B�,�+�@�?�(B�T$�$�$�$�$rMrhc���eZdZdZd�Zd�Zej�de	j
je	j
jg��ej�dgd���d�����Z
ej�de	j
je	j
jg��ej�dd	ejd
��dzfdd
ejdd
��fg��d�����Zd�Zej���d���Zd�Zej�dd��ej�dd��ej�dd��d�������Zej�dd��d���Zej�dd��d���Zej�dd��d���Zd�Zej���ej�dd��d �����Zej�dd��d!���Zej�dd��d"���Zd#�Zej�dd��d$���Z ej���ej�dd%��d&�����Z!gd'�gd(�d)d*d+d,d-d.d/�Z"gd0�gd1�d2d3d4d5d6d7d/�Z#ej���ej�d8e"e#f��d9�����Z$ej�d:d;��d<���Z%ej�d=d>��d?���Z&e'd@��d
gfe'd��d
gd�gdA�gfe'dB��d
gd�gdA�ddCggfgZ(ej�dDe(��dE���Z)dF�Z*dGS)H�TestPermutationTestrc�N�tj�d��|_dS)Nl�F)r4rBr�r�)ros r8�setup_methodz TestPermutationTest.setup_method�s���9�(�(�)<�=�=����rMc��d�}d}tjt|���5tgd�dgf|��ddd��n#1swxYwYd}tjt|���5td|��ddd��n#1swxYwYtjt|���5td|��ddd��n#1swxYwYd}tjt|���5tgd�gd�f|d	�
��ddd��n#1swxYwYd}tjt|���5tgd�gd�f|d�
��ddd��n#1swxYwYd}tjt|���5tgd�gd�f|d	���ddd��n#1swxYwYd}tjt|���5tgd�gd�f|d���ddd��n#1swxYwYd}tjt|���5tgd�gd�f|d���ddd��n#1swxYwYd}tjt|���5tgd�gd�f|d���ddd��n#1swxYwYd}tjt|���5tgd�gd�f|d���ddd��n#1swxYwYd}tjt|���5tgd�gd�f|d���ddd��n#1swxYwYd}tjt|���5tgd�gd�f|d���ddd��dS#1swxYwYdS)Nc�:�tj||f|��jSrV�r	�	ttest_indr�rRs   r8rtz:TestPermutationTest.test_permutation_test_iv.<locals>.stat�s���?�A�q�6�4�0�0�:�:rMz2each sample in `data` must contain two or more ...rrrz6`data` must be a tuple containing at least two samples)rrrrz `permutation_type` must be in...r)�permutation_typerrrur"r#r%r&r'rvrwr-r.r/)r1r2r3rryrzs   r8�test_permutation_test_ivz,TestPermutationTest.test_permutation_test_iv�s`��	;�	;�	;�G��
�]�:�W�
5�
5�
5�	5�	5��i�i�i�!��-�t�4�4�4�	5�	5�	5�	5�	5�	5�	5�	5�	5�	5�	5����	5�	5�	5�	5�K��
�]�:�W�
5�
5�
5�	)�	)��T�4�(�(�(�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)����	)�	)�	)�	)�
�]�9�G�
4�
4�
4�	&�	&��Q��%�%�%�	&�	&�	&�	&�	&�	&�	&�	&�	&�	&�	&����	&�	&�	&�	&�/��
�]�:�W�
5�
5�
5�	E�	E��i�i�i����3�T��D�D�D�D�	E�	E�	E�	E�	E�	E�	E�	E�	E�	E�	E����	E�	E�	E�	E�5��
�]�:�W�
5�
5�
5�	6�	6��i�i�i����3�T�.4�
6�
6�
6�
6�	6�	6�	6�	6�	6�	6�	6�	6�	6�	6�	6����	6�	6�	6�	6�E��
�]�:�W�
5�
5�
5�	K�	K��i�i�i����3�T�c�J�J�J�J�	K�	K�	K�	K�	K�	K�	K�	K�	K�	K�	K����	K�	K�	K�	K�>��
�]�:�W�
5�
5�
5�	N�	N��i�i�i����3�T�u�M�M�M�M�	N�	N�	N�	N�	N�	N�	N�	N�	N�	N�	N����	N�	N�	N�	N�>��
�]�:�W�
5�
5�
5�	O�	O��i�i�i����3�T�v�N�N�N�N�	O�	O�	O�	O�	O�	O�	O�	O�	O�	O�	O����	O�	O�	O�	O�@��
�]�:�W�
5�
5�
5�	H�	H��i�i�i����3�T��G�G�G�G�	H�	H�	H�	H�	H�	H�	H�	H�	H�	H�	H����	H�	H�	H�	H�@��
�]�:�W�
5�
5�
5�	I�	I��i�i�i����3�T��H�H�H�H�	I�	I�	I�	I�	I�	I�	I�	I�	I�	I�	I����	I�	I�	I�	I�0��
�]�:�W�
5�
5�
5�	O�	O��i�i�i����3�T�v�N�N�N�N�	O�	O�	O�	O�	O�	O�	O�	O�	O�	O�	O����	O�	O�	O�	O�7��
�]�:�W�
5�
5�
5�	5�	5��i�i�i����3�T�*3�
5�
5�
5�
5�	5�	5�	5�	5�	5�	5�	5�	5�	5�	5�	5�	5����	5�	5�	5�	5�	5�	5s��A�A�
A�+B�B�B�.C�C�C�3D�D�D�E%�%E)�,E)�
F2�2F6�9F6�G?�?H�H�'I�I�I�4J�J� J�K&�&K*�-K*�L3�3L7�:L7�N�N�Nr0r�)�pairings�samples�independentc���	�|j�d��}|j�d��}�	fd��	d�	_d�	_d|dd�}t	j||f�	fd|d��d�|��}t
�	jd	��t
�	jd��d�	_t	j||f�	fd
|d��d�|��}t
�	jd��t
�	jd
��d�	_t	j||f�	fd|d��d�|��}t
�	jd��t
�	jd��t
|j|j��t
|j|j��dS)
Nr+c����|jdkrdnt|��}t|�j���_�xjdz
c_tj||���tj||���z
Sr~)r�r_rrr�r4r5)rIrSrrr�s    �r8r�z1TestPermutationTest.test_batch.<locals>.statistic�sn����f��k�k���s�1�v�v�J�#&�z�9�3G�#H�#H�I� �����"����7�1�4�(�(�(�2�7�1�4�+@�+@�+@�@�@rMrr�T)r$r�rr)r(r0r�r�r�r)r�rBr�rr	rrr�)
ror�r0rIrSrkrJrKr�r�s
         @r8r�zTestPermutationTest.test_batch�s����
�H�O�O�B�����H�O�O�B����	A�	A�	A�	A�	A�
�	�� �	��#�9I�"�$�$���%�q�!�f�i�L�q�3?�<��?�?�L�L�FJ�L�L���Y�&��-�-�-��Y�)�1�-�-�-��	���%�q�!�f�i�L�r�3?�<��?�?�L�L�FJ�L�L���Y�&��+�+�+��Y�)�2�.�.�.��	���%�q�!�f�i�L�t�3?�<��?�?�L�L�FJ�L�L���Y�&��*�*�*��Y�)�4�0�0�0��T�[�$�+�.�.�.��T�[�$�+�.�.�.�.�.rMzpermutation_type, exact_sizer�rr)r�rer�rc�R�|j�d��}|j�d��}d�}|dd�}tj||f|fd|d��d�|��}t	|jjd��tj||f|fi|��}t	|jj|��dS)Nrc�\�tj||���tj||���z
Srdr�rRs   r8r�z8TestPermutationTest.test_permutations.<locals>.statistic�+���7�1�4�(�(�(�2�7�1�4�+@�+@�+@�@�@rMT)r�rr)r$r0)r�rBr	rr�null_distributionrt)	ror��
exact_sizer0rIrSr�rkr[s	         r8�test_permutationsz%TestPermutationTest.test_permutationss���
�H�O�O�A�����H�O�O�A����	A�	A�	A�%5�"�$�$���$�a��V�Y�K�A�2>�,�q�/�/�K�K�EI�K�K���S�*�/��3�3�3��$�a��V�Y�?�?�$�?�?���S�*�/��<�<�<�<�<rMc��d\}}d\}}}tj||z|��|ksJ�tj�|���}tj�|���}||f}d�}	ddd||d�}
t||	fd	|i|
��}t||	fd	tji|
��}|j|jksJ�t|j
|j
d
���dS)N)r�r)re�	i�]r�c�\�tj||���tj||���z
Srdr�rRs   r8r�zNTestPermutationTest.test_randomized_test_against_exact_both.<locals>.statistic=r�rMTr�rA�rr�r(rxr0r$�{�G�z�?rz)r
�binomr	r|r}rr4�infr�rr��
rorxr��nx�ny�permutationsrIrSr�r�rkr[rKs
             r8�'test_randomized_test_against_exact_bothz;TestPermutationTest.test_randomized_test_against_exact_both0s��%���S�*���B���}�R�"�W�b�)�)�L�8�8�8�8��J�N�N��N�#�#���J�N�N��N�#�#���!�t��	A�	A�	A�#�
��[�#�O�O���t�Y�'�'�L�'�!%�'�'����i�L�L�R�V�L�t�L�L���}���.�.�.�.���
�D�K�d�;�;�;�;�;�;rMc��d\}}d\}}}d|z|ksJ�tj�|���}tj�|���}||f}d�}	ddd||d	�}
t||	fd
|i|
��}t||	fd
tji|
��}|j|jksJ�t|j|jd���dS)
N)r�N)r�r�i}rr�c�4�tj||z
|���Srdr�rRs   r8r�zQTestPermutationTest.test_randomized_test_against_exact_samples.<locals>.statisticWs���7�1�q�5�t�,�,�,�,rMTr�rAr�r$r�rz)	r	r|r}rr4r�r�rr�r�s
             r8�*test_randomized_test_against_exact_samplesz>TestPermutationTest.test_randomized_test_against_exact_samplesIs��
+���S�,���B���"�u�|�#�#�#�#��J�N�N��N�#�#���J�N�N��N�#�#���!�t��	-�	-�	-�#�	��[�#�O�O���t�Y�'�'�L�'�!%�'�'����i�L�L�R�V�L�t�L�L���}���.�.�.�.���
�D�K�d�;�;�;�;�;�;rMc���
�d|j}}d\}}}tj|��|ksJ�tj�|���}tj�|����
|g}�
fd�}t
j|��}	ddd||d�}
t||	fd	|i|
��}t||	fd	tj
i|
��}|j|jksJ�t|j
|j
d
���dS)Nr�)rerei@�r�c�:��tj|���dS�Nr�r	�pearsonr�rIrSs �r8r�zTTestPermutationTest.test_randomized_test_against_exact_pairings.<locals>.statistic1dps����>�!�Q�'�'��*�*rMTr�rAr�r$r�rz)r�r
�	factorialr	r|r}rrDrr4r�r�rr�)rorxr�r�r�r�rIr�r�r�rkr[rKrSs             @r8�+test_randomized_test_against_exact_pairingsz?TestPermutationTest.test_randomized_test_against_exact_pairingscs'���'���S��*���B��� ��$�$�|�3�3�3�3��J�N�N��N�#�#���J�N�N��N�#�#���s��	+�	+�	+�	+�	+� �4�[�A�A�	�"�	��[�#�O�O���t�Y�'�'�L�'�!%�'�'����i�L�L�R�V�L�t�L�L���}���.�.�.�.���
�D�K�d�;�;�;�;�;�;rMrxr�r�)r2ge��Arr=c	�(�tjd���ddd��}tjtjd��dd�ddfd|��}tj�d��}t
j||||||���}d�}tj�d��}	t||f|d	||||	�
��}
t|j
|
j
|j���t|j|
j|j���dS)N�<rrrprl;W�N�a)r�rr0rxc�:�tj|||���jSrdr�rRs   r8r�zETestPermutationTest.test_against_permutation_ttest.<locals>.statistic�s���?�1�a�d�3�3�3�=�=rMT�rr$rxrr0rx)
r4r^ri�moveaxisrBr�r	r�rrr�ryr�)rorxr�rrIrSr*rJr�r+rKs           r8�test_against_permutation_ttestz2TestPermutationTest.test_against_permutation_ttest~s��
�I�e���$�$�Q��1�-�-���K��	�!���Q�Q�Q��d�]�3�Q��=�=���y�$�$�%8�9�9����q�!�,�T�,0�k�K�K�K��	>�	>�	>��y�$�$�%8�9�9����A��	�d�,8�,7�d�-1�3�3�3��
	�����T�Y�G�G�G�G����T�[�t�y�A�A�A�A�A�ArMr�c���|j�dd���}|j�ddd���}tj||�d���}�fd	�}t	||f|t
jd
|j���}t|j|j|j	���t|j
|j
|j	���dS)
Nrr�rtrsrpr)rtrrrs�exact)rxr�c�>��tj||d����jSr�)r	�ks_2sampr��rIrSrxs  �r8r�z>TestPermutationTest.test_against_ks_2samp.<locals>.statistic1d�s)����>�!�Q�W�.9�;�;�;�;D�
ErMr��r$rxr0rx)r��normalr	r�rr4r�rr�ryr�)rorxrIrSr�r�r[s `     r8�test_against_ks_2sampz)TestPermutationTest.test_against_ks_2samp�s����
�H�O�O��!�O�,�,���H�O�O����O�3�3���>�!�Q�K�g�N�N�N��	E�	E�	E�	E�	E���1�v�{���+4�4�8�M�M�M��	��
�x�'9��	�J�J�J�J���
�H�O�$�)�D�D�D�D�D�DrMc��|j�dd���}|j�dd���}dddd	�}||}tj|||�
��}d�}t	||f|t
j||j���}t|j|j|j	�
��t|j
|j
|j	�
��dS)Nrrr�rprr�r�r�r�rwc�6�tj||��jSrV�r	�ansarir�r�s  r8r�z<TestPermutationTest.test_against_ansari.<locals>.statistic1d�����<��1�%�%�/�/rMrrx)r�rr	rrr4r�rr�ryr�)	rorxrIrS�alternative_correspondence�alternative_scipyr�r�r[s	         r8�test_against_ansariz'TestPermutationTest.test_against_ansari�s���
�H�O�O��!�O�,�,���H�O�O��!�O�,�,��/8�17�3>�&@�&@�"�7�{�C���<��1�2C�D�D�D��	0�	0�	0���1�v�{���+6�T�X�O�O�O��	��
�x�'9��	�J�J�J�J���
�H�O�$�)�D�D�D�D�D�DrMc	��tj�dd|j���}tj�dd|j���}tj||d|���}d�}t||f|dtj|d|j�	��}t|j	|j	|j
�
��t|j|j|j
�
��dS)N)rrprr�rtrrr0皙�����?r)rrxc�:�tj|||���jSrd)r	�mannwhitneyur�rRs   r8r�z@TestPermutationTest.test_against_mannwhitneyu.<locals>.statistic�s���%�a���6�6�6�@�@rMTr�rx)r	�uniformr}r�rrr4r�rr�ryr�)rorxrIrSr�r�r[s       r8�test_against_mannwhitneyuz-TestPermutationTest.test_against_mannwhitneyu�s���
�M���9�!�$�(��K�K���M���9�$�T�X��N�N���%�a����L�L�L��	A�	A�	A���1�v�y�T�+-�6�{�$%�D�H�>�>�>��	��
�x�'9��	�J�J�J�J���
�H�O�$�)�D�D�D�D�D�DrMc��tj�dd|j���}tj�ddd|j���}tj||d���}d	�}t||f|tjd
|j���}t|j	|j	|j
���t|j|j|j
���dS)
Nrr)rtrsr0rpr)rtrrrsr0r�r)c�:�tj||d���jS�N�
asymptoticr))r	�cramervonmises_2sampr�r�s  r8r�z9TestPermutationTest.test_against_cvm.<locals>.statistic1d�s*���-�a��5A�C�C�C�CL�
MrMr�rrx)r	r|r}r�rrr4r�rr�ryr�)rorIrSr�r�r[s      r8�test_against_cvmz$TestPermutationTest.test_against_cvm�s����J�N�N�����N�B�B���J�N�N��q����N�I�I���-�a��7�C�C�C��	M�	M�	M�
��1�v�{���+4�4�8�M�M�M��	��
�x�'9��	�J�J�J�J���
�H�O�$�)�D�D�D�D�D�DrM)rOrc�6�tj�d��}|�d���}|�d���}|�d���}|||f}d�}d�}tj|��}	tj|��}
tj|d��}tj|d	��}tj|d
��}
|	|||
|���}|
|||
|���}d|d
d|jd�}t||fdtji|��}t||fddi|��}t|j
||j���t|j
|j
|j���t|j|d���t|j|jd���dS)NlY}y!�d�hrr�)rrr)rrrc�(�tj|�jSrV)r	�kruskalr��r�s r8r�zITestPermutationTest.test_vectorized_nsamp_ptype_both.<locals>.statistic1d�s���=�$�'�1�1rMc�(�tj|�jSrV)r	rr�rs r8�pvalue1dzFTestPermutationTest.test_vectorized_nsamp_ptype_both.<locals>.pvalue1ds���=�$�'�.�.rM)rrr)rrrr�rFr�r��rrrxr�r0r$r�rxg���Q��?rzr�)
r4rBr�rrDrhr�rr�rr�ryr�)rorr�rIrSrer�r�rr�r��x2r"�z2�expected_statistic�expected_pvaluerkr[rKs                   r8� test_vectorized_nsamp_ptype_bothz4TestPermutationTest.test_vectorized_nsamp_ptype_both�s����i�#�#�$7�8�8���J�J�Q�J� � ���J�J�I�J�&�&���J�J�I�J�&�&���1�a�y��	2�	2�	2�	/�	/�	/� �4�[�A�A�	��1�(�;�;���_�Q�	�
*�
*��
�_�Q�	�
*�
*��
�_�Q�	�
*�
*��&�Y�r�2�r��=�=�=�� �&��R��$�7�7�7��$�T�)�$1�4�8�M�M���t�[�M�M�b�f�M��M�M����k�L�L�t�L�t�L�L��	��
�'9��	�J�J�J�J���
�t�~�D�I�F�F�F�F���
�O�$�?�?�?�?���
�D�K�d�;�;�;�;�;�;rMc���tj�dd|j���}tj�dd|j���}d�}d�}�fd�}t	j|��}|||d�	��}|d}	|d}
d
d�d|jtjd�}t||z
f|fi|��}t||f|fi|��}
t|j
|
j
|j�
���dkrt|
j
|	|j�
��t|
j|
|j�
��t|j|
j|j�
��dS)N)rrrrrr
c�8�tj|d���jS�Nr�rw�r	�wilcoxonr�)res r8�statistic_1samp_1dzETestPermutationTest.test_against_wilcoxon.<locals>.statistic_1samp_1d#s���>�!��8�8�8�B�BrMc�:�tj||d���jSr&r'r�s  r8�statistic_2samp_1dzETestPermutationTest.test_against_wilcoxon.<locals>.statistic_2samp_1d's���>�!�Q�F�;�;�;�E�ErMc�2��tj||����S)Nrw)r	r(r�s  �r8�test_1dz:TestPermutationTest.test_against_wilcoxon.<locals>.test_1d*s����>�!�Q�K�@�@�@�@rMrrFr�)rrrxr�r0r$rxr�)
r	rr}r�rrDr4r�rrr�ryr�)rorxrIrSr)r+r-�testr�r�r�rkrJrKs `            r8�test_against_wilcoxonz)TestPermutationTest.test_against_wilcoxons����
�M���9�!�$�(��K�K���M���9�$�T�X��N�N��	C�	C�	C�	F�	F�	F�	A�	A�	A�	A�	A��/��8�8���4��1�1�%�%�%�� ���
��a�[�
�#�Q�{�$-�t�x�!�v�'�'�� ��1���(:�C�C�d�C�C����A��(:�C�C�d�C�C��	�����T�Y�G�G�G�G��+�%�%��D�N�M��	�J�J�J�J����Z�d�i�@�@�@�@����T�[�t�y�A�A�A�A�A�ArMc	�@�|j�ddd���}d||dk<d
d�}||��dd}}}tj||||���}tj|f|d	d
t
j|j|���}t|j|j|j	���dS)Nrrr+r�rOc�6�tj|dk|���S)Nrr�r4r�r�s  r8r�z=TestPermutationTest.test_against_binomtest.<locals>.statisticJs���6�!�a�%�d�+�+�+�+rMr/rwTr�)rr�r$r0rxrxr�)
r��integersr	r�rr4r�rr�ry)	rorxrIr��kr`r9r�r[s	         r8�test_against_binomtestz*TestPermutationTest.test_against_binomtestAs���
�H���a����,�,����!�q�&�	�
	,�	,�	,�	,��)�A�,�,��C�a�1���?�1�a���D�D�D���$�a�T�9��6?�13��d�h�1<�>�>�>��	��
�H�O�$�)�D�D�D�D�D�DrMc�~��|j�d���}||j�d���z�tj|�d���}�fd�}t	|f|dt
j|j���}t|j|j|j	���t|j
|j
|j	���dS)	Nrr�r�r)c�<��tj|�d���jSr)r	�
kendalltaur�r�s �r8r�z@TestPermutationTest.test_against_kendalltau.<locals>.statistic1d_s����#�A�q��>�>�>�H�HrMr�)r�r$r0rx)r�rr	r8rr4r�rr�ryr�)rorIr�r�r[rSs     @r8�test_against_kendalltauz+TestPermutationTest.test_against_kendalltauXs�����H�O�O��O�#�#��
�����Q��'�'�'���#�A�q��9�9�9��	I�	I�	I�	I�	I���t�[�:�+-�6���J�J�J��	��
�x�'9��	�J�J�J�J���
�H�O�$�)�D�D�D�D�D�DrMc����fd�}tj�d��}|�d��dk�t��}|�d��d|zzdk�t���t
j�|���d}t|f|dtj	||���}tj
||�	��}t|j|d��dS)
Nc�B��tj|dk�dkz��S�Nrr2r�s �r8r�z@TestPermutationTest.test_against_fisher_exact.<locals>.statisticls ����6�1��6�a�1�f�-�.�.�.rMl	�(yM4�g333333�?g�?rr�)r�r$rxr0rw)
r4rBr��astype�floatr	�contingency�crosstabrr��fisher_exactrr�)	rorxr�r�rI�tabr[rKrSs	        @r8�test_against_fisher_exactz-TestPermutationTest.test_against_fisher_exactis����	/�	/�	/�	/�	/��i�#�#�$7�8�8��
�Z�Z��]�]�S�
 �(�(��/�/��
�Z�Z��]�]�T�!�V�
#�c�
)�1�1�%�8�8����(�(��A�.�.�q�1����t�Y��+-�6�{�,/�1�1�1���!�#�;�?�?�?����
�D��G�,�,�,�,�,rM)rrc�@�|j�d���}|j�d���}|j�d���}tj||���}tj||���}tj||���}|d}|||f}d�}d�}t	j|��}t	j|��}	|t
j|�d	|i�}
|	t
j|�d	|i�}d
|dddd
�}t||fdtj	i|��}
t||fddi|��}t|
j|
|j���t|
j|j|j���t|
j
||j���t|
j
|j
d���dS)N)rrrr�)rrr)rrrrrc�:�tj|dd���jS)NTr��rankedr*)r	�page_trend_testr�rs r8r�zLTestPermutationTest.test_vectorized_nsamp_ptype_samples.<locals>.statistic1d�s'���(��d�0<�>�>�>�>G�
HrMc�:�tj|dd���jS)NTr�rG)r	rIr�rs r8rzITestPermutationTest.test_vectorized_nsamp_ptype_samples.<locals>.pvalue1d�s'���(��d�07�9�9�9�9?�
@rMrFr�r�rr$rqrxr�rz)r�rBr	�rankdatarrDr4�broadcast_arraysrr�rr�ryr�)rorrIrSrer�r�rr�r�r!r"rkr[rKs               r8�#test_vectorized_nsamp_ptype_samplesz7TestPermutationTest.test_vectorized_nsamp_ptype_samples|s���
�H�O�O��O�+�+���H�O�O��O�+�+���H�O�O��O�+�+���N�1�4�(�(�(���N�1�4�(�(�(���N�1�4�(�(�(��
�a�D���1�a�y��	H�	H�	H�	@�	@�	@� �4�[�A�A�	��1�(�;�;��&�Y��(;�T�(B�N��N�N�� �&�"�"5�t�"<�H�4�H�H��$�T�)�$.��C�C���t�[�M�M�b�f�M��M�M����k�L�L�t�L�t�L�L����
�'9��	�J�J�J�J���
�t�~�D�I�F�F�F�F���
�O�$�)�D�D�D�D���
�D�K�d�;�;�;�;�;�;rMr)rrg@g�������?g�������?g�&�_��?g@gd~�$I"@gl�u���?)rIrS�
expected_less�expected_2sided�expected_Pr_gte_S_meanr!�expected_avg�expected_std)�o�krAr��f�j�m�l)	rTrXrV�b�i�g�nrZr�g�d�����?g�d�����?gYo�5�?g@@@g{��C@gDmFA�@�casec��|d}|d}|d}|d}|d}|d}|d}|d}	d	�}
tj���5}|�td
��t||f|
tjd���}t||f|
tjd
���}
ddd��n#1swxYwYt|j||j	���t|j
|d���t|
j
|d���t|
j���|d���t|
j�
��|	d���|j}|j���}t|j��}tjtj|j|z
��tj||z
��k��|z}t||��dS)a�
        Results above from SAS PROC NPAR1WAY, e.g.

        DATA myData;
        INPUT X Y;
        CARDS;
        1 1
        1 2
        1 3
        1 4
        2 1.5
        2 2
        2 2.5
        ods graphics on;
        proc npar1way AB data=myData;
            class X;
            EXACT;
        run;
        ods graphics off;

        Note: SAS provides Pr >= |S-Mean|, which is different from our
        definition of a two-sided p-value.

        rIrSr!rNrOrPrQrRc�6�tj||��jSrVrr�s  r8r�z7TestPermutationTest.test_with_ties.<locals>.statistic1d�rrMz$Ties preclude use of exact statisticr�)r$rxr�Nrxg�����|�=rzg���ư>)r4�testingrr��UserWarningrr�rr�ryr�r�r5r�r_r�r�)ror]rIrSr!rNrOrPrQrRr�r�r[rK�Sr5r`�
Pr_gte_S_means                  r8�test_with_tiesz"TestPermutationTest.test_with_ties�s@��8
��I����I��!�"6�7���_�-�
��0�1��!%�&>�!?���N�+���N�+��	0�	0�	0��Z�
)�
)�
+�
+�	=�s��J�J�{�$J�K�K�K�"�A�q�6�;�B�F�/5�7�7�7�C�#�Q��F�K�R�V�0;�=�=�=�D�		=�	=�	=�	=�	=�	=�	=�	=�	=�	=�	=����	=�	=�	=�	=�	��
�'9��	�J�J�J�J���
�M��>�>�>�>����_�5�A�A�A�A���.�3�3�5�5�|�$�O�O�O�O���.�2�2�4�4�l��N�N�N�N�
�M���$�)�)�+�+����%�&�&����r�v�c�&;�D�&@�A�A�"$�&��4��.�.� 1�2�2�23�4�
��.�
�>�>�>�>�>s�"AC�C�Czalternative, expected_pvalue))r�g��?)r�g��O��O�?)r�g<�O��O�?c����gd�}gd��d}�fd�}t|f|dtj|���}t|j||j���t|j|d�	��d
S)aU
        Results above from R cor.test, e.g.

        options(digits=16)
        x <- c(1.76405235, 0.40015721, 0.97873798,
               2.2408932, 1.86755799, -0.97727788)
        y <- c(2.71414076, 0.2488, 0.87551913,
               2.6514917, 2.01160156, 0.47699563)
        cor.test(x, y, method = "spearm", alternative = "t")
        )g@��9�?g�Y��,��?g��O�Q�?g[��iY�@g��|��?g鈶B�E�)gQ�Gn��@g�U�����?gz�˱@�?gm��GA6@g�B��@g��˭��?g�������?c�8��tj|���jSrV)r	�	spearmanrr�r�s �r8r�zDTestPermutationTest.test_against_spearmanr_in_R.<locals>.statistic1ds����?�1�a�(�(�2�2rMr�)r�r$rxrxg�vIh�%<=rzN)rr4r�rr�ryr�)rorxr"rIr!r�r[rSs       @r8�test_against_spearmanr_in_Rz/TestPermutationTest.test_against_spearmanr_in_R�s����&
1�
1�
1��
0�
0�
0��/��	3�	3�	3�	3�	3���t�[�:�+-�6�{�L�L�L��	��
�'9��	�J�J�J�J���
�O�%�@�@�@�@�@�@rMr()rOrc��tjtd���5tt	jgd�|����ddd��dS#1swxYwYdS)Nz`batch` must be positive.rr)r1r2r3rjr�_batch_generator)ror(s  r8�test_batch_generator_ivz+TestPermutationTest.test_batch_generator_ivs���
�]�:�-H�
I�
I�
I�	A�	A���-�i�i�i��?�?�@�@�@�	A�	A�	A�	A�	A�	A�	A�	A�	A�	A�	A�	A����	A�	A�	A�	A�	A�	As�%A�A�Ar)rrrprer=ziterable, batch, expectedc�Z�ttj||����}||ksJ�dSrV)rjrrj)ro�iterabler(r��gots     r8�test_batch_generatorz(TestPermutationTest.test_batch_generator s/���;�/��%�@�@�A�A���h������rMc��gd�}gd�}d�}tj||f|dd���}|j|j|j}}}dtj||dz
k��zt|��z}||cxkrd	ksnJ�dS)
N)rrrr)rrrrec�8�tj||��dSr�r�r�s  r8r�zFTestPermutationTest.test_finite_precision_statistic.<locals>.statistic-s���>�!�Q�'�'��*�*rMFr�)rr�rrgUUUUUU�?)r	rr�r�r�r4r�r_)	rorIrSr�r[�rr��null�	correct_ps	         r8�test_finite_precision_statisticz3TestPermutationTest.test_finite_precision_statistic&s���
�L�L���L�L��	+�	+�	+��$�a��V�Y�5�6@�B�B�B���-���S�5J�4�6�����t�q�5�y�0�1�1�1�C��I�I�=�	���)�)�)�)�c�)�)�)�)�)�)�)�)rMN)+r�r�r�ryr�r�r1r�r�r4rBr%r�r�r
r�r�r�r��slowr�r�r�rr
rr�xslowr#r/r5r9rDrM�
tie_case_1�
tie_case_2rdrhrkr�batch_generator_casesrorurWrMr8r�r��s��������D�>�>�>�
35�35�35�l�[���^�b�i�.C�.0�i�.C�.E�F�F��[���/�C�C�C�E�E�"/�"/�E�E�F�F�"/�H�[���^�b�i�.C�.0�i�.C�.E�F�F��[���;�)�+<�7�+<�Q�+?�+?��+B�C�/�,�m�g�m�A�q�.A�.A�B�D�E�E�=�=�	E�E�F�F�=�4<�<�<�2�[�����<�<���<�2<�<�<�6�[���]�,?�@�@��[���^�Y�7�7��[���V�Y�/�/�B�B�0�/�8�7�	A�@�B�2�[���]�,L�M�M�E�E�N�M�E�&�[���]�,L�M�M�E�E�N�M�E�*�[���]�,L�M�M�E�E�N�M�E�"E�E�E�$�[������[���V�W�-�-�*<�*<�.�-���*<�\�[���]�,L�M�M�#B�#B�N�M�#B�J�[���]�,L�M�M�E�E�N�M�E�,E�E�E�"�[���]�,L�M�M�-�-�N�M�-�$�[������[���V�W�-�-�'<�'<�.�-���'<�V$�|�|�-�-�-�#/�%(�,8�(+�"*�G�E�E�J�?�>�>�C�C�C�#/�%1�,8�(,�"+�X�
G�G�J��[������[���V�j�*�%=�>�>�:?�:?�?�>���:?�x�[���;�>�?�?�A�A�	?�?�A�<�[���W�g�.�.�A�A�/�.�A�$�e�A�h�h��2�.�#�e�A�h�h��I�I�I�y�y�y�+A�B�#�e�A�h�h��I�I�I�y�y�y�1�a�&�+I�J�L���[���8�2�4�4���4�4��*�*�*�*�*rMr�c�(��tjgd�t����tj���}t	��}d}tj���D]P}|dz
}tj||dd���}|�td�|D�������Qtj
�fd�tt���dz
��D����}t||��tt|��|��dS)N)rrr)�dtyperrrOc�,�g|]}t|����SrW)�	frozenset)r�rXs  r8�
<listcomp>z4test_all_partitions_concatenated.<locals>.<listcomp>Js��!E�!E�!E�1�)�A�,�,�!E�!E�!ErMc
���g|]D}tjt�|d���t�|dzd�������ESr<)r
r�r�)r�rXr`s  �r8rz4test_all_partitions_concatenated.<locals>.<listcomp>LsU���5�5�5� �#�=��Q�q�r�r�U���S��1�Q�3�4�4��\�\�B�B�5�5�5rM)r4r��int�cumsum�setr�_all_partitions_concatenated�split�addr6�productrr_r)�nc�all_partitionsr��partition_concatenated�partitioningr�r`s      @r8� test_all_partitions_concatenatedr�>s���	�����#�&�&�&�A�	��1���B��U�U�N��G�"-�"J�1�"M�"M�H�H���1����x� 6��3�B�3��@�@�����5�!E�!E��!E�!E�!E�F�F�G�G�G�G��z�5�5�5�5�$)�#�a�&�&��(�O�O�5�5�5�6�6�H���(�#�#�#���^�$�$�h�/�/�/�/�/rM�fun_name�rrrc�x���tj�d�����d�����fd�}�f�dd��f�dd��|d	�d
�}ddi}tt|��}||}|�|���fd
�}|d|dd�|��|d|dd�|��d�}|d|dd�|��|d|dd�|��dS)Nl�r�:�r+r�c�F��tj�|����S)Nr)r	r|r})rtr�s �r8r}z&test_parameter_vectorized.<locals>.rvs[s����z�~�~�4�c�~�:�:�:rMr;)r�r0r*r�)r�r0r�)r�r}r�r$rAc�t��|jdkstj|���sJ�tj||���Sr~)r�r4rr5)rIrr�s  �r8r�z,test_parameter_vectorized.<locals>.statisticis7����v��z�z�R�^�A�v�6�6�z�z�z��w�q�t�$�$�$�$rM)r�rTc�D�|jdksJ�tj|��Sr<)r�r4r5rss r8r�z,test_parameter_vectorized.<locals>.statisticos���v��{�{�{�{��w�q�z�z�rMFrW)r4rBr�r'r	�update)	r�r}�fun_options�common_optionsr��optionsr�r�r�s	       @@r8�test_parameter_vectorizedr�Ssi����

�)�
�
��
/�
/�C�
�Z�Z�R�Z�
 �
 �F�;�;�;�;�;�+1��C�+7�!9�!9�17�	�3�<E�(G�(G�28��'E�'E�	G�G�K�
$�S�)�N�
�%��
"�
"�C��(�#�G��N�N�>�"�"�"�%�%�%�%�%��C�8�)��8�8��8�8�8��C�8�)��8�8��8�8�8�����C�8�)��8�8��8�8�8��C�9�)��9�9��9�9�9�9�9rM)8�numpyr4r1�scipy.statsrrr�
numpy.testingrrr�scipyr	r
�r�scipy._lib._utilr
�scipy.optimizerr9r�r�rLrarnr��tests_R�itemsr��tests_against_itself_1sampr�r�r��tests_against_itself_2sampr�r��xfail_on_32bitr�rrrrr#r-r;r?rFrRrv�filterwarningsrfrhr�r�r�rWrMr8�<module>r�s�������
�
�
�
�E�E�E�E�E�E�E�E�E�E�J�J�J�J�J�J�J�J�J�J�������������)�)�)�)�)�)�)�)�)�)�)�)�������<A�<A�<A�~�����#A�#A�#A�B�B���������+�+�;�;�,�+�C�B�;������#A�#A�#A�B�B�>�>�C�B�>�2�����#A�#A�#A�B�B���������+�+������D�%�=�1�1�(:�(:�2�1�,�+�C�B�(:�V�����#A�#A�#A�B�B�@�@�C�B�@�#�'� �"�"��
����+�W�]�]�_�_�=�=�C�C�>�=�C�.(,�,0�%)�+�+��
7 �7 �7 �t1�1�1�2����+�3�9�9�;�;�=�=�"�"�=�=�"�J(+�,/�1�1������+�3�9�9�;�;�=�=�+�+�=�=�+�\�����G�\�#:�;�;������!�Q��(�(�>�>�)�(�<�;�>�.����E�F�F������#A�#A�#A�B�B������!�Q��(�(�>�>�)�(�C�B�G�F�>�,�����#A�#A�#A�B�B�(�(�C�B�(������#A�#A�#A�B�B�6�6�C�B�6�"2�2�2�&����/�!�T��;�;� � �<�;� �2!�!�!�&�����m�]�%C�D�D�-�-�E�D�-�2�����+�+�+�.�.���������+�+�"�"�,�+�/�.�"�.�.�.�"��������+�+� � �,�+� �4�����#A�#A�#A�B�B�>�>�C�B�>�>�������4�5�5�!>�!>�6�5���!>�Lq$�q$�q$�q$�q$�q$�q$�q$�hL
*�L
*�L
*�L
*�L
*�L
*�L
*�L
*�j0�0�0�*�����N�N�N�P�P�:�:�P�P�:�:�:rM

Youez - 2016 - github.com/yon3zu
LinuXploit