§
    tŠtjJ­  ã                   óú   — d Z ddlmZmZ ddlZddlZddlmZm	Z	 ddl
Zddl
mZmZmZmZmZmZmZmZmZ ddlmZ ddlmZ  G d„ d¦  «        Z G d	„ d
¦  «        Z G d„ d¦  «        Z G d„ d¦  «        Zd„ Zd„ ZdS )zG
test where we are determining what we are grouping, or getting groups
é    )ÚdateÚ	timedeltaN)ÚPandas4WarningÚSpecificationError)	ÚCategoricalIndexÚ	DataFrameÚGrouperÚIndexÚ
MultiIndexÚSeriesÚ	TimestampÚ
date_rangeÚperiod_range)ÚGroupingc                   óŽ   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	e
j                             dd	„ d
„ g¦  «        d„ ¦   «         Zd„ ZdS )ÚTestSelectionc                 óP  — t          ddggddg¬¦  «        }|                     d¦  «        }t          j        t          d¬¦  «        5  |dg          d d d ¦  «         n# 1 swxY w Y   t          j        t          d	¬¦  «        5  |ddg          d d d ¦  «         d S # 1 swxY w Y   d S )
Né   é   ÚAÚB©Úcolumnsz"Columns not found: 'C'"©ÚmatchÚCz^[^A]+$)r   ÚgroupbyÚpytestÚraisesÚKeyError)ÚselfÚdfÚgs      ú`/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/pandas/tests/groupby/test_grouping.pyÚtest_select_bad_colsz"TestSelection.test_select_bad_cols&   s-  € Ý˜˜A˜�x¨#¨s¨Ð4Ñ4Ô4ˆØ�JŠJ�s‰OŒOˆÝŒ]�8Ð+GÐHÑHÔHð 	ð 	ØˆsˆeŒHˆHð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ Œ]�8¨9Ð5Ñ5Ô5ð 	ð 	ð ˆs�CˆjŒMˆMð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s$   Á
AÁA!Á$A!ÂBÂBÂ"Bc           
      óH  — t          g d¢t          d¦  «        t          dd¦  «        t          ddd¦  «        g¬¦  «        }d}t          j        t          |¬	¦  «        5  |                     d
¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          |¬	¦  «        5  |                     d
dg¦  «         d d d ¦  «         n# 1 swxY w Y   |                     d¦  «        }|                     ¦   «         }|j        j        dk    sJ ‚|j        j	        dk    sJ ‚d S )N)r   r   r   r   é   r   é   r   é   )r   Údataz!Grouper for 'A' not 1-dimensionalr   r   r   r   é   )
r   Úranger   r   Ú
ValueErrorr   Úcountr   ÚnlevelsÚsize)r!   r"   ÚmsgÚgroupedÚcs        r$   Ú'test_groupby_duplicated_column_errormsgz5TestSelection.test_groupby_duplicated_column_errormsg1   s‘  € åØ(Ð(Ð(µ°a±´½%ÀÀ1¹+¼+ÅuÈQÐPQÐSTÁ~Ä~Ð/Vð
ñ 
ô 
ˆð 2ˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	ð 	Ø�JŠJ�s‰OŒOˆOð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	åŒ]�:¨SÐ1Ñ1Ô1ð 	#ð 	#Ø�JŠJ˜˜S�zÑ"Ô"Ð"ð	#ð 	#ð 	#ñ 	#ô 	#ð 	#ð 	#ð 	#ð 	#ð 	#ð 	#øøøð 	#ð 	#ð 	#ð 	#ð —*’*˜S‘/”/ˆØ�MŠM‰OŒOˆØŒyÔ  AÒ%Ð%Ð%Ð%ØŒyŒ~ Ò"Ð"Ð"Ð"Ð"Ð"s$   ÁB Â BÂBÂ&C
Ã
CÃCc                 óÈ  — |                      d¦  «        j                             ¦   «         }|                      d¦  «        d                              ¦   «         }t          j        ||¦  «         d|d<   |                      d¦  «                             d¬¦  «        }|                      d¦  «        g d¢                              d¦  «        }t          j        ||¦  «         d S )Nr   r   g      ø?ÚmeanT©Únumeric_only)r   ÚDr6   )r   r   ÚsumÚtmÚassert_series_equalr6   ÚaggÚassert_frame_equal©r!   r"   ÚresultÚexpecteds       r$   Útest_column_select_via_attrz)TestSelection.test_column_select_via_attrB   s¾   € Ø—’˜C‘”Ô"×&Ò&Ñ(Ô(ˆØ—:’:˜c‘?”? 3Ô'×+Ò+Ñ-Ô-ˆÝ
Ô˜v xÑ0Ô0Ð0àˆˆ6‰
Ø—’˜C‘”×%Ò%°4Ð%Ñ8Ô8ˆØ—:’:˜c‘?”?Ð#5Ð#5Ð#5Ô6×:Ò:¸6ÑBÔBˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/ó    c           	      óî  — t          g d¢g d¢t          j                             d¦  «                             d¦  «        t          j                             d¦  «                             d¦  «        t          j                             d¦  «                             d¦  «        dœ¦  «        }|                     d¦  «        ddg                              ¦   «         }|                     d¦  «        |j        dd	…                                       ¦   «         }|j        d d …g d
¢f                              d¦  «                             ¦   «         }t          j
        ||¦  «         t          j
        ||¦  «         d S )N©ÚfooÚbarrF   rG   rF   rG   rF   rF   ©ÚonerI   ÚtwoÚthreerJ   rJ   rI   rK   r   r)   ©r   r   r   r9   ÚEr   r   r9   r'   )r   r   r9   )r   ÚnpÚrandomÚdefault_rngÚstandard_normalr   r6   r   Úlocr;   r>   ©r!   r"   r@   Úresult2rA   s        r$   Útest_getitem_list_of_columnsz*TestSelection.test_getitem_list_of_columnsL   s?  € ÝàMÐMÐMØQÐQÐQÝ”Y×*Ò*¨1Ñ-Ô-×=Ò=¸aÑ@Ô@Ý”Y×*Ò*¨1Ñ-Ô-×=Ò=¸aÑ@Ô@Ý”Y×*Ò*¨1Ñ-Ô-×=Ò=¸aÑ@Ô@ðð ñ
ô 
ˆð —’˜C‘” # s Ô,×1Ò1Ñ3Ô3ˆØ—*’*˜S‘/”/ "¤*¨Q¨q¨S¤/Ô2×7Ò7Ñ9Ô9ˆà”6˜!˜!˜!˜_˜_˜_Ð,Ô-×5Ò5°cÑ:Ô:×?Ò?ÑAÔAˆå
Ô˜f hÑ/Ô/Ð/Ý
Ô˜g xÑ0Ô0Ð0Ð0Ð0rC   c                 óÆ  — t          t          d¦  «        dz  t          j                             d¦  «                             d¦  «        t          j                             d¦  «                             d¦  «        t          j                             d¦  «                             d¦  «        dœ¦  «        }|                     d¦  «        |j        dd…                                       ¦   «         }|                     d¦  «        ddg                              ¦   «         }|j	        d d …g d	¢f                              d¦  «                             ¦   «         }t          j        ||¦  «         t          j        ||¦  «         t          j        t          d
¬¦  «        5  |                     d¦  «        d                              ¦   «          d d d ¦  «         d S # 1 swxY w Y   d S )NÚabcdr   r)   )r   r   r'   r(   r   r   r+   r'   )r   r   r'   ú"Cannot subset columns with a tupler   )r   r'   )r   ÚlistrN   rO   rP   rQ   r   r   r6   rR   r;   r>   r   r   r-   rS   s        r$   Ú!test_getitem_numeric_column_namesz/TestSelection.test_getitem_numeric_column_names_   sÑ  € åå˜‘<”< !Ñ#Ý”9×(Ò(¨Ñ+Ô+×;Ò;¸AÑ>Ô>Ý”9×(Ò(¨Ñ+Ô+×;Ò;¸AÑ>Ô>Ý”9×(Ò(¨Ñ+Ô+×;Ò;¸AÑ>Ô>ð	ð ñ
ô 
ˆð —’˜A‘”˜rœz¨!¨A¨#œÔ/×4Ò4Ñ6Ô6ˆØ—*’*˜Q‘-”-  A Ô'×,Ò,Ñ.Ô.ˆà”6˜!˜!˜!˜Y˜Y˜Y˜,Ô'×/Ò/°Ñ2Ô2×7Ò7Ñ9Ô9ˆå
Ô˜f hÑ/Ô/Ð/Ý
Ô˜g xÑ0Ô0Ð0õ Œ]�:Ð-QÐRÑRÔRð 	'ð 	'Ø�JŠJ�q‰MŒM˜$Ô×$Ò$Ñ&Ô&Ð&ð	'ð 	'ð 	'ñ 	'ô 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'øøøð 	'ð 	'ð 	'ð 	'ð 	'ð 	's   Æ.GÇGÇGc                 óÈ   — t          j        t          d¬¦  «        5  |                     d¦  «        d                              ¦   «          d d d ¦  «         d S # 1 swxY w Y   d S )NrX   r   r   )r   r9   )r   r   r-   r   r6   ©r!   r"   s     r$   Ú+test_getitem_single_tuple_of_columns_raisesz9TestSelection.test_getitem_single_tuple_of_columns_raisesu   s�   € åŒ]�:Ð-QÐRÑRÔRð 	-ð 	-Ø�JŠJ�s‰OŒO˜HÔ%×*Ò*Ñ,Ô,Ð,ð	-ð 	-ð 	-ñ 	-ô 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-øøøð 	-ð 	-ð 	-ð 	-ð 	-ð 	-s   œ.AÁAÁAc           	      ór  — t          g d¢g d¢t          j                             d¦  «                             d¦  «        t          j                             d¦  «                             d¦  «        t          j                             d¦  «                             d¦  «        dœ¦  «        }|                     d¦  «        d                              ¦   «         }|j        d d …ddgf                              d¦  «                             ¦   «         }|j        d d …df         }|}t          j
        ||¦  «         d S )	NrE   rH   r   r)   rL   r   r   r   )r   rN   rO   rP   rQ   r   r6   rR   Úilocr;   r<   )r!   r"   r@   Úas_frameÚ	as_seriesrA   s         r$   Útest_getitem_single_columnz(TestSelection.test_getitem_single_columnz   s  € ÝàMÐMÐMØQÐQÐQÝ”Y×*Ò*¨1Ñ-Ô-×=Ò=¸aÑ@Ô@Ý”Y×*Ò*¨1Ñ-Ô-×=Ò=¸aÑ@Ô@Ý”Y×*Ò*¨1Ñ-Ô-×=Ò=¸aÑ@Ô@ðð ñ
ô 
ˆð —’˜C‘” Ô%×*Ò*Ñ,Ô,ˆà”6˜!˜!˜!˜c 3˜Z˜-Ô(×0Ò0°Ñ5Ô5×:Ò:Ñ<Ô<ˆØ”M ! ! ! Q $Ô'ˆ	Øˆå
Ô˜v xÑ0Ô0Ð0Ð0Ð0rC   Úfuncc                 ó*   — |                       ¦   «         S ©N©r:   ©Úxs    r$   ú<lambda>zTestSelection.<lambda>Ž   s   € ˜1Ÿ5š5™7œ7€ rC   c                 ó.   — |                       d„ ¦  «        S )Nc                 ó*   — |                       ¦   «         S re   rf   )Úys    r$   ri   z(TestSelection.<lambda>.<locals>.<lambda>Ž   s   € ¸a¿eºe¹g¼g€ rC   )r=   rg   s    r$   ri   zTestSelection.<lambda>Ž   s   € ¨a¯eªeÐ4EÐ4EÑ.FÔ.F€ rC   c                 ó  — t          g d¢ddddœ¦  «        }|                     ddg¦  «        ddg         }t          j        d	d
gddg¬¦  «        }t          ddgddgdœ|¬¦  «        } ||¦  «        }t	          j        ||¦  «         d S )N©r   r   r   r+   r'   é   ©ÚaÚbr3   Údrq   rr   r3   )r   r+   ©r   r+   ©Únamesr   r)   )rq   r3   ©Úindex)r   r   r   Úfrom_tuplesr;   r>   )r!   rc   r"   ÚgbÚidxrA   r@   s          r$   Útest_getitem_from_grouperz'TestSelection.test_getitem_from_grouper�   s¥   € õ
 ˜Y˜Y˜Y¨Q°Q¸QÐ?Ð?Ñ@Ô@ˆØ�ZŠZ˜˜c˜
Ñ#Ô# S¨# JÔ/ˆåÔ$ f¨fÐ%5¸cÀ3¸ZÐHÑHÔHˆÝ A q 6°°A°Ð7Ð7¸sÐCÑCÔCˆØ��b‘”ˆå
Ô˜f hÑ/Ô/Ð/Ð/Ð/rC   c                 óÞ   ‡— t          dd„ dD ¦   «         i¦  «        Š‰                     d¦  «        }‰                     ˆfd„¦  «        }|j        }|j        }t          j        ||¦  «         d S )NÚTuplesc              3   óŒ   K  — | ]?}t           j                             d ¦  «                             ddd¦  «        D ]}||fV — Œ	Œ@dS ©r   r+   ro   N©rN   rO   rP   Úintegers©Ú.0rh   rl   s      r$   ú	<genexpr>zJTestSelection.test_indices_grouped_by_tuple_with_lambda.<locals>.<genexpr>Ÿ   ós   è è € ð ð àÝœY×2Ò2°1Ñ5Ô5×>Ò>¸qÀ!ÀQÑGÔGðð ð ð ˜�Fðð ð ð ð ð ð rC   ©r   r   c                 ó"   •— ‰j         | df         S ©Nr   ©r_   ©rh   r"   s    €r$   ri   zITestSelection.test_indices_grouped_by_tuple_with_lambda.<locals>.<lambda>¨   ó   ø€ ¨¬°°A°¬€ rC   )r   r   Úindicesr;   Úassert_dict_equal©r!   rz   Ú	gb_lambdarA   r@   r"   s        @r$   Ú)test_indices_grouped_by_tuple_with_lambdaz7TestSelection.test_indices_grouped_by_tuple_with_lambda›   sŒ   ø€ åàð ð à#ðñ ô ðñ
ô 
ˆð �ZŠZ˜Ñ!Ô!ˆØ—J’JÐ6Ð6Ð6Ð6Ñ7Ô7ˆ	à”:ˆØÔ"ˆå
Ô˜V XÑ.Ô.Ð.Ð.Ð.rC   N)Ú__name__Ú
__module__Ú__qualname__r%   r4   rB   rU   rZ   r]   rb   r   ÚmarkÚparametrizer|   r‘   © rC   r$   r   r   %   sÎ   € € € € € ð	ð 	ð 	ð#ð #ð #ð"0ð 0ð 0ð1ð 1ð 1ð&'ð 'ð 'ð,-ð -ð -ð
1ð 1ð 1ð& „[×ÒØÐ"Ð"Ð$FÐ$FÐGñô ð	0ð 	0ñô ð	0ð/ð /ð /ð /ð /rC   r   c                   óö  — e Zd Zej                             d e ed¦  «        ¦  «         e ej	        d¦  «        ¦  «         e ej	        de
¬¦  «        ¦  «         edd¬¦  «         edd¬¦  «        g¦  «        d„ ¦   «         Zd„ Zd	„ Zd
„ Zd„ Zej                             dddg¦  «        d„ ¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zej                             dg d¢g d¢d„  ed¦  «        D ¦   «         g¦  «        d„ ¦   «         Zd„ Zd„ Zd„ Zd „ Z d!„ Z!d"„ Z"d#„ Z#d$„ Z$d%„ Z%d&„ Z&d'„ Z'd(„ Z(ej                             d)dg d*¢gdg d+¢gg¦  «        d,„ ¦   «         Z)d-„ Z*d.„ Z+ej                             d/d0 e,d1ej-        ¬2¦  «        fd3 e,d1ej-         eg ej-        d4¬5¦  «        ¬6¦  «        fd7 e,d1ej-         eg ej-        d4¬5¦  «        ¬6¦  «        fg¦  «        d8„ ¦   «         Z.d9„ Z/d:„ Z0d;„ Z1d<„ Z2d=„ Z3d>„ Z4d?S )@ÚTestGroupingrx   Úabcdero   ©Údtypez
2020-01-01©Úperiodsc                 óš  — t          t          j        d¦  «                             dd¦  «        t	          d¦  «        |¬¦  «        }|                     t	          d¦  «        d¬¦  «                             d	„ ¦  «         |j        d d d
…         |_        |                     t	          d¦  «        d¬¦  «                             d„ ¦  «         d S )Né
   ro   r   ÚAB)r   rx   rš   F©Ú
group_keysc                 ó   — | S re   r—   rg   s    r$   ri   z7TestGrouping.test_grouper_index_types.<locals>.<lambda>Ä   ó   € ÀA€ rC   éÿÿÿÿc                 ó   — | S re   r—   rg   s    r$   ri   z7TestGrouping.test_grouper_index_types.<locals>.<lambda>Ç   r¥   rC   )r   rN   ÚarangeÚreshaperY   r   Úapplyrx   )r!   rx   r"   s      r$   Útest_grouper_index_typesz%TestGrouping.test_grouper_index_typesµ   s§   € õ •r”y ‘}”}×,Ò,¨Q°Ñ2Ô2½DÀ¹J¼JÈeÐTÑTÔTˆà
�
Š
•4˜‘=”=¨Uˆ
Ñ3Ô3×9Ò9¸+¸+ÑFÔFÐFà”8˜D˜D˜b˜D”>ˆŒØ
�
Š
•4˜‘=”=¨Uˆ
Ñ3Ô3×9Ò9¸+¸+ÑFÔFÐFÐFÐFrC   c                 óš  — t          j        ¦   «         t          d¬¦  «        z
  }t          |t          j        ¦   «         ¦  «        }t	          j        ||gddg¬¦  «        }t          t          j         	                    d¦  «         
                    ddd	¦  «        |¬
¦  «        }|                     ¦   «                              t          dd¬¦  «        t          dd¬¦  «        g¦  «                             ¦   «         }t          dgd¬¦  «        |_        |                     t          dd¬¦  «        t          dd¬¦  «        g¦  «                             ¦   «         }t#          j        ||¦  «         |                     t          dd¬¦  «        t          dd¬¦  «        g¦  «                             ¦   «         }t#          j        ||¦  «         d S )Né   )ÚdaysrF   rG   ru   r   r   éd   éá   rw   ÚW©ÚkeyÚfreqÚint64r›   ©Úlevelr´   r   )r   Útodayr   r   r   Úfrom_productr   rN   rO   rP   r‚   Úreset_indexr   r	   r:   r
   r   r;   r>   )r!   Úd0ÚdatesÚ
date_indexr"   rA   r@   s          r$   Útest_grouper_multilevel_freqz)TestGrouping.test_grouper_multilevel_freqÉ   s›  € õ ŒZ‰\Œ\�I¨2Ð.Ñ.Ô.Ñ.ˆÝ˜2�tœz™|œ|Ñ,Ô,ˆÝÔ,¨e°U¨^ÀEÈ5À>ÐRÑRÔRˆ
Ý•r”y×,Ò,¨QÑ/Ô/×8Ò8¸¸CÀÑEÔEÈZÐXÑXÔXˆð �NŠNÑÔßŠW•g %¨cÐ2Ñ2Ô2µGÀÈCÐ4PÑ4PÔ4PÐQÑRÔRßŠS‰UŒUð 	õ ! ! ¨GÐ4Ñ4Ô4ˆÔà—’Ý˜5 sÐ+Ñ+Ô+­W¸5ÀsÐ-KÑ-KÔ-KÐLñ
ô 
ç
Š#‰%Œ%ð 	õ 	Ô˜f hÑ/Ô/Ð/ð —’Ý˜1 3Ð'Ñ'Ô'­°q¸sÐ)CÑ)CÔ)CÐDñ
ô 
ç
Š#‰%Œ%ð 	õ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/rC   c                 ór  — t          g d¢g d¢dœ¦  «        }|                     d¦  «        }|                     ¦   «         }|                     t          d¬¦  «        ¦  «        }|                     ¦   «         }t	          j        ||¦  «         |                     d„ ¦  «        }t	          j        ||¦  «         d S )N)r   r   r   r   r   r   ©r   r   r+   r'   ro   r(   ©r   r   r   ©r³   c                 ó*   — |                       ¦   «         S re   rf   rg   s    r$   ri   z8TestGrouping.test_grouper_creation_bug.<locals>.<lambda>ï   s   €  1§5¢5¡7¤7€ rC   )r   r   r:   r	   r;   r>   rª   )r!   r"   r#   rA   r@   s        r$   Útest_grouper_creation_bugz&TestGrouping.test_grouper_creation_bugå   s«   € åÐ/Ð/Ð/Ð6HÐ6HÐ6HÐIÐIÑJÔJˆØ�JŠJ�s‰OŒOˆØ—5’5‘7”7ˆà�JŠJ•w 3Ð'Ñ'Ô'Ñ(Ô(ˆØ—’‘”ˆÝ
Ô˜f hÑ/Ô/Ð/à—’Ð*Ð*Ñ+Ô+ˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/rC   c                 ób  — t          g d¢g d¢g d¢dœ¦  «        }|                     d¦  «                             ¦   «         }|                     t          d¬¦  «        g¦  «        }|                     ¦   «         }t	          j        ||¦  «         |                     ddg¦  «                             ¦   «         }|                     t          d¬¦  «        t          d¬¦  «        g¦  «        }|                     ¦   «         }t	          j        ||¦  «         |                     dt          d¬¦  «        g¦  «        }|                     ¦   «         }t	          j        ||¦  «         |                     t          d¬¦  «        dg¦  «        }|                     ¦   «         }t	          j        ||¦  «         d S )N)r   r   r   r   r   r   )r   r   r   r   r+   r+   rÀ   ©r   r   r   r   rÂ   r   )r   r   r:   r	   r;   r>   )r!   r"   rA   r#   r@   s        r$   Útest_grouper_creation_bug2z'TestGrouping.test_grouper_creation_bug2ò   s�  € õ Ø$Ð$Ð$Ð+=Ð+=Ð+=ÐDVÐDVÐDVÐWÐWñ
ô 
ˆð —:’:˜c‘?”?×&Ò&Ñ(Ô(ˆØ�JŠJ� CÐ(Ñ(Ô(Ð)Ñ*Ô*ˆØ—’‘”ˆÝ
Ô˜f hÑ/Ô/Ð/ð —:’:˜s C˜jÑ)Ô)×-Ò-Ñ/Ô/ˆð �JŠJ� CÐ(Ñ(Ô(­'°cÐ*:Ñ*:Ô*:Ð;Ñ<Ô<ˆØ—’‘”ˆÝ
Ô˜f hÑ/Ô/Ð/ð �JŠJ˜�W¨Ð-Ñ-Ô-Ð.Ñ/Ô/ˆØ—’‘”ˆÝ
Ô˜f hÑ/Ô/Ð/ð �JŠJ� CÐ(Ñ(Ô(¨#Ð.Ñ/Ô/ˆØ—’‘”ˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/rC   c                 óì  — t          dd|¬¦  «        }t          j        t          d¦  «        t	          d¦  «        |gg d¢¬¦  «        }t          t          j        dd¬	¦  «        |¬
¦  «        }|                     t          dd¬¦  «        ¦  «         
                    ¦   «         }t          j        t          d¦  «        gdd¬¦  «                             |¦  «        }t          dg|¬
¦  «        }t          j        ||¦  «         |                     t          d¬¦  «        ¦  «         
                    ¦   «         }|                     d¬¦  «         
                    ¦   «         }t          j        ||¦  «         d S )NÚ20130101r   )rž   ÚunitÚab)rI   rJ   rK   ru   r)   rµ   r›   rw   rK   ÚMEr¶   z
2013-01-31)r´   Únameé   rI   ©r·   )r   r   r¹   rY   r,   r   rN   r¨   r   r	   r:   ÚpdÚDatetimeIndexr   Úas_unitr;   r<   )r!   rÊ   ÚdtiÚmiÚserr@   Úexp_dtirA   s           r$   Útest_grouper_creation_bug3z'TestGrouping.test_grouper_creation_bug3  so  € å˜¨Q°TÐ:Ñ:Ô:ˆÝÔ$Ý�$‰ZŒZ�˜q™œ 3Ð'Ø)Ð)Ð)ð
ñ 
ô 
ˆõ ÝŒI�a˜wÐ'Ñ'Ô'Øð
ñ 
ô 
ˆð —’�W¨7¸Ð>Ñ>Ô>Ñ?Ô?×CÒCÑEÔEˆÝÔ"Ý�|Ñ$Ô$Ð%¨D°wð
ñ 
ô 
ç
Š'�$‰-Œ-ð 	õ ØˆDØð
ñ 
ô 
ˆõ 	Ô˜v xÑ0Ô0Ð0ð —’�W¨5Ð1Ñ1Ô1Ñ2Ô2×6Ò6Ñ8Ô8ˆØ—;’; U�;Ñ+Ô+×/Ò/Ñ1Ô1ˆÝ
Ô˜v xÑ0Ô0Ð0Ð0Ð0rC   rc   FTc                 ó   ‡— t          g d¢g d¢dœ¦  «        }t          t          t          d¦  «        ddgdz  d¬	¦  «        ¦  «        Š|r|                     ˆfd
„d¬¦  «        }n|                     ‰d¬¦  «        }t          t          |¦  «        ¦  «        \  }}|dk    sJ ‚|                     |¦  «        }t          j	        ||¦  «         d S )N©r   r   r   r   )r   r'   r+   r   )ÚXÚYr'   )r   ro   )r9   r(   r   T)Ústrictc                 ó   •— ‰|          S re   r—   )r{   Úmappings    €r$   ri   z<TestGrouping.test_grouper_returning_tuples.<locals>.<lambda>2  s   ø€ ¨7°3¬<€ rC   F)ÚbyÚsort)
r   ÚdictÚzipr,   r   ÚnextÚiterÚ	get_groupr;   r>   )r!   rc   r"   rz   rÍ   rA   r@   rÞ   s          @r$   Útest_grouper_returning_tuplesz*TestGrouping.test_grouper_returning_tuples+  sß   ø€ õ Ð1Ð1Ð1¸¸¸ÐEÐEÑFÔFˆÝ•s�5 ™8œ8 h°Ð%9¸AÑ%=ÀdÐKÑKÔKÑLÔLˆàð 	4Ø—’Ð7Ð7Ð7Ð7¸e�ÑDÔDˆBˆBà—’˜w¨U�Ñ3Ô3ˆBå�d 2™hœh™œ‰ˆˆhØ�xÒÐÐÐØ—’˜dÑ#Ô#ˆå
Ô˜f hÑ/Ô/Ð/Ð/Ð/rC   c                 ó  — t          j        g d¢¦  «        }ddg|_        t          t	          j        d¦  «        g d¢dœ|¬¦  «        }|                     dt          d¬	¦  «        g¦  «                             d
¬¦  «        }| 	                    ¦   «                              ddg¦  «                             d
¬¦  «        }t          j        ||¦  «         |                     t          d¬	¦  «        dg¦  «                             d
¬¦  «        }| 	                    ¦   «                              ddg¦  «                             d
¬¦  «        }t          j        ||¦  «         | 	                    d¦  «        }|                     dt          d¬	¦  «        g¦  «                             d
¬¦  «        }| 	                    ¦   «                              ddg¦  «                             d
¬¦  «        }t          j        ||¦  «         |                     t          d¬	¦  «        dg¦  «                             d
¬¦  «        }| 	                    ¦   «                              ddg¦  «                             d
¬¦  «        }t          j        ||¦  «         d S )N)©rq   r   )rq   r   )rq   r+   ©rr   r   ©rr   r   )rr   r+   ÚouterÚinnerr(   )rI   rI   rJ   rJ   rI   rI   rÁ   rw   r   rÏ   Tr7   )r   ry   rv   r   rN   r¨   r   r	   r6   rº   r;   r>   )r!   r{   Údf_multir@   rA   Ú	df_singles         r$   Útest_grouper_column_and_indexz*TestGrouping.test_grouper_column_and_index<  s•  € õ
 Ô$ØHÐHÐHñ
ô 
ˆð ˜gÐ&ˆŒ	ÝÝ”)˜A‘,”,Ð%OÐ%OÐ%OÐPÐPØð
ñ 
ô 
ˆð ×!Ò! 3­°gÐ(>Ñ(>Ô(>Ð"?Ñ@Ô@×EÒEÐSWÐEÑXÔXˆà× Ò Ñ"Ô"×*Ò*¨C°¨>Ñ:Ô:×?Ò?ÈTÐ?ÑRÔRð 	õ 	Ô˜f hÑ/Ô/Ð/ð ×!Ò!¥7°Ð#9Ñ#9Ô#9¸3Ð"?Ñ@Ô@×EÒEÐSWÐEÑXÔXˆà× Ò Ñ"Ô"×*Ò*¨G°S¨>Ñ:Ô:×?Ò?ÈTÐ?ÑRÔRð 	õ 	Ô˜f hÑ/Ô/Ð/ð ×(Ò(¨Ñ1Ô1ˆ	Ø×"Ò" C­°wÐ)?Ñ)?Ô)?Ð#@ÑAÔA×FÒFØð Gñ 
ô 
ˆð ×!Ò!Ñ#Ô#×+Ò+¨S°'¨NÑ;Ô;×@Ò@ÈdÐ@ÑSÔSð 	õ 	Ô˜f hÑ/Ô/Ð/ð ×"Ò"¥G°'Ð$:Ñ$:Ô$:¸CÐ#@ÑAÔA×FÒFØð Gñ 
ô 
ˆð ×!Ò!Ñ#Ô#×+Ò+¨W°c¨NÑ;Ô;×@Ò@ÈdÐ@ÑSÔSð 	õ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/rC   c                 óê  — ddg}t          j        g d¢|¬¦  «        }t          t          j        d¦  «                             dd¦  «        |¬¦  «        }|                     |¬	¦  «                             ¦   «         }|                     ¦   «                              |¦  «                             ¦   «         }|j	         
                    t          j        ¦  «        |_	        t          j        ||¦  «         d S )
Nrh   rl   ))r   r   ©r   r   )r+   r'   )ro   r(   ru   é   r¦   r+   rw   rÏ   )r   ry   r   rN   r¨   r©   r   r6   rº   r   Úastyperµ   r;   r>   )r!   Ú	idx_namesr{   r"   Ú	by_levelsÚ
by_columnss         r$   Útest_groupby_levels_and_columnsz,TestGrouping.test_groupby_levels_and_columnsj  sÏ   € à˜#�Jˆ	ÝÔ$Ð%EÐ%EÐ%EÈYÐWÑWÔWˆÝ•r”y ‘}”}×,Ò,¨R°Ñ3Ô3¸3Ð?Ñ?Ô?ˆà—J’J Y�JÑ/Ô/×4Ò4Ñ6Ô6ˆ	à—^’^Ñ%Ô%×-Ò-¨iÑ8Ô8×=Ò=Ñ?Ô?ˆ
ð (Ô/×6Ò6µr´xÑ@Ô@ˆ
ÔÝ
Ô˜i¨Ñ4Ô4Ð4Ð4Ð4rC   c                 óÖ  — g d¢}ddg}t          j        g d¢g d¢g d¢g d¢g d¢gt          ¦  «        }t          ||d¬¦  «        }t          j        ddgddgddgddgddggt          ¦  «        }t          ||d¬¦  «        }t	          |j        |¬	¦  «        }|                     d
|¬¦  «                             ¦   «         }	t	          |j        |¬¦  «        }
t          j	        |	|
¦  «         d S )NrÙ   r   r   )r   r   r   r   T)Ú
categoriesÚorderedr'   r   rw   r   )r·   Úobserved)r*   rx   )
rN   ÚarrayÚintr   r   ÚTr   r:   r;   r>   )r!   rû   r   rù   r*   Úcat_columnsÚexpected_dataÚexpected_columnsr"   r@   rA   s              r$   Ú*test_groupby_categorical_index_and_columnsz7TestGrouping.test_groupby_categorical_index_and_columnsx  s  € à&Ð&Ð&ˆØ˜3�Zˆ
ÝŒxØˆ\ˆ\˜<˜<˜<¨¨¨°|°|°|À\À\À\ÐRÕTWñ
ô 
ˆõ ' w¸:ÈtÐTÑTÔTˆÝœ 1 a &¨1¨a¨&°1°a°&¸1¸a¸&À1ÀaÀ&Ð!IÍ3ÑOÔOˆÝ+Ø :°tð
ñ 
ô 
Ðõ
 �t”v [Ð1Ñ1Ô1ˆØ—’ !¨h�Ñ7Ô7×;Ò;Ñ=Ô=ˆÝ -¤/Ð9IÐJÑJÔJˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/rC   c                 óÞ  — t          ddit          j        t          d¦  «        t	          dd¬¦  «        gddg¬	¦  «        ¬
¦  «        }|                     t          d¬¦  «        t          dd¬¦  «        g¦  «                             ¦   «         }t          dg d¢it          j        t          d¦  «        t	          ddd¬¦  «        gddg¬	¦  «        ¬
¦  «        }t          j	        ||¦  «         d S )Nr   r   rË   rÉ   éP   r�   rI   rJ   ru   rw   rÏ   rÌ   r¶   )é   rÎ   é   r  rÎ   r  r+   )r´   rž   )
r   r   r¹   rY   r   r   r	   r:   r;   r>   r?   s       r$   Ú#test_grouper_getting_correct_binnerz0TestGrouping.test_grouper_getting_correct_binner‹  s  € õ Ø�!ˆHÝÔ)Ý�d‘”�Z¨
¸BÐ?Ñ?Ô?Ð@ÈÐPUÈðñ ô ð
ñ 
ô 
ˆð —’Ý˜5Ð!Ñ!Ô!¥7°¸TÐ#BÑ#BÔ#BÐCñ
ô 
ç
Š#‰%Œ%ð 	õ ØÐ*Ð*Ð*Ð+ÝÔ)Ý�d‘”�Z¨
¸ÀqÐIÑIÔIÐJØ˜e�nðñ ô ð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/rC   c                 ót   — |                      d¦  «        }|j        }t          |¦  «        }ddg}||k    sJ ‚d S )Nr   rG   rF   )r   Ú_grouperÚsorted)r!   r"   rz   Úgrouperr@   rA   s         r$   Útest_grouper_iterzTestGrouping.test_grouper_iter¡  sC   € Ø�ZŠZ˜‰_Œ_ˆØ”+ˆÝ˜‘”ˆØ˜5�>ˆØ˜Ò!Ð!Ð!Ð!Ð!Ð!rC   c                 ó˜   — t          j        t          d¬¦  «        5  |                     g ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NzNo group keys passed!r   )r   r   r-   r   r\   s     r$   Útest_empty_groupszTestGrouping.test_empty_groups¨  s‹   € åŒ]�:Ð-DÐEÑEÔEð 	ð 	Ø�JŠJ�r‰NŒNˆNð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   œ?¿AÁAc                 óæ   — |                      d¦  «        }|j        }|                      |¦  «                             d¬¦  «        }|                     d¬¦  «        }t          j        ||¦  «         d S )Nr   Tr7   )r   r	  r6   r;   r>   )r!   r"   r2   r  r@   rA   s         r$   Útest_groupby_grouperz!TestGrouping.test_groupby_grouper­  sg   € Ø—*’*˜S‘/”/ˆØÔ"ˆØ—’˜GÑ$Ô$×)Ò)°tÐ)Ñ<Ô<ˆØ—<’<¨T�<Ñ2Ô2ˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/rC   c                 óB  — t          ddi¦  «        }|                     ddi¦  «                             d¦  «        }|                     dg¦  «                             d¦  «        }t          j        ||¦  «         t          g d¢t          d¦  «        ¬¦  «        }ddd	d	d
œ}|                     |¦  «                             ¦   «         }|                     |¦  «                             d¦  «        }t          j        g d¢t          j	        ¬¦  «        }|                     |¦  «                             ¦   «         }|                     |¦  «                             ¦   «         }t          j        ||¦  «         t          j        ||¦  «         t          j        ||¦  «         d S )NÚT1ro   ÚT2r:   )ç      ð?ç       @g      @g      @rW   rw   r   r   rp   r6   )r   r   r   r   r›   )
r   r   r=   r;   r<   rY   r6   rN   rü   rµ   )r!   Úsr@   rA   rÞ   rT   Úexp_keyÚ	expected2s           r$   Útest_groupby_dict_mappingz&TestGrouping.test_groupby_dict_mapping´  si  € å�D˜!�9ÑÔˆØ—’˜D $˜<Ñ(Ô(×,Ò,¨UÑ3Ô3ˆØ—9’9˜d˜VÑ$Ô$×(Ò(¨Ñ/Ô/ˆÝ
Ô˜v xÑ0Ô0Ð0åÐ'Ð'Ð'­t°F©|¬|Ð<Ñ<Ô<ˆØ ¨°Ð2Ð2ˆà—’˜7Ñ#Ô#×(Ò(Ñ*Ô*ˆØ—)’)˜GÑ$Ô$×(Ò(¨Ñ0Ô0ˆÝ”(˜<˜<˜<­r¬xÐ8Ñ8Ô8ˆØ—9’9˜WÑ%Ô%×*Ò*Ñ,Ô,ˆØ—I’I˜gÑ&Ô&×+Ò+Ñ-Ô-ˆ	Ý
Ô˜v xÑ0Ô0Ð0Ý
Ô˜v wÑ/Ô/Ð/Ý
Ô˜v yÑ1Ô1Ð1Ð1Ð1rC   ©r   r   r   r+   rp   c                 ó6   — g | ]}t          d dd|z   ¦  «        ‘ŒS )iå  é   rÎ   )r   )r„   Úis     r$   ú
<listcomp>zTestGrouping.<listcomp>Ì  s(   € Ð:Ð:Ð:¨A�Y�t˜Q  Q¡Ñ'Ô'Ð:Ð:Ð:rC   r'   c                 óö   —  |g d¢|¬¦  «        }t          g d¢|d¬¦  «        }|                     |¦  «                             ¦   «         } |ddg¦  «        }d|j        _        t          j        ||¦  «         d S )N©r   r   r+   r'   rw   )r   r   r   r   )rq   rq   )rx   rÍ   r'   r+   )r   r   Úlastrx   rÍ   r;   Úassert_equal)r!   Úframe_or_seriesrx   ÚobjÚgroupsr@   rA   s          r$   Ú$test_groupby_series_named_with_tuplez1TestGrouping.test_groupby_series_named_with_tupleÇ  s†   € ð ˆo˜l˜l˜l°%Ð8Ñ8Ô8ˆÝ˜˜˜¨E¸
ÐCÑCÔCˆØ—’˜VÑ$Ô$×)Ò)Ñ+Ô+ˆØ"�? A q 6Ñ*Ô*ˆØ(ˆŒÔÝ
Œ˜ Ñ)Ô)Ð)Ð)Ð)rC   c                 ó,  — t          ddd¬¦  «        }t          t          j                             d¦  «                             d¦  «        |¬¦  «        }d}t          j        t          |¬¦  «        5  | 	                    d	„ ¦  «         d d d ¦  «         n# 1 swxY w Y   | 	                    d
„ ¦  «         
                    ¦   «         }| 	                    |j        ¦  «         
                    ¦   «         }d |j        _        t          j        ||¦  «         d S )Nz01-Jan-2013rò   ÚMS©rž   r´   r   rw   z''Timestamp' object is not subscriptabler   c                 ó   — | dd…         S )Nr   r(   r—   rÂ   s    r$   ri   zDTestGrouping.test_groupby_grouper_f_sanity_checked.<locals>.<lambda>à  s   €  3 q¨ s¤8€ rC   c                 ó   — | S re   r—   rg   s    r$   ri   zDTestGrouping.test_groupby_grouper_f_sanity_checked.<locals>.<lambda>â  s   €  a€ rC   )r   r   rN   rO   rP   rQ   r   r   Ú	TypeErrorr   r:   rx   r´   r;   r<   )r!   r¼   Útsr1   r@   rA   s         r$   Ú%test_groupby_grouper_f_sanity_checkedz2TestGrouping.test_groupby_grouper_f_sanity_checkedØ  s0  € Ý˜=°"¸4Ð@Ñ@Ô@ˆÝ•B”I×)Ò)¨!Ñ,Ô,×<Ò<¸RÑ@Ô@ÈÐNÑNÔNˆð 8ˆÝŒ]�9¨CÐ0Ñ0Ô0ð 	-ð 	-Ø�JŠJÐ+Ð+Ñ,Ô,Ð,ð	-ð 	-ð 	-ñ 	-ô 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-øøøð 	-ð 	-ð 	-ð 	-ð —’˜K˜KÑ(Ô(×,Ò,Ñ.Ô.ˆØ—:’:˜bœhÑ'Ô'×+Ò+Ñ-Ô-ˆØ"ˆŒÔÝ
Ô˜v xÑ0Ô0Ð0Ð0Ð0s   Á1BÂBÂBc           	      óÈ  — t          ddgdz  t          ddd¬¦  «        dœ¦  «        }t          dd	¬
¦  «        }|                     |dg¦  «        }t	          d¦  «        dfddgt	          d¦  «        dfdgt	          d¦  «        dfdgt	          d¦  «        dfddgi}t          j        |j        |¦  «         t          |j         	                    ¦   «         ¦  «        dk    sJ ‚d S )Nrq   rr   r+   z
2000-01-01z
2000-01-03Ú9h©r´   )Úidrr   r9   r²   r2  r   r   r   z
2000-01-02r'   ro   )
r   r   r	   r   r   r;   rŽ   r%  ÚlenÚkeys)r!   r"   r  rz   rA   s        r$   Útest_groupby_with_datetime_keyz+TestGrouping.test_groupby_with_datetime_keyç  s  € åà˜C�j 1‘nÝ ¨lÀÐFÑFÔFðð ñ
ô 
ˆõ ˜c¨Ð,Ñ,Ô,ˆØ�ZŠZ˜ $˜Ñ(Ô(ˆõ �|Ñ$Ô$ cÐ*¨Q°¨FÝ�|Ñ$Ô$ cÐ*¨Q¨CÝ�|Ñ$Ô$ cÐ*¨Q¨CÝ�|Ñ$Ô$ cÐ*¨Q°¨Fð	
ˆõ 	Ô˜RœY¨Ñ1Ô1Ð1õ �2”9—>’>Ñ#Ô#Ñ$Ô$¨Ò)Ð)Ð)Ð)Ð)Ð)rC   c                 ó¬   — d}t          j        t          |¬¦  «        5  t          |j        |ddg         ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nz:Grouper for '<class 'pandas.DataFrame'>' not 1-dimensionalr   r   )r   r   r-   r   rx   ©r!   r"   r1   s      r$   Ú%test_grouping_error_on_multidim_inputz2TestGrouping.test_grouping_error_on_multidim_inputþ  sš   € ØJˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	/ð 	/Ý�R”X˜r 3¨ *œ~Ñ.Ô.Ð.ð	/ð 	/ð 	/ñ 	/ô 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/øøøð 	/ð 	/ð 	/ð 	/ð 	/ð 	/s   žA	Á	AÁAc                 ó  — |                      d¬¦  «                             ¦   «         }|                      d¬¦  «                             ¦   «         }t          j        ||¦  «         |                      d¬¦  «                             ¦   «         }|                      d¬¦  «                             ¦   «         }t          j        ||¦  «         |                      ddg¬¦  «                             ¦   «         }|                     ¦   «         }t          j        ||¦  «         |                      ddg¬¦  «                             ¦   «         }|                      ddg¬¦  «                             ¦   «         }t          j        ||¦  «         d S )Nr¦   rÏ   ÚsecondéþÿÿÿÚfirst)r   r:   r;   r>   Ú
sort_index)r!   Ú multiindex_dataframe_random_datar@   rA   s       r$   Útest_multiindex_negative_levelz+TestGrouping.test_multiindex_negative_level  si  € à1×9Ò9ÀÐ9ÑCÔC×GÒGÑIÔIˆØ3×;Ò;À(Ð;ÑKÔK×OÒOÑQÔQˆÝ
Ô˜f hÑ/Ô/Ð/à1×9Ò9ÀÐ9ÑCÔC×GÒGÑIÔIˆØ3×;Ò;À'Ð;ÑJÔJ×NÒNÑPÔPˆÝ
Ô˜f hÑ/Ô/Ð/à1×9Ò9ÀÀRÀÐ9ÑIÔI×MÒMÑOÔOˆØ3×>Ò>Ñ@Ô@ˆÝ
Ô˜f hÑ/Ô/Ð/à1×9Ò9ÀÀWÀÐ9ÑNÔN×RÒRÑTÔTˆØ3×;Ò;Ø˜WÐ%ð <ñ 
ô 
ç
Š#‰%Œ%ð 	õ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/rC   c                 ó@  — t          j        t          |j        ¦  «        ¦  «        |_        d}t	          j        t          |¬¦  «        5  |                     dd¬¦  «        d                              dt           j	        i¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nznested renamer is not supportedr   r   F©Úas_indexr   ÚQ)
rN   r¨   r3  r   r   r   r   r   r=   r6   r7  s      r$   Útest_agg_with_dict_raisesz&TestGrouping.test_agg_with_dict_raises  sÝ   € Ý”Y�s 2¤:™œÑ/Ô/ˆŒ
Ø/ˆÝŒ]Õ-°SÐ9Ñ9Ô9ð 	Að 	AØ�JŠJ�q 5ˆJÑ)Ô)¨!Ô,×0Ò0°#µr´w°Ñ@Ô@Ð@ð	Að 	Að 	Añ 	Aô 	Að 	Að 	Að 	Að 	Að 	Að 	Að 	Aøøøð 	Að 	Að 	Að 	Að 	Að 	As   Á	=BÂBÂBc                 ó¬  — ddgddgg}t          j        |¦  «        }t          ddgg|¬¦  «        }d}|                     d¦  «        j        }|d         d	gk    sJ ‚t          j        t          |¬
¦  «        5  |                     dg¦  «        j        }d d d ¦  «         n# 1 swxY w Y   |d         d	gk    sJ ‚t          ddgddgg|¬¦  «        }|                     d¦  «        j        }t          j        t          |¬
¦  «        5  |                     dg¦  «        j        }d d d ¦  «         n# 1 swxY w Y   ||k    sJ ‚t          ddgddgg|¬¦  «        }|                     d¦  «        j        }t          j        t          |¬
¦  «        5  |                     dg¦  «        j        }d d d ¦  «         n# 1 swxY w Y   t          j        ||¦  «         d S )Nr.   Úvaluesú	to filterÚ r   r   r   úIn a future version, the keysr   r   )rG  rH  r   r   )	r   ry   r   r   r%  r;   Úassert_produces_warningr   rŽ   )r!   ÚlstÚmidxr"   r1   r2   rA   r@   s           r$   Ú#test_multiindex_columns_empty_levelz0TestGrouping.test_multiindex_columns_empty_level  sž  € Ø˜Ð" [°"Ð$5Ð6ˆÝÔ% cÑ*Ô*ˆå˜˜C˜�z¨4Ð0Ñ0Ô0ˆà-ˆØ—*’*˜[Ñ)Ô)Ô0ˆØ�sŒ| ˜sÒ"Ð"Ð"Ð"åÔ'­¸cÐBÑBÔBð 	=ð 	=Ø—j’jÐ"3Ð!4Ñ5Ô5Ô<ˆGð	=ð 	=ð 	=ñ 	=ô 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=øøøð 	=ð 	=ð 	=ð 	=à�sŒ| ˜sÒ"Ð"Ð"Ð"å˜˜C˜ 1 c (Ð+°TÐ:Ñ:Ô:ˆà—:’:˜kÑ*Ô*Ô1ˆÝÔ'­¸cÐBÑBÔBð 	<ð 	<Ø—Z’ZÐ!2Ð 3Ñ4Ô4Ô;ˆFð	<ð 	<ð 	<ñ 	<ô 	<ð 	<ð 	<ð 	<ð 	<ð 	<ð 	<øøøð 	<ð 	<ð 	<ð 	<à˜Ò!Ð!Ð!Ð!å˜˜C˜ 1 c (Ð+°TÐ:Ñ:Ô:ˆà—:’:˜kÑ*Ô*Ô1ˆÝÔ'­¸cÐBÑBÔBð 	<ð 	<Ø—Z’ZÐ!2Ð 3Ñ4Ô4Ô;ˆFð	<ð 	<ð 	<ñ 	<ô 	<ð 	<ð 	<ð 	<ð 	<ð 	<ð 	<øøøð 	<ð 	<ð 	<ð 	<å
Ô˜V XÑ.Ô.Ð.Ð.Ð.s6   Á7BÂB#Â&B#ÄD-Ä-D1Ä4D1ÆF4Æ4F8Æ;F8c                 óè  — t          g d¢g d¢g d¢gt          j        g d¢g d¢g¦  «        ¬¦  «        }d}t          j        t
          |¬¦  «        5  |                     d	g¦  «        j        }d d d ¦  «         n# 1 swxY w Y   |                     d	¦  «        j        }t          j        ||¦  «         t          |j	        t          j        g d¢g d
¢g¦  «        ¬¦  «        }t          j        t
          |¬¦  «        5  |                     dg¦  «        j        }d d d ¦  «         n# 1 swxY w Y   |                     d	¦  «        j        }t          j        ||¦  «         t          |j	        g d¢¬¦  «        }t          j        t
          |¬¦  «        5  |                     dg¦  «        j        }d d d ¦  «         n# 1 swxY w Y   |                     d	¦  «        j        }t          j        ||¦  «         d S )Nr   ©r+   r'   ro   r(   ©r   r'   r   r+   ©rq   rr   rr   r3   ©r   r   r   r   r   rI  r   ré   )rs   rs   ÚerS  ©rr   rs   ))rq   rs   rT  )rr   rS  r3   )
r   r   Úfrom_arraysr;   rJ  r   r   r%  rŽ   rF  )r!   r"   r1   rA   r@   Údf2Údf3s          r$   Útest_groupby_multiindex_tuplez*TestGrouping.test_groupby_multiindex_tuple9  sª  € åØˆ\ˆ\˜<˜<˜<¨¨¨Ð6ÝÔ*Ð,@Ð,@Ð,@À,À,À,Ð+OÑPÔPð
ñ 
ô 
ˆð
 .ˆÝÔ'­¸cÐBÑBÔBð 	5ð 	5Ø—z’z 8 *Ñ-Ô-Ô4ˆHð	5ð 	5ð 	5ñ 	5ô 	5ð 	5ð 	5ð 	5ð 	5ð 	5ð 	5øøøð 	5ð 	5ð 	5ð 	5à—’˜HÑ%Ô%Ô,ˆÝ
Ô˜X vÑ.Ô.Ð.åØŒIÝÔ*Ø%Ð%Ð%Ð';Ð';Ð';Ð<ñô ð
ñ 
ô 
ˆõ Ô'­¸cÐBÑBÔBð 	8ð 	8Ø—{’{ J <Ñ0Ô0Ô7ˆHð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8à—’˜HÑ%Ô%Ô,ˆÝ
Ô˜X vÑ.Ô.Ð.å˜œ	Ð+TÐ+TÐ+TÐUÑUÔUˆåÔ'­¸cÐBÑBÔBð 	8ð 	8Ø—{’{ J <Ñ0Ô0Ô7ˆHð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8à—’˜HÑ%Ô%Ô,ˆÝ
Ô˜X vÑ.Ô.Ð.Ð.Ð.s6   ÁA8Á8A<Á?A<Ã;D#Ä#D'Ä*D'ÆF8Æ8F<Æ?F<c                 ó  — t          g d¢g d¢g d¢gt          j        g d¢g d¢g¦  «        ¬¦  «        }|                     dg¦  «        dd	g                              ¦   «         }|                     dg¦  «        d
                              ¦   «         }t          j        ||¦  «         |                     dg¦  «        dd	g                              ¦   «         }|                     dg¦  «        d
                              ¦   «         }t          j        ||¦  «         |                     dg¦  «        dd	g                              ¦   «         }|                     dg¦  «        d
                              ¦   «         }t          j        ||¦  «         |                     dg¦  «        dd	g          	                    ¦   «         }|                     dg¦  «        d
          	                    ¦   «         }	t          j        ||	¦  «         |                     dg¦  «        dd	g          
                    ¦   «         }
|                     dg¦  «        d
          
                    ¦   «         }t          j        |
|¦  «         d}t          j        t          |¬¦  «        5  |                     dg¦  «        dd	g         j        }|                     dg¦  «        d
         j        }d d d ¦  «         n# 1 swxY w Y   t          j        ||¦  «         d S )Nr   rO  rP  rQ  rR  r   rè   ré   rê   rr   rI  r   )r   r   rU  r   r6   r;   r>   r:   r.   ÚminÚmaxrJ  r   r%  rŽ   )r!   r"   Úexpected_meanÚresult_meanÚexpected_sumÚ
result_sumÚexpected_countÚresult_countÚexpected_minÚ
result_minÚexpected_maxÚ
result_maxr1   Úexpected_groupsÚresult_groupss                  r$   Ú4test_groupby_multiindex_partial_indexing_equivalencezATestGrouping.test_groupby_multiindex_partial_indexing_equivalenceY  sò  € åØˆ\ˆ\˜<˜<˜<¨¨¨Ð6ÝÔ*Ð,@Ð,@Ð,@À,À,À,Ð+OÑPÔPð
ñ 
ô 
ˆð
 Ÿ
š
 H :Ñ.Ô.°¸(Ð/CÔD×IÒIÑKÔKˆØ—j’j ( Ñ,Ô,¨SÔ1×6Ò6Ñ8Ô8ˆÝ
Ô˜m¨[Ñ9Ô9Ð9à—z’z 8 *Ñ-Ô-¨x¸Ð.BÔC×GÒGÑIÔIˆØ—Z’Z  
Ñ+Ô+¨CÔ0×4Ò4Ñ6Ô6ˆ
Ý
Ô˜l¨JÑ7Ô7Ð7àŸš X JÑ/Ô/°¸8Ð0DÔE×KÒKÑMÔMˆØ—z’z 8 *Ñ-Ô-¨cÔ2×8Ò8Ñ:Ô:ˆÝ
Ô˜n¨lÑ;Ô;Ð;à—z’z 8 *Ñ-Ô-¨x¸Ð.BÔC×GÒGÑIÔIˆØ—Z’Z  
Ñ+Ô+¨CÔ0×4Ò4Ñ6Ô6ˆ
Ý
Ô˜l¨JÑ7Ô7Ð7à—z’z 8 *Ñ-Ô-¨x¸Ð.BÔC×GÒGÑIÔIˆØ—Z’Z  
Ñ+Ô+¨CÔ0×4Ò4Ñ6Ô6ˆ
Ý
Ô˜l¨JÑ7Ô7Ð7à-ˆÝÔ'­¸cÐBÑBÔBð 	?ð 	?Ø Ÿjšj¨(¨Ñ4Ô4°hÀÐ5IÔJÔQˆOØŸJšJ¨ zÑ2Ô2°3Ô7Ô>ˆMð	?ð 	?ð 	?ñ 	?ô 	?ð 	?ð 	?ð 	?ð 	?ð 	?ð 	?øøøð 	?ð 	?ð 	?ð 	?õ 	Ô˜_¨mÑ<Ô<Ð<Ð<Ð<s   ÊAK Ë K$Ë'K$c                 óŠ  — |}|                      ¦   «         }|                     d|¬¦  «                             ¦   «         }|                     d|¬¦  «                             ¦   «         }|                     |d         j        |¬¦  «                             ¦   «         }|                     |d         j        |¬¦  «                             ¦   «         }	d|j        _        d|	j        _        |j        j        dk    sJ ‚|j        j        dk    sJ ‚t          j        ||¦  «         t          j        ||	¦  «         |j        j        |j        j        d         k    sJ ‚|j        j        |j        j        d         k    sJ ‚|                     d|¬¦  «                             ¦   «         }|                     d|¬¦  «                             ¦   «         }t          j        ||¦  «         t          j        ||	¦  «         d}
t          j
        t          |
¬¦  «        5  |                     d¬	¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )
Nr   ©r·   rà   r   r<  )rà   r:  z2level > 0 or level < -1 only valid with MultiIndexr   rÏ   )rº   r   r:   rF  rx   rÍ   r;   r>   rv   r   r   r-   )r!   rà   r>  r"   ÚframeÚ	deleveledÚresult0Úresult1Ú	expected0Ú	expected1r1   s              r$   Útest_groupby_levelzTestGrouping.test_groupby_levelz  sQ  € à0ˆØ×%Ò%Ñ'Ô'ˆ	à—-’- a¨d�-Ñ3Ô3×7Ò7Ñ9Ô9ˆØ—-’- a¨d�-Ñ3Ô3×7Ò7Ñ9Ô9ˆà—M’M )¨GÔ"4Ô";À$�MÑGÔG×KÒKÑMÔMˆ	Ø—M’M )¨HÔ"5Ô"<À4�MÑHÔH×LÒLÑNÔNˆ	à&ˆ	ŒÔØ'ˆ	ŒÔàŒ}Ô! WÒ,Ð,Ð,Ð,ØŒ}Ô! XÒ-Ð-Ð-Ð-å
Ô˜g yÑ1Ô1Ð1Ý
Ô˜g yÑ1Ô1Ð1ØŒ}Ô! U¤[Ô%6°qÔ%9Ò9Ð9Ð9Ð9ØŒ}Ô! U¤[Ô%6°qÔ%9Ò9Ð9Ð9Ð9ð —-’- g°D�-Ñ9Ô9×=Ò=Ñ?Ô?ˆØ—-’- h°T�-Ñ:Ô:×>Ò>Ñ@Ô@ˆÝ
Ô˜g yÑ1Ô1Ð1Ý
Ô˜g yÑ1Ô1Ð1ð CˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	 ð 	 Ø�JŠJ˜QˆJÑÔÐð	 ð 	 ð 	 ñ 	 ô 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øøøð 	 ð 	 ð 	 ð 	 ð 	 ð 	 s   ÈH8È8H<È?H<c                 óD  — t          dgdz  dgdz  z   t          d¦  «        dœ¦  «                             d¦  «        }|                     d¬¦  «         d}t	          j        t          |¬	¦  «        5  |                     d
¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   r+   r   r(   )ÚexpÚvar1rs  rÏ   z+level name foo is not the name of the indexr   rF   )r   r,   Ú	set_indexr   r   r   r-   r7  s      r$   Útest_groupby_level_index_namesz+TestGrouping.test_groupby_level_index_names›  sé   € å ˜u q™y¨C¨5°1©9Ñ4½eÀA¹h¼hÐGÐGÑHÔH×RÒRØñ
ô 
ˆð 	�
Š
˜ˆ
ÑÔÐØ;ˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	$ð 	$Ø�JŠJ˜UˆJÑ#Ô#Ð#ð	$ð 	$ð 	$ñ 	$ô 	$ð 	$ð 	$ð 	$ð 	$ð 	$ð 	$ð 	$øøøð 	$ð 	$ð 	$ð 	$ð 	$ð 	$s   Á1BÂBÂBc                 óR  — t          ddgg d¢gg d¢g d¢g¬¦  «        }t          t          j        d¦  «        |¬¦  «        }|                     d|¬	¦  «                             ¦   «         }t          d
dgddg¬¦  «        }t          j        ||¦  «         t          ddgg d¢gg d¢g d¢g¬¦  «        }t          t          j        d¦  «        |¬¦  «        }|                     d|¬	¦  «                             ¦   «         }t          d
dgddg¬¦  «        }t          j        ||¦  «         d S )Nr   r   r  )r   r   r   r   r   r   r   r   )r   r   r   r+   r   r   r   r+   )ÚlevelsÚcodesg       @rw   rj  g      @g      6@)r   r   r   r   r¦   r   r   r   g      2@g        r  )r   r   rN   r¨   r   r:   r;   r<   )r!   rà   rx   r  r@   rA   s         r$   Útest_groupby_level_with_nasz(TestGrouping.test_groupby_level_with_nas¥  sN  € åØ˜�F˜L˜L˜LÐ)Ø+Ð+Ð+Ð-EÐ-EÐ-EÐFð
ñ 
ô 
ˆõ •2”9˜S‘>”>¨Ð/Ñ/Ô/ˆØ—’ ¨�Ñ.Ô.×2Ò2Ñ4Ô4ˆÝ˜3 ˜+¨a°¨VÐ4Ñ4Ô4ˆÝ
Ô˜v xÑ0Ô0Ð0åØ˜�F˜L˜L˜LÐ)Ø,Ð,Ð,Ð.FÐ.FÐ.FÐGð
ñ 
ô 
ˆõ •2”9˜S‘>”>¨Ð/Ñ/Ô/ˆØ—’ ¨�Ñ.Ô.×2Ò2Ñ4Ô4ˆÝ˜3 ˜+¨c°3¨ZÐ8Ñ8Ô8ˆÝ
Ô˜v xÑ0Ô0Ð0Ð0Ð0rC   c                 ó6  — |}d}t          j        t          |¬¦  «        5  |                     ¦   «          d d d ¦  «         n# 1 swxY w Y   d}t          j        t          |¬¦  «        5  |                     d d ¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nz*You have to supply one of 'by' and 'level'r   )rß   r·   )r   r   r,  r   )r!   r>  rk  r1   s       r$   Útest_groupby_argszTestGrouping.test_groupby_args½  s  € à0ˆà:ˆÝŒ]�9¨CÐ0Ñ0Ô0ð 	ð 	Ø�MŠM‰OŒOˆOð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð ;ˆÝŒ]�9¨CÐ0Ñ0Ô0ð 	/ð 	/Ø�MŠM˜T¨ˆMÑ.Ô.Ð.ð	/ð 	/ð 	/ñ 	/ô 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/øøøð 	/ð 	/ð 	/ð 	/ð 	/ð 	/s#    AÁAÁAÁ)BÂBÂBzsort,labels©
r   r   r   r   r   r   r   r+   r+   r+   )
r   r   r   r   r   r   r   r+   r+   r+   c                 ó°   — |                      d|¬¦  «        }t          j        |t          j        ¦  «        }t	          j        |j        j        |¦  «         d S )Nr   rj  )r   rN   rü   Úintpr;   Úassert_almost_equalr	  Úids)r!   rà   Úlabelsr>  r2   Ú
exp_labelss         r$   Útest_level_preserve_orderz&TestGrouping.test_level_preserve_orderÉ  sN   € ð 3×:Ò:ÀÈÐ:ÑNÔNˆÝ”X˜f¥b¤gÑ.Ô.ˆ
Ý
Ô˜wÔ/Ô3°ZÑ@Ô@Ð@Ð@Ð@rC   c                 óî   — |                      |j                             d¦  «        ¦  «        }t          j        g d¢t          j        ¬¦  «        }t          j        |j        j	        d         |¦  «         d S )Nr   r}  r›   )
r   rx   Úget_level_valuesrN   rü   r  r;   r€  r	  ry  )r!   r>  r2   rƒ  s       r$   Útest_grouping_labelsz!TestGrouping.test_grouping_labelsÖ  sn   € Ø2×:Ò:Ø,Ô2×CÒCÀAÑFÔFñ
ô 
ˆõ ”XÐ<Ð<Ð<ÅBÄGÐLÑLÔLˆ
Ý
Ô˜wÔ/Ô5°aÔ8¸*ÑEÔEÐEÐEÐErC   c                 óP  — t          dt          ddd¬¦  «        i¦  «        }t          j        |j        d<   t          dd¬¦  «        }d	}|                     |g¦  «        }t          d
¦  «        t          t          t          d¦  «        ¦  «        ¦  «        i}t          j        t          |¬¦  «        5  |j        }d d d ¦  «         n# 1 swxY w Y   t          j        ||¦  «         |                     |¦  «        }t          d
¦  «        di}t          j        |j        |¦  «         d S )Nr   z1/1/2011im  r9   r)  r¦   ÚYSr²   rI  z
2011-01-01il  r   )r   r   rÐ   ÚNaTr_   r	   r   r   r
   rY   r,   r;   rJ  r   r%  rŽ   )r!   r"   r  r1   rz   rA   r@   s          r$   Útest_list_grouper_with_natz'TestGrouping.test_list_grouper_with_natÝ  sI  € å˜¥
¨:¸sÈÐ MÑ MÔ MÐNÑOÔOˆÝ”fˆŒ�‰Ý˜f¨4Ð0Ñ0Ô0ˆØ-ˆð �ZŠZ˜˜	Ñ"Ô"ˆÝ˜lÑ+Ô+­Uµ4½¸c¹
¼
Ñ3CÔ3CÑ-DÔ-DÐEˆÝÔ'­¸cÐBÑBÔBð 	ð 	Ø”YˆFð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	å
Ô˜V XÑ.Ô.Ð.ð —’˜GÑ$Ô$ˆÝ˜lÑ+Ô+¨SÐ1ˆÝ
Ô˜Vœ]¨HÑ5Ô5Ð5Ð5Ð5s   Â2CÃC
ÃC
zfunc,expectedÚ	transformr   ©rÍ   rœ   r=   r   ©rœ   rÍ   )rÍ   rœ   rx   rª   c                 óÂ   — t          g g dœ¦  «        }|                     dd¬¦  «        } t          |d         |¦  «        d„ ¦  «        }t          j        ||¦  «         d S )Nrñ   r   Tr¢   r   c                 ó   — | S re   r—   rg   s    r$   ri   z>TestGrouping.test_evaluate_with_empty_groups.<locals>.<lambda>  s   € ¨q€ rC   )r   r   Úgetattrr;   r<   )r!   rc   rA   r"   r#   r@   s         r$   Útest_evaluate_with_empty_groupsz,TestGrouping.test_evaluate_with_empty_groupsð  sd   € õ4 ˜2 "�~�~Ñ&Ô&ˆØ�JŠJ�q TˆJÑ*Ô*ˆØ$•˜˜1œ˜tÑ$Ô$ [ [Ñ1Ô1ˆÝ
Ô˜v xÑ0Ô0Ð0Ð0Ð0rC   c                 óØ   — t          g g g dœ¦  «        }|                     dd¬¦  «        }|                     d„ ¦  «        }t          g g dœd ¬¦  «        }t          j        ||¦  «         d S )NrÆ   r   Fr¢   c                 ó0   — | |                       ¦   «         z  S re   rf   rg   s    r$   ri   zMTestGrouping.test_groupby_apply_empty_with_group_keys_false.<locals>.<lambda>  s   €  1 q§u¢u¡w¤w¡;€ rC   )r   r   rw   )r   r   rª   r;   r>   )r!   r"   r#   r@   rA   s        r$   Ú.test_groupby_apply_empty_with_group_keys_falsez;TestGrouping.test_groupby_apply_empty_with_group_keys_false  sx   € õ
 ˜R b¨rÐ2Ð2Ñ3Ô3ˆØ�JŠJ�s uˆJÑ-Ô-ˆØ—’Ð.Ð.Ñ/Ô/ˆÝ 2¨BÐ/Ð/°tÐ<Ñ<Ô<ˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/rC   c           	      ó^  — t          g dd¬¦  «        }|                     g ¦  «        }|                     ¦   «         }|                     t	          g t
          j        ¬¦  «        ¦  «        }t          j        ||¦  «         t          |j
        j        ¦  «        dk    sJ ‚t          j        |j
        j        t          j        g t          j        t
          j        ¦  «        ¬¦  «        ¦  «         |j
        j        dk    sJ ‚|                     |¦  «        }|j
        }|j        }dg}||k    sJ ‚d S )NrÍ   Úfloat64r�  r›   r   r   )r   r   r6   Úset_axisr
   rN   r  r;   r<   r3  r	  Ú	groupingsÚassert_numpy_array_equalr�  rü   rœ   Úngroupsrv   )r!   r  Úgrr@   rA   rz   r  s          r$   Útest_groupby_emptyzTestGrouping.test_groupby_empty  s  € å�2˜F¨)Ð4Ñ4Ô4ˆØ�YŠY�r‰]Œ]ˆà—’‘”ˆØ—:’:�e B­b¬gÐ6Ñ6Ô6Ñ7Ô7ˆÝ
Ô˜v xÑ0Ô0Ð0õ �2”;Ô(Ñ)Ô)¨QÒ.Ð.Ð.Ð.Ý
Ô#ØŒKŒO�RœX bµ´½¼Ñ0AÔ0AÐBÑBÔBñ	
ô 	
ð 	
ð Œ{Ô" aÒ'Ð'Ð'Ð'ð �YŠY�q‰\Œ\ˆØ”+ˆØ”ˆØ�8ˆØ˜Ò!Ð!Ð!Ð!Ð!Ð!rC   c           
      óž  — t          dt          j        dgd t          j        dggg d¢¬¦  «                             ddg¦  «        }|                     ddg¬¦  «                             ¦   «         }t          g t          t          dgd	¬
¦  «        t          g d¬
¦  «        gg g gddg¬¦  «        dgd¬¦  «        }t          j	        ||¦  «         d S )Nrh   r    é   rÆ   r   r   r   rÏ   Ústrr›   r—  )rx  ry  rv   r   rµ   )r*   rx   r   rœ   )
r   rN   Únanru  r   r:   r   r
   r;   r>   r?   s       r$   Ú%test_groupby_level_index_value_all_naz2TestGrouping.test_groupby_level_index_value_all_na2  sï   € åØ•2”6˜2Ð ¥r¤v¨rÐ 2Ð3¸_¸_¸_ð
ñ 
ô 
ç
Š)�S˜#�JÑ
Ô
ð 	ð —’ 3¨ *�Ñ-Ô-×1Ò1Ñ3Ô3ˆÝØÝÝ˜s˜e¨5Ð1Ñ1Ô1µ5¸À9Ð3MÑ3MÔ3MÐNØ˜2�hØ˜C�jðñ ô ð
 �EØð	
ñ 	
ô 	
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/rC   c           	      óZ  — t          g d¢g d¢gg d¢¬¦  «        }|                     ddg¦  «        }||j        dk              }|                     d¦  «                             ¦   «         }t          dd	gt          g t          j        d¬
¦  «        ¬¦  «        }t          j	        ||¦  «         d S )N)é{   rq   r  )r¤  rr   r  )r2  ÚcategoryÚvaluer   r2  r¥  r   r—  r¦  rŽ  )rœ   r   rx   )
r   ru  r¦  r   r:   r
   rN   rµ   r;   r>   )r!   r"   Úemptyr@   rA   s        r$   Ú#test_groupby_multiindex_level_emptyz0TestGrouping.test_groupby_multiindex_level_emptyD  s¿   € åØˆ_ˆ_˜o˜o˜oÐ.Ð8SÐ8SÐ8Sð
ñ 
ô 
ˆð �\Š\˜4 Ð,Ñ-Ô-ˆØ�2”8˜a’<Ô ˆØ—’˜tÑ$Ô$×(Ò(Ñ*Ô*ˆÝØØ�IÝ˜¥"¤(°Ð6Ñ6Ô6ð
ñ 
ô 
ˆõ
 	Ô˜f hÑ/Ô/Ð/Ð/Ð/rC   c           	      óH  — t          g d¢g d¢g d¢g d¢t          d¦  «        dœ¦  «        }|                     ddg¬	¦  «        }|                     d¦  «                             d
„ ¦  «        }||j                 }t          j        |                     d¬¦  «        |¦  «         d S )N)
r   r)   é	   r'   r+   r+   ro   rª  r+   r(   )
r+   r)   r(   r'   rª  r   r   r  r   rª  )
r(   ro   r  r)   ro   r   r   r    r  r)   )
r‡   r‡   r‡   )r   r'   rt   rt   rt   rt   )ro   )r(   Ú
aaabbbbcde)Únum1Únum2Únum3Úcategory_tupleÚcategory_stringr¯  r¬  ©rß   c                 ó.   — |                       d¬¦  «        S )Nr¬  r±  )Úsort_valuesrg   s    r$   ri   zHTestGrouping.test_groupby_tuple_keys_handle_multiindex.<locals>.<lambda>j  s   € ¸a¿mºmÈv¸mÑ>VÔ>V€ rC   T)Údrop)	r   rY   r³  r   rª   r   r;   r>   rº   )r!   r"   rA   r@   s       r$   Ú)test_groupby_tuple_keys_handle_multiindexz6TestGrouping.test_groupby_tuple_keys_handle_multiindexS  sÇ   € åà6Ð6Ð6Ø6Ð6Ð6Ø7Ð7Ð7ð#ð #ð #õ $(¨Ñ#5Ô#5ð!ð ñ
ô 
ˆð( —>’>Ð&6¸Ð%?�>Ñ@Ô@ˆØ—’Ð,Ñ-Ô-×3Ò3Ð4VÐ4VÑWÔWˆØ˜FœNÔ+ˆÝ
Ô˜f×0Ò0°dÐ0Ñ;Ô;¸XÑFÔFÐFÐFÐFrC   c                 óh  — t          dgdggdg¬¦  «                             d„ ¬¦  «        }t          dg¬¦  «                             d„ ¬¦  «        }t          dd¬	¦  «        g}|                     |¦  «                             ¦   «          |                     |¦  «                             ¦   «          d S )
Nz
05/29/2019z
05/28/2019r   r   c                 ó6   — t          j        | d         ¦  «        S ©Nr   ©rÐ   Úto_datetime©r"   s    r$   ri   zGTestGrouping.test_groupby_grouper_immutable_list_item.<locals>.<lambda>r  ó   € �BœN¨2¨f¬:Ñ6Ô6€ rC   )r   c                 ó6   — t          j        | d         ¦  «        S r¸  r¹  r»  s    r$   ri   zGTestGrouping.test_groupby_grouper_immutable_list_item.<locals>.<lambda>u  r¼  rC   Ú1Dr²   )r   Úassignr	   r   Úhead)r!   Údf1rV  Úgrouperss       r$   Ú(test_groupby_grouper_immutable_list_itemz5TestGrouping.test_groupby_grouper_immutable_list_itemn  sÅ   € õ ˜,˜¨,¨Ð8À6À(ÐKÑKÔK×RÒRØ6Ð6ð Sñ 
ô 
ˆõ   Ð)Ñ)Ô)×0Ò0Ø6Ð6ð 1ñ 
ô 
ˆõ  ¨TÐ2Ñ2Ô2Ð3ˆà�Š�HÑÔ×"Ò"Ñ$Ô$Ð$à�Š�HÑÔ×"Ò"Ñ$Ô$Ð$Ð$Ð$rC   N)5r’   r“   r”   r   r•   r–   r
   rY   rN   r¨   Úfloatr   r   r«   r¾   rÄ   rÇ   r×   ræ   rï   r÷   r  r  r  r  r  r  r,   r&  r.  r5  r8  r?  rD  rM  rX  rh  rq  rv  rz  r|  r„  r‡  r‹  r   r—  r’  r•  r�  r¢  r¨  rµ  rÃ  r—   rC   r$   r™   r™   ´   s`  € € € € € Ø„[×ÒØàˆE�$�$�w‘-”-Ñ Ô ØˆE�)�"”)˜A‘,”,ÑÔØˆE�)�"”)˜A UÐ+Ñ+Ô+Ñ,Ô,ØˆJ�|¨QÐ/Ñ/Ô/ØˆL˜¨qÐ1Ñ1Ô1ð	
ñ	ô 	ðGð Gñ	ô 	ðGð0ð 0ð 0ð80ð 0ð 0ð0ð 0ð 0ð>1ð 1ð 1ð4 „[×Ò˜V e¨T ]Ñ3Ô3ð0ð 0ñ 4Ô3ð0ð ,0ð ,0ð ,0ð\5ð 5ð 5ð0ð 0ð 0ð&0ð 0ð 0ð,"ð "ð "ðð ð ð
0ð 0ð 0ð2ð 2ð 2ð& „[×ÒØàˆLˆLØ Ð Ð Ø:Ð:°°°q±´Ð:Ñ:Ô:ð	
ñô ð*ð *ñô ð*ð1ð 1ð 1ð*ð *ð *ð./ð /ð /ð
0ð 0ð 0ð(Að Að Að/ð /ð /ð8/ð /ð /ð@=ð =ð =ðB ð  ð  ðB$ð $ð $ð1ð 1ð 1ð0
/ð 
/ð 
/ð „[×ÒØàÐ1Ð1Ð1Ð2ØÐ2Ð2Ð2Ð3ð	
ñô ðAð Añô ðAðFð Fð Fð6ð 6ð 6ð& „[×ÒØð Ø�˜A R¤ZÐ0Ñ0Ô0ðð
 Ø�Ø "¤*°E°E¸"ÀBÄJÐUVÐ4WÑ4WÔ4Wðñ ô ðð Ø�Ø "¤*°E°E¸"ÀBÄJÐUVÐ4WÑ4WÔ4Wðñ ô ðð	
ñô ð*1ð 1ñ+ô ð*1ð	0ð 	0ð 	0ð"ð "ð "ð00ð 0ð 0ð$0ð 0ð 0ðGð Gð Gð6%ð %ð %ð %ð %rC   r™   c                   ó8   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	dS )	ÚTestGetGroupc                 ó²  — t          t          j        g d¢¦  «        g d¢g d¢dœ¦  «        }|                     d¦  «        }t	          t          |j        ¦  «        ¦  «        }|                     |¦  «        }|                     t          |¦  «         	                    ¦   «         ¦  «        }|                     t          t          |¦  «        ¦  «        ¦  «        }t          j        ||¦  «         t          j        ||¦  «         |                     ddg¦  «        }t	          t          |j        ¦  «        ¦  «        }|                     |¦  «        }|                     t          |d         ¦  «         	                    ¦   «         |d         f¦  «        }|                     t          t          |d         ¦  «        ¦  «        |d         f¦  «        }t          j        ||¦  «         t          j        ||¦  «         d	}t          j        t          |¬
¦  «        5  |                     d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          |¬
¦  «        5  |                     d¦  «         d d d ¦  «         n# 1 swxY w Y   d}t          j        t          |¬
¦  «        5  |                     d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)ú10-Oct-2013rÈ  rÈ  ú11-Oct-2013rÉ  rÉ  )rF   rF   rG   rF   rF   rG   rÀ   )ÚDATEÚlabelÚVALrÊ  rË  r   r   z<must supply a tuple to get_group with multiple grouping keysr   rF   zHmust supply a same-length tuple to get_group with multiple grouping keys)rF   rG   Úbaz)r   rÐ   rº  r   rã   rä   r%  rå   r   Úto_pydatetimer   r;   r>   r   r   r-   )r!   r"   r#   r³   rn  rT   Úresult3r1   s           r$   Útest_get_groupzTestGetGroup.test_get_group„  sD  € õ åœðð ð ñ	ô 	ð DÐCÐCØ)Ð)Ð)ðð ñ
ô 
ˆð" �JŠJ�vÑÔˆÝ•4˜œ‘>”>Ñ"Ô"ˆØ—+’+˜cÑ"Ô"ˆØ—+’+�i¨™nœn×:Ò:Ñ<Ô<Ñ=Ô=ˆØ—+’+�c¥)¨C¡.¤.Ñ1Ô1Ñ2Ô2ˆÝ
Ô˜g wÑ/Ô/Ð/Ý
Ô˜g wÑ/Ô/Ð/à�JŠJ˜ Ð(Ñ)Ô)ˆå•4˜œ‘>”>Ñ"Ô"ˆØ—+’+˜cÑ"Ô"ˆØ—+’+�y¨¨Q¬Ñ0Ô0×>Ò>Ñ@Ô@À#ÀaÄ&ÐIÑJÔJˆØ—+’+�s¥9¨S°¬VÑ#4Ô#4Ñ5Ô5°s¸1´vÐ>Ñ?Ô?ˆÝ
Ô˜g wÑ/Ô/Ð/Ý
Ô˜g wÑ/Ô/Ð/ð MˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	ð 	Ø�KŠK˜ÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	åŒ]�:¨SÐ1Ñ1Ô1ð 	ð 	Ø�KŠK˜ÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	àXˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	/ð 	/Ø�KŠKÐ-Ñ.Ô.Ð.ð	/ð 	/ð 	/ñ 	/ô 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/øøøð 	/ð 	/ð 	/ð 	/ð 	/ð 	/s6   ÈH9È9H=É H=ÉJÊJÊJÊ)KËKËKc                 óð  — t          g d¢¦  «        }g d¢}|                     t          j        |d         |¦  «        |¬¦  «        }|                     t          j        dd¦  «        ¦  «        }t          ddgddg¬¦  «        }t          j        ||¦  «         d	}t          j	        t          |¬
¦  «        5  |                     t          j        dd¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)r+   r   r  r(   )r   ro   r    é   r   )rû   ro   r+   r   rw   z"Interval\(10, 15, closed='right'\)r   r    rÒ  )r   r   rÐ   Úcutrå   ÚIntervalr;   r>   r   r   r    )r!   rû   rs   Úbinsr#   r@   rA   r1   s           r$   Útest_get_group_empty_binsz&TestGetGroup.test_get_group_empty_bins³  s)  € Ý�l�l�lÑ#Ô#ˆØˆ~ˆ~ˆØ�IŠI•b”f˜Q˜qœT 4Ñ(Ô(°8ˆIÑ<Ô<ˆð —’�Rœ[¨¨AÑ.Ô.Ñ/Ô/ˆÝ˜a ˜V¨A¨q¨6Ð2Ñ2Ô2ˆÝ
Ô˜f hÑ/Ô/Ð/à3ˆÝŒ]�8¨3Ð/Ñ/Ô/ð 	-ð 	-Ø�KŠK�œ B¨Ñ+Ô+Ñ,Ô,Ð,ð	-ð 	-ð 	-ñ 	-ô 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-øøøð 	-ð 	-ð 	-ð 	-ð 	-ð 	-s   Â5)C+Ã+C/Ã2C/c                 ó  — t          g d¢gdg¬¦  «        j        }|                     d¦  «        }t          dddgiddg¬¦  «        }|                     d¦  «        }t	          j        ||¦  «         t          j        g d¢¦  «        }t          dd„ |D ¦   «         i¦  «        }|                     d¦  «        }|                     d	¦  «        }t          d|d         f|d         fgiddg¬¦  «        }t	          j        ||¦  «         d S )
N)©r   rñ   rØ  rñ   r�  rw   rØ  r   r   )ú
2010-01-01ú
2010-01-02rÙ  rÚ  c                 ó   — g | ]}|f‘ŒS r—   r—   )r„   rh   s     r$   r  z@TestGetGroup.test_get_group_grouped_by_tuple.<locals>.<listcomp>Ë  s   € Ð1Ð1Ð1¨  Ð1Ð1Ð1rC   )rÙ  )r   rþ   r   rå   r;   r>   rÐ   rº  )r!   r"   rœ  rA   r@   Údts         r$   Útest_get_group_grouped_by_tuplez,TestGetGroup.test_get_group_grouped_by_tupleÂ  s  € åÐ4Ð4Ð4Ð5¸e¸WÐEÑEÔEÔGˆØ�ZŠZ˜ÑÔˆÝ˜e d¨D \Ð2¸1¸a¸&ÐAÑAÔAˆØ—’˜dÑ#Ô#ˆÝ
Ô˜f hÑ/Ô/Ð/åŒ^ÐTÐTÐTÑUÔUˆÝ˜Ð1Ð1¨bÐ1Ñ1Ô1Ð2Ñ3Ô3ˆØ�ZŠZ˜ÑÔˆØ—’˜oÑ.Ô.ˆÝ˜e r¨!¤u h°°A´°Ð%9Ð:À1ÀaÀ&ÐIÑIÔIˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/rC   c                 óÚ  ‡— t          dd„ dD ¦   «         i¦  «        Š‰                     d¦  «        }‰                     ˆfd„¦  «        }|                     t          t	          |j                             ¦   «         ¦  «        ¦  «        ¦  «        }|                     t          t	          |j                             ¦   «         ¦  «        ¦  «        ¦  «        }t          j        ||¦  «         d S )Nr~   c              3   óŒ   K  — | ]?}t           j                             d ¦  «                             ddd¦  «        D ]}||fV — Œ	Œ@dS r€   r�   rƒ   s      r$   r…   zKTestGetGroup.test_get_group_grouped_by_tuple_with_lambda.<locals>.<genexpr>Õ  r†   rC   r‡   c                 ó"   •— ‰j         | df         S r‰   rŠ   r‹   s    €r$   ri   zJTestGetGroup.test_get_group_grouped_by_tuple_with_lambda.<locals>.<lambda>Þ  rŒ   rC   )	r   r   rå   rã   rä   r%  r4  r;   r>   r�   s        @r$   Ú+test_get_group_grouped_by_tuple_with_lambdaz8TestGetGroup.test_get_group_grouped_by_tuple_with_lambdaÑ  sÜ   ø€ åàð ð à#ðñ ô ðñ
ô 
ˆð �ZŠZ˜Ñ!Ô!ˆØ—J’JÐ6Ð6Ð6Ð6Ñ7Ô7ˆ	à—<’<¥¥T¨"¬)¯.ª.Ñ*:Ô*:Ñ%;Ô%;Ñ <Ô <Ñ=Ô=ˆØ×$Ò$¥T­$¨yÔ/?×/DÒ/DÑ/FÔ/FÑ*GÔ*GÑ%HÔ%HÑIÔIˆå
Ô˜f hÑ/Ô/Ð/Ð/Ð/rC   c                 óè   — t          j        d¦  «        }d}t          ||t          ¬¦  «        }t	          d¬¦  «        }|                     |¦  «        }t          t          |¦  «        d ¦  «        �J ‚d S )Nr—   r›   r9   r1  )rÐ   rÑ   r   Úobjectr	   r   rã   rä   )r!   rx   r*   Úseriesr  r2   s         r$   Útest_groupby_with_emptyz$TestGetGroup.test_groupby_with_emptyå  sn   € ÝÔ  Ñ$Ô$ˆØˆÝ˜˜e­6Ð2Ñ2Ô2ˆÝ˜sÐ#Ñ#Ô#ˆØ—.’. Ñ)Ô)ˆÝ•D˜‘M”M 4Ñ(Ô(Ð0Ð0Ð0Ð0Ð0rC   c                 ó°  — t          dt          d¦  «        i¦  «        }t          j        |                     d¦  «                             d¦  «        |j        ddg         ¦  «         t          t          g d¢d¬¦  «        t          g d¬¦  «        ¬	¦  «        }t          j        |                     d¦  «                             ¦   «         |¦  «         t          j        |                     d¦  «         	                    ¦   «         |¦  «         |j        g d
¢         }t          j        |                     d¦  «         
                    d¦  «        |¦  «         d S )Nrq   Úabssbabr   ro   )rq   rr   r  )rÍ   r   r›   )rx   r   ©r+   r'   ro   r   )r   rY   r;   r>   r   rå   r_   r
   r.   r:   Únth)r!   r"   rs  s      r$   Útest_groupby_with_single_columnz,TestGetGroup.test_groupby_with_single_columní  s  € Ý˜�T )™_œ_Ð-Ñ.Ô.ˆÝ
Ô˜bŸjšj¨™oœo×7Ò7¸Ñ<Ô<¸b¼gÀqÈ!Àf¼oÑNÔNÐNåÝ˜˜˜¨cÐ2Ñ2Ô2½EÀ"ÈEÐ<RÑ<RÔ<Rð
ñ 
ô 
ˆõ 	Ô˜bŸjšj¨™oœo×3Ò3Ñ5Ô5°sÑ;Ô;Ð;Ý
Ô˜bŸjšj¨™oœo×1Ò1Ñ3Ô3°SÑ9Ô9Ð9àŒg�i�i�iÔ ˆÝ
Ô˜bŸjšj¨™oœo×1Ò1°!Ñ4Ô4°cÑ:Ô:Ð:Ð:Ð:rC   c                 ó
  — t          g d¢g d¢g d¢gg d¢¬¦  «        }|                     ddg¦  «        }|                     g d¢¦  «                             ¦   «         }|j        d	         d
k    sJ ‚|j        d         dk    sJ ‚d S )N)rF   rG   r   r   )rF   rG   r   r   )rF   rÍ  r   r+   )r<  r:  ÚthirdrI   r   r<  r:  )r<  r:  rì  )rF   rG   r   r   )rF   rÍ  r   r   )r   ru  r   r0   rR   r\   s     r$   Útest_gb_key_len_equal_axis_lenz+TestGetGroup.test_gb_key_len_equal_axis_lenú  s³   € õ Ø#Ð#Ð#Ð%;Ð%;Ð%;Ð=SÐ=SÐ=SÐTØ7Ð7Ð7ð
ñ 
ô 
ˆð �\Š\˜7 HÐ-Ñ.Ô.ˆØ�ZŠZÐ4Ð4Ð4Ñ5Ô5×:Ò:Ñ<Ô<ˆØŒvÐ)Ô*¨aÒ/Ð/Ð/Ð/ØŒvÐ)Ô*¨aÒ/Ð/Ð/Ð/Ð/Ð/rC   N)
r’   r“   r”   rÐ  rÖ  rÝ  rá  rå  rê  rí  r—   rC   r$   rÆ  rÆ  ƒ  s~   € € € € € ð-/ð -/ð -/ð^-ð -ð -ð0ð 0ð 0ð0ð 0ð 0ð(1ð 1ð 1ð;ð ;ð ;ð0ð 0ð 0ð 0ð 0rC   rÆ  c                   ó8   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	dS )	ÚTestIterationc                 ó–  — |                      dg¦  «        }d}t          j        t          |¬¦  «        5  |j        }||j        u sJ ‚	 d d d ¦  «         n# 1 swxY w Y   |                     ¦   «         D ]0\  }}|j        |         d         |k                         ¦   «         sJ ‚Œ1|                      ddg¦  «        }|j        }||j        u sJ ‚|                     ¦   «         D ]g\  }}|j        |         d         |d         k                         ¦   «         sJ ‚|j        |         d         |d         k                         ¦   «         sJ ‚Œhd S )Nr   rI  r   r   r   r   )r   r;   rJ  r   r%  ÚitemsrR   Úall)r!   r"   r2   r1   r%  ÚkÚvs          r$   Útest_groupszTestIteration.test_groups  s–  € Ø—*’*˜c˜UÑ#Ô#ˆØ-ˆåÔ'­¸cÐBÑBÔBð 	,ð 	,Ø”^ˆFØ˜Wœ^Ð+Ð+Ð+Ð+Ð+ð	,ð 	,ð 	,ñ 	,ô 	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,øøøð 	,ð 	,ð 	,ð 	,ð —L’L‘N”Nð 	/ð 	/‰DˆAˆqØ”F˜1”I˜c”N aÒ'×,Ò,Ñ.Ô.Ð.Ð.Ð.Ð.à—*’*˜c 3˜ZÑ(Ô(ˆØ”ˆØ˜œÐ'Ð'Ð'Ð'à—L’L‘N”Nð 	2ð 	2‰DˆAˆqØ”F˜1”I˜c”N a¨¤dÒ*×/Ò/Ñ1Ô1Ð1Ð1Ð1Ø”F˜1”I˜c”N a¨¤dÒ*×/Ò/Ñ1Ô1Ð1Ð1Ð1Ð1ð	2ð 	2s   ´AÁAÁAc                 ób   — |                      d„ d„ g¦  «        }|j        j        d         D ]}Œd S )Nc                 ó*   — |                       ¦   «         S re   )Úweekdayrg   s    r$   ri   z9TestIteration.test_grouping_is_iterable.<locals>.<lambda>#  s   € ¨Q¯YªY©[¬[€ rC   c                 ó   — | j         S re   )Úyearrg   s    r$   ri   z9TestIteration.test_grouping_is_iterable.<locals>.<lambda>#  s   € ÀAÄF€ rC   r   )r   r	  r™  )r!   Útsframer2   r#   s       r$   Útest_grouping_is_iterablez'TestIteration.test_grouping_is_iterable   sK   € ð —/’/Ð#8Ð#8Ð:JÐ:JÐ"KÑLÔLˆð Ô!Ô+¨AÔ.ð 	ð 	ˆAØð	ð 	rC   c                 óä  — t          t          j        d¦  «        ¦  «        }t          j        g d¢¦  «        }t          j        g d¢¦  «        }|                     ||g¦  «        }t          |¦  «        }dd|ddg         fdd|d	g         fd
d|dg         fd
d|ddg         fg}t          |¦  «        D ]<\  }\  \  }}	}
||         \  }}}||k    sJ ‚||	k    sJ ‚t          j        |
|¦  «         Œ=d S )Nr(   )rq   rq   rq   rr   rr   rr   ©Ú1Ú2rÿ  r   rÿ  r   rq   rÿ  r   r   r   r   rr   r'   r+   ro   )	r   rN   r¨   rü   r   rY   Ú	enumerater;   r<   )r!   r  Úk1Úk2r2   ÚiteratedrA   r  rI   rJ   rK   Úe1Úe2Úe3s                 r$   Útest_multi_iterzTestIteration.test_multi_iter)  s  € Ý•2”9˜Q‘<”<Ñ Ô ˆÝŒXÐ4Ð4Ð4Ñ5Ô5ˆÝŒXÐ4Ð4Ð4Ñ5Ô5ˆà—)’)˜R ˜HÑ%Ô%ˆå˜‘=”=ˆà�#�q˜!˜Q˜”yÐ!Ø�#�q˜!˜”vÐØ�#�q˜!˜”vÐØ�#�q˜!˜Q˜”yÐ!ð	
ˆõ '0°Ñ&9Ô&9ð 	.ð 	.Ñ"ˆAÑ"‘
��c˜EØ! !œ‰JˆB��BØ˜’9�9�9�9Ø˜’9�9�9�9ÝÔ" 5¨"Ñ-Ô-Ð-Ð-ð		.ð 	.rC   c                 óÌ  — t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          t           j                             d¦  «                             d¦  «        t           j                             d¦  «                             d¦  «        ||dœg d¢¬¦  «        }|                     dd	g¦  «        }t          |¦  «        }|j        }d
d|j	        |dg                  fd
d|j	        |ddg                  fdd|j	        |ddg                  fdd|j	        |dg                  fg}t          |¦  «        D ]<\  }	\  \  }
}}||	         \  }}}||
k    sJ ‚||k    sJ ‚t          j        ||¦  «         Œ=t          j        g d¢¦  «        |d<   t          j        g d¢¦  «        |d	<   |                     dd	g¦  «        }d„ |D ¦   «         }t          |¦  «        dk    sJ ‚d S )N)rr   rr   rr   rq   rq   rq   rþ  r   r(   )Úv1Úv2r  r  )rI   rJ   rK   ÚfourÚfiveÚsixrw   r  r  rq   rÿ  r'   r   r+   ro   rr   r   r   )rÿ  rÿ  rÿ  r   r   r   c                 ó   — i | ]\  }}||“Œ	S r—   r—   )r„   r³   Úgps      r$   ú
<dictcomp>z7TestIteration.test_multi_iter_frame.<locals>.<dictcomp>a  s   € Ð1Ð1Ð1™g˜c 2�#�rÐ1Ð1Ð1rC   )rN   rü   r   rO   rP   rQ   r   rY   rx   rR   r  r;   r>   r3  )r!   Úthree_groupr  r  r"   r2   r  r{   rA   r  rI   rJ   rK   r  r  r  r%  s                    r$   Útest_multi_iter_framez#TestIteration.test_multi_iter_frame=  s  € ÝŒXÐ4Ð4Ð4Ñ5Ô5ˆÝŒXÐ4Ð4Ð4Ñ5Ô5ˆÝå”i×+Ò+¨AÑ.Ô.×>Ò>¸qÑAÔAÝ”i×+Ò+¨AÑ.Ô.×>Ò>¸qÑAÔAØØð	ð ð AÐ@Ð@ð
ñ 
ô 
ˆð —*’*˜d D˜\Ñ*Ô*ˆõ ˜‘=”=ˆØŒhˆà�#�r”v˜c 1 #œhÔ'Ð(Ø�#�r”v˜c 1 a &œkÔ*Ð+Ø�#�r”v˜c 1 a &œkÔ*Ð+Ø�#�r”v˜c 1 #œhÔ'Ð(ð	
ˆõ '0°Ñ&9Ô&9ð 	-ð 	-Ñ"ˆAÑ"‘
��c˜EØ! !œ‰JˆB��BØ˜’9�9�9�9Ø˜’9�9�9�9ÝÔ! %¨Ñ,Ô,Ð,Ð,õ ”8Ð:Ð:Ð:Ñ;Ô;ˆˆ4‰Ý”8Ð:Ð:Ð:Ñ;Ô;ˆˆ4‰Ø—*’*˜d D˜\Ñ*Ô*ˆð 2Ð1¨Ð1Ñ1Ô1ˆÝ�6‰{Œ{˜aÒÐÐÐÐÐrC   c           	      óš  — t          t          |                     d¦  «        ¦  «        ¦  «         t          t          |                     ddg¦  «        ¦  «        ¦  «         t          t          |d                              |d         ¦  «        ¦  «        ¦  «         t          t          |d                              |d         |d         g¦  «        ¦  «        ¦  «         t          t          |                     d¦  «        d         ¦  «        ¦  «         t          t          |                     ddg¦  «        d         ¦  «        ¦  «         d S )Nr   r   r   )rá   rä   r   r\   s     r$   Útest_dictifyzTestIteration.test_dictifyd  sû   € Ý�T�"—*’*˜S‘/”/Ñ"Ô"Ñ#Ô#Ð#Ý�T�"—*’*˜c 3˜ZÑ(Ô(Ñ)Ô)Ñ*Ô*Ð*Ý�T�"�S”'—/’/ " S¤'Ñ*Ô*Ñ+Ô+Ñ,Ô,Ð,Ý�T�"�S”'—/’/ 2 c¤7¨B¨s¬GÐ"4Ñ5Ô5Ñ6Ô6Ñ7Ô7Ð7Ý�T�"—*’*˜S‘/”/ #Ô&Ñ'Ô'Ñ(Ô(Ð(Ý�T�"—*’*˜c 3˜ZÑ(Ô(¨Ô-Ñ.Ô.Ñ/Ô/Ð/Ð/Ð/rC   c                 óB  — t          ddgddgdœt          j        ddg¦  «        ¬¦  «        }|                     t	          d¬	¦  «        d
g¦  «        }t          |j        ¦  «        dk    sJ ‚|j        dk    sJ ‚t          d¦  «        df|j        v sJ ‚t          d¦  «        df|j        v sJ ‚| 	                    t          d¦  «        df¦  «        }t          j        ||j        dgd d …f         ¦  «         | 	                    t          d¦  «        df¦  «        }t          j        ||j        dgd d …f         ¦  «         t          g d¢g d¢dœt          j        g d¢¦  «        ¬¦  «        }|                     t	          d¬	¦  «        d
g¦  «        }t          |j        ¦  «        dk    sJ ‚|j        dk    sJ ‚t          d¦  «        df|j        v sJ ‚t          d¦  «        df|j        v sJ ‚| 	                    t          d¦  «        df¦  «        }t          j        ||j        ddgd d …f         ¦  «         | 	                    t          d¦  «        df¦  «        }t          j        ||j        dgd d …f         ¦  «         t          g d¢g d¢dœt          j        g d¢¦  «        ¬¦  «        }|                     t	          d¬	¦  «        d
g¦  «        }t          |j        ¦  «        dk    sJ ‚|j        dk    sJ ‚t          d¦  «        df|j        v sJ ‚t          d¦  «        df|j        v sJ ‚t          d¦  «        df|j        v sJ ‚| 	                    t          d¦  «        df¦  «        }t          j        ||j        dgd d …f         ¦  «         | 	                    t          d¦  «        df¦  «        }t          j        ||j        dgd d …f         ¦  «         | 	                    t          d¦  «        df¦  «        }t          j        ||j        dgd d …f         ¦  «         d S )NÚstartéÒ  é.  )ÚeventÚchangeú
2014-09-10ú
2013-10-10rw   rÌ   r1  r  r   z
2014-09-30z
2013-10-31r   r   )r  r  r  )r  r  i£#  )r  r  z
2014-09-15)r  r  z
2014-08-05r+   z
2014-08-31)r   rÐ   rÑ   r   r	   r3  r%  r›  r   rå   r;   r>   r_   )r!   r"   r2   Úress       r$   Útest_groupby_with_small_elemz*TestIteration.test_groupby_with_small_eleml  st  € õ Ø Ð(°T¸4°LÐAÐAÝÔ" L°,Ð#?Ñ@Ô@ð
ñ 
ô 
ˆð —*’*�g¨4Ð0Ñ0Ô0°'Ð:Ñ;Ô;ˆÝ�7”>Ñ"Ô" aÒ'Ð'Ð'Ð'ØŒ !Ò#Ð#Ð#Ð#Ý˜,Ñ'Ô'¨Ð1°W´^ÐCÐCÐCÐCÝ˜,Ñ'Ô'¨Ð1°W´^ÐCÐCÐCÐCà×Ò¥¨<Ñ!8Ô!8¸'Ð BÑCÔCˆÝ
Ô˜c 2¤7¨A¨3°°°¨6¤?Ñ3Ô3Ð3Ø×Ò¥¨<Ñ!8Ô!8¸'Ð BÑCÔCˆÝ
Ô˜c 2¤7¨A¨3°°°¨6¤?Ñ3Ô3Ð3åØ1Ð1Ð1Ð=OÐ=OÐ=OÐPÐPÝÔ"Ð#MÐ#MÐ#MÑNÔNð
ñ 
ô 
ˆð —*’*�g¨4Ð0Ñ0Ô0°'Ð:Ñ;Ô;ˆÝ�7”>Ñ"Ô" aÒ'Ð'Ð'Ð'ØŒ !Ò#Ð#Ð#Ð#Ý˜,Ñ'Ô'¨Ð1°W´^ÐCÐCÐCÐCÝ˜,Ñ'Ô'¨Ð1°W´^ÐCÐCÐCÐCà×Ò¥¨<Ñ!8Ô!8¸'Ð BÑCÔCˆÝ
Ô˜c 2¤7¨A¨q¨6°1°1°1¨9Ô#5Ñ6Ô6Ð6Ø×Ò¥¨<Ñ!8Ô!8¸'Ð BÑCÔCˆÝ
Ô˜c 2¤7¨A¨3°°°¨6¤?Ñ3Ô3Ð3õ Ø1Ð1Ð1Ð=OÐ=OÐ=OÐPÐPÝÔ"Ð#MÐ#MÐ#MÑNÔNð
ñ 
ô 
ˆð —*’*�g¨4Ð0Ñ0Ô0°'Ð:Ñ;Ô;ˆÝ�7”>Ñ"Ô" aÒ'Ð'Ð'Ð'ØŒ !Ò#Ð#Ð#Ð#Ý˜,Ñ'Ô'¨Ð1°W´^ÐCÐCÐCÐCÝ˜,Ñ'Ô'¨Ð1°W´^ÐCÐCÐCÐCÝ˜,Ñ'Ô'¨Ð1°W´^ÐCÐCÐCÐCà×Ò¥¨<Ñ!8Ô!8¸'Ð BÑCÔCˆÝ
Ô˜c 2¤7¨A¨3°°°¨6¤?Ñ3Ô3Ð3Ø×Ò¥¨<Ñ!8Ô!8¸'Ð BÑCÔCˆÝ
Ô˜c 2¤7¨A¨3°°°¨6¤?Ñ3Ô3Ð3Ø×Ò¥¨<Ñ!8Ô!8¸'Ð BÑCÔCˆÝ
Ô˜c 2¤7¨A¨3°°°¨6¤?Ñ3Ô3Ð3Ð3Ð3rC   c                 ó   — t          j        t          d¦  «        t          d¦  «        g¦  «        }t          g d¢g|¬¦  «        }|                     |d         ¦  «        }|j        j        d                              ¦   «         }d}||k    sJ ‚d S )NÚAABÚaba)r   r   r+   r   )r   rq   r   zGrouping(('A', 'a')))r   rU  rY   r   r   r	  r™  Ú__repr__)r!   rÔ   r"   rœ  r@   rA   s         r$   Útest_grouping_string_reprz'TestIteration.test_grouping_string_repr   s‡   € åÔ#¥T¨%¡[¤[µ$°u±+´+Ð$>Ñ?Ô?ˆÝ˜	˜	˜	�{¨BÐ/Ñ/Ô/ˆØ�ZŠZ˜˜:œÑ'Ô'ˆà”Ô& qÔ)×2Ò2Ñ4Ô4ˆØ)ˆØ˜Ò!Ð!Ð!Ð!Ð!Ð!rC   N)
r’   r“   r”   rõ  rü  r  r  r  r  r$  r—   rC   r$   rï  rï    s   € € € € € ð2ð 2ð 2ð&ð ð ð.ð .ð .ð(% ð % ð % ðN0ð 0ð 0ð24ð 24ð 24ðh"ð "ð "ð "ð "rC   rï  c                  ó°  — t          g d¢g d¢g d¢dœ¦  «                             d¦  «        } |                      t          d¬¦  «        t          d¬¦  «        gd¬	¦  «        }|j        j        d
         j        rJ ‚|j        j        d         j        sJ ‚|                     ¦   «         }t          ddgddgddgdœ¦  «        }t          j	        ||¦  «         d S )Nrn   rè  )rq   rr   r3   rq   rÏ   rr   rÂ   FrA  r   r   r   r  ro   )
r   ru  r   r	   r	  r™  Úin_axisr:   r;   r>   )r"   rz   r@   rA   s       r$   Útest_grouping_by_key_is_in_axisr'  «  sÞ   € å	˜˜˜¨¨¨¸¸¸ÐCÐCÑ	DÔ	D×	NÒ	NÈsÑ	SÔ	S€BØ	�Š•W 3Ð'Ñ'Ô'­°SÐ)9Ñ)9Ô)9Ð:ÀUˆÑ	KÔ	K€BØŒ{Ô$ QÔ'Ô/Ð/Ð/Ð/ØŒ;Ô  Ô#Ô+Ð+Ð+Ð+à�VŠV‰XŒX€FÝ  1˜v¨Q°¨F¸!¸Q¸Ð@Ð@ÑAÔA€HÝÔ˜& (Ñ+Ô+Ð+Ð+Ð+rC   c                  ó®  — t          dt          j        d¦  «        t          j        gi¦  «        } |                      t          j        ddgt
          j        ¬¦  «        ¦  «        d                              ¦   «         }t          dddœdt          ¬¦  «        }|j                             t
          j        ¦  «        |_        t          j        ||¦  «         d S )	Nr¦  r   r   r›   TFr‡   r�  )r   rÐ   Ú	TimedeltarŠ  r   rN   rü   rµ   Úanyr   Úboolrx   ró   r;   r<   )r"   r@   rA   s      r$   Útest_groupby_any_with_timedeltar,  ·  s¨   € å	�G�bœl¨1™oœo­r¬vÐ6Ð7Ñ	8Ô	8€Bà�ZŠZ�œ ! Q ­r¬xÐ8Ñ8Ô8Ñ9Ô9¸'ÔB×FÒFÑHÔH€Få˜$ 5Ð)Ð)°½tÐDÑDÔD€HØ”^×*Ò*­2¬8Ñ4Ô4€H„NåÔ˜6 8Ñ,Ô,Ð,Ð,Ð,rC   ) Ú__doc__Údatetimer   r   ÚnumpyrN   r   Úpandas.errorsr   r   ÚpandasrÐ   r   r   r	   r
   r   r   r   r   r   Úpandas._testingÚ_testingr;   Úpandas.core.groupby.grouperr   r   r™   rÆ  rï  r'  r,  r—   rC   r$   ú<module>r5     s  ððð ðð ð ð ð ð ð ð ð
 Ð Ð Ð Ø €€€ðð ð ð ð ð ð ð ð
 Ð Ð Ð ð
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð Ð Ð Ð Ð Ð Ø 0Ð 0Ð 0Ð 0Ð 0Ð 0ðH/ð H/ð H/ð H/ð H/ñ H/ô H/ð H/ð^H%ð H%ð H%ð H%ð H%ñ H%ô H%ð H%ð^B0ð B0ð B0ð B0ð B0ñ B0ô B0ð B0ðR\"ð \"ð \"ð \"ð \"ñ \"ô \"ð \"ð~	,ð 	,ð 	,ð	-ð 	-ð 	-ð 	-ð 	-rC   