403Webshell
Server IP : 217.160.0.135  /  Your IP : 216.73.217.25
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/numpy/lib/tests/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

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

���c�~���ddlZddlmZmZmZddlmZmZm	Z	m
Z
mZmZm
Z
mZmZmZddlmZddlZGd�d��ZGd�d��ZGd	�d
��ZdS)�N)�	histogram�histogramdd�histogram_bin_edges)
�assert_�assert_equal�assert_array_equal�assert_almost_equal�assert_array_almost_equal�
assert_raises�assert_allclose�assert_array_max_ulp�assert_raises_regex�suppress_warnings)�requires_memoryc��eZdZd�Zd�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!e"d �!��e#j$j%d"�����Z&d#S)$�
TestHistogramc��dS�N���selfs �A/usr/lib/python3/dist-packages/numpy/lib/tests/test_histograms.py�setup_methodzTestHistogram.setup_method�����c��dSrrrs r�teardown_methodzTestHistogram.teardown_methodrrc� �d}tj�|��}t|��\}}t	tj|d���|��ttjddd����\}}t|d��dS)N�dr��axis�
)�np�random�randrr�sum�linspacer)r�n�v�a�bs     r�test_simplezTestHistogram.test_simples�����I�N�N�1�����1�����A��R�V�A�A�&�&�&��*�*�*��2�;�q�"�c�2�2�3�3���A��1�b�!�!�!�!�!rc�r�tgd�ddg��\}}t|dg��t|ddg��tttddgd���tddgd���\}}t	|tjdg����t|tjddg����dS)N�����r/r0r��bins��?�@)rrr�
ValueErrorrr#�arrayr)r�hist�edges�h�es     r�test_one_binzTestHistogram.test_one_bin s�������q�!�f�5�5���e��4�!��'�'�'��5�1�a�&�)�)�)��j�)�a��V�!�<�<�<�<��!�Q��a�(�(�(���1��Q���!��
�
�&�&�&���2�8�R��H�-�-�.�.�.�.�.rc�&�d}tj�|��}t|d���\}}tj|tj|��z��}t
|d��tjd��}gd�}t||d���\}}t|d��ttj|tj|��z��d��t||d���\}}t|gd	���tjd��}d
dddtj
g}t||d���\}}t|gd
���tjgd	�ddtj
gd���\}}t|dd
g��dS)NrT��densityr/r"�rr/r1�r"皙�����?Fr.rr1rB)rCrCrC���?��?��?)r#r$r%rr&�diffr	�arangerr�inf)	rr(r)r*r+�arear4�counts�dmys	         r�test_densityzTestHistogram.test_density*s������I�N�N�1������D�)�)�)���1��v�a�"�'�!�*�*�n�%�%���D�!�$�$�$�
�I�b�M�M��������D�$�/�/�/���1��1�b�!�!�!��R�V�A����
�
�N�+�+�Q�/�/�/���D�%�0�0�0���1��1�l�l�l�+�+�+�
�I�b�M�M���1�a��B�F�#����D�$�/�/�/���1��1�.�.�.�/�/�/��l��L�L�3��R�V�,�d�<�<�<�����V�c�1�X�&�&�&�&�&rc���tjd��dz}t|ddg���\}}t|���d��t|ddg���\}}t|���d��t|ddgd���\}}t|tj|��z���dd	�
��tjd��dz}t|ddg|d���\}}t|tj|��z���d��t|dddg|�
��\}}t||dd���dS)Nr"rEr�	��ranger/T�rRr@���decimal�rR�weightsr@��r4rRrX���)r#rIrrr&r	rH)rr*r;r+�ws     r�
test_outlierszTestHistogram.test_outliersJs]���I�b�M�M�B�����1�a�&�)�)�)���1��Q�U�U�W�W�a� � � ���1�b�'�*�*�*���1��Q�U�U�W�W�a� � � ���1�a�&�$�7�7�7���1��Q������^�0�0�2�2�A�r�B�B�B�B�
�I�b�M�M�B�����1�a�&�!�T�B�B�B���1��a�"�'�!�*�*�n�)�)�+�+�Q�/�/�/����1�a�&�!�<�<�<���1��Q��!�B�$�� � � � � rc���tjd��dz}tjd��dz}ttd��5t	|ddg|d���\}}ddd��dS#1swxYwYdS)	Nr"rE�z
same shape asr/rPTrW)r#rIrr7r)rr*r\r;r+s     r�test_arr_weights_mismatchz'TestHistogram.test_arr_weights_mismatchbs����I�b�M�M�B����I�b�M�M�B���
 ��_�
=�
=�	G�	G��Q�q�!�f�a��F�F�F�D�A�q�	G�	G�	G�	G�	G�	G�	G�	G�	G�	G�	G�	G����	G�	G�	G�	G�	G�	Gs�A*�*A.�1A.c��tjd��dz}t|��\}}ttj|jtj����t|d���\}}ttj|jtj����t|tjdt�����\}}ttj|jtj����t|tjdt�����\}}ttj|jtj����dS)Nr"rETr?�rX)r#rIrr�
issubdtype�dtype�integer�floating�ones�int�float)rr*r;r+s    r�	test_typezTestHistogram.test_typeis����I�b�M�M�B�����|�|���1���
�a�g�r�z�2�2�3�3�3���D�)�)�)���1���
�a�g�r�{�3�3�4�4�4���B�G�B��$4�$4�5�5�5���1���
�a�g�r�z�2�2�3�3�3���B�G�B��$6�$6�7�7�7���1���
�a�g�r�{�3�3�4�4�4�4�4rc��tjgd�tj���}tjgd�tj���}tj||d���\}}}t	|���d��dS)N)g2V��Eq@g��x>fQ�g-��VT5@�rd)g!����@g���S��@g���^z�@rr3�@)r#r8�float32�histogram2drr&)r�x�y�counts_hist�xedges�yedgess      r�test_f32_roundingzTestHistogram.test_f32_roundingxsy���H�8�8�8��
�K�K�K���H�<�<�<�B�J�O�O�O��&(�n�Q���&D�&D�&D�#��V�V��[�_�_�&�&��+�+�+�+�+rc��tjgd�tj���}tj|��\}}t	��5}|�td��}tjgd���\}}tt|��d��t||��t||��ddd��dS#1swxYwYdS)N)r/r/rrlzConverting input from .*)TTFr/)
r#r8�uint8rr�record�RuntimeWarningr�lenr)rr*�int_hist�	int_edges�sup�recr9r:s        r�test_bool_conversionz"TestHistogram.test_bool_conversions��
�H�Y�Y�Y�b�h�/�/�/�� �l�1�o�o���)�
�
 �
 �	1�C��*�*�^�-G�H�H�C��,�':�':�':�;�;�K�D�%���S���1�%�%�%��t�X�.�.�.��u�i�0�0�0�
	1�	1�	1�	1�	1�	1�	1�	1�	1�	1�	1�	1����	1�	1�	1�	1�	1�	1s�A2C�C�Cc���tj�d��}tjd��dz}t	|��\}}t	|d���\}}t	||���\}}t	||d���\}	}
t|dz|��t||	��tjddd��}tjtjd��tjd��f��}t	|tj	d	��|�
��\}}t||��t	gd�dgd
��
��\}}t|gd���t	gd�dgd
�d���\}}t|tjgd���dzdzdz��t	tj	d��gd�gd�d���\}}t|gd���dS)Nr�Tr?rb�rXr@rr"r_�r4rX)r/r0r0r2r2)r2r1r0r/)r2r�rr/)r4rXr@g$@rmrPrA)	r0r/r/r/r/r/r/r/r/)g�������?rCrCg333333�?)
r#r$r%rgrr
r'�concatenate�zerosrIrr8r	)rr)r\r*r+�na�nb�wa�wb�nwa�nwbs           r�test_weightszTestHistogram.test_weights�s����I�N�N�3�����G�C�L�L�1�����|�|���1��1�d�+�+�+���B��1�a�(�(�(���B��Q��4�8�8�8���S�!�!�a�%��,�,�,�!�"�c�*�*�*�
�K��2�r�"�"���N�B�H�Q�K�K������4�5�5���1�2�9�R�=�=�!�<�<�<���B�!�"�a�(�(�(��<�<�<�a����F�F�F���B��2�|�|�|�,�,�,���L�L�q�,�,�,��F�F�F���B�!�"�b�h�|�|�|�&<�&<�s�&B�R�&G�!�&K�L�L�L���I�a�L�L�*�*�*�/�/�/��?�?�?���1�	�A�1�1�1�2�2�2�2�2rc	�r�tjgd���}tjgd���dtjgd���zz}t|gd�|���\}}t|tjddg��dtjdd	g��zz��t|ddd	g|�
��\}}t|tjddg��dtjdd	g��zz��ddlm}tjgd���}tj|d��|d��|d	��g��}t|gd�|���\}}t||d��|d
��g��t|ddd	g|�
��\}}t||d��|d
��g��dS)N�g�������?�@gffffff@)r/r[r0y�?)r0r/r0)rr0r1r�r/r0r1rZr)�Decimalr�)r#r8rr
rVr�)r�valuesrXr�r�r�s      r�test_exotic_weightsz!TestHistogram.test_exotic_weights�s�����/�/�/�*�*���(�:�:�:�&�&��b�h�y�y�y�.A�.A�)A�A���6�	�	�	�7�C�C�C���B�!�"�b�h��1�v�&6�&6��b�h��1�v�>N�>N�9N�&N�O�O�O��6��!�Q���I�I�I���B�!�"�b�h��1�v�&6�&6��b�h��1�v�>N�>N�9N�&N�O�O�O�	$�#�#�#�#�#���/�/�/�*�*���(�G�G�A�J�J����
�
�G�G�A�J�J�?�@�@���6�	�	�	�7�C�C�C���B�!�"�w�w�q�z�z�7�7�1�:�:�&>�?�?�?��6��!�Q���I�I�I���B�!�"�w�w�q�z�z�7�7�1�:�:�&>�?�?�?�?�?rc��tjgd���}tj|ddgd���t|gd���dS)Nr����r"r)rRr4)r#r8rr
)rr�s  r�test_no_side_effectsz"TestHistogram.test_no_side_effects�sL����/�/�/�*�*��
��V�C��9�3�7�7�7�7�!�&�/�/�/�:�:�:�:�:rc��tgddg���\}}t|tjdg����t|tjddg����dS)Nrr/r3�rrr#r8�rr*r+s   r�
test_emptyzTestHistogram.test_empty�sZ����A�q�6�+�+�+���1��1�b�h��s�m�m�,�,�,��1�b�h��1�v�.�.�/�/�/�/�/rc��tjddd���}t|d��ttt|d��dS)NrDr5r��numr�g333333@)r#r'rr�	TypeError�r�valss  r�test_error_binnum_typez$TestHistogram.test_error_binnum_type�sB���{�3���-�-�-���$������i��D�#�6�6�6�6�6rc��tjddd���}t|ddg���ttt|tjdg���ttt|dtjg���dS)NrDr5rr�rG��?rQ)r#r'rrr7�nanrJr�s  r�test_finite_rangezTestHistogram.test_finite_range�so���{�3���-�-�-���$�t�D�k�*�*�*�*��j�)�T�"�&���G�G�G�G��j�)�T�$�r�v��G�G�G�G�G�Grc��tjddd���}ttd��5tj|ddg���ddd��dS#1swxYwYdS)	NrDr5rr�zmax must be larger thanrCg{�G�z�?rQ)r#r'rr7rr�s  r�test_invalid_rangez TestHistogram.test_invalid_range�s����{�3���-�-�-��
 ��-F�
G�
G�	2�	2��L��c�4�[�1�1�1�1�	2�	2�	2�	2�	2�	2�	2�	2�	2�	2�	2�	2����	2�	2�	2�	2�	2�	2s�A�A�Ac�.�tjgd���}tj|dd���\}}|dk}|dd�|}|dd�|}t|||��D],\}}}	t	||k��t	||	k���-dS)N)iQi�i�i&i�ii�ih )r0i��r4rRrr[r/)r#r8r�zipr)
r�arrr9r:�mask�
left_edges�right_edgesrp�left�rights
          r�test_bin_edge_casesz!TestHistogram.test_bin_edge_cases�s����h�=�=�=�>�>���l�3�T��C�C�C���e��a�x���3�B�3�Z��%�
��A�B�B�i��o��!�#�z�;�?�?�	�	�N�A�t�U��A��I�����A��I�����	�	rc��tjgd���}tj|dd���\}}t|dd��dS)N�	rDrDrDr5r6rmrmg@g@����r�r�r[r/)r#r8rr)rr�r9r:s    r�test_last_bin_inclusive_rangez+TestHistogram.test_last_bin_inclusive_range�sL���h�C�C�C�D�D���l�3�R�y�A�A�A���e��T�"�X�q�!�!�!�!�!rc���tjddd���}tjddgddgg��}ttd��5tj||�	��ddd��dS#1swxYwYdS)
NrDr5rr�rrEg333333�?z
must be 1dr3)r#r'r8rr7r)rr�r4s   r�test_bin_array_dimsz!TestHistogram.test_bin_array_dims�s����{�3���-�-�-���x�!�S��C��:�.�/�/��
 ��\�
:�
:�	*�	*��L��D�)�)�)�)�	*�	*�	*�	*�	*�	*�	*�	*�	*�	*�	*�	*����	*�	*�	*�	*�	*�	*s�A+�+A/�2A/c���tjdg��}tjgd�d���}tt��5tj||���\}}ddd��dS#1swxYwYdS)Nr0)r/r1r/�uint64rlr3)r#r8rr7r)rr�r4r9r:s     r� test_unsigned_monotonicity_checkz.TestHistogram.test_unsigned_monotonicity_checks����h��s�m�m���x�	�	�	��2�2�2��
�:�
&�
&�	7�	7��,�s��6�6�6�K�D�%�	7�	7�	7�	7�	7�	7�	7�	7�	7�	7�	7�	7����	7�	7�	7�	7�	7�	7s�A)�)A-�0A-c���tttd�td��D��tjgz��tttd�td��D��tjgz��t	jd�td��D��dgz��t	jd�td��D��dgz��dS)Nc�6�g|]}tjd����S�g�������?�r#r8��.0�is  r�
<listcomp>z9TestHistogram.test_object_array_of_0d.<locals>.<listcomp>� ��9�9�9�!����
�
�9�9�9rr"c�6�g|]}tjd����Sr�r�r�s  rr�z9TestHistogram.test_object_array_of_0d.<locals>.<listcomp>r�rc�6�g|]}tjd����S�rEr�r�s  rr�z9TestHistogram.test_object_array_of_0d.<locals>.<listcomp>� ��7�7�7��b�h�s�m�m�7�7�7rg	�?c�6�g|]}tjd����Sr�r�r�s  rr�z9TestHistogram.test_object_array_of_0d.<locals>.<listcomp>r�rrE)rr7rrRr#rJrs r�test_object_array_of_0dz%TestHistogram.test_object_array_of_0d	s����j��9�9�u�R�y�y�9�9�9�b�f�W�I�E�	G�	G�	G��j��9�9�u�R�y�y�9�9�9�R�V�H�D�	F�	F�	F�	��7�7�U�2�Y�Y�7�7�7�;K�:L�L�M�M�M�
��7�7�U�2�Y�Y�7�7�7�2�$�>�?�?�?�?�?rc�R�tjddtjg��}tjtjtjg��}t��}|�t
��|5t
tt|d���t
tt|d���t|dd���\}}t|�
��d��t|dd���\}}t|�
��d��t|ddg���\}}t|�
��d��t|ddg���\}}t|�
��d��ddd��dS#1swxYwYdS)Nrr/�autor3�rr/r�r0)r#r8r�r�filterryrr7rrr&)r�one_nan�all_nanr}r;r+s      r�test_some_nan_valuesz"TestHistogram.test_some_nan_valuess����(�A�q�"�&�>�*�*���(�B�F�B�F�+�,�,�� �!�!���
�
�>�"�"�"�
�	%�	%��*�i��v�F�F�F�F��*�i��v�F�F�F�F��W�6��@�@�@�D�A�q�������!�$�$�$��W�6��@�@�@�D�A�q�������!�$�$�$��W�A�q�6�2�2�2�D�A�q�������!�$�$�$��W�A�q�6�2�2�2�D�A�q�������!�$�$�$�	%�	%�	%�	%�	%�	%�	%�	%�	%�	%�	%�	%����	%�	%�	%�	%�	%�	%s�6DF�F �#F c���tjdd��}tjgd���}tjgd���}||z}||z}tjd��}t	||���\}}t	|�|��|�|�����\}	}
t	||���\}}t
||��t
|	|��t
||z
�t��|��t
|
�t��|��t
|j|j��t
|
j|��dS)Nz
2000-01-01�D)	rrr/r/r0r1r�r"�)rr0�r�ztimedelta64[D]r3)r#�
datetime64r8rdr�astyperrh)
r�begin�offsetsr4�dates�	date_bins�td�d_count�d_edge�t_count�t_edge�i_count�i_edges
             r�
test_datetimezTestHistogram.test_datetime-sB���
�l�C�0�0���(�8�8�8�9�9���x�
�
�
�&�&�������D�L�	�
�X�&�
'�
'��
$�E�	�:�:�:����#�G�N�N�2�$6�$6�T�[�[��_�_�M�M�M����#�G�$�7�7�7�����W�g�&�&�&��W�g�&�&�&��f�u�n�,�,�S�1�1�6�:�:�:��V�]�]�3�'�'��0�0�0��V�\�5�;�/�/�/��V�\�2�&�&�&�&�&rc��dtj|��jzdz
}tjd|zdzd|zdz
g|���}t	|d���\}}t|d|zdzdd|zdz
g��t|ddg��dS)NrYr/r0r2rlr3r)r#rd�itemsizer8rr)rrd�exponentr�r9r<s      r�do_signed_overflow_boundsz'TestHistogram.do_signed_overflow_boundsFs����r�x����/�/�!�3���h��H���q�(�!�X�+��/�:�%�H�H�H���C�a�(�(�(���a��Q�!�X�+���)�1�a��k�A�o�>�?�?�?��T�A�q�6�"�"�"�"�"rc�<�|�tj��|�tj��|�tj��|�tj��|�tj��dSr)r�r#�byte�short�intc�int_�longlongrs r�test_signed_overflow_boundsz)TestHistogram.test_signed_overflow_boundsMsv���&�&�r�w�/�/�/��&�&�r�x�0�0�0��&�&�r�w�/�/�/��&�&�r�w�/�/�/��&�&�r�{�3�3�3�3�3rc�Z�tj|��j}tjdg|��}tjd|zdg|��}|�|��ddkrdStj|d|���\}}t
|dg��t
|j|��dS)Nr5r6rr/r��r#�finfo�epsr8r�rrrd�r�float_small�float_larger�r�rR�count�x_locs        r�do_precision_lower_boundz&TestHistogram.do_precision_lower_boundTs����h�{�#�#�'���h��u�k�*�*����#��)�S�)�;�7�7���<�<��$�$�Q�'�1�,�,��F��|�C�a�u�=�=�=���u��U�Q�C� � � �	�U�[�+�.�.�.�.�.rc�Z�tj|��j}tjdg|��}tjdd|z
g|��}|�|��ddkrdStj|d|���\}}t
|dg��t
|j|��dS)Nr5rDr[r/r�r�r�s        r�do_precision_upper_boundz&TestHistogram.do_precision_upper_boundes����h�{�#�#�'���h��u�k�*�*����#�s�S�y�)�;�7�7���<�<��$�$�R�(�A�-�-��F��|�C�a�u�=�=�=���u��U�Q�C� � � �	�U�[�+�.�.�.�.�.rc�^�|�||��|�||��dSr)r�r�)rr�r�s   r�do_precisionzTestHistogram.do_precisionvs4���%�%�k�;�?�?�?��%�%�k�;�?�?�?�?�?rc��|�tjtj��|�tjtj��|�tjtj��|�tjtj��|�tjtj��|�tjtj��dSr)r�r#�half�single�double�
longdoublers r�test_precisionzTestHistogram.test_precisionzs������"�'�2�9�-�-�-����"�'�2�9�-�-�-����"�'�2�=�1�1�1����"�)�R�Y�/�/�/����"�)�R�]�3�3�3����"�)�R�]�3�3�3�3�3rc��tgd�ddg��\}}tgd�ddg��}t||��tjgd���}t|dd���\}}t|dd���}t||��t|dd	���\}}t|dd	���}t||��dS)
Nr.r/r0r�r�r�r�r�r�)rrrr#r8)rr9r<r:r�s     r�test_histogram_bin_edgesz&TestHistogram.test_histogram_bin_edges�s����L�L�L�1�a�&�1�1���a�#�L�L�L�1�a�&�9�9���5�!�$�$�$��h�C�C�C�D�D���C�b�	�:�:�:���a�#�C�b�	�B�B�B���5�!�$�$�$��C�f�F�;�;�;���a�#�C�f�F�C�C�C���5�!�$�$�$�$�$rg _�B)�
free_bytesc���tjddg��}d}d}tjd��}tj||||f���}t	t|��td����dS)Ni�r1i�i�>)�sampler4)r/r0)r#r�rIrr�type)rr�xbins�ybins�zbinsr9s      r�test_big_arrayszTestHistogram.test_big_arrays�sm����9�a�.�)�)�������	�%� � ���~�V�5�%��2G�H�H�H���T�$�Z�Z��f���.�.�.�.�.rN)'�__name__�
__module__�__qualname__rrr,r=rNr]r`rjrurr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrr�pytest�mark�slowrrrrrr
s.������
�
�
�
�
�
�	"�	"�	"�/�/�/�'�'�'�@!�!�!�0G�G�G�
5�
5�
5�,�,�,�1�1�1�"3�3�3�:@�@�@�<;�;�;�0�0�0�
7�7�7�H�H�H�2�2�2�	�	�	�"�"�"�
*�*�*�7�7�7�	@�	@�	@�%�%�%�2'�'�'�2#�#�#�4�4�4�/�/�/�"/�/�/�"@�@�@�4�4�4�%�%�%��_��%�%�%��[��/�/���&�%�/�/�/rrc��eZdZdZd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Ze
j�dgd���d
���Zd�ZdS)�TestHistogramOptimBinNumsz]
    Provide test coverage when using provided estimators for optimal number of
    bins
    c���gd�}|D]]}tg|���\}}t|tjdg����t|tjddg�����^dS)N��fd�scott�rice�sturges�doane�sqrtr��stoner3rr/r�)r�estimator_list�	estimatorr*r+s     rr�z$TestHistogramOptimBinNums.test_empty�s��<�<�<��(�	4�	4�I��R�i�0�0�0�D�A�q��q�"�(�A�3�-�-�0�0�0��q�"�(�A�q�6�"2�"2�3�3�3�3�	4�	4rc���ddddddddd�dddddd	dd
d�dddd
ddddd�d�}|���D]�\}}tjdd|dzdz��}tjdd|dzdz��}tj||f��}|���D]P\}}tj||��\}	}
tt
|	��|d�||������Q��dS)z�
        Straightforward testing with a mixture of linspace data (for
        consistency). All test values have been precomputed and the values
        shouldn't change
        r2rYr�r0r�r"��rP��#��Gr���2i�i�r�r[r�r/r1�*For the {0} estimator with datasize of {1}��err_msgN)�itemsr#r'r�rrrz�format)r�
basic_test�testlen�expectedResults�x1�x2rpr�numbinsr*r+s           rr,z%TestHistogramOptimBinNums.test_simple�se��$%��A�1�&'��A��K�K�#$��B�2�&(�"�b�1�N�N�#%��B�2�&(�"�b�2�O�O�	P�P�
�)3�(8�(8�(:�(:�		P�		P�$�G�_���S�"�g��l�Q�&6�7�7�B���Q��G�q�L�1�$4�5�5�B����B�x�(�(�A�&5�&;�&;�&=�&=�
P�
P�"�	�7��|�A�y�1�1���1��S��V�V�W�74�4:�F�9�g�4N�4N�P�P�P�P�P�
P�
		P�		Prc
�h�dddddddd�dddddddd�dddddddd�d�}|���D]~\}}tj|��}|���D]P\}}tj||��\}}t	t|��|d�||������Q�dS)	z�
        Smaller datasets have the potential to cause issues with the data
        adaptive methods, especially the FD method. All bin numbers have been
        precalculated.
        r/)rrrrrrrr0r1�r/r0r1r*r+N)r-r#rIrrrzr.)	r�	small_datr0r1�testdatr�expbinsr*r+s	         r�
test_smallz$TestHistogramOptimBinNums.test_small�s�� !�1�a�A�"#�Q��<�<� �1�a�A�"#�Q��<�<� �1�a�A�"#�Q��<�<�	=�=�	�)2���(9�(9�	P�	P�$�G�_��i��(�(�G�&5�&;�&;�&=�&=�
P�
P�"�	�7��|�G�Y�7�7���1��S��V�V�W�74�4:�F�9�g�4N�4N�P�P�P�P�P�
P�	P�	Prc�T�gd�}|D] }tttgd�|���!dS)zS
        Check a Value Error is thrown when an unknown string is passed in
        )�mad�freeman�
histograms�IQRr6N)rr7r)r�
check_listrs   r�test_incorrect_methodsz0TestHistogramOptimBinNums.test_incorrect_methods�sG��=�<�<�
�#�	G�	G�I��*�i����I�F�F�F�F�	G�	Grc	��tjd��}ddddddddd�}|���D]O\}}tj||��\}}t	t|��|d�|������PdS)z�
        Check that methods handle no variance in data
        Primarily for Scott and FD as the SD and IQR are both 0 in this case
        rr/rz{0} estimator, No Variance testr+N)r#rgr-rrrzr.)r�
novar_dataset�novar_resultdictrr4r*r+s       r�test_novariancez)TestHistogramOptimBinNums.test_novariance�s���
�����
�"#�a��q�%&��1�q�J�J��#3�"8�"8�":�":�	?�	?��I�w��<�
�y�9�9�D�A�q���Q����3,�,2�F�9�,=�,=�
?�
?�
?�
?�
?�	?�	?rc��tjd��}d|dd�<d|dd�<t|d��}t|tjddd����t|d	��}t|tjddg����t|d
��}t|tjddd����dS)zu
        Check when IQR is 0, but variance exists, we return the sturges value
        and not the fd value.
        i�rNr1r���r�r"rr)r#rgrrr'r8)r�lim_var_data�
edges_auto�edges_fd�
edges_sturgess     r�test_limited_variancez/TestHistogramOptimBinNums.test_limited_variance�s���
�w�t�}�}����R�a�R����R�S�S��(��v�>�>�
��Z���Q��R�!8�!8�9�9�9�&�|�T�:�:���X�r�x��C��1�1�2�2�2�+�L�)�D�D�
��]�B�K��3��$;�$;�<�<�<�<�<rc�2�tjddd��}tjtjddd��|f��}dddd	d
�}|���D]:\}}tj||��\}}tt
|��|���;dS)a�
        Check the FD, Scott and Doane with outliers.

        The FD estimates a smaller binwidth since it's less affected by
        outliers. Since the range is so (artificially) large, this means more
        bins, most of which will be empty, but the data of interest usually is
        unaffected. The Scott estimator is more affected and returns fewer bins,
        despite most of the variance being in one area of the data. The Doane
        estimator lies somewhere between the other two.
        r�r"r)i�������r��r_rB)rrrrN)r#r'�hstackr-rrrz)r�xcenter�outlier_dataset�outlier_resultdictrr4r*r+s        r�test_outlierz&TestHistogramOptimBinNums.test_outliers����+�c�2�r�*�*���)�R�[��t�Q�%?�%?��$I�J�J��$&��R�!�L�L��"4�":�":�"<�"<�	*�	*��I�w��<���;�;�D�A�q���Q����)�)�)�)�	*�	*rc���d���fd�td��D��}ttj|d���dz
��}t	|gd�d�	��d
S)zQVerify that Scott's rule and Stone's rule converges for normally distributed datac� �tj�|��}|�dd|���}t	tj|d��d��t	tj|d��d��}}|||zzS)Nrr0)�loc�scale�sizerr)r#r$�RandomState�normalrzr)�seedrY�rngrpr*r+s      r�nbins_ratiozBTestHistogramOptimBinNums.test_scott_vs_stone.<locals>.nbins_ratiosx���)�'�'��-�-�C��
�
�q���
�5�5�A��r�|�A�w�/�/��2�3�3�S���a��9Q�9Q�RS�9T�5U�5U�q�A���A��;�rc����g|]P���fd�tjddd�������t��D����QS)c�(��g|]}��|����Srr)r�rYr^r\s  ��rr�zLTestHistogramOptimBinNums.test_scott_vs_stone.<locals>.<listcomp>.<listcomp>s%���o�o�o�4�{�{�4��&�&�o�o�orr"rr2)�start�stopr�)r#�	geomspace�roundr�rh)r�r\r^s @�rr�zATestHistogramOptimBinNums.test_scott_vs_stone.<locals>.<listcomp>so����%�%�%��p�o�o�o�o�2�<�b�s�XY�3Z�3Z�3Z�3`�3`�3b�3b�3i�3i�jm�3n�3n�o�o�o�%�%�%rr"rr rE)g333333�?g
ףp=
�?g{�G�z�?g���Q��?r0rUN)rR�absr#�meanr	)r�ll�avgr^s   @r�test_scott_vs_stonez-TestHistogramOptimBinNums.test_scott_vs_stones����	�	�	�%�%�%�%���)�)�%�%�%���"�'�"�1�%�%�%��+�,�,���C�!9�!9�!9�1�E�E�E�E�E�Erc	�:�ddddddd�ddddddd�d	d	d
dd	dd�d�}|���D]�\}}tjd
d|dzdz��}tjdd|dzdz��}tjdd|��}tj|||f��}|���D]k\}}	tj||d���\}
}d�|��}|d�|��z
}t
t|
��|	|����l��dS)z�
        Straightforward testing with a mixture of linspace data (for
        consistency). Adding in a 3rd mixture that will then be
        completely ignored. All test values have been precomputed and
        the shouldn't change.
        rYrTr&)rrrrr�rr!� r��P�!�E�r(r�r[r�r0r/r"r1rNi���)i��r�rQzFor the {0} estimatorz with datasize of {0}r+N)r-r#r'rPrr.rrz)
rr/r0r1r2r3�x3rprr4r*r+�msgs
             r�test_simple_rangez+TestHistogramOptimBinNums.test_simple_range%su��$%��B�(*�B��D�D�#%��B�(*�B��E�E�#%��B�(*�B��E�E���
�)3�(8�(8�(:�(:�	;�	;�$�G�_���S�"�g��l�Q�&6�7�7�B���Q��G�q�L�1�$4�5�5�B���T�3��0�0�B��	�2�r�2�,�'�'�A�&5�&;�&;�&=�&=�
;�
;�"�	�7��|�A�y�)�D�D�D���1�-�4�4�Y�?�?���.�5�5�g�>�>�>���S��V�V�W�c�:�:�:�:�:�	
;�	;�	;rr4)r�rrrrrrc�(�tjgd�tj���}tj||���\}}tj|�tj��|���\}}t
||��t
||��dS)N)���r�rlr3)r#r8�int8rr��int32r)rr4r*r9r:�hist32�edges32s       r�test_signed_integer_dataz2TestHistogramOptimBinNums.test_signed_integer_dataDs���
�H�\�\�\���1�1�1���l�1�4�0�0�0���e��,�q�x�x���'9�'9��E�E�E�����4��(�(�(��5�'�*�*�*�*�*rc	�\�gd�}|D]$}tttgd�|gd�����%dS)z=
        Check that weighted data raises a TypeError
        )rrrrr�r6rbN)rr�r)rrrs   r�test_simple_weightedz.TestHistogramOptimBinNums.test_simple_weightedNsX��D�C�C��'�	8�	8�I��)�Y�	�	�	�#�Y�Y�Y�
8�
8�
8�
8�
8�	8�	8rN)r
rr�__doc__r�r,r:rArErLrTrirrrr�parametrizerzr|rrrrr�s��������
4�4�4�P�P�P�4P�P�P�(G�G�G�?�?�?�=�=�=�$*�*�*�(F�F�F� ;�;�;�>�[���V�&B�&B�&B�C�C�+�+�C�C�+�8�8�8�8�8rrc�h�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�ZdS)�TestHistogramddc	���tjgd�gd�gd�gd�gd�gd�g��}t|ddd	gd
dgd
dgg���\}}tjgd
�gd�gd�ggd
�gd�gd�gg��}t||��gd�gd�gd�g}t||d���\}}t	tj||dzk����t|ddd	gd
dgd
dggd���\}}tjgd�gd�gd�ggd�gd�gd�gg��}t
||dzd��d�tj|dd	���D��}t|ddd gd
dgd
d gg�!��\}}tjd
d
gd
d
gd
d
ggd
d	gd
d
gd	d
ggd
d	gd
d
gd
d
ggd
d
gd
d
gd
d
ggg��}t||��tjd"��}d#|ttd$����ttd$����ttd$����f<ttjd$��tjd$��tjd$��gd$��\}}t||��dS)%N)r�rErF)r�rFr�)r�r�rE)rErErF)rErFr�)rEr�r�)r0r1r1r[r/rr1rQ)rr/r)rrr/)r/rr)rtrr0)rr/r0r1T�r4r@g(@)r0r1r2r2rS)rr/rr)rrr/r)r/rrrg@c�6�g|]}tj|����Sr)r#�squeeze)r�rqs  rr�z/TestHistogramdd.test_simple.<locals>.<listcomp>qs ��;�;�;�q�R�Z��]�]�;�;�;rr )r2r1r0rtr0r�)r�r�r�r5r�)r#r8rrr�allr
�splitr��listrRrI)rrp�Hr:�answer�ed�z�Zs        rr,zTestHistogramdd.test_simpleZs���H�n�n�n�o�o�o�~�~�~�$�n�n�o�o�o����H�
I�
I���q�)�')�1�g��1�v��1�v�%>�@�@�@���5���I�I�I�y�y�y�)�)�)�<�%�I�I�y�y�y�)�)�)�<�>�?�?���1�f�%�%�%��j�j�,�,�,����
5���q�r�4�8�8�8���5����q�F�S�L�(�)�)�*�*�*��q�)�')�1�g��1�v��1�v�%>�'+�-�-�-���5���L�L�L�,�,�,����E�(�L�L�,�,�,����E�G�H�H��!�!�V�b�[�!�4�4�4�
<�;�B�H�Q���$:�$:�$:�;�;�;���
�I�r�1�g��1�v��1�v�%>�@�@�@���5���Q��F�Q��F�Q��F�3���F�Q��F�Q��F�3���F�Q��F�Q��F�3���F�Q��F�Q��F�3�5�6�6��	�1�f�%�%�%��H�Y����<>��$�u�Q�x�x�.�.�$�u�Q�x�x�.�.�$�u�Q�x�x�.�.�
8�9���	�!���b�i��l�l�B�I�a�L�L�I�1�M�M���5��1�a� � � � � rc��d}tj�dd��}|D]-}t||��\}}t	|j|k���.dS)N))r�r2rB)rBr2r�)r�rBr2)r2rBr�)rBr�r2)r2r�rBr"r1�r#r$r%rr�shape�rr4�rr+r�r:s      r�
test_shape_3dzTestHistogramdd.test_shape_3dsa�����I�N�N�2�q�!�!���	"�	"�A�"�1�a�(�(�H�A�u��A�G�q�L�!�!�!�!�	"�	"rc��d}tj�dd��}|D]-}t||��\}}t	|j|k���.dS)N))r�r2r�rB)r2r�r�rB)r�rBr2r�)r�rBr�r2)r�r�rBr2)r2rBr�r�)rBr�r�r2)r�r�r2rB)r�r2rBr�)rBr2r�r�)rBr�r�r2)r2rBr�r�)r2r�r�rB)r�r2rBr�)r�r�r2rB)rBr�r2r�)rBr�r2r�)r2r�rBr�)r2r�rBr�)r�rBr2r�)r�r2r�rB)r�rBr�r2)rBr2r�r�)r�r�rBr2r"r2r�r�s      r�
test_shape_4dzTestHistogramdd.test_shape_4d�sd��H��
�I�N�N�2�q�!�!���	"�	"�A�"�1�a�(�(�H�A�u��A�G�q�L�!�!�!�!�	"�	"rc��tj�dd��}t|��\}}t|d���\}}t|tjd�����\}}t||��t|tjd��dzd���\}}t||��t|tjdt��dz���\}}t|d|z��dS)Nrr0Tr?rbr�)r#r$r%rrgrrh)rr)r9r:�n_hist�w_hists      rr�zTestHistogramdd.test_weights�s����I�N�N�3��"�"��!�!�n�n���e�#�A�t�4�4�4�
���#�A�r�w�s�|�|�<�<�<�
����6�4�(�(�(�#�A�r�w�s�|�|�a�/?��N�N�N�
����6�6�*�*�*�#�A�r�w�s�C�/@�/@�1�/D�E�E�E�
����6�1�t�8�,�,�,�,�,rc��tjdt��}t|d���\}}t	|dtjgd�����dS)N)r"r0r0r3r)r�rDrE)r#r�rhrrr8)rrpr9r:s    r�test_identical_samplesz&TestHistogramdd.test_identical_samples�sQ���H�W�c�"�"��!�!�!�,�,�,���e��5��8�R�X�o�o�o�%>�%>�?�?�?�?�?rc��tgggddgddgf���\}}t|tjdgg����tjggggd���\}}t|tjd����dS)Nrr/r3rDr0)r0r0r0)rr
r#r8r�r�s   rr�zTestHistogramdd.test_empty�s����B��8�A�q�6�A�q�6�*:�;�;�;���1��Q���2�$�� 0� 0�1�1�1��~�r�2�r�l��3�3�3���1��Q���� 3� 3�4�4�4�4�4rc
��tjd���dd��}tttj|gd����tttj|gd����tttj|dddgd�g���t
tj|dddgd	�g�����dS)
NrYr0r2)r[r0r2r�r3)r/g�G�z��?r/r/r/)r/r0r1���r.)r#rI�reshaperr7rr)rrps  r�test_bins_errorsz TestHistogramdd.test_bins_errors�s���
�I�a�L�L� � ��A�&�&���j�"�.�!�-�-�-�H�H�H�H��j�"�.�!�/�/�/�J�J�J�J�������A�q�-�-�-�0H�	J�	J�	J�	J����q��1�a����'>�?�?�?�@�@�@�@�@rc
�x�tjd���5tjd���dd��}tjddgddgddgg��}tj|dtjddgg�	��\}}t||��tj|dtjd
dtjg��g�	��\}}t||��tj|dtjdtjgg�	��\}}t||��ddd��dS#1swxYwYdS)N�ignore)�invalidrBr1r0r/rr"r3r[)r#�errstaterIr�r8rrJr)rrp�expectedr;r<s     r�test_inf_edgeszTestHistogramdd.test_inf_edges�si��
�[��
*�
*�
*�	)�	)��	�!���$�$�Q��*�*�A��x�!�Q��!�Q��!�Q�� 8�9�9�H��>�!�1���w��2�.>�*?�@�@�@�D�A�q��A�x�(�(�(��>�!�1�b�h��A�r�v��.G�.G�*H�I�I�I�D�A�q��A�x�(�(�(��>�!�1���w��2�6�.B�*C�D�D�D�D�A�q��A�x�(�(�(�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)����	)�	)�	)�	)�	)�	)s�DD/�/D3�6D3c�v�dg}gd�g}t||���\}}t|ddk��t|ddk��dg}gd�g}t||���\}}t|ddk��t|ddk��dg}gd�g}t||���\}}t|ddk��t|ddk��d	g}gd�g}t||���\}}t|ddk��t|ddk��dS)
Ng�G�����?)rDrEr5r3rrDr/r5g8��?gq���h�?)rr)rrpr4r9�_s     r�test_rightmost_binedgez&TestHistogramdd.test_rightmost_binedge�s\��
�N��������a�d�+�+�+���a���Q��3�������Q��2�
����
�E��������a�d�+�+�+���a���Q��3�������Q��2�
����
�N��������a�d�+�+�+���a���Q��3�������Q��3�����
�H��������a�d�+�+�+���a���Q��3�������Q��3������rc	�8�tj�d��}t|ddgddgddgg���ttt|ddgddgdtjgg���ttt|ddgtjdgddgg���dS)N)rr1rDr5rGr�rErQ)r#r$rrr7rJr�r�s  rr�z!TestHistogramdd.test_finite_range�s����y����)�)���D�#�s��d�D�\�D�#�;� G�H�H�H�H��j�+�t�!�3�Z�$����b�f�~�F�	H�	H�	H�	H��j�+�t�!�3�Z�"�&�$��$���E�	G�	G�	G�	G�	G�	Grc��tjgd���}tjgd���}tjgd���}d}t||f||f���\}}tjdgdgg��}t||��dS)z: Test that adjacent entries in an edge array can be equal )rr/r0)rr0r0r/r3r6r5N�r#r8rr)rrprq�x_edges�y_edgesr9r:�
hist_expecteds        r�test_equal_edgesz TestHistogramdd.test_equal_edges�s����H�Y�Y�Y�����H�Y�Y�Y�����(�9�9�9�%�%����!�1�a�&���/A�B�B�B���e���
�D�
�D�"
���
�	�T�=�)�)�)�)�)rc�"�tjgd���}|dz}tjgd���}|dz}t||f||f���\}}t|dj|j��t|dj|j��dS)z< Test that if an edge array is input, its type is preserved )rr"r�r")rr�rTr�r3rr/N)r#r8rrrd)rrprqr�r�r9r:s       r�test_edge_dtypezTestHistogramdd.test_edge_dtype�s����H�[�[�[�!�!��
��F���(�>�>�>�*�*���B�,��!�1�a�&���/A�B�B�B���e��U�1�X�^�W�]�3�3�3��U�1�X�^�W�]�3�3�3�3�3rc��d}tjdgtj��}tjddgtj��}||z}||z}t||f||f���\}}t	|dd��dS)Nlrr[r/r3)rr)r#r8�int64rr)r�bigrpr�rqr�r9r:s        r�test_large_integersz#TestHistogramdd.test_large_integers�s~�����H�a�S�"�(�#�#���(�B��8�R�X�.�.���!�G����-��!�1�a�&���/A�B�B�B���e��T�$�Z��#�#�#�#�#rc���tjgd���}tjgd���}tjddgddgg��}tjdgdgdzzdgdzzdgdzz��}tjdgdgdzzdgdzzdgdzz��}t||f||f���\}}t||��t||f||fd�	��\}}t|d
��dS)N)rr0rY)rrBrYr1rPr/r�r3Tr�g�?r�)rr�r��relative_areasrprqr9r:s        r�test_density_non_uniform_2dz+TestHistogramdd.test_density_non_uniform_2ds���(�9�9�9�%�%���(�9�9�9�%�%����
��F�
��F�#����

�H�a�S�A�3�q�5�[�A�3�q�5�(�A�3�q�5�0�1�1���H�a�S�A�3�q�5�[�A�3�q�5�(�A�3�q�5�0�1�1��"�1�a�&���/A�B�B�B���e��T�>�*�*�*�"�1�a�&���/A�4�P�P�P���e��T�9�%�%�%�%�%rc��tjd��}tjgd���}t||d���\}}t	|f|fd���\}}t||��t||d��dS)Nr"rATr?r)r#rIr8rrr)rr)r4r9r:�hist_dd�edges_dds       r�test_density_non_uniform_1dz+TestHistogramdd.test_density_non_uniform_1d!s����I�b�M�M���x�(�(�(�)�)����4��6�6�6���e�'���t�g�t�D�D�D�����T�7�#�#�#��U�H�Q�K�(�(�(�(�(rN)r
rrr,r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrr�r�Xs�������#!�#!�#!�J"�"�"�"�"�"�	-�	-�	-�@�@�@�
5�5�5�A�A�A�
)�
)�
)� � � �.G�G�G�*�*�*�	4�	4�	4�
$�
$�
$�&�&�&�6)�)�)�)�)rr�)�numpyr#�numpy.lib.histogramsrrr�
numpy.testingrrrr	r
rrr
rr�numpy.testing._private.utilsrrrrr�rrr�<module>r�sb������L�L�L�L�L�L�L�L�L�L�������������������������
9�8�8�8�8�8�
�
�
�
�L/�L/�L/�L/�L/�L/�L/�L/�^y8�y8�y8�y8�y8�y8�y8�y8�xP)�P)�P)�P)�P)�P)�P)�P)�P)�P)r

Youez - 2016 - github.com/yon3zu
LinuXploit