403Webshell
Server IP : 209.209.40.120  /  Your IP : 216.73.217.112
Web Server : Microsoft-IIS/10.0
System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586
User : NEWWWW$ ( 0)
PHP Version : 8.3.30
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  C:/Python312/Lib/site-packages/pandas/tests/groupby/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/Python312/Lib/site-packages/pandas/tests/groupby/__pycache__/test_categorical.cpython-312.pyc
�

/	�g"���ddlmZddlZddlZddlZddlmZmZmZm	Z	m
Z
mZmZddl
mZddlmZddlmZej(fd�Zidej(�dej(�d	d�d
ej(�dej(�dej(�d
ej(�dej(�dej(�dej(�dej(�dej(�dej(�dd�dej(�dej(�dej(�dej(ej(dej(d��Zd�Zd�Zd�Zd�Zej6j9dddg�d ��Zd!�Zd"�Zd#�Z d$�Z!ej6j9d%d&gd'�egd(�d&�)�fd&d*ggd+�egd(�d&�)�e	gd,��gfd&d-ggd.�egd(�d&�)�egd(�d&�)�gfg�ej6j9d/ddg�d0���Z"d1�Z#d2�Z$d3�Z%ej6j9dddg�ej6j9d4ddg�ej6j9d5ddg�d6����Z&d7�Z'd8�Z(d9�Z)d:�Z*d;�Z+ej6j9d<d=gee,d>��dd?gd@dAgdB�fee,d>��j[dC��dAgdd@gdB�fee,dD��dd?gd@dAgdB�fg�dE��Z.dF�Z/dG�Z0dH�Z1ej6j9dIddJdgfddKdLgfddKdgfddJdLgfg�dM��Z2dN�Z3dO�Z4dP�Z5ej6j9dddg�dQ��Z6ej6j9dddg�dR��Z7dS�Z8dT�Z9dU�Z:ej6j9dVdee
jvegdW�dX�Y�gdZ�gd&d*g�[�gd(�d\�]�fdeegdW�dX�Y�gdZ�gd(�d^��fg�d_��Z<ej6j9d`dej(ejzg�da��Z>ej~db��Z@ej6j9dcdddeg�df��ZAej6j9dcdddeg�ej6j9d4ddg�dg���ZBej6j9dhde
jve	digd>zdjgd>zzdXdk�l�e	gdm�dXdn�l�e	ddgd>z�g�gdo�fde
j�edidjgd�p�egdq�d�p�e	ddg�ggdr��[�dAdAd>d>ej(ej(d@d@ej(ej(d?d?gfde
j�edidjgd�p�egdq�d�p�e	ddg�ggdr��[�dAdAd>d>ej(ej(d@d@ej(ej(d?d?gfg�ds��ZDdt�ZEej6j9dugdv�gdw�g�dx��ZFdy�ZGdz�ZHd{�ZId|�ZJd}�ZKej6j9d4ddg�d~��ZLd�ZMej6j9d�ej�gdW�fej�gdZ�fg�d���ZPd��ZQej6j9d�ddg�d���ZRd��ZSd��ZTd��ZUd��ZVd��ZWej6j9d�ddg�d�eXd4eYfd���ZZej6j9d�ddg�d�eXd4eYfd���Z[d��Z\ej6j9d�ddg�d���Z]d��Z^d��Z_d��Z`ej6j9d�gd���ej6j9dddg�d����Zaej6j9d�d�d�g�ej6j9dddg�d����Zbej6j9d�gd���ej6j9d�d�d�g�ej6j9dddg�d�����Zcej6j9d�gd���ej6j9d�gd���ej6j9dddg�d�����Zdej6j9d�gd���d���Zeej6j9d�d&d*d&d*gg�ej6j9d�d&d*d&d*gg�d����Zfej6j9d/ddg�ej6j9d�d�gd�d-gg�d����Zgy)��)�datetimeN)�Categorical�CategoricalIndex�	DataFrame�Index�
MultiIndex�Series�qcut)�
SeriesGroupBy)�get_groupby_method_argsc��d�}tjt||�|��}|j||��j	�S)zpReindex to a cartesian production for the groupers,
    preserving the nature (Categorical) of each grouper
    c���t|ttf�rJ|j}tjtjt|��||j��}|S)N��
categories�ordered)	�
isinstancerrr�
from_codes�np�arange�lenr)�ars  �GC:\Python312\Lib\site-packages\pandas/tests/groupby/test_categorical.py�fz)cartesian_product_for_groupers.<locals>.fsJ���a�*�K�8�9����J��&�&��	�	�#�j�/�*�z�1�9�9��A�����names��
fill_value)r�from_product�map�reindex�
sort_index)�result�argsrrr�indexs      r�cartesian_product_for_groupersr&s=��
�
�#�#�C��4�L��>�E��>�>�%�J�>�7�B�B�D�Dr�all�any�count�corrwith�first�idxmax�idxmin�last�max�mean�median�min�nth�nunique�prod�quantile�sem)�size�skew�std�sum�varc���t|jd�}d�}|j|d��jj	|�}|j
jddk(sJ�y)N�c��|j�|j�|j�|j�d�S)N�r2r/r)r0r@)�groups r�	get_statsz2test_apply_use_categorical_name.<locals>.get_statsIs0���9�9�;��9�9�;��[�[�]��J�J�L�	
�	
rF��observedr�C)r
rE�groupby�D�applyr%r)�df�catsrBr#s    r�test_apply_use_categorical_namerKFsX������a�=�D�
��Z�Z��u�Z�
-�
/�
/�
5�
5�i�
@�F��<�<���a� �C�'�'�'rc	��tgd�gd�d��}tgd�|d��}ttd�dd�	�}td
ddd
tj
gi|��}|j
dd��j�}tj||�tgd�gd�d��}tgd�gd�d��}t||gd�d��}|j
dd��}	tgd�dd�	�}
tdtgd�|
��i�}|	jd��}tj||�tddgddgddggddg��}t|j�|d<|j
dgd��}|jd ��}tj||dg�|jd�}|jd!dg}tj||�d"�}
d#}tj t"|�$�5|j%|
�}ddd�|jd!dgj'�}t)ddgd�%�|_|rd&nt,}|dj/|�|d<tj||�td
gd'�i�}t1j2|j4gd(��)�}d*}tj t6|�$�5|j4j
|d��jt�}ddd�tj8||d
�tj8|j4j
|d��jd+��|d
�d,}tj t6|�$�5|j
|d��jt�}ddd�|d
g}tj||�|j
|d��}|jd-��}tj||d
g�|jd.��}d/}tj t6|�$�5|jt:�}ddd�|jtj<j>�}|jd0��}tj||d
gd�1�tj|d
gd�1�tj||d
g�tj||d
g�tj8|j4j
|d��jAtjB�|d
�tj|j
|d��jAtjB�|�td
gd2�i�}t1j2|j4gd3��)�}d*}tj t6|�$�5|j4j
|d��jt�}ddd�tj8||d
�tj8|j4j
|d��jd4��|d
�d,}tj t6|�$�5|j
|d��jt�}ddd�|d
g}tj||�tj|j
|d��jd5��|d
g�td
gd6�i�}t1j2|j4gd7�ttd���8�}|j
|d��j%tD�}t|jFjH|jFjJ�9�}tgd6�|��}d
|j*_&tj8||�gd:�}tjNjQd�jSd!d
d;�<�}tjT||d�9�}ttjNjQd�jWd=��}|j
|d��j�}|j
t	jX|�d��j�}t||jHd��}
|j[|
�}tj||�|j
|d��}|j]�}|j^ja�}t	jX|�jc|�}|jc|�}t|dgd:��>�}|j
|dd�?�j]�}tj||�tjTt	jdd
�jgd@�|d�9�}t|�}tjh|jkd�A�j*jmd!�|�t)gdB�d
z�}tjh|jkd�A�j*jmd�|�y#1swY���xYw#1swY���xYw#1swY��xYw#1swY��qxYw#1swY���xYw#1swY��xYw)CN�	rrr�brNrN�crOrO�rrNrO�dTr�	�rSrS�rTrT�r>��rrN�abcdrN��namerrrSrTr>�r%FrC�rrrNrN�rrN�z�rOrQrOrQ�rOrQ�y�rSrTrUr>��A�B�valuesrdrf)rU�r��numeric_onlyzJohn P. Doez	Jane Dove�	person_id�person_name��columnsc��|S�N���xs r�<lambda>ztest_basic.<locals>.<lambda>us��1�rrc�>�|jd�jdS)Nrkr)�drop_duplicates�ilocrqs rrztest_basic.<locals>.f|s��� � ��/�4�4�Q�7�7r�7DataFrameGroupBy.apply operated on the grouping columns��match�rZzstring[pyarrow_numpy])rV��)r�
���()�bins�using SeriesGroupBy.sumc�,�tj|�Sro�rr;��xss rrsztest_basic.<locals>.<lambda>����R�V�V�B�Z�rzusing DataFrameGroupBy.sumc�0�tj|d��S�Nr��axis�rr/r�s rrsztest_basic.<locals>.<lambda>�s��b�f�f�R�a�&8�rc�0�tj|d��Sr�r�r�s rrsztest_basic.<locals>.<lambda>�s��r�v�v�b�q�'9�rzusing DataFrameGroupBy.maxc�@�tjj|�Sro)r�maximum�reducer�s rrsztest_basic.<locals>.<lambda>�s��r�z�z�'8�'8��'<�r)�check_dtype)rVr{r|���)i����rr}r~rr�c�,�tj|�Sror�r�s rrsztest_basic.<locals>.<lambda>�r�rc�,�tj|�Sror�r�s rrsztest_basic.<locals>.<lambda>�s��2�6�6�"�:�r)rSrrr�rrSrTrUr>)�labels�r��foo�bar�baz�qux�d�r8�r�r>)rr��sortrD���future_stack�r)r0r:r2z25%z50%z75%r/)7rrr�listr�nanrFr0�tm�assert_frame_equalr	r;rk�	transformrurv�assert_produces_warning�DeprecationWarningrH�copyrr%�object�astype�pd�cutr�
FutureWarning�assert_series_equalr/r�r��filterr'rrfrrrZ�random�default_rng�integersr�standard_normal�asarrayr!�describe�codes�argsort�taker�repeat�assert_index_equal�stack�get_level_values) �using_infer_stringrJ�data�	exp_index�expectedr#�cat1�cat2rI�gb�exp_idxrr�gr�msg�dtyperO�gbc�result2�result3�result4�result5�levelsr��grouped�desc_result�idx�
ord_labels�ord_data�exp_cats�expc�exps                                 r�
test_basicr�Us����5�'���D�
�6�T�B�C�D� ��f��C��F�I��#��1�a����0�1��C�H�
�\�\�#��\�
.�
3�
3�
5�F����&�(�+��+��QU�V�D��+��QU�V�D�	��D�L�A�	B�B�
���C�%��	(�B���S�$�G�G��(�F�9�G�$D�E�F�H�
�V�V��V�
&�F����&�(�+�	�
�]�	�a��-��=�/A�B��m�,�	�A�#�1�=�=�1�A�m��	�	�	�;�-�%�	�0�A�
�[�[��
%�F����&�!�]�O�"4�5�
�
�
�}�
-�F��v�v�q�!�f�~�H����&�(�+�8�D�C�	�	#�	#�$6�c�	B����������v�v�q�!�f�~�"�"�$�H��A�q�6��4�H�N�'9�#�v�E�&�}�5�<�<�U�C�H�]�����&�(�+�
�C��%�	&�B�
���r�t�t�-�.�A�
#�C�	�	#�	#�M��	=�@������a�%��0�:�:�3�?��@����6�2�c�7�+����
�����Q���'�1�1�2G�H�"�S�'��'�C�	�	#�	#�M��	=�>����A���.�8�8��=��>��3�%�y�H����&�(�+�
�*�*�Q��*�
'�C�
�]�]�8�
9�F����&�"�c�U�)�,��m�m�9�:�G�
&�C�	�	#�	#�M��	=�%��-�-��$��%��m�m�B�J�J�-�-�.�G��m�m�<�=�G����'�2�s�e�9�%�@����'�2�s�e�9�%�@����'�2�s�e�9�-����'�2�s�e�9�-����2�4�4�<�<��E�<�:�A�A�"�&�&�I�2�c�7�S����"�*�*�Q��*�7�>�>�r�v�v�F��K�
�C��)�	*�B�
���r�t�t�2�3�A�
#�C�	�	#�	#�M��	=�@������a�%��0�:�:�3�?��@����6�2�c�7�+����
�����Q���'�1�1�2G�H�"�S�'��'�C�	�	#�	#�M��	=�>����A���.�8�8��=��>��3�%�y�H����&�(�+����
�
�
�1�u�
�%�/�/�0E�F��C�5�	��

�C��&�	'�B�
���r�t�t�_�[��f��-F�G�A�
�Z�Z��E�Z�
*�
0�
0��
5�F� ����!4�!4�a�h�h�>N�>N�O�I��l�)�4�H��H�N�N�����6�8�,�*�F��I�I�!�!�!�$�-�-�a���-�=�E��!�!�%���>�D��R�Y�Y�*�*�1�-�=�=�h�G�H�D�
�\�\�$��\�
/�
4�
4�
6�F��|�|�B�J�J�t�,�u�|�=�B�B�D�H��v�$�/�/�4�P�G�����(�H����&�(�+��l�l�4�%�l�0�G��"�"�$�K�
�*�*�
�
�
�C����D�!�&�&�s�+�J��y�y��~�H���D�-I��H�����u�u��E�N�N�P�H����+�x�0��!�!�"�)�)�A�,�"5�"5�a�"8�&�$�O�D�
�4�
 �C����	�	�	��	�	-�	3�	3�	D�	D�Q�	G�#���K�a�O�
P�C����	�	�	��	�	-�	3�	3�	D�	D�Q�	G�#��o���@�@��>�>��%�%��&@�@��>�>�sH�4j�1j�:'j+�3j8�1k�'k�j�j(�+j5�8k�k�kc
�@�ttjddd�tt	ddg�td�gdgdzdgdzztd�gd	d
g����}|j
d	g|�
�}ttjddd�tt	ddg�td�gdgdztd�gd	d
g����}d}tjt|��5|jd�}ddd�tj|�y#1swY� xYw)NrT�rrNr}rrVrS�Index1�Index2)r�r�r�r�r%��levelrD�z&you will need to pass a length-1 tuplerx)rrrrr�rangerFr�r�r��	get_groupr�)rDrIr�r�r�r#s      r�test_level_get_groupr��s��	�
�Y�Y�q�"�a�
 ��$�c�3�Z�0�%��)�<��3��7�a�S�1�W�$�e�B�i�0��X�&�
�
�B�	�
�
�(��h�
�7�A��
�Y�Y�q�"�a�
 ��$�c�3�Z�0�%��(�;��3��7�E�!�H�%��X�&�
��H�3�C�	�	#�	#�M��	=�"����S�!��"����&�(�+�	"�"�s�#D�Dc���tdgdzdgdzzgd�dztjd�d��}t|jgd�d	�
�|_|jd�dj
�}|jd
d	��}gd�}t|gd�d	�
�}gd�t|�g}tj|ddg��}tdgdz|d��}tj||�y)Nrd�re)�high�med�lowr>g(@)rA�dose�outcomes)r�r�r�TrrAr�r)r��sort_remaining)r�r�r�r�r�r�)rdrdrdrerererrTr)�r%rZ)rrrrr�rF�value_countsr"rr�from_arraysr	r�r��rIr#r%r�s    r�(test_sorting_with_different_categoricalsr�s���	��U�Q�Y�#����*�*�Q�.��	�	�$��	
�
�B��"�'�'�.D�d�S�B�G�
�Z�Z��
 ��
(�
5�
5�
7�F�
�
�
�Q�t�
�
<�F�8�E���*@�$�O�E�
+�-=�e�-D�E�E��"�"�5��&�0A�B�E��q�c�A�g�U��9�H����6�8�,rrTFc��ttd�|��}ttd�ddg|��}tjt	|��}t|||d��}|j
dd	gd
��}tj||gdd	g��}tgd
�|dg��}|jd��}tj||�|j�}tj||�d}	tjt|	��5|jtj�}ddd�tj||�tj||gdd	g��}t!d|��}d}	tjt"|	��5|jd��}ddd�tj$||�y#1swY��xYw#1swY�,xYw)N�abcr��aaarrNr)�missing�denserfr�r�TrCr)rrS�@rf)r%rmc�0�tj|d��Sr�)rr0rqs rrsztest_apply.<locals>.<lambda>@s��R�W�W�Q�Q�%7�rzusing DataFrameGroupBy.meanrxrSr[rwc��y�NrSrprqs rrsztest_apply.<locals>.<lambda>Qs�r)rr�rrrrrFrr�rHr�r�r0r�r��aggr	r�r�)
rr�r�rfrIr�r�r�r#r�s
          r�
test_applyr�0s���
��U��W�5�E��$�u�+�3��*�g�N�G�
�Y�Y�s�5�z�
"�F�	�w��&�I�	J�B��j�j�)�W�-��j�=�G��
 �
 �'�5�!1�)�W�9M�
N�C���C�(��D�H�
�]�]�7�
8�F����&�(�+�
�\�\�^�F����&�(�+�
'�C�	�	#�	#�M��	=�&����R�W�W�%��&����&�(�+��
 �
 �'�5�!1�)�W�9M�
N�C��a�s�#�H�
C�C�	�	#�	#�$6�c�	B�,����{�+��,����6�8�,�&�&��,�,�s�	 F>�G
�>G�
Gc��tgd�gd�d��}tgd�gd�d��}t||gd�d��}d	d
gdz|d<|jgd
�|��}tj||d	d
gdzggd
���}tdtgd�|��i�j
�}|j�}|st|||d	d
ggtd�d��}tj||�|jddg|��}tj||gddg��}tgd�gd�d�|��}|j�}|st|||gtd�d��}tj||�tgd�gd�d��gd�gd�d�}t|�}|jd|��}	|	j�}ttd �dtd!�d�"�}td#d#gd$d%gd&�|��}|s2ttd!�dtd!�d�"�}
|j|
�}tj||�|jdd'g|��}|jd(�}tgd)�tgd�gd�d��gd*�d+��j!dd'g�}|s't||j"j$d,dggdd'g�}tj||�d-D]P}|\}
}|j'|�}||j"|
k(|j(|k(z}tj||��Rgd.�gd/�gd0�d1�}t|�}t+j,|d	t/j0dd2d3��}||d4<|jd4d5gd6|�7�}|jd(�}|jd4d5gd|�7�}|jd(�j3�}tj||�y)8Nr\r]Trr_r`rbrcr�r�rTrE)rdrerErCrrfr[�ABCrrrdre)r�r�r�r�)rfrE�AB)rrNrrN�rrNrO�rSrSrTrT�r}r~rr�)�cat�ints�valr�abr�)rZrrg�?�4@r)rrrr0)�$@g>@r	gD@�rSrTrSrT)rrrrS))rrS)rNrT)rNrS)rrT)r}r�r>r�r>rSrS�r}r~rr��2�<�F)rQrO�errrQrO�r�r�r�r}rUr�r�F��as_indexrD)rrrFrr�r	r"r;r&r�r�r�r0rr!r��	set_indexrrfr�rr�r�r�linspace�reset_index)rDr�r�rIr�r�r�r#rQ�groups_single_keyr%�groups_double_key�keyrO�ir�groups�groups2s                  r�
test_observedrUs����+��QU�V�D��+��QU�V�D�	��D�L�A�	B�B��e�n�q� �B�s�G�
���O�h��	7�B��&�&�	
�t�e�U�^�a�'�(���I��(�F�<�y�$I�J�K�V�V�X�H�
�V�V�X�F��1��t�T�E�5�>�2�D��K�A�
�����&�(�+�	���S�#�J���	2�B��&�&��d�|�C��:�F�I���&B�C�9��H��V�V�X�F��1��t�T�l�D��J�1�
�����&�(�+�� �_�d�
���	�A�
�1��B��
�
�5�8�
�<��
�
#�
#�
%�F� ��T�
��4��;���I��3��*�d�B�Z�@�	�R�H�� ���K�e��U��T�
���#�#�E�*�����&�(�+��
�
�E�6�?�X�
�F��
�
"�
"�6�
*�F��+��$��$��!�	
���i���� �
��1��r�v�v�}�}�q�!�f�-��v��
�����&�(�+�8�0�����1�"�,�,�S�1���r�v�v��{�r�w�w�!�|�4�5��
���f�h�/�	0�&�+�2�	�A�

�1��B�
�&�&��E��B�K�K��2�q�1�
2�C��B�w�K�
�Z�Z��%�(�5�8�Z�
L�F�
�Z�Z��
�F��j�j�'�5�)�D�8�j�L�G��{�{�6�"�.�.�0�H����&�(�+rc��gd�gd�gd�d�}t|�}tj|dgd��}d|_|j	|dg|�	�}tj|gd�gddg�
�}tgd�gd�d
�|��}|st||jgd�gddg�}|jd�}tj||�y)N)rUrUr>rVrb)r}r����")�C1�C2�C3r!)rSrTrUr�rr"rCr)�@r$g@g@)r
gY@gi@gA@)r!r#r[r0)rr�r�rZrFrr�r&rfr�r�r�)rDrQrIrfrr�r�r#s        r�test_observed_codes_remapr%�s����<�7I�J�A�	�1��B�
�V�V�B�t�H�l�
+�F��F�K��
�
�F�D�>�H�
�E��
�
 �
 �&�,�!7��t�}�
M�C��#�+E�F�c��H��1��v�}�}�l�3�e�T�]�
���
"�
"�6�
*�F����&�(�+rc	��ttjjd�j	ddd��tjjd�j	ddd��tjjd�j	ddd��dd��}|j
j
t�j
d�|d	<|jgd
�d��}|j�}|jjdj�|j
j�k(sJ�|jjd
j�|jj�k(sJ�|jjdj�|jj�k(sJ�y)NrTr�i0ur��')r�int_id�other_idr��categoryr)rr)r*TrCrS)rrr�r�r�rr��strrFr)r%r�r4r)r*)rIr�r#s   r�test_observed_perfr-�sZ��
��9�9�(�(��+�4�4�Q��%�4�H��i�i�+�+�A�.�7�7��3�U�7�K��	�	�-�-�a�0�9�9�!�U��9�O��		
�
�B����
�
�c�"�)�)�*�5�B�u�I��j�j�6��j�F�G�
�]�]�_�F��<�<���q�!�)�)�+�r�v�v�~�~�/?�?�?�?��<�<���q�!�)�)�+�r�y�y�/@�/@�/B�B�B�B��<�<���q�!�)�)�+�r�{�{�/B�/B�/D�D�D�Drc�F�tgd�gd���}t|gd�d��}|jd|��}|j}|rt	dd	gd
��t	dgd
��d
�}n*t	dd	gd
��t	gd
��t	dgd
��d�}tj||�y)N)rrOrr�r�rSrTrU�r�valsrrCrrT�int64�r�rS)rrO)rrrFrrr��assert_dict_equal)rDrrIr�r#r�s      r�test_observed_groupsr6�s����o�/�
B�C�	�3�	�2�	3�B�
�
�
�5�8�
�,�A�
�X�X�F����1�v�W�5�E�1�#�W�<U�V����1�v�W�-��r��)���s�'�*�
�������*rz,keys, expected_values, expected_index_levelsr)r{�	rr0rzrN)	rgr�rrrr7rrr�r>rVr��a2)	r{rrrr7rrrr�test_seriesc��ttgd�gd���tgd�gd���gd�gd�d��jddg�}d	|vr|jd	�
�}|j	|d��}|r|d
}|j�}t
|�dk(r|}ngd�dgd�zg}t|||��}td
|i|��}	|r|	d
}	tj||	�y)N�rSrSrTr0r/r8)rgr�r7)rr9rNrOrr9rNrlFrCrOrS�	rrrrSrSrSrTrTrTrU�rrSrT)r�rr[)
rrr�droprFr;rrr��assert_equal)
�keys�expected_values�expected_index_levelsr:rIr�r#r%r�r�s
          r�test_unobserved_in_indexrDs���,
��Y�9�=��i�I�>���		
�
��i��d�����$��
�W�W�S�W�
!��	���D�5��	)�B��
��W��
�V�V�X�F�
�4�y�A�~�%��,�a�)�m�<���!���
��
�#��/�u�=�H���C�=���O�O�F�H�%rc�D�ttdtjdggd���gd�d��}|j	d|��}|j
}|rdt
dd	gd
��i}n)t
dd	gd
��t
gd
��t
gd
��d�}tj||�y)Nr)rrNrQr/r0r1rrCrrTr3r4)	rrrr�rFrrr�r5)rDrIr�r#r�s     r�test_observed_groups_with_nanrF7s���	���R�V�V�S�1�o�N��	
�
�B�	�
�
�5�8�
�,�A�
�X�X�F�����1�v�W�5�6����1�v�W�-��r��)��r��)�
��
�����*rc�2�tdtjtjggd���}tgd��}t	||d��}|jdd��d	j
d
�}|d	jd
g}tj||�y)Nrrr/r0)r�serrFrCrHr)
rrr�r	rrFr3rvr�r�)rrHrIr#r�s     r�test_observed_nthrILs|��
�s�B�F�F�B�F�F�+��
H�C�
��
�C�	�3�s�+�	,�B�
�Z�Z���Z�
.�u�
5�
9�
9�!�
<�F��%�y�~�~�q�c�"�H����6�8�,rc���ttjdtjdggd���}tgd��}t	||d��}|jd|��j
�j�}|rt	tdggd���dgd��}n<t	tgd�gd���dtjtjgd��}tj||�y)	Nrrr/rb)�s1�s2rKrCrT)
rrr�r	rrFr+rr�r�)rDrKrLrIr#r�s      r�#test_dataframe_categorical_with_nanrMWs���	�b�f�f�c�2�6�6�3�/�O�	L�B�	��	�B�	�"�B�'�	(�B�
�Z�Z��x�Z�
0�
6�
6�
8�
D�
D�
F�F�����u��A�!��M�
���!�/�o�N��"�&�&�"�&�&�)�
�
�����&�(�+rrDr�c��tgd�gd�|��}tgd��}t||d��}|jd||��dj	d�}t|j
jd	�
�}t|j�}|sd||j�<t||k(�sd|�d
|�d|�d|��}J|��y)N)rQrrNrrQrN)rrNr�rQr)�labelrrO)rDr�rr+r�r4r�zDLabels and aggregation results not consistently sorted
for (ordered=z, observed=z, sort=z
)
Result:
)	rr	rrF�	aggregater%�array�isnar')	rrDr�rOrrIr#�aggrr�s	         r�0test_dataframe_categorical_ordered_observed_sortrTks���
�&�-��
�E�
�/�
0�C�	�U�3�/�	0�B��Z�Z��(��Z�
>�u�
E�
O�
O�PW�
X�F�
�6�<�<�%�%�X�6�E��&�,�,��D��%��T�Y�Y�[���u��}��
�#�9�K��z����G��x�
!�	�
	�c��u�
rc�.�tjdd��}tjj	d�jddd��}t
j||d�	�}ttjj	d�jd
��}|j|d��j�}|jtj|�d��j�}|j|�}t|j|jd�
�|_t!j"||�|j|d��}|j%�}|j&j)�}|j+|�}	|j+|�}
|
j|	d��j%�}t!j"||�t!j,|j|j�t!j,|jj/d�|jj/d��t
jtj0d�j3d�|d�	�}t|�}t!j,|j5d��jj/d�|�t7gd�dz�}t!j,|j5d��jj/d�|�y)Nz
2014-01-01r>)�periodsrTrr�r�Tr�r�FrCrr�r�r�rS)r��
date_rangerr�r�r�rrrr�rFr0r�r!rr%r�r�r�r�r�r�r�r�rr�r�r)
r�r�rJr�r#r�r�r�r�r�r�r�r�s
             r�
test_datetimerX�s\��
�]�]�<��
3�F��I�I�!�!�!�$�-�-�a���-�=�E��!�!�%���>�D��R�Y�Y�*�*�1�-�=�=�h�G�H�D�
�\�\�$��\�
/�
4�
4�
6�F��|�|�B�J�J�t�,�u�|�=�B�B�D�H�����'�H�%����8�>�>�4��H�N����&�(�+��l�l�4�%�l�0�G��"�"�$�K�
�*�*�
�
�
�C����3��J��y�y��~�H����
�U��;�D�D�F�H����+�x�0����+�+�+�X�^�^�<�������*�*�1�-�x�~�~�/N�/N�q�/Q��
�!�!�"�)�)�A�,�"5�"5�a�"8�&�$�O�D�
�4�
 �C����	�	�	��	�	-�	3�	3�	D�	D�Q�	G�#���K�a�O�
P�C����	�	�	��	�	-�	3�	3�	D�	D�Q�	G�#�rc���tjjd�}gd�}|jddd��}t	j
||d��}t
tjtjd�d�jd	d�td
���}||d<|jd�jdd
��j�}|td
�j|jd
��j�}tt	j
gd�|d��d��|_t#j$||�|jdd
��j�}|td
�j|jd
��j�}tt	j
gd�|d��d��|_t#j$||�y)NrTr�rr>r~r�Tr����rXrlrJFr�rC�rrSrTrUrz)rr�r�r�rrrr�r�reshaper�rrFr;r�rr%r�r�)�sr�r�rJrIr#r�s       r�test_categorical_indexr^�s|��
�	�	���a� �A�
)�F�
�J�J�q�!�"�J�%�E��!�!�%���>�D�	�2�9�9�R�Y�Y�r�]�A�.�6�6�r�1�=�t�F�|�	T�B��B�v�J��\�\�&�
!�
)�
)��E�
)�
B�
F�
F�
H�F��$�v�,��'�'��
�
�U�'�C�G�G�I�H�%����|�V�T�B���H�N����&�(�+��Z�Z���Z�
/�
3�
3�
5�F��$�v�,��'�'��
�
�U�'�C�G�G�I�H�%����|�V�T�B���H�N����&�(�+rc���tgd�gd�d��}ttjj	d�jd�|��}|j
gd�d	z�j�}tj|jd�
�j|�tj|jd�
�jj|j�y)N)r�r�r�r�r�TrrT)r~r>rlrbrVr�)rrrr�r�r�rFr�r�r�r�rm�assert_categorical_equalrf)rJrIr#s   r�!test_describe_categorical_columnsra�s����$�/���D�

�2�9�9�(�(��+�;�;�G�D�d�	S�B�
�Z�Z��q�(�
)�
2�
2�
4�F����&�,�,�D�,�9�A�A�4�H�������$��'�/�/�6�6����rc�N�ttd�ddgdztd�dzd��}|djd	�|d<|j	d
dgd��d
j�j
�}|j�}tddgdd��}tj|j|�tj|jj|j�|d|dz}tddgtddgd
����}tj ||�y)Nr}rdrerV�XYXXYrT)r�medium�artistrdr+reFrCr�rrZr�r>�X�Yrzr[)rr�r�r�rFr)�unstackr�rr�r�rmr`rfr	rr�)rI�gcatr#�exp_columnsr�s     r�test_unstack_categoricalrl�s��	��B�i�C��:��>�T�'�]�Q�=N�O�
�B��h�<�&�&�z�2�B�x�L�
�:�:�x��*�U�:�;�C�@�F�F�H�P�P�R�D�
�]�]�_�F�"�C��:�u�8�L�K����&�.�.�+�6������� 5� 5�{�7I�7I�J�
�#�Y��c��
"�F��q�!�f�E�3��*�8�$D�E�H����6�8�,rc�`�ttjtjddddddddg
�}tj|j�jd�}tjtd��5|j|�j�ddd�y#1swYyxYw)NrSrTrUr>z$Grouper and axis must be same lengthrx)r	rr�r�r��dropnarf�pytest�raises�
ValueErrorrFr0)�seriesr�s  r�test_bins_unequal_lenrs�s���
�R�V�V�R�V�V�Q��1�a��A�q�!�<�
=�F�
�6�6�&�-�-�/�(�(�!�,�D�
���z�)O�	P�$����t��!�!�#�$�$�$�s�; B$�$B-rrr�r>rUrSrT�rdrec��|dzSr�rp)r�s rrsrss
��S�1�W�rrgc���|jttd�d��d��}|jt�}t|t	|j����}t
j||�y)N�ABBAr+r4FrCr[)rFr	r�rPrrAr�r�)rrr�rFr#r�s     r�test_categorical_seriesrx�sY�� �n�n�V�D��L�
�C�e�n�T�G�
�
�
�t�
$�F��d�"2�4�9�9�;�"?�@�H����6�8�,rc����ttgd�gd��gd�gd�d����jddgdd	�
�j�}ttddg�jjj
�
�ddgddgd�gd���}t
j||��fd�}d}t
jt|��5�jd|gdd	�
�j�}ddd�ttddg�jjj
�
�ddgddgd�gd���}t
j||�tgd�d��}d}t
jt|��5�jd|gdd	�
�j�}ddd�t
j||�ddg}ttddg�jjj
�
�ddgddgd�gd���}dD]U}ttd�|���_
�j|dd	�
�j�}t
j||��Wy#1swY��rxYw#1swY��xYw)N�rSrTrTr0)r}�r{)�e�f�g)rrdrerrdFTrrSrTr/r}r{r|��rlc�&���j|dfS)Nrd)�loc)�rrIs �rrsztest_as_index.<locals>.<lambda>*s���"�&�&��C��.�rz*A grouping .* was excluded from the resultrxr�)rrNrNrz)Nrgrer�)rrrFr;rrr�r�r�r�r	rr�r%)r#r�rr�r]�
group_columnsrZrIs       @r�
test_as_indexr�sA���	��y�)�4�� �	
�
�B��Z�Z����u�t�Z�
D�
H�
H�
J�F����1�v�"�&�&�*�*�2G�2G�H��b���s��	
�
"�
�H����&�(�+�	!�A�
6�C�	�	#�	#�M��	=�M����U�A�J����F�J�J�L��M����1�v�"�&�&�*�*�2G�2G�H��b���s��	
�
"�
�H����&�(�+�	��U�+�A�
6�C�	�	#�	#�M��	=�M����U�A�J����F�J�J�L��M����&�(�+��C�L�M����1�v�"�&�&�*�*�2G�2G�H��b���s��	
�
"�
�H�!�0����e��4�0������M�E�D��I�M�M�O��
���f�h�/�	0�=M�M��M�M�s�%I�2%I#�I �#I,c�P�td�}tdttd�|d��i�}t||dd��}ttd�|dd��}t	j
|j
ddd�	�j�j|�t	j
|j
ddd�	�j�j|�tdttd�|d��i�}t||dd��}ttd�td�dd��}t	j
|j
ddd�	�j�j|�t	j
|j
ddd�	�j�j|�y)
Nr�rd�baTrrf�bacFr�)	r�rrrr�r�rFr+r%)rrIr"�nosort_indexs    r�test_preserve_categoriesr�Qsa���e��J�
�C��T�$�Z�J�PT�U�V�	W�B�!�*�j�$�S�Q�J�#�D��K��T�PS�T�L����
�
�
�3�T�E�
�2�8�8�:�@�@�*�����
�
�
�3�U�U�
�3�9�9�;�A�A�<��

�C��T�$�Z�J�PU�V�W�	X�B�!�*�j�%�c�R�J�$�D��K��e��e�RU�V�L����
�
�
�3�T�E�
�2�8�8�:�@�@�*�����
�
�
�3�U�U�
�3�9�9�;�A�A�<�rc���tgd�gd�ttd�td�d��ttd�td�d��d��}td	d
tjgddtjgttd�td�d��ttd�td�d��d��}d
D]�}|j|dd��j
d��}|j|dd��j
d��j�}|j|j��}tj||�tj||���y)N)rSrTrSrSrT)r}�r��r �abaabr�FrT)rdrer!r"r�g�?g9@r	)r!r"��byrrDrhrl)rrr�rr�rFr0rr!rmr�r�)rI�exp_full�col�result1r�r�s      r�test_preserve_categorical_dtyper�os2��	� �%��d�7�m��U��U�S��d�7�m��U��T�R�		
�
�B���s�B�F�F�#���b�f�f�%��d�5�k�d�5�k�5�Q��d�5�k�d�5�k�4�P�		
��H��1���*�*��e�e�*�D�I�I��J�
��
�J�J�#��u�J�=�
�T�t�T�
$�
�[�]�	�
�#�#�G�O�O�#�<��
���g�x�0�
���g�x�0�1rzfunc, values�second�fourth�thirdc��tgd�d��}tgd�|d��}|jd�}t||��}tddgt	||j
�	�d��j
d�}tj||�|jd�d
}t||��}|d
}tj||�y)N)r+r�r�r�Tr�)rZ���rZr�)�payloadr�r�r�rZr4r�)
rrrF�getattrr	r�rr�r�r�)�funcrfrOrIr�r#r��sgbs        r�test_preserve_on_ordered_opsr��s���	�:�D�I�A�	�/��:�	;�B�
�
�
�9��A�
�W�Q��
�
�F����H�V�F�!�'�'�%B�C���i�	��
����&�(�+�
�*�*�Y�
��
&�C�
�W�S�$�
�
!�F����H����6�8�,rc��ttjjd�j	d��}tj
gd��}t
j|gd�d��}|j|d��j�}|j|d��j�}t|j|j|j�	�|_tj||�tj
gd
��}t
j|gd�d��}|j|d��j�}|j|d��j�j!|j�}t|j|j|j�	�|_tj||�t
gd�gd
�d�	�}t#gd�|d��}|jdd��j�}|dj$}tj
dddtj&g�}tj(||�y)NrTr7r=r>Tr�FrCr)	rrrrSrSrSrUrUrUr[rMrPrRrWrNrrSr>)r	rr�r�r�rQrrrFr0rr%rrr�r�r!rrfr��assert_numpy_array_equal)r�r�rJr#r�s     r�test_categorical_no_compressr��s����"�)�)�'�'��*�:�:�1�=�>�D��H�H�0�1�E��!�!�%��D�A�D�
�\�\�$��\�
/�
4�
4�
6�F�
�,�,�u�u�,�
-�
2�
2�
4�C� ��	�	�d�o�o�t�|�|��C�I����6�3�'��H�H�0�1�E��!�!�%��t�D�D�
�\�\�$��\�
/�
4�
4�
6�F�
�,�,�u�u�,�
-�
2�
2�
4�
<�
<�T�_�_�
M�C� ��	�	�d�o�o�t�|�|��C�I����6�3�'��5�'���D�
�6�T�B�C�D�
�\�\�#��\�
.�
3�
3�
5�F�
�C�[�
�
�F�
�(�(�A�q�!�R�V�V�$�
%�C������,rc��tdgdztgd��d��}|jd�j�d}t	tgddg��t	gd	d�
�d��}tj||�y)NrU)�trainr��testrtrdrer�r�r/r��r�rZr�)rrrFr+r	r�r��rIr#r�s   r� test_groupby_empty_with_categoryr��st��
�$��!��+�6P�*Q�R�	S�B�
�Z�Z��_�
"�
"�
$�S�
)�F���B�F�G�#4�5��R�x�c�2�
��H�
���6�8�,rc�v�tdtjjd�j	ddd�i�}tddd�D�cgc]}|�d|dz����}}t
||�}|jdgd	�
�}tj|jtddd�d|�
�|d<|jdgd��dj�}|t|jd���}t|j|jj ��|_t#j$||�ycc}w)N�valuerTrr(r�i�z - i�T)r��	ascendingi)F)�rightr��value_grouprCc�:�t|j�d�S)Nr)�float�splitrqs rrsztest_sort.<locals>.<lambda>�s��e�A�G�G�I�a�L�.A�r)rrz)rrr�r�r�r�r�sort_valuesr�r�r�rFr)�sortedr%rrZr�r�)rIrr��
cat_labels�resr�s      r�	test_sortr��s��
�G�R�Y�Y�2�2�1�5�>�>�q�%��M�N�	O�B�(-�a���(<�
=�1���3�q��u�g��
=�F�
=��V�V�,�J�	���G�9���	5�B����
���%��5�#�&�e�J��B�}��
�*�*�m�_�u�*�
5�m�
D�
J�
J�
L�C�

�f�S�Y�Y�$A�B�
C�C� ���������@�C�I����3��$��>s�D6c
�h�tgd�gd�gd�gd�gd�gd�gd�ggd��	�}t|d
|��|d
<|jd
|d�
�j�}|rddgddgddgddgg}gd�}nddgddgddgddgg}gd�}t|ddgt	|d
|����}tj||�y)N)�	(7.5, 10]r}r})r�r�r~)�(2.5, 5]rVr)�(5, 7.5]r�r�)r�r>r
)�(0, 2.5]rSr)r�rgr)r�r�r�rlr�r�Fr�rSrrVrr�r�r})r�r�r�r�)r�r�r�r�r�r�rY�rmr%)rrrFr+rr�r�)r�rrIr#�data_values�index_valuesr�s       r�
test_sort2r��s���

�!� ������	
�(�
�B��b��k�7�;�B�w�K�
�Z�Z��d�U�Z�
;�
A�
A�
C�F���2�w��B��!�R��2�r�(�;��H���B�x�!�R��1�b�'�A�r�7�;��H��������|�'�7�K��H����&�(�+rc
��ttddd�tddd�tddd�tddd�tddd�tddd�tddd�ggd�gd�d�gd��	�}t|d
|��|d
<|rAddgdd
gddgddgg}tddd�tddd�tddd�tddd�g}n@ddgdd
gddgddgg}tddd�tddd�tddd�tddd�g}t|ddgt|d
|����}|j	d
|d��j�}t
j||�y)Ni�rgrSrTrV)r}r�rVr�r>rSrgr)�dtr�r�rlr�r�rrr�r�r}r�r�rYr�Fr�)rrrrrFr+r�r�)r�rrIr�r�r�r#s       r�test_sort_datetimeliker�s���
���q�!�$���q�!�$���q�!�$���q�!�$���q�!�$���q�!�$���q�!�$��*�/�	
�%�
�B�$�2�d�8�W�5�B�t�H���2�w��B��!�R��2�r�(�;���T�1�a� ��T�1�a� ��T�1�a� ��T�1�a� �	
���B�x�!�R��1�b�'�A�r�7�;���T�1�a� ��T�1�a� ��T�1�a� ��T�1�a� �	
��������|�$��H��H�
�Z�Z��4�%�Z�
8�
>�
>�
@�F����&�(�+rc�L�ttgd�gd���gd�d��}tgd�d��}|jdd�	�jj�}t
gd
�|d��}tj||�|jdd�	�jjd�
�}t
gd
�|d��}tj||�|jdd�	�jjd�
�}t
ddtjg|d��}tj||�|jdd�	�jjd�
�}t
dtjtjg|d��}tj||�y)N�rrrNrr/�rSrTrSrtrdrzFrC)rUrSrrer��	min_countrSrUrT)rrrrFrer;r	r�r�rr��rI�expected_idxr#r�s    r�test_empty_sumr�KsU��	��/�o�F�Y�W�
�B�$�O�#�>�L��Z�Z��e�Z�
,�
.�
.�
2�
2�
4�F��i��C�8�H����6�8�,��Z�Z��e�Z�
,�
.�
.�
2�
2�Q�
2�
?�F��i��C�8�H����6�8�,��Z�Z��e�Z�
,�
.�
.�
2�
2�Q�
2�
?�F��q�!�R�V�V�n�l��=�H����6�8�,��Z�Z��e�Z�
,�
.�
.�
2�
2�Q�
2�
?�F��q�"�&�&�"�&�&�)�<�c�B�H����6�8�,rc�l�ttgd�gd���gd�d��}tgd�d��}|jdd�	�jj�}t
gd
�|d��}tj||�|jdd�	�jjd�
�}t
gd
�|d��}tj||�|jdd�	�jjd�
�}t
ddtjg|d��}tj||�y)Nr�rr/r�rtrdrzFrC)rTrSrSrerr�rSrT)rrrrFrer5r	r�r�rr�r�s    r�test_empty_prodr�gs��	��/�o�F�Y�W�
�B�$�O�#�>�L��Z�Z��e�Z�
,�
.�
.�
3�
3�
5�F��i��C�8�H����6�8�,��Z�Z��e�Z�
,�
.�
.�
3�
3�a�
3�
@�F��i��C�8�H����6�8�,��Z�Z��e�Z�
,�
.�
.�
3�
3�a�
3�
@�F��q�!�R�V�V�n�l��=�H����6�8�,rc�
�tttd��tttjddd���dz�tjd�d��}|jdd	gd
��j�}tjtgd��ttjddd���gdd	g�
�}tddddddddt
jdg	i|��}tj||�y)N�	abcbabcbaz
2018-06-01 00�1minrU)�freqrVr7)�key1�key2rfr�r�FrCrrrfrr>r�rVr�rTr[)rrr�r�rWrrrFr0rrr�r�r�)rIr#r�r�s    r�,test_groupby_multiindex_categorical_datetimer�s���
���[� 1�2���R�]�]�?���K�L�q�P���i�i��l�	
�
�B��Z�Z���(�5�Z�
9�
>�
>�
@�F�
�
!�
!���(���
�
�o�F�A�N�O�	
��v���C��(�Q��1�a��A�q�"�&�&�!�$D�E�S�Q�H����&�(�+rzas_index, expectedr<r+r4rzrrr)r%r�rZ�rrNrrc��ttgd�d��gd�gd�d��}|jddg|d	�
�dj�}t	j
||�y)Nr<r+r4rzr0r�rrNTrrr)rr	rFr;r�r@)rr�rIr#s    r�,test_groupby_agg_observed_true_single_columnr��sU��6
��Y�j�1�	�	�R�
�B��Z�Z��c�
�X��Z�
E�c�
J�
N�
N�
P�F��O�O�F�H�%rrc��tgd�gd�d��}tgd�gd�d��}|jd|��}tj||�y)NrPFr)NrrNrOrSr)r�shiftr�r@)r�ctr�r�s    r�
test_shiftr��sJ��	��)=�u�
�B���*>���H�
�(�(�1��(�
,�C��O�O�C��"rc���|j�dd}|djd�|d<|djd�|d<tgd��|d<|jdgd	�
�}|S)a�
    DataFrame with multiple categorical columns and a column of integers.
    Shortened so as not to contain all possible combinations of categories.
    Useful for testing `observed` kwarg functionality on GroupBy objects.

    Parameters
    ----------
    df: DataFrame
        Non-categorical, longer DataFrame from another fixture, used to derive
        this one

    Returns
    -------
    df_cat: DataFrame
    Nr>rdr+rerbrErGrSr�)r�r�r	r?)rI�df_cats  rr�r��sl��"�W�W�Y�r��]�F���+�$�$�Z�0�F�3�K���+�$�$�Z�0�F�3�K���&�F�3�K�
�[�[�#��Q�[�
'�F��Mr�	operationr�rHc���tgd�|djd��}tgd�|djd��}tj||g�}t	gd�|d��j�}|j
ddgd	�
�d}|dk(rdnd
}tjt|��5t||�t�}ddd�tj|�y#1swY� xYw)N)r�r�r�r�rdr�)�one�threer��twore)rTr>rSrUrE�r�r%rZTrCrH�using np.sumr�rx)
rr�rr�r	r"rFr�r�r�r�r;r�)	r�r��lev_a�lev_br%r�r�r�r#s	         r� test_seriesgroupby_observed_truer��s���
�.�f�S�k�6G�6G�c�R�E��0��s��8I�8I�PS�T�E��"�"�E�5�>�2�E��<�u�3�?�J�J�L�H��n�n�c�3�Z�$�n�7��<�G�%��0�.�6O�C�	�	#�	#�M��	=�2�,���)�,�S�1��2����6�8�,�2�2�s�,C"�"C+c�~�tjtddgd��tgd�d��gddg��j�\}}t	d	d
t
jdt
jdg|d
��}|dk(r9d}tjt|��5|jdd��}ddd�|jddg|��d
}|dk(rdnd}tjt|��5t||�t�}ddd�tj|�y#1swY�{xYw#1swY�,xYw)Nr�r�Fr��r�r�r�rdrerrTr>rSrUrEr�r�z.The 'downcast' keyword in fillna is deprecatedrxr�infer)�downcastrCr�r�)rrr�	sortlevelr	rr�r�r�r��fillnarFr�r;r�)	r�rDr�r%�_r�r�r�r#s	         r�)test_seriesgroupby_observed_false_or_noner��s(��
�&�&��e�U�^�U�;��4�e�D�	
��C�j���i�k�

�E�1��A�q�"�&�&�!�R�V�V�Q�7�u�3�O�H��E��>��
�
'�
'�
�S�
A�	<����q�7��;�H�	<��n�n�c�3�Z�(�n�;�C�@�G�'0�E�'9�
#�~�C�	�	#�	#�M��	=�2�,���)�,�S�1��2����6�8�,�	<�	<��2�2�s�D'�1D3�'D0�3D<zobserved, index, datar�r�rdr�)r�r�r�r�r�r�r�r�re)rTrTr>r>rSrSrUrUr�r�)rdreNc��t||d��}|jddg|��djd��}tj||�y)NrEr�rdrerCc�D�|j�|j�d�S)N�r2r/r�rqs rrsz8test_seriesgroupby_observed_apply_dict.<locals>.<lambda><s��!�%�%�'�!�%�%�'�2�r)r	rFrHr�r�)r�rDr%r�r�r#s      r�&test_seriesgroupby_observed_apply_dictr�sN��\�4�u�3�7�H�
�^�^�S�#�J��^�
:�3�
?�
E�
E�2��F����6�8�,rc���|jddgd��dj�}|jddgd��j�d}tj||�y)NrdreFrCrE)rFr0r�r�)r�r�r#s   r�4test_groupby_categorical_series_dataframe_consistentr�AsZ���~�~�s�C�j�5�~�9�#�>�C�C�E�H�
�^�^�S�#�J��^�
7�
<�
<�
>�s�
C�F����6�8�,r�code)rSrr)rrrc��tgd�gd�gd�d��}tj|td���}d}t	j
t|��5|j|d	d
��}ddd�j�}d}t	j
t|��5|jj|d
d
��}ddd�j�j}t	j||�y#1swY��xYw#1swY�FxYw)Nrb)rZr�������)rVr�rgr�rr�r/z+DataFrame.groupby with axis=1 is deprecatedrxrSF)r�rDz5The 'axis' keyword in DataFrame.groupby is deprecatedr)rrrr�r�r�r�rFr0�Tr�)r�rIrr�r�r#�gb2r�s        r�test_groupby_categorical_axis_1r�Hs���
��,<�<�P�	Q�B�
�
 �
 ��$�u�+�
>�C�
7�C�	�	#�	#�M��	=�5�
�Z�Z��!�e�Z�
4��5�
�W�W�Y�F�
A�C�	�	#�	#�M��	=�8��d�d�l�l�3�Q��l�7��8��x�x�z�|�|�H����&�(�+�5�5��8�8�s�C5�D�5C>�D
c��ttddg|��ddgd�ddg�	�}|j�}|jd|�
�j	tj
d��j
�}tj||�y)
N�Bob�Gregr�rSrT)�Name�Itemr�r�rlrCT)�skipna)	rrr�rFr�r;rr�r�)rDrrIr�r#s     r�$test_groupby_cat_preserves_structurer�Xsz��	��e�V�_�g�>��A��O��� �
�B��w�w�y�H�	�
�
�6�H�
�-�	��Y�]�]�4��	(�	�������&�(�+rc���tgd�td�d��}tjtd��5|jd�j
d��ddd�y#1swYyxYw)Nr\r>�r<rz'vau'rxr<c�b�t|jddg|jddgd��S)NrZr<�vaur)rrv)�rowss rrsz/test_get_nonexistent_category.<locals>.<lambda>ns3������2��u�-�.��	�	�"�
�e�8L�7M�N��r)rr�rorp�KeyErrorrFrH�rIs r�test_get_nonexistent_categoryrisU��	�/��a��A�	B�B�	���x�w�	/�
�
�
�
�5����
�	
�
�
�
�s�"A � A)c	��|dk(rtjd�ttt	d�t	d���tt	d�dzt	d���dgd	zd
��}t||�}|rd	nd}|j
dd
g|��d}|dk(rt||�rJ�yt||�}|s.|dvr*tjtd��5||�ddd�y||�}t|�|k(sJ�y#1swYyxYw)N�ngroup�ngroup is not truly a reduction�AABB�ABCDr/rrT皙�����?r>��cat_1�cat_2r�r�rrrCr�r*�r-r,�(empty group due to unobserved categoriesrx)ro�skiprrr�rrF�hasattrr�rprqr)�reduction_funcrDrIr$�expected_length�series_groupbyr�r#s        r�0test_series_groupby_on_2_categoricals_unobservedrts����!����5�6�	� ��f��$�v�,�G� ��d��a��D��L�I��U�Q�Y�	
�
�B�#�>�2�6�D�#�a��O��Z�Z��'� 2�X�Z�F�w�O�N���#��>�>�:�:�:��
�.�.�
1�C���*>�>�
�]�]��H�
�	�
��J�	�	�
�$�Z�F��v�;�/�)�)�)�	�	�s�C;�;Dc	��|dk(rtjd�|dk(r1tjjd��}|j	|�tt
td�td���t
td	�d
ztd���dgdzd
��}td�td�td�td�td�g}t||�}|jddgd��d}t||�}|dvr*tjtd��5||�ddd�y||�}t|}	|D]C}
|j|
}t!j"|	�rt!j"|�r�=||	k(r�CJ�|	dk(r7|dk7r1t%j&|j(t$j*�sJ�yyy#1swYyxYw)Nr	r
r*z6TODO: implemented SeriesGroupBy.corrwith. See GH 32293��reasonrrr/rrTr
r>r�AC�BC�CA�CB�CCrrFrCr�rrrxrr;)ror�mark�xfail�applymarkerrrr��tuplerrFr�rprq�-_results_for_groupbys_with_missing_categoriesr�r�rRr�
issubdtyper��integer)r�requestr!rI�
unobservedr$rr�r#�zero_or_nanr�rs            r�?test_series_groupby_on_2_categoricals_unobserved_zeroes_or_nansr+�s�����!����5�6���#��{�{� � �K�!�
��	���D�!�	� ��f��$�u�+�F� ��d��a��D��K�H��U�Q�Y�	
�
�B���+�u�T�{�E�$�K��t��e�D�k�R�J�"�>�2�6�D��Z�Z��'� 2�U�Z�C�G�L�N�
�.�.�
1�C��-�-�
�]�]��H�
�	�
��J�	�	�
�$�Z�F�?��O�K��O���j�j��o������$������3�+�;M�N�N�O��a��N�e�3��}�}�V�\�\�2�:�:�6�6�6�4��%	�	�s�$G�Gc	�d�|dk(rtjd�ttt	d�t	d���tt	d�t	d���gd�d	��}gd
�}|jddgd
��}t
||�}t||�|�}|D]}||jvr�J�y)Nr	�2ngroup does not return the Categories on the indexrrr/�1111�12�r
r
r
r
r�)rd�2)rer2)rE�1)rEr2rrTrC)	rorrrr�rFrr�r%)rrI�unobserved_cats�df_grpr$r�rs       r�>test_dataframe_groupby_on_2_categoricals_when_observed_is_truer6�s���
��!����H�I�	� ��f��$�u�+�F� ��f��$�t�*�E�)�	
�
�B�G�O�
�Z�Z��'�*�T�Z�
:�F�"�>�2�6�D�
)�'�&�.�
)�4�
0�C��$���#�)�)�#�#�#�$rc	���|dk(rtjd�ttt	d�t	d���tt	d�t	d���gd�d	��}gd
�}|jddg|�
�}t
||�}|s8|dvr4tjtd��5t||�|�ddd�yt||�|�}t|}|tjur<|j|j�j�j�sJ�y|j||k(j�j�sJ�y#1swYyxYw)Nr	r-rrr/r.r/r0rr1rrrCrrrx)rorrrr�rFrrprqr�r%rr�r��isnullr')rrDrIr4r5r$r�r�s        r�?test_dataframe_groupby_on_2_categoricals_when_observed_is_falser9�sC����!����H�I�	� ��f��$�u�+�F� ��f��$�t�*�E�)�	
�
�B�G�O�
�Z�Z��'�*�X�Z�
>�F�"�>�2�6�D���*>�>�
�]�]��H�
�	3�
,�G�F�N�+�T�2�	3�	�
)�'�&�.�
)�4�
0�C�<�^�L�H��2�6�6���w�w��'�.�.�0�4�4�6�:�:�<�<�<�����(�H�4�9�9�;�?�?�A�A�A�	3�	�s�,E�E%c�B�gd�gd�gd�d�}t|�}tj|dtjddd��}||d	<|jd	d
gddd�
�}|dj
d�}|j
d�d}tj||�y)N)r}r�r>rSr)rQrOrQrOrr�rr~rVr�r�TF�rr�rDr0)	rr�r�rrrFr�r�r�)rQrIrrr#r�s      r�3test_series_groupby_categorical_aggregation_getitemr<s����&6�?S�T�A�	�1��B�
�&�&��E��B�K�K��2�q�1�
2�C��B�w�K�
�Z�Z��%�(�4�d�U�Z�
S�F�
�E�]�
�
�v�
&�F��z�z�&�!�%�(�H����6�8�,rzfunc, expected_valuesc��tgd�gd�tgd��d��jd�}|jd�j	|�}td|itgd�d�	��
�}t
j||�y)Nr�)rrSrSrTrT)rrrrrS)�idrr�r>rr�r>rzr[)rrrrFr�rr�r�)r�rBrIr#r�s     r�$test_groupby_agg_categorical_columnsr?sw��
�!�%� ��1�	
�
��i��o�
��Z�Z��
!�
%�
%�d�
+�F��	�/�"�%�	��*I��H����&�(�+rc��tdtgd�gd���i�}tdddgitjddg���}|j	gd��jtj�}tj||�|j	gd��j�}tj||�y)	Nrdr�rr/rTrSr[r�)
rrrrQrFr�r	r4r�r��rIr�r#s   r�test_groupby_agg_non_numericrB4s���	�C��_��Q�R�	S�B��#��1�v��b�h�h��1�v�.>�?�H�
�Z�Z�	�
"�
&�
&�v�~�~�
6�F����&�(�+�
�Z�Z�	�
"�
*�
*�
,�F����&�(�+rr�c�2�tdgtdgd��jj�d��}|j	d�d}t||��}tdgt
dgd��d|dj�	�}tj||�y)
Ni�rNr+r4rtrdrerz�r%rZr�)
rr	r�
as_orderedrFr�rr�r�r�)r�rI�
df_groupedr#r�s     r�<test_groupby_first_returned_categorical_instead_of_dataframerG?s���
�$��f�c�U�*�&E�&I�&I�&T�&T�&V�W�	X�B����C���%�J�
&�W�Z��
&�
(�F��	��U�D�6��,�3�b��g�m�m��H����6�8�,rc	�H�tjddg�}d|j_t	gd�tgd�t
|���d��}t	dd	d
git|d���
�}|jddd��j�}tj||�y)NrSrTF)rSrUrVrgrr/rWrr�g@rNrzr�r�)rrQ�flags�	writeablerrrrrFr0r�r�)rJrIr�r#s    r�test_read_only_category_no_sortrKNs���
�8�8�Q��F��D� �D�J�J��	���\�e�D�k�!R�S�
�B��s�S�#�J�/�7G��SV�7W�X�H�
�Z�Z��%�%�Z�
8�
=�
=�
?�F����&�(�+rc��tgd�gd�d��}|djd�jjgd�d��|d<td	d	d
�d	dd
�ddd
�dd
d
�d��}|j	dd��}tgd�gd�ddd��|_|jddgd��j�j�}tj||�y)N)�small�largerNrNrdrNrNrd)rErdrdrErdrErdrE)r�r�r�r+)�tinyrMrdrNTr�r)rdrErSrUrTr�r%r�)rrrZr�FrC)rr�r�set_categories�rename_axisrrmrFr8rir�r�rAs   r�#test_sorted_missing_category_valuesrRZs���	�	�<�	
�
�B� 	�5�	�	��
�	�	��^�^�@�$�^�
O��u�I���!�$��1�%��A�&��1�%�		
��H��#�#�E��#�8�H�'�,�7��
���H���Z�Z�����Z�
7�
<�
<�
>�
F�
F�
H�F����&�(�+rc��tdgd�i�}|djd�|d<|jd�jj	�}tgd�t
gd�d��d|dj��}tj||�|jd�jddi�}|j�}tj||�y)	N�col_num�rSrSrTrUr+�col_catr0rzrDr+)
rr�rFrVr+r	rr�r�r�r��to_framer�r�s   r�1test_agg_cython_category_not_implemented_fallbackrX�s���	�I�|�,�	-�B��y�M�(�(��4�B�y�M�
�Z�Z�	�
"�
*�
*�
0�
0�
2�F����I�I�.�
���m�!�!�	�H����6�8�,�
�Z�Z�	�
"�
&�
&�	�7�';�
<�F�� � �"�H����&�(�+rc�Z�tgd�gd�ddtjdggd�gd�d��}|jdd	i�}|j	d
dg�jd��}t
jd
d
gd
dggd��}td
dgddgddgd�|��}tj||�y)N)rSrSrSrSrr
g�������?g333333�?)r�r�r��fee)rdre�
numerical_col�
object_col�categorical_colr]r+rdrec�>�|j�j�Sro)rRr;rs rrsz7test_aggregate_categorical_with_isnan.<locals>.<lambda>�s��2�7�7�9�=�=�?�rrSrTrtrr)r[r\r]r�)
rrr�r�rFr�rr�r�r�r�s    r�%test_aggregate_categorical_with_isnanr_�s���	���!�3�����4�6�;�	
�
�B�
���%�z�2�	3�B�
�Z�Z��c�
�
#�
'�
'�(B�
C�F��"�"�Q��F�Q��F�#3�:�F�E����V��a�&� !�1�v�
�
�
�H����&�(�+rc��tgd�gd�d��}tjgd�d��}|dj|�|d<d}t	j
t|�	�5|jd
�djt�|d<ddd�|j�}tgd�gd�gd�d
��}|dj|�|d<|dj|�|d<t	j||�y#1swY�sxYw)N)rSrSrSrTrTrU)�Waiting�OnTheWay�	Deliveredrarbra)�
package_id�status)rarbrcTrrezusing SeriesGroupBy.maxrxrd�last_status)rcrcrcrbrbra)rdrerf)rr��CategoricalDtyper�r�r�r�rFr�r/r�r�)rI�delivery_status_typer�r#r�s     r�test_categorical_transformri�s��	�,��
	
�
�B��.�.�7�����h�<�&�&�';�<�B�x�L�
#�C�	�	#�	#�M��	=�N��J�J�|�4�X�>�H�H��M��=��N��W�W�Y�F��,���	
��H�,"�(�+�2�2�3G�H�H�X��'�}�5�<�<�=Q�R�H�]�����&�(�+�AN�N�s� +C=�=Dc�4�tgd��}gd�}t|||d��}tddg�}tj||gddg��}t	dt
jt
jdg|d	�
�t	dt
jt
jdg|d	�
�d�}||}|r-|j�jt
j�}|jddg|��d	}	t|	|��}
tj|
|�y�
N)rrrSrS)rrSrSrrrrSrrNrrOrz)r+r.rC)rrrrr	rr�rnr�r3rFr�r�r�)r�rDrrrIr�r��
expected_dictr��srs_grpr#s           r�Ftest_series_groupby_first_on_categorical_col_grouped_on_2_categoricalsrn�s���
�l�
#�C�
�C�	��3�S�1�	2�B���1�v��D�
�
!�
!�4��,�s�C�j�
A�C���B�F�F�B�F�F�A�.��#�>���2�6�6�2�6�6�1�-�s��=��M�
�T�"�H���?�?�$�+�+�B�H�H�5���j�j�#�s��h�j�7��<�G�
#�W�W�d�
#�
%�F����6�8�,rc�J�tgd��}gd�}t|||d��}tddg�}tj||gddg��}t	dt
jt
jdg|d	�
�t	dt
jt
jdg|d	�
�d�}||j�}|r-|j�jt
j�}|jddg|��}	t|	|��}
tj|
|�yrk)rrrrr	rr�rWrnr�r3rFr�r�r�)r�rDrrrIr�r�rlr�r5r#s           r�Btest_df_groupby_first_on_categorical_col_grouped_on_2_categoricalsrp	s���
�l�
#�C�
�C�	��3�S�1�	2�B���1�v��D�
�
!�
!�4��,�s�C�j�
A�C���B�F�F�B�F�F�A�.��#�>���2�6�6�2�6�6�1�-�s��=��M�
�T�"�+�+�-�H���?�?�$�+�+�B�H�H�5��
�Z�Z��c�
�X�Z�
6�F�
"�W�V�T�
"�
$�F����&�(�+rc���ttgd�gd���td�d��}|jddd��}|j}tjd	d
gd��tjd
gd��tjgd��d�}|j�|j�k(sJ�|j�D]}tj||||�� y)N)rNrNrrr/rU)rr�rFr�rrS�intpr4rT)rNrrO)
rrr�rF�indicesrrQrAr�r�)rIr�r#r�rs     r�2test_groupby_categorical_indices_unused_categoriesrt"s���	���?�K���8�	
�
�B��j�j��U�U�j�;�G�
�_�_�F�
�X�X�q�!�f�F�
+�
�X�X�q�c��
(�
�X�X�b��
'��H�
�;�;�=�H�M�M�O�+�+�+��{�{�}�@��
�#�#�F�3�K��#��?�@rc��tdgd�i�}|djd�|d<t|jd�d|��}t	tgd��dt
gd�d����}tj||�y)Nrr0r+rNrz)rZr%)	rr�r�rFr	rrr�r�)r�rIr#r�s    r�1test_groupby_last_first_preserve_categoricaldtyperv6sv��
�C��#�	$�B���g�n�n�Z�(�B�s�G�
0�W�R�Z�Z��_�S�)�4�
0�
2�F���I��S��i�c�0J��H����8�V�,rc
�N�tddgddgddgd��}|jddd���}|jd	d
gd��j�d
}t	ddgtjtddgd	��tddgd
��g�d
��}tj||�y)NrSrTr}r{rr+rWr4rrNTrCrOrzr�)
rr�rFr4r	rr�rr�r�r�s   r�)test_groupby_categorical_observed_nuniquerxBs���	�!�Q��q�!�f�B��8�<�	=�B�	���z�
�;��	<�B�
�Z�Z��c�
�T�Z�
2�
:�
:�
<�S�
A�F��	
�A���$�$�
�q�!�f�3�
/�1A�1�a�&�s�1S�T�
���H����6�8�,rc	�b�tjddgd��}tddgddgddggddg�	�jd|i�}|j	d�dj�}t
ddgtddgd�
�dtjddgd����}tj||�y)NrM�bigTrrSrT�grp�descriptionrlrzrD)
r�rgrr�rFr/r	rr�r�)r�rIr#r�s    r�,test_groupby_categorical_aggregate_functionsr}Qs������G�U�+;�T�J�E�	�
�W���5�z�A�w�<�0�5�-�:P�
��f�m�U�
#�$���Z�Z��
�}�
-�
1�
1�
3�F��	����Q��F��'�
��!�!�g�u�-=�t�L�	�H����6�8�,rc�d�tddggd���}ttddggd���ddgd��}|jd||�	�}|j�}|rtd
ddgi|��}n!t	gd�gd��}td
gd�i|��}d|j
_tj||�y)
NrSrTr0r/rUr>)rrrarr)rDrnrar[)rUr>r)	rrrFr;rr%rZr�r�)rDrnrrIr�r#r�r%s        r�test_groupby_categorical_dropnarcs���
�q�!�f��
3�C�	��a��V�	�B�!�Q��P�	Q�B�	���C�(�6��	:�B�
�V�V�X�F���c�A�q�6�]�#�6�� ��I�6���c�9�-�U�;���H�N�N�����&�(�+r�
index_kind)r��single�multic��|dk(r4|s2d}|jtjj|���n|dk7r|stjd��tt
gd�gd�|��td	�d
��}|dk(rdg}	n<|dk(rdg}	|j|	�}n"|d
k(rddg}	|d|d<|j|	�}t||�}
|j	|||��}|s8|dvr4tjtd��5t||�|
�ddd�yt||�|
�}|r&|jjd�j }
n|dj"j }
t%gd��}t'j(|
|�|d
k(r<|jjd�j }
t'j(|
|�yy#1swYyxYw)Nr*zDGH#49950 - corrwith with as_index=False may not have grouping columnrr��/Result doesn't have categories, nothing to test�rTrSrTrU�rSr>rUrTrr>rWrr�r�r9r;rrrx)r#ror!r"rrrr�rrrFrprqr�r%r�rrrr�r�)r(rr�rDrr�rr�rIrAr$r��	op_resultr#r�s               r�test_category_order_reducerr�ts�����#�H�T�����F�K�K�-�-�S�-�9�:�	�w�	�x����L�M�	��\�l�G�T��q��	
�
�B��W���u��	�x�	��u��
�\�\�$�
��	�w�	��T�{���c�7��4��
�\�\�$�
��"�>�2�6�D�	���D�8�$���	J�B���*>�>�
�]�]��H�
�	/�
(�G�B��'��.�	/�	�+���N�+�T�2�I�����1�1�#�6�A�A���3��#�#�.�.���\�"�H����&�(�+��W�����1�1�$�7�B�B��
���f�h�/��	/�	�s�G�Gr�r�c��ttgd�gd�|��td�d��}|dk(rdg}|j|�}n"|dk(rdd	g}|d|d	<|j|�}t	||�}|j|||�
�}	|dk(rtnd}
d}tj|
|�
�5t|	|�|�}ddd�jjd�j}
tgd��}tj|
|�|dk(r<|jjd	�j}
tj|
|�yy#1swY��xYw)Nr�r�rr>rWr�rr�r9r;r�z%DataFrameGroupBy.fillna is deprecatedrx)rrr�rrrFr�r�r�r�r%r�rrr�)rr�rD�transformation_funcr�rrIrAr$r��warnr�r�r#r�s               r�test_category_order_transformerr��sK��
��\�l�G�T��q��	
�
�B��X���u��
�\�\�$�
��	�w�	��T�{���c�7��4��
�\�\�$�
��"�#6��;�D�	���D�8�$���	J�B�/�8�;�=��D�
1�C�	�	#�	#�D��	4�<�4�G�B� 3�4�d�;�	�<�
�_�_�
-�
-�c�
2�
=�
=�F��\�"�H����&�(�+��W�����1�1�$�7�B�B��
���f�h�/��
<�<�s�+E
�
E�method�head�tailc�x�ttgd�gd�|��td�d��}|dk(rdg}n<|dk(rdg}|j|�}n"|d	k(rdd
g}|d|d
<|j|�}|j	|||��}t||��}	|dk(r|	djj}
n%|	jjd�j}
tgd��}tj|
|�|d	k(r<|	jjd
�j}
tj|
|�yy)Nr�r�rr>rWr�rr�r�r9r;)
rrr�rrFr�rrr%r�rr�r�)rr�rDr�r�rrIrAr�r�r#r�s            r�test_category_order_head_tailr��s/��
��\�l�G�T��q��	
�
�B��W���u��	�x�	��u��
�\�\�$�
��	�w�	��T�{���c�7��4��
�\�\�$�
��	���D�8�$���	J�B�#���F�#�%�I��W���3��#�#�.�.�����1�1�#�6�A�A���\�"�H����&�(�+��W�����1�1�$�7�B�B��
���f�h�/�r)rHr�r�c�V�|dk(r|dk(s|s|dk7rtjd�ttgd�gd�|��t	d�d��}|dk(rd	g}n<|d
k(rd	g}|j|�}n"|dk(rd	dg}|d	|d<|j|�}|j
|||�
�}|dk(r|dk(rtnd}	d}
tj|	|
��5t||�d��}ddd�|dk(s|s|dk(rd	jj}n%jjd	�j}tgd��}
tj ||
�|dk(r<|jjd�j}tj ||
�yy#1swY��xYw)Nr�r�z(No categories in result, nothing to testr�r�rr>rWrr�r�r9r;rHrwrxc�&�|jd��S)NTrh)r;rqs rrsz+test_category_order_apply.<locals>.<lambda>s��!�%�%�T�%�2J�r)rorrrr�rrFr�r�r�r�rrr%r�rr�)rr�rDr�r�rrIrAr�r�r�r�r#r�s              r�test_category_order_applyr��s���
	�+��*��"7���w�.����>�?�	��\�l�G�T��q��	
�
�B��W���u��	�x�	��u��
�\�\�$�
��	�w�	��T�{���c�7��4��
�\�\�$�
��	���D�8�$���	J�B�!'�7�!2�z�W�7L��RV�D�
C�C�	�	#�	#�D��	4�L�'�G�B��'�(J�K�	�L��+��X�:��3H��3��#�#�.�.�����1�1�#�6�A�A���\�"�H����&�(�+��W�����1�1�$�7�B�B��
���f�h�/��L�L�s�F�F(c��|dk7r|stjd��tjddd�}t	gd�||��}t|t
d�d	��}|dk(rd
g}n<|dk(rd
g}|j|�}n"|dk(rd
d
g}|d
|d
<|j|�}|j||d��}|j�}	|rgd�ngd�}
t|
|j|d
��}|rAtd|
i�}|dk(r'tjt||d���|_nF||_n>|dk(r"tt|�t|�|
d��}ntt|�|
d	��}t!j"|	|�y)Nr�r�ri'rZr�rr>rWrr�r�r9Tr;)rUrTrS)rTrSrU)rrrZrN)rr9)rr9rN)rorrrrrr�rrFr;rrr�
from_framer%r	r�r�)
rr�r�rr�grouperrIrAr�r#r�r%r�s
             r�test_many_categoriesr�sn���W��X����L�M����4��R�(�J��,�:�w�O�G�	��u�Q�x�0�	1�B��W���u��	�x�	��u��
�\�\�$�
��	�w�	��T�{���c�7��4��
�\�\�$�
��	���D�8�$���	F�B�
�V�V�X�F��9�)�D����+�+�W�3�
�E���c�4�[�)���� �'�2�2�9�5�PU�=V�3W�X�H�N�"�H�N�	�w�	��6�%�=��u�
�D�Q�R���6�%�=�t�<�=�����&�(�+r�cat_columnsrAc��tgd�gd�d��}||jd�||<d}t|�t|�zrtnd}t	j
||��5|j
|�ddd�y#1swYyxYw)NrU)r>rVr�rgrWr+z+The default of observed=False is deprecatedrx)rr��setr�r�r�rF)r�rArIr��klasss     r�test_groupby_default_deprr�=sx��
��L�9�	:�B���o�,�,�Z�8�B�{�O�
7�C� ��-��D�	�9�M�t�E�	�	#�	#�E��	5��
�
�
�4�����s�"A=�=B�a1c��|r-|dk(r(ttd�rJ�tjd�n�|dk(r2d}|j	tj
j
|���nJ|dk(rE|sCt|�dk7r5|s3|s1d}|j	tj
j
|���tgd�gd	�gd
�d��}|jddd
��}d|vr|jd��}|j|||��}|r|d}t||�}	|sD|dvr@|ddgk(r9tjtd��5|j|gg|	���ddd�y|j|gg|	���}
t!||�|	�}|r|s|dk(r|j#|�}|s>t%j&|j(ddD�cgc]}|df��c}d|fgz�|_n
|s||gz|_t+j,|
|�y#1swYyxYwcc}w)Nr*z*corrwith not implemented for SeriesGroupByz1GH#32293: attempts to call SeriesGroupBy.corrwithrr4rSzGH#52848 - raises a ValueError)rrrS)rTrUrUr8)r�r9rNr+)r�r9r9rlr�rNrr�rrxr8rZ�)rrrorr#r!r"rrr�r?rFrrprqr�r�rWr�from_tuplesrmr�r@)
r(rrDrr:rAr�rIr�r$r#r��inds
             r�
test_agg_listr�Is���~��3��=�*�5�5�5����@�A�	�:�	%�A�����F�K�K�-�-�S�-�9�:��)�#����I��N���.�����F�K�K�-�-�S�-�9�:�	�)�9�9�E�	F�B�	���*�J�7�	8�B��4��
�W�W�T�W�
"��	���t�h���	B�B��
��W��"�>�2�6�D���*>�>�4�D�RV�<�CW�
�]�]��H�
�	,�
�B�F�F�N�#�+�d�+�	,�	�
�R�V�V�^�$�
,�t�
,�F�*�w�r�>�*�D�1�H��[�N�f�$<��$�$�^�4���%�1�1�"*�"2�"2�3�B�"7�8�3�c�2�Y�8�S�.�<Q�;R�R�
�����>�"2�2����O�O�F�H�%�%	,�	��
9s�?G>�<H
�>H)hr�numpyrro�pandasr�rrrrrr	r
�pandas._testing�_testingr��pandas.api.typingr�pandas.tests.groupbyrr�r&r%rKr�r�r�r!�parametrizer�rr%r-r6rDrFrIrMrTrXr^rarlrsr��renamerxr�r�r�r�r�r�r�r�r�r�r�r�r�r��NaTr��fixturer�r�r�rr�r�r�r�rrr+r6r9r<r4r)r?rBrGrKrRrXr_rir,�boolrnrprtrvrxr}rr�r�r�r�r�r�r�rprr�<module>r�s����
������+�8�DF�6�6�E�"1�
�2�6�6�1�
�2�6�6�1��Q�1�����1��R�V�V�1�
�b�f�f�1�
�b�f�f�1��B�F�F�1�
�2�6�6�1� �B�F�F�!1�"
�b�f�f�#1�$
�2�6�6�%1�&
�2�6�6�'1�(�q�)1�*�B�F�F�+1�,����-1�.
�2�6�6�/1�0
��F�F�
�6�6��
�6�6�91�-�@(�d�N,�<-�,������T�5�M�2�!-�3�!-�Hk,�\,�(E�*+�*�����2�	�j�*�9�3�?�@�
�#�J�'�
�i�c�
2�E�)�4D�E�	
��$�K�(� ���5� ���5�
�	
���&�������u�
�6�&�7�'�(&�D+�*-�,�(������T�5�M�2�������d�E�]�3�������$���/��0�4�3��@(�V,�2
� -�&$������
�v��
��a��	�!�Q��q�!�f�5�6�
��a��	�	 �	 �!4�	5�a�S��1�v�7N�O�	��a��	�!�Q��q�!�f�5�6���-��-�90�x�<1�B������	�8�W�%�&�	�(�G�$�%�	��7�#�$�	��7�#�$�	��-��-�&"-�J-�%�,������T�5�M�2�,�3�,�D������T�5�M�2�/,�3�/,�d-�8-�0,�2������
��,�j�,�,��I�Z�8�)�D�S�RU�J����
�		
�
���	��<�"�"��
�		
���2&�3�2&��������b�f�f�b�f�f�'=�>�#�?�#�������0������u�g�&6�7�
-�8�
-� ������u�g�&6�7�������e�T�]�3�-�4�8�-�0������
�"�J�"�"��5�'�A�+���!��3�:�C�P��T�(� ��
�5�%�.�1�,�-��

�
%�	
� 
�#�J�#�#�$�e�U�^�U�C�$�%<�e�L��5�%�.�)��
'�

���1�a��������A�r�v�v�r�v�v�q�!�D�	
�
�#�J�#�#�$�e�U�^�U�C�$�%<�e�L��5�%�.�)��
'�

���1�a��������A�r�v�v�r�v�v�q�!�D�	
�9(�+�X-�Y+�X-�-�������9�	�!;�<�,�=�,�,�"
�#*�L17�h$�4������e�T�]�3�'B�4�'B�T	-��������n�n�i� �6�<�<��";�<��,�	�,�",�������'�6�!2�3�-�4�-�	,�*,�Z,�,,�65,�p������'�6�!2�3�-�

�-��-�4�-�0������'�6�!2�3�,�

�,��,�4�,�0@�(������'�6�!2�3�-�4�-�-�-�$,�"������'C�D�������T�5�M�2�-0�3�E�-0�`�������'�':�;�������T�5�M�2�0�3�<�0�@������'C�D�������F�F�#3�4�������T�5�M�2�0�3�5�E�0�B������'C�D�������#@�A�������T�5�M�2�#0�3�B�E�#0�L������'C�D�$,�E�$,�N�������c�C��:�(>�?�������#�s�S�#�J�!7�8��9�@���������u�
�6�������4�&�4��,�!7�8�.&�9�7�.&r

Youez - 2016 - github.com/yon3zu
LinuXploit