§
    tŠtjU‰  ã                   óî   — d Z ddlmZmZmZ ddlZddlZddlmc 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 ddlmZ ddlmZ ddlmZ ej        d„ ¦   «         Zej        d„ ¦   «         Z G d	„ d
¦  «        ZdS )z5
test with the TimeGrouper / grouping with datetimes
é    )ÚdatetimeÚ	timedeltaÚtimezoneN)Ú	DataFrameÚDatetimeIndexÚIndexÚ
MultiIndexÚSeriesÚ	TimestampÚ
date_rangeÚoffsets)ÚGrouper)Ú
BinGrouperc                  óø   — t          g d¢t          ddddd¦  «        t          ddddd¦  «        t          dddd	d¦  «        t          ddd
dd¦  «        t          j        t          ddddd¦  «        gdœ¦  «        } | S )z­
    DataFrame used by groupby_with_truncated_bingrouper, made into
    a separate fixture for easier reuse in
    test_groupby_apply_timegrouper_with_nat_apply_squeeze
    ©é   é   é   é   é	   r   éÝ  r   r   é   r   r   é
   é   r   é   é   )ÚQuantityÚDate)r   r   ÚpdÚNaT)Údfs    úc/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/pandas/tests/groupby/test_timegrouper.pyÚframe_for_truncated_bingrouperr#       s–   € õ 
à+Ð+Ð+å˜$  1 b¨!Ñ,Ô,Ý˜$  1 b¨!Ñ,Ô,Ý˜$  A r¨1Ñ-Ô-Ý˜$  A r¨1Ñ-Ô-Ý”Ý˜$  1 b¨!Ñ,Ô,ðð
	
ð 
	
ñ
ô 
€Bð €Ió    c                 óÂ   — | }t          dd¬¦  «        }|                     |¦  «        }t          |j        j        ¦  «        t          |j        j        ¦  «        k    sJ ‚|S )a.  
    GroupBy object such that gb._grouper is a BinGrouper and
    len(gb._grouper.result_index) < len(gb._grouper.group_keys_seq)

    Aggregations on this groupby should have

        dti = date_range("2013-09-01", "2013-10-01", freq="5D", name="Date")

    As either the index or an index level.
    r   Ú5D©ÚkeyÚfreq)r   ÚgroupbyÚlenÚ_grouperÚresult_indexÚcodes)r#   r!   ÚtdgÚgbs       r"   Ú!groupby_with_truncated_bingrouperr1   7   s\   € ð 
(€Bå
�f 4Ð
(Ñ
(Ô
(€CØ	�Š�C‰Œ€Bõ ˆrŒ{Ô'Ñ(Ô(­C°´Ô0AÑ,BÔ,BÒBÐBÐBÐBà€Ir$   c                   ó’  — e Zd Zd„ Zej                             dddg¦  «        d„ ¦   «         Zd„ Zej                             dg d¢¦  «        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d„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zej        j         d „ ¦   «         Z! e"j#        d!¦  «        d"„ ¦   «         Z$d#S )$ÚTestGroupByc                 óº  — t          d                     ¦   «         g d¢t          ddddd¦  «        t          ddddd¦  «        t          dd	dd
d¦  «        t          dd	dd	d¦  «        t          ddddd¦  «        t          ddddd¦  «        gdœ¦  «        }|                     d¬¦  «        }||fD �]«}|                     dg¦  «        }t          ddddd|j        j        ¬¦  «        }t          |rdndddœ|¬¦  «        }|                     dt          i¦  «        }|r|                     ddi¦  «        }d|j
        d<   d|j
        d <   d!|j
        d"<   t          j        g d#¢d$¬%¦  «        |j
        g d&¢df<   |                     d¦  «                             ¦   «         }t          j        ||¦  «         |                     ¦   «         }|                     t'          d¬'¦  «        ¦  «                             ¦   «         }	t          j        |	|¦  «         |                     t'          d¬'¦  «        ¦  «                             ¦   «         }
t          j        |
|¦  «         �Œ­d S )(NzCarl Carl Carl Carl Joe Carlr   r   r   r   r   r   r   r   r   r   é   r   r   ©ÚBuyerr   r   r   ©Úbyr   Ú20130901Ú20131205r&   Úleft)r)   ÚnameÚ	inclusiveÚunitÚ )r7   r   ©Úindexr7   ÚstrÚCarlCarlCarl)r   r   ÚCarlCarl)é   r   ÚJoe)r   r   )é   rF   r   Úint64©Údtype)r   rF   r   ©r)   )r   Úsplitr   Úsort_valuesÚ	set_indexr   rB   r?   ÚastypeÚobjectÚilocÚnpÚarrayÚresampleÚsumÚtmÚassert_frame_equalÚ
sort_indexr*   r   )ÚselfÚusing_infer_stringÚdf_originalÚdf_reorderedr!   Úexp_dtiÚexpectedÚresult1Ú	df_sortedÚresult2Úresult3s              r"   Útest_groupby_with_timegrouperz)TestGroupBy.test_groupby_with_timegrouperO   s†  € õ  à7×=Ò=Ñ?Ô?Ø/Ð/Ð/å˜T 1 a¨¨QÑ/Ô/Ý˜T 1 a¨¨QÑ/Ô/Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 1 a¨¨QÑ/Ô/ððð ñ
ô 
ˆð  #×.Ò.°*Ð.Ñ=Ô=ˆà Ð-ð !	5ñ !	5ˆBØ—’˜v˜hÑ'Ô'ˆBå ØØØØØ Ø”X”]ðñ ô ˆGõ !Ø 2Ð9˜"˜"¸ÀqÐIÐIØðñ ô ˆHð  —’¨µÐ'8Ñ9Ô9ˆHØ!ð =Ø#Ÿ?š?¨G°UÐ+;Ñ<Ô<�Ø"0ˆHŒM˜$ÑØ",ˆHŒM˜$ÑØ#(ˆHŒM˜%Ñ Ý+-¬8°J°J°JÀgÐ+NÑ+NÔ+NˆHŒM˜*˜*˜* a˜-Ñ(à—k’k $Ñ'Ô'×+Ò+Ñ-Ô-ˆGÝÔ! '¨8Ñ4Ô4Ð4àŸš™œˆIØ×'Ò'­°TÐ(:Ñ(:Ô(:Ñ;Ô;×?Ò?ÑAÔAˆGÝÔ! '¨8Ñ4Ô4Ð4à—j’j¥¨dÐ!3Ñ!3Ô!3Ñ4Ô4×8Ò8Ñ:Ô:ˆGÝÔ! '¨8Ñ4Ô4Ð4Ñ4ðC!	5ð !	5r$   Úshould_sortTFc                 ó¨  — t          d                     ¦   «         d                     ¦   «         g d¢t          ddddd¦  «        t          ddddd¦  «        t          dd	dd
d¦  «        t          dd	dd	d¦  «        t          ddddd¦  «        t          ddddd¦  «        gdœ¦  «        }|r|                     dd¬¦  «        }|                     dd¬¦  «        }|                     t          d¬¦  «        ¦  «        }|j        sJ ‚t          |j	        t          ¦  «        sJ ‚|j        }t          |t          ¦  «        sJ ‚t          |¦  «        dk    sJ ‚d S )NzA A A A A BzCarl Mark Carl Joe Joe Carl)r   r   r   é   r   r   r   r   r   r   r   r   r   r   r5   r   ©ÚBranchr7   r   r   r   F©r9   Ú	ascendingr   ©ÚdropÚ6MErL   r   )r   rM   r   rN   rO   r*   r   Ú
group_keysÚ
isinstancer,   r   ÚgroupsÚdictr+   )rZ   re   r!   Úgrq   s        r"   Ú%test_groupby_with_timegrouper_methodsz1TestGroupBy.test_groupby_with_timegrouper_methodsˆ   sk  € õ
 à'×-Ò-Ñ/Ô/Ø6×<Ò<Ñ>Ô>Ø.Ð.Ð.å˜T 1 a¨¨QÑ/Ô/Ý˜T 1 a¨¨QÑ/Ô/Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0ðð	ð ñ
ô 
ˆð  ð 	@Ø—’ :¸�Ñ?Ô?ˆBà�\Š\˜& uˆ\Ñ-Ô-ˆØ�JŠJ•w EÐ*Ñ*Ô*Ñ+Ô+ˆØŒ|ÐÐˆ|å˜!œ*¥jÑ1Ô1Ð1Ð1Ð1Ø”ˆÝ˜&¥$Ñ'Ô'Ð'Ð'Ð'Ý�6‰{Œ{˜aÒÐÐÐÐÐr$   c                 ó‚  — t          d                     ¦   «         d                     ¦   «         g d¢t          ddddd¦  «        t          ddddd¦  «        t          dd	dd
d¦  «        t          dd	dd	d¦  «        t          dd	dd
d¦  «        t          dd	dd	d¦  «        t          ddddd¦  «        t          ddddd¦  «        gdœ¦  «                             d¦  «        }|                     dd¬¦  «        }||fD �]—}t          d                     ¦   «         g d¢t          ddddd¦  «        t          ddddd¦  «        t          ddddd¦  «        gdœ¦  «                             ddg¦  «        }d}|                     t          d¬¦  «        dg¦  «                             d¬¦  «        }t          j	        ||¦  «         t          d                     ¦   «         g d¢t          ddddd¦  «        t          ddddd¦  «        t          ddddd¦  «        t          ddddd¦  «        gdœ¦  «                             ddg¦  «        }|                     t          d ¬¦  «        dg¦  «                             d¬¦  «        }t          j	        ||¦  «         �Œ™t          d                     ¦   «         d                     ¦   «         g d¢t          dd	ddd¦  «        t          dd	ddd¦  «        t          dd	dd
d¦  «        t          dd	dd	d¦  «        t          dd	dd
d¦  «        t          dd	dd	d¦  «        t          dd	ddd¦  «        t          dd	ddd¦  «        gdœ¦  «                             d¦  «        }|                     dd¬¦  «        }||fD �]³}t          d!                     ¦   «         g d"¢t          dd	ddd¦  «        t          dd	ddd¦  «        t          dd	ddd¦  «        t          dd	ddd¦  «        t          dd	ddd¦  «        gdœ¦  «                             ddg¦  «        }|                     t          d#¬¦  «        dg¦  «                             d¬¦  «        }t          j	        ||¦  «         |                     t          d$¬¦  «        dg¦  «                             d¬¦  «        }t          d                     ¦   «         g d¢t          dd	ddd¦  «        t          dd	ddd¦  «        t          dd	ddd¦  «        gdœ¦  «                             ddg¦  «        }t          j	        ||¦  «         | 
                    ¦   «         }|                     t          d$d¬%¦  «        dg¦  «                             d¬¦  «        }t          j	        ||¦  «         t          j        t          d&¬'¦  «        5  |                     t          d$d(¬%¦  «        dg¦  «                             ¦   «          d d d ¦  «         n# 1 swxY w Y   |                     d¦  «        }|                     t          d$d¬)¦  «        dg¦  «                             d¬¦  «        }t          j	        ||¦  «         |                     t          d$d¬)¦  «        dg¦  «                             d¬¦  «        }t          j	        ||¦  «         t          j        t          d*¬'¦  «        5  |                     t          d$d(¬)¦  «        dg¦  «                             ¦   «          d d d ¦  «         n# 1 swxY w Y   |                     ¦   «         }|j        t#          j        d¦  «        z   |d<   |                     t          d$d¬%¦  «        dg¦  «                             d¬¦  «        }t          d                     ¦   «         g d¢t          dd+d,dd¦  «        t          dd+d,dd¦  «        t          dd+d,dd¦  «        gdœ¦  «                             ddg¦  «        }t          j	        ||¦  «         d-}t          j        t          |¬'¦  «        5  |                     t          d$dd¬.¦  «        dg¦  «                             ¦   «          d d d ¦  «         n# 1 swxY w Y   t          dggdgt'          t          dd	ddd¦  «        gt#          j        ¦   «         d¬/¦  «        ¬0¦  «        }|                     t          d$¬¦  «        ¦  «                             d¬¦  «        }t          j	        ||¦  «         |                     t          d$¬¦  «        g¦  «                             d¬¦  «        }t          j	        ||¦  «         |j                             d¦  «        |_        |j        j        t#          j        ¦   «         k    sJ ‚|                     t          d$d¬%¦  «        ¦  «                             d¬¦  «        }t          j	        ||¦  «         |                     t          d$d¬%¦  «        g¦  «                             d¬¦  «        }t          j	        ||¦  «         �Œµd S )1NzA A A A A A A Bz$Carl Mark Carl Carl Joe Joe Joe Carl)r   r   r   r   rg   r   r   r   r   r   r   r   r   r   r   r   r5   r   rh   r   r   Frj   zCarl Joe Mark)r   r   r   é   r6   r7   z!The default value of numeric_onlyÚYErL   T)Únumeric_onlyzCarl Mark Carl Joe)r   r   r   r   é   Ú6MSzCarl Joe Mark Carl Joe)rF   rg   r   é   r   Ú1DÚ1ME©r)   r(   z#'The grouper name foo is not found')ÚmatchÚfoo)r)   ÚlevelzThe level foo is not validé   é   z2The Grouper cannot specify both a key and a level!)r)   r(   r�   ©r)   r=   ©ÚcolumnsrB   )r   rM   r   rO   rN   r*   r   rV   rW   rX   Úreset_indexÚpytestÚraisesÚKeyErrorÚ
ValueErrorÚcopyrB   r   ÚMonthEndr   Úshiftr)   )rZ   r\   ra   r!   r_   ÚmsgÚresults          r"   Ú test_timegrouper_with_reg_groupsz,TestGroupBy.test_timegrouper_with_reg_groups©   s}  € õ  à+×1Ò1Ñ3Ô3Ø?×EÒEÑGÔGØ4Ð4Ð4å˜T 1 a¨¨QÑ/Ô/Ý˜T 1 a¨¨QÑ/Ô/Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0ð	ð	ð ñ
ô 
÷  Š)�FÑ
Ô
ð! 	ð$  ×+Ò+¨zÀUÐ+ÑKÔKˆ	à 	Ð*ð 	4ñ 	4ˆBÝ à,×2Ò2Ñ4Ô4Ø +  å   r¨2¨q°!Ñ4Ô4Ý   r¨2¨q°!Ñ4Ô4Ý   r¨2¨q°!Ñ4Ô4ððð ñ
ô 
÷ Ši˜ Ð)Ñ*Ô*ð ð 6ˆCØ—Z’Z¥¨dÐ!3Ñ!3Ô!3°WÐ =Ñ>Ô>×BÒBÐPTÐBÑUÔUˆFÝÔ! &¨(Ñ3Ô3Ð3å à1×7Ò7Ñ9Ô9Ø -  å   q¨!¨Q°Ñ2Ô2Ý   q¨!¨Q°Ñ2Ô2Ý   q¨!¨Q°Ñ2Ô2Ý   q¨!¨Q°Ñ2Ô2ð	ð	ð 	ñô ÷ Ši˜ Ð)Ñ*Ô*ð ð —Z’Z¥¨eÐ!4Ñ!4Ô!4°gÐ >Ñ?Ô?×CÒCÐQUÐCÑVÔVˆFÝÔ! &¨(Ñ3Ô3Ð3Ñ3åà+×1Ò1Ñ3Ô3Ø?×EÒEÑGÔGØ4Ð4Ð4å˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0ð	ð	ð ñ
ô 
÷  Š)�FÑ
Ô
ð! 	ð$  ×+Ò+¨zÀUÐ+ÑKÔKˆ	Ø 	Ð*ð h	4ñ h	4ˆBÝ à5×;Ò;Ñ=Ô=Ø 0Ð 0Ð 0å   r¨1¨a°Ñ3Ô3Ý   r¨1¨a°Ñ3Ô3Ý   r¨1¨a°Ñ3Ô3Ý   r¨1¨a°Ñ3Ô3Ý   r¨1¨a°Ñ3Ô3ðð
ð 
ñô ÷ Ši˜ Ð)Ñ*Ô*ð ð —Z’Z¥¨dÐ!3Ñ!3Ô!3°WÐ =Ñ>Ô>×BÒBÐPTÐBÑUÔUˆFÝÔ! &¨(Ñ3Ô3Ð3à—Z’Z¥¨eÐ!4Ñ!4Ô!4°gÐ >Ñ?Ô?×CÒCÐQUÐCÑVÔVˆFÝ à,×2Ò2Ñ4Ô4Ø +  å   r¨2¨q°!Ñ4Ô4Ý   r¨2¨q°!Ñ4Ô4Ý   r¨2¨q°!Ñ4Ô4ððð ñ
ô 
÷ Ši˜ Ð)Ñ*Ô*ð õ Ô! &¨(Ñ3Ô3Ð3ð —’Ñ!Ô!ˆBØ—Z’Z¥¨e¸Ð!@Ñ!@Ô!@À'Ð JÑKÔK×OÒOØ!ð Pñ ô ˆFõ Ô! &¨(Ñ3Ô3Ð3å”�xÐ/TÐUÑUÔUð Lð LØ—
’
�G¨°EÐ:Ñ:Ô:¸GÐDÑEÔE×IÒIÑKÔKÐKðLð Lð Lñ Lô Lð Lð Lð Lð Lð Lð Løøøð Lð Lð Lð Lð —’˜fÑ%Ô%ˆBØ—Z’Z¥¨e¸6Ð!BÑ!BÔ!BÀGÐ LÑMÔM×QÒQØ!ð Rñ ô ˆFõ Ô! &¨(Ñ3Ô3Ð3Ø—Z’Z¥¨e¸1Ð!=Ñ!=Ô!=¸wÐ GÑHÔH×LÒLØ!ð Mñ ô ˆFõ Ô! &¨(Ñ3Ô3Ð3å”�zÐ1MÐNÑNÔNð Nð NØ—
’
�G¨°eÐ<Ñ<Ô<¸gÐFÑGÔG×KÒKÑMÔMÐMðNð Nð Nñ Nô Nð Nð Nð Nð Nð Nð Nøøøð Nð Nð Nð Nð —’‘”ˆBØœ¥GÔ$4°QÑ$7Ô$7Ñ7ˆBˆv‰JØ—Z’Z¥¨e¸Ð!@Ñ!@Ô!@À'Ð JÑKÔK×OÒOØ!ð Pñ ô ˆFõ !à,×2Ò2Ñ4Ô4Ø +  å   r¨2¨q°!Ñ4Ô4Ý   r¨2¨q°!Ñ4Ô4Ý   r¨2¨q°!Ñ4Ô4ððð ñ
ô 
÷ Ši˜ Ð)Ñ*Ô*ð õ Ô! &¨(Ñ3Ô3Ð3ð GˆCÝ”�z°Ð5Ñ5Ô5ð ð Ø—
’
Ý %¨V¸6ÐBÑBÔBÀGÐLñô ç’#‘%”%�%ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ !Ø��Ø#˜Ý#Ý˜d B¨¨A¨qÑ1Ô1Ð2½Ô9IÑ9KÔ9KÐRXðñ ô ðñ ô ˆHð —Z’Z¥¨UÐ 3Ñ 3Ô 3Ñ4Ô4×8Ò8ÀdÐ8ÑKÔKˆFÝÔ! &¨(Ñ3Ô3Ð3à—Z’Z¥¨eÐ!4Ñ!4Ô!4Ð 5Ñ6Ô6×:Ò:ÈÐ:ÑMÔMˆFÝÔ! &¨(Ñ3Ô3Ð3à%œ^×1Ò1°!Ñ4Ô4ˆHŒNØ”>Ô&­'Ô*:Ñ*<Ô*<Ò<Ð<Ð<Ð<Ø—Z’Z¥¨U¸Ð ?Ñ ?Ô ?Ñ@Ô@×DÒDÐRVÐDÑWÔWˆFÝÔ! &¨(Ñ3Ô3Ð3à—Z’Z¥¨e¸Ð!@Ñ!@Ô!@Ð AÑBÔB×FÒFØ!ð Gñ ô ˆFõ Ô! &¨(Ñ3Ô3Ð3Ñ3ðQh	4ð h	4s6   Ö/9W4×4W8	×;W8	Û9\Ü\	Ü\	à.:a4á4a8	á;a8	r)   )ÚDÚMErw   zQE-APRc                 ó  — t          t          j        g d¢¦  «        g d¢g d¢g d¢dœ¦  «                             d¦  «        }|                     d¦  «        d                              |¦  «                             d	¬
¦  «                             ¦   «                              ddg¦  «         	                    ¦   «          
                    d¦  «        }d|_        | 	                    ¦   «                              t          |¬¦  «        dg¦  «        d                              ¦   «         }t          j        ||¦  «         |                     t          |¬¦  «        dg¦  «        d                              ¦   «         }t          j        ||¦  «         d S )N)Ú20121002Ú20121007Ú20130130Ú20130202Ú20130305r•   Ú20121207r—   r˜   r™   r˜   r™   )r   r   r   r   r   r   r   r   r   r   r   r   )iþ  il  i  i  éÉ   io  éZ   i8  ég  i-  r�   i!  )r5   é   r   rH   é'   r   r   rœ   é-   é"   r   r5   )ÚdateÚuser_idÚ
whole_costÚcost1r¢   r£   r¤   r   )Ú	min_countrI   rL   )r   r   Úto_datetimerO   r*   rU   rV   ÚdropnaÚreorder_levelsrY   rP   r=   r   rW   Úassert_series_equal)rZ   r)   r!   r_   r`   rb   s         r"   Ú%test_timegrouper_with_reg_groups_freqz1TestGroupBy.test_timegrouper_with_reg_groups_freq^  s†  € õ åœðð ð ñô ð  @Ð?Ð?ðð ð ð GÐFÐFðA!ð !ñ#
ô #
÷F Š)�FÑ
Ô
ðG 	ðL �JŠJ�yÑ!Ô! ,Ô/ßŠX�d‰^Œ^ßŠS˜1ˆSÑÔßŠV‰XŒXßŠ^˜V YÐ/Ñ0Ô0ßŠZ‰\Œ\ßŠV�G‰_Œ_ð 	ð %ˆŒð �MŠM‰OŒO×#Ò#¥W°$Ð%7Ñ%7Ô%7¸Ð$CÑDÔDÀ\ÔR×VÒVÑXÔXð 	õ 	Ô˜w¨Ñ1Ô1Ð1à—*’*�g¨4Ð0Ñ0Ô0°)Ð<Ñ=Ô=¸lÔK×OÒOÑQÔQˆÝ
Ô˜w¨Ñ1Ô1Ð1Ð1Ð1r$   c                 ó°  — t          d                     ¦   «         g d¢t          ddddd¦  «        t          ddddd¦  «        t          dd	dd
d¦  «        t          dd	dd	d¦  «        t          ddddd¦  «        t          ddddd¦  «        gdœ¦  «        }|                     d¬¦  «        }|j        g d¢         |j        ddg         |j        dg         g}g d¢}||fD ]w}|                     t          dd¬¦  «        ¦  «        }t          ||d¬¦  «        D ]>\  }}t          |¦  «        }	| 	                    |	¦  «        }
t          j        |
|¦  «         Œ?Œx|j        dg         |j        dg         |j        dg         g}g d¢}||fD ]~}|                     dt          dd¬¦  «        g¦  «        }t          ||d¬¦  «        D ]C\  \  }}}t          |¦  «        }	| 	                    ||	f¦  «        }
t          j        |
|¦  «         ŒDŒ|                     d¦  «        }|                     d¬¦  «        }|j        g d¢         |j        ddg         |j        dg         g}||fD ]v}|                     t          d¬¦  «        ¦  «        }t          ||d¬¦  «        D ]>\  }}t          |¦  «        }	| 	                    |	¦  «        }
t          j        |
|¦  «         Œ?Œwd S )NzCarl Joe Joe Carl Joe Carlr   r   r   r   r   r   r   r   r   r   r5   r   r   r6   r   r8   )r   r   r   r{   )ú
2013-09-30ú
2013-10-31ú
2013-12-31r“   r   r~   T)Ústrict))rG   r­   )ÚCarlr®   )rG   r¯   r7   rL   )r   rM   r   rN   rR   r*   r   Úzipr   Ú	get_grouprW   rX   rO   )rZ   r\   r]   Úexpected_listÚdt_listr!   ÚgroupedÚtr_   Údtr�   Úg_listÚbs                r"   Útest_timegrouper_get_groupz&TestGroupBy.test_timegrouper_get_group™  sa  € õ  à5×;Ò;Ñ=Ô=Ø/Ð/Ð/å˜T 1 a¨¨QÑ/Ô/Ý˜T 1 a¨¨QÑ/Ô/Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 2 q¨"¨aÑ0Ô0Ý˜T 1 a¨¨QÑ/Ô/ððð ñ
ô 
ˆð #×.Ò.°*Ð.Ñ=Ô=ˆð Ô˜Y˜Y˜YÔ'ØÔ˜a ˜VÔ$ØÔ˜a˜SÔ!ð
ˆð
 =Ð<Ð<ˆà Ð-ð 	8ð 	8ˆBØ—j’j¥¨d¸Ð!?Ñ!?Ô!?Ñ@Ô@ˆGÝ" 7¨MÀ$ÐGÑGÔGð 8ð 8‘��8Ý˜q‘\”\�Ø ×*Ò*¨2Ñ.Ô.�ÝÔ% f¨hÑ7Ô7Ð7Ð7ð8ð Ô˜a˜SÔ!ØÔ˜a˜SÔ!ØÔ˜a˜SÔ!ð
ˆð
 XÐWÐWˆà Ð-ð 	8ð 	8ˆBØ—j’j '­7¸À&Ð+IÑ+IÔ+IÐ!JÑKÔKˆGÝ$'¨°ÀdÐ$KÑ$KÔ$Kð 8ð 8Ñ ‘��A˜Ý˜q‘\”\�Ø ×*Ò*¨A¨r¨7Ñ3Ô3�ÝÔ% f¨hÑ7Ô7Ð7Ð7ð8ð "×+Ò+¨FÑ3Ô3ˆØ"×.Ò.°*Ð.Ñ=Ô=ˆð Ô˜Y˜Y˜YÔ'ØÔ˜a ˜VÔ$ØÔ˜a˜SÔ!ð
ˆð  Ð-ð 	8ð 	8ˆBØ—j’j¥¨dÐ!3Ñ!3Ô!3Ñ4Ô4ˆGÝ" 7¨MÀ$ÐGÑGÔGð 8ð 8‘��8Ý˜q‘\”\�Ø ×*Ò*¨2Ñ.Ô.�ÝÔ% f¨hÑ7Ô7Ð7Ð7ð8ð	8ð 	8r$   c                 óî  — t          ddgddgdœ¦  «        }|                     ¦   «         }t          j        |d         ¦  «        |d<   d„ }|                     t          d¬¦  «        ¦  «                             |¦  «        }|                     t          d	d¬
¦  «        ¦  «                             |¦  «        }t          j        | 	                    d¬¦  «        | 	                    d¬¦  «        ¦  «         d S )Nú
10/10/2000ú
11/10/2000r   r   ©r¢   Úvaluer¢   c                 óT   — t          | d                              ¦   «         gd¦  «        S )NrÀ   )rV   )r
   rV   ©Úxs    r"   Úsumfunc_serieszMTestGroupBy.test_timegrouper_apply_return_type_series.<locals>.sumfunc_seriesã  s#   € Ý˜1˜Wœ:Ÿ>š>Ñ+Ô+Ð,¨hÑ7Ô7Ð7r$   ©r(   r“   r~   Trl   )
r   rŒ   r   r§   r*   r   ÚapplyrW   rX   r‡   )rZ   r!   Údf_dtrÄ   r_   r�   s         r"   Ú)test_timegrouper_apply_return_type_seriesz5TestGroupBy.test_timegrouper_apply_return_type_seriesÛ  só   € õ  ¨|Ð <ÈÈBÀxÐPÐPÑQÔQˆØ—’‘	”	ˆÝœ u¨V¤}Ñ5Ô5ˆˆf‰ð	8ð 	8ð 	8ð —:’:�g¨&Ð1Ñ1Ô1Ñ2Ô2×8Ò8¸ÑHÔHˆØ—’�w¨D°fÐ=Ñ=Ô=Ñ>Ô>×DÒDÀ^ÑTÔTˆÝ
ÔØ×Ò DÐÑ)Ô)¨8×+?Ò+?ÀTÐ+?Ñ+JÔ+Jñ	
ô 	
ð 	
ð 	
ð 	
r$   c                 óî  — t          ddgddgdœ¦  «        }|                     ¦   «         }t          j        |d         ¦  «        |d<   d„ }|                     t          d¬¦  «        ¦  «                             |¦  «        }|                     t          d	d¬
¦  «        ¦  «                             |¦  «        }t          j        | 	                    d¬¦  «        | 	                    d¬¦  «        ¦  «         d S )Nr½   r¾   r   r   r¿   r¢   c                 ó4   — | j                              ¦   «         S ©N)rÀ   rV   rÂ   s    r"   Úsumfunc_valuezKTestGroupBy.test_timegrouper_apply_return_type_value.<locals>.sumfunc_valueô  s   € Ø”7—;’;‘=”=Ð r$   rÅ   r“   r~   Trl   )
r   rŒ   r   r§   r*   r   rÆ   rW   rª   r‡   )rZ   r!   rÇ   rÌ   r_   r�   s         r"   Ú(test_timegrouper_apply_return_type_valuez4TestGroupBy.test_timegrouper_apply_return_type_valueì  só   € õ  ¨|Ð <ÈÈBÀxÐPÐPÑQÔQˆØ—’‘	”	ˆÝœ u¨V¤}Ñ5Ô5ˆˆf‰ð	!ð 	!ð 	!ð —:’:�g¨&Ð1Ñ1Ô1Ñ2Ô2×8Ò8¸ÑGÔGˆØ—’�w¨D°fÐ=Ñ=Ô=Ñ>Ô>×DÒDÀ]ÑSÔSˆÝ
ÔØ×Ò DÐÑ)Ô)¨8×+?Ò+?ÀTÐ+?Ñ+JÔ+Jñ	
ô 	
ð 	
ð 	
ð 	
r$   c                 ó^  — d}t          dd|¬¦  «        }t          t          j        |¦  «        t          j        |¦  «        dœ|¬¦  «        }|                     d„ ¦  «        }|j        }t          t          t          | 	                    ¦   «         ¦  «        ¦  «        t          ¦  «        sJ ‚d S )Niè  z2012/1/1Ú5min)Ústartr)   Úperiods)ÚhighÚlowrA   c                 óB   — t          | j        | j        | j        ¦  «        S rË   )r   ÚyearÚmonthÚdayrÂ   s    r"   ú<lambda>z?TestGroupBy.test_groupby_groups_datetimeindex.<locals>.<lambda>  s   € ¥x°´¸¼ÀÄÑ'GÔ'G€ r$   )r   r   rS   Úaranger*   rq   rp   ÚnextÚiterÚkeysr   )rZ   rÑ   Úindr!   r¶   rq   s         r"   Ú!test_groupby_groups_datetimeindexz-TestGroupBy.test_groupby_groups_datetimeindexý  s¤   € àˆÝ˜z°ÀÐHÑHÔHˆÝÝ”Y˜wÑ'Ô'µ´	¸'Ñ0BÔ0BÐCÐCÈ3ð
ñ 
ô 
ˆð —*’*ÐGÐGÑHÔHˆð ”ˆÝ�$�t F§K¢K¡M¤MÑ2Ô2Ñ3Ô3µXÑ>Ô>Ð>Ð>Ð>Ð>Ð>r$   c                 ó  — t          ddd¬¦  «        }t          g d¢g d¢dœ|¬¦  «        }|                     d¬	¦  «        j        }g d
¢}d„ |D ¦   «         }t	          j        ||¦  «         |                     d¬	¦  «        }|D ]ƒ}|                     |¦  «        }|j        |df         |j        |df         gg}t          |gdd|j	        ¬¦  «        }	t          |t          d¦  «        |	¬¦  «        }t	          j        ||¦  «         Œ„d S )Nz
2015/01/01r   r¢   )rÑ   r=   )r   rF   ry   rg   r   )r   r   r   r{   r   ©ÚAÚBrA   ©r�   )z
2015-01-05z
2015-01-04z
2015-01-03z
2015-01-02z
2015-01-01c                 óN   — i | ]"}t          |¦  «        t          |gd ¬¦  «        “Œ#S )r¢   ©r=   )r   r   )Ú.0r¢   s     r"   ú
<dictcomp>zBTestGroupBy.test_groupby_groups_datetimeindex2.<locals>.<dictcomp>  s<   € ð 
ð 
ð 
ØDH�I�d‰OŒO�]¨D¨6¸Ð?Ñ?Ô?ð
ð 
ð 
r$   rá   râ   r’   )r=   r)   rK   ÚABr…   )r   r   r*   rq   rW   Úassert_dict_equalr³   Úlocr   rK   ÚlistrX   )
rZ   rB   r!   r�   Údatesr_   r¶   r¢   ÚdataÚexpected_indexs
             r"   Ú"test_groupby_groups_datetimeindex2z.TestGroupBy.test_groupby_groups_datetimeindex2
  sA  € å˜<°¸Ð@Ñ@Ô@ˆÝ˜_˜_˜_°?°?°?ÐCÐCÈ5ÐQÑQÔQˆØ—’ &�Ñ)Ô)Ô0ˆØVÐVÐVˆð
ð 
ØLQð
ñ 
ô 
ˆõ 	Ô˜V XÑ.Ô.Ð.à—*’* 6�*Ñ*Ô*ˆØð 	4ð 	4ˆDØ×&Ò& tÑ,Ô,ˆFØ”V˜D #˜IÔ&¨¬¨t°S¨yÔ(9Ð:Ð;ˆDÝ*Ø�˜V¨#°U´[ðñ ô ˆNõ ! ­t°D©z¬zÀÐPÑPÔPˆHÝÔ! &¨(Ñ3Ô3Ð3Ð3ð	4ð 	4r$   c                 ó(  — g d¢}t          g d¢|t          j        dd¬¦  «        ddgdz  d	œ¦  «        }|d
                              d„ ¦  «        |d
<   t	          g d¢dd
¬¦  «        }t          ddgdz  d¬¦  «        }t          j        ||g¦  «        }t          g d¢g d¢dœ|ddg¬¦  «        }|                     d
dg¦  «         	                    ¦   «         }t          j        ||¦  «         t	          |d¬¦  «        }t          t          j        dd¬¦  «        g d¢dœ|¬¦  «        }t	          g d¢d¬¦  «        }t          g d¢g d¢dœ|ddg¬¦  «        }|                     d ¬!¦  «         	                    ¦   «         }t          j        ||¦  «         d S )"N©ú2011-07-19 07:00:00ú2011-07-19 08:00:00ú2011-07-19 09:00:00rò   ró   rô   ©Úarö   rö   rº   rº   rº   rF   rI   rJ   r   r   r   )Úlabelr   Úvalue1Úvalue2r   c                 ó$   — t          | d¬¦  «        S )Nú
US/Pacific©Útz)r   )Úds    r"   rØ   zBTestGroupBy.test_groupby_groups_datetimeindex_tz.<locals>.<lambda>1  s   € ½	À!ÈÐ8UÑ8UÔ8U€ 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ø   rù   rø   rù   ©rB   r†   z
Asia/Tokyorü   ©r   r   r   r   r   r   rA   ©rò   ró   rô   ©r   r   ry   ©r   r{   rF   r   rã   )r   rS   rÙ   rÆ   r   r   r	   Úfrom_arraysr*   rV   rW   rX   ©	rZ   rì   r!   Úexp_idx1Úexp_idx2Úexp_idxr_   r�   Údidxs	            r"   Ú$test_groupby_groups_datetimeindex_tzz0TestGroupBy.test_groupby_groups_datetimeindex_tz  s  € ð
ð 
ð 
ˆõ à7Ð7Ð7Ø!Ýœ) A¨WÐ5Ñ5Ô5Ø˜a˜& 1™*ð	ð ñ
ô 
ˆð ˜Jœ×-Ò-Ð.UÐ.UÑVÔVˆˆ:‰å ðð ð ð Øð
ñ 
ô 
ˆõ ˜#˜s˜ a™¨gÐ6Ñ6Ô6ˆÝÔ(¨(°HÐ)=Ñ>Ô>ˆÝØ)Ð)Ð)Ð5GÐ5GÐ5GÐHÐHØØ˜xÐ(ð
ñ 
ô 
ˆð —’˜Z¨Ð1Ñ2Ô2×6Ò6Ñ8Ô8ˆÝ
Ô˜f hÑ/Ô/Ð/õ ˜U |Ð4Ñ4Ô4ˆÝÝ”y ¨'Ð2Ñ2Ô2Ð>PÐ>PÐ>PÐQÐQØð
ñ 
ô 
ˆõ
  ØQÐQÐQØð
ñ 
ô 
ˆõ Ø �y�y¨I¨I¨IÐ6Ð6ØØ˜xÐ(ð
ñ 
ô 
ˆð —’ !�Ñ$Ô$×(Ò(Ñ*Ô*ˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r$   c                 ó  — t          dt          j        d¦  «        fdt          j        d¦  «        fgddg¬¦  «        }|                     d¦  «                             ¦   «         }|d         d         t          d¦  «        k    sJ ‚d S )Nr   z
2012-07-03z
2012-07-04rö   r¢   )r†   )r   rS   Ú
datetime64r*   Úfirstr   )rZ   r!   r�   s      r"   Ú&test_frame_datetime64_handling_groupbyz2TestGroupBy.test_frame_datetime64_handling_groupby^  sˆ   € åØ•”˜|Ñ,Ô,Ð-°µ2´=ÀÑ3NÔ3NÐ/OÐPØ˜&�Mð
ñ 
ô 
ˆð —’˜C‘”×&Ò&Ñ(Ô(ˆØ�fŒ~˜aÔ ¥I¨lÑ$;Ô$;Ò;Ð;Ð;Ð;Ð;Ð;r$   c           
      ó
  — t          t          d¦  «        g d¢g d¢dœ¦  «        }|                     dd¬¦  «        j                             d„ ¦  «        }t          t          d	d
¬¦  «        t          dd
¬¦  «        t          dd¬¦  «        t          dd
¬¦  «        t          dd¬¦  «        gdt          ¬¦  «        }t          j	        ||¦  «         d
}|                     d¦  «        j         
                    |¦  «        }t          j        |¦  «        j                             |¦  «        }t          g d¢g d¢d¬¦  «        }t          j        |¦  «        j                             |¦  «        }t          j	        ||¦  «         d S )Nr   )ú2000-01-28 16:47:00ú2000-01-29 16:48:00z2000-01-30 16:49:00ú2000-01-31 16:50:00z2000-01-01 16:50:00)úAmerica/Chicagor  úAmerica/Los_Angelesr  úAmerica/New_York)rÀ   r¢   rý   rý   F)ro   c                 ód   — t          j        | ¦  «        j                             | j        ¦  «        S rË   )r   r§   r¸   Útz_localizer=   rÂ   s    r"   rØ   z9TestGroupBy.test_groupby_multi_timezone.<locals>.<lambda>~  s#   € •b”n QÑ'Ô'Ô*×6Ò6°q´vÑ>Ô>€ r$   z2000-01-28 16:47:00-0600r  rü   z2000-01-29 16:48:00-0600z2000-01-30 16:49:00-0800r  z2000-01-31 16:50:00-0600z2000-01-01 16:50:00-0500r  r¢   )r=   rK   )r  r  r  )r   r   r   ©rB   r=   )r   Úranger*   r¢   rÆ   r
   r   rQ   rW   rª   r³   r   r§   r¸   r  )rZ   r!   r�   r_   rý   Ú
res_valuesÚ
exp_valuess          r"   Útest_groupby_multi_timezonez'TestGroupBy.test_groupby_multi_timezoneg  s­  € åå˜q™œðð ð ðð ð ðð ñ
ô 
ˆð( —’˜D¨U�Ñ3Ô3Ô8×>Ò>Ø>Ð>ñ
ô 
ˆõ åÐ4Ð9JÐKÑKÔKÝÐ4Ð9JÐKÑKÔKÝÐ4Ð9NÐOÑOÔOÝÐ4Ð9JÐKÑKÔKÝÐ4Ð9KÐLÑLÔLðð Ýð

ñ 

ô 

ˆõ 	Ô˜v xÑ0Ô0Ð0àˆØ—Z’Z Ñ%Ô%Ô*×4Ò4°RÑ8Ô8ˆ
Ý” 
Ñ+Ô+Ô.×:Ò:¸2Ñ>Ô>ˆÝØQÐQÐQØ�)�)Øð
ñ 
ô 
ˆ
õ
 ”> *Ñ-Ô-Ô0×<Ò<¸RÑ@Ô@ˆÝ
Ô˜v xÑ0Ô0Ð0Ð0Ð0r$   c                 ó  — g d¢}t          g d¢d„ |D ¦   «         t          j        dd¬¦  «        ddgd	z  d
œ¦  «        }t          j        g d¢dd¬¦  «        }t          ddgd	z  d¬¦  «        }t          j        ||g¦  «        }t          g d¢g d¢dœ|ddg¬¦  «        }|                     ddg¦  «         	                    ¦   «         }t          j        ||¦  «         t          j        |d¬¦  «        }t          t          j        dd¬¦  «        g d¢dœ|¬¦  «        }t          j        g d¢d¬¦  «        }t          g d¢g d¢dœ|ddg¬¦  «        }|                     d¬ ¦  «         	                    ¦   «         }t          j        ||¦  «         d S )!Nrñ   rõ   c                 ó:   — g | ]}t          j        |d ¬¦  «        ‘ŒS )ÚhrL   )r   ÚPeriod)ræ   rþ   s     r"   ú
<listcomp>z;TestGroupBy.test_groupby_groups_periods.<locals>.<listcomp>¥  s'   € ÐAÐAÐA°a�2œ9 Q¨SÐ1Ñ1Ô1ÐAÐAÐAr$   rF   rI   rJ   r   r   r   )r÷   Úperiodrø   rù   rÿ   r#  r&  r„   rö   rº   r÷   rå   r   r  r  rø   rù   r  rL   r  rA   r  r  r  r   rã   )r   rS   rÙ   r   ÚPeriodIndexr   r	   r  r*   rV   rW   rX   r	  s	            r"   Útest_groupby_groups_periodsz'TestGroupBy.test_groupby_groups_periods™  s  € ð
ð 
ð 
ˆõ à7Ð7Ð7ØAÐA¸5ÐAÑAÔAÝœ) A¨WÐ5Ñ5Ô5Ø˜a˜& 1™*ð	ð ñ
ô 
ˆõ ”>ðð ð ð Øð
ñ 
ô 
ˆõ ˜#˜s˜ a™¨gÐ6Ñ6Ô6ˆÝÔ(¨(°HÐ)=Ñ>Ô>ˆÝØ)Ð)Ð)Ð5GÐ5GÐ5GÐHÐHØØ˜xÐ(ð
ñ 
ô 
ˆð —’˜X wÐ/Ñ0Ô0×4Ò4Ñ6Ô6ˆÝ
Ô˜f hÑ/Ô/Ð/õ Œ~˜e¨#Ð.Ñ.Ô.ˆÝÝ”y ¨'Ð2Ñ2Ô2Ð>PÐ>PÐ>PÐQÐQØð
ñ 
ô 
ˆõ
 ”.ØQÐQÐQØð
ñ 
ô 
ˆõ Ø �y�y¨I¨I¨IÐ6Ð6ØØ˜xÐ(ð
ñ 
ô 
ˆð —’ !�Ñ$Ô$×(Ò(Ñ*Ô*ˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r$   c                 ó  — t          ddg¦  «        }|d                              d¦  «        |d<   t          |d         j        j        t
          j        ¦  «        sJ ‚|                     d¬¦  «                             ¦   «         }|d         j        }t          |j        t
          j        ¦  «        sJ ‚|d                              d¬¦  «                             ¦   «         }|j        }t          |j        t
          j        ¦  «        sJ ‚d S )N)r   ì     ö|>cþ )r   r*  r   zM8[ns]r   rã   )	r   rP   Ú
issubclassrK   ÚtyperS   r  r*   r  )rZ   r!   r�   Úgot_dts       r"   Útest_groupby_first_datetime64z)TestGroupBy.test_groupby_first_datetime64Ö  sÞ   € ÝÐ0Ð2JÐKÑLÔLˆØ�1”—’˜XÑ&Ô&ˆˆ1‰å˜"˜Qœ%œ+Ô*­B¬MÑ:Ô:Ð:Ð:Ð:à—’ !�Ñ$Ô$×*Ò*Ñ,Ô,ˆØ˜””ˆÝ˜&œ+¥r¤}Ñ5Ô5Ð5Ð5Ð5à�A”—’ Q�Ñ'Ô'×-Ò-Ñ/Ô/ˆØ”ˆÝ˜&œ+¥r¤}Ñ5Ô5Ð5Ð5Ð5Ð5Ð5r$   c                 ó–  — t          t          d¦  «                             d¦  «        t          j        d¦  «        dœ¦  «        }|                     d¦  «        d                              d„ ¦  «                             d¦  «        }|                     d¦  «        d                              ¦   «         }t          j
        ||¦  «         d S )NÚ20130101Úsr   rà   rá   c                 ó*   — |                       ¦   «         S rË   )ÚmaxrÂ   s    r"   rØ   z9TestGroupBy.test_groupby_max_datetime64.<locals>.<lambda>é  s   € ¸¿º¹¼€ r$   zM8[s])r   r   Úas_unitrS   rÙ   r*   rÆ   rP   r3  rW   rª   )rZ   r!   r_   r�   s       r"   Útest_groupby_max_datetime64z'TestGroupBy.test_groupby_max_datetime64ä  s¥   € õ �Y zÑ2Ô2×:Ò:¸3Ñ?Ô?ÅbÄiÐPQÁlÄlÐSÐSÑTÔTˆà—:’:˜c‘?”? 3Ô'×-Ò-Ð.?Ð.?Ñ@Ô@×GÒGÈÑPÔPˆØ—’˜C‘” Ô%×)Ò)Ñ+Ô+ˆÝ
Ô˜v xÑ0Ô0Ð0Ð0Ð0r$   c                 ó0  — t          t          d¦  «        t          d¦  «        gdz  dœ¦  «        }|                     d¦  «        d                              d¦  «        }t          t          d¦  «        gdz  d¬¦  «        }t          j        ||¦  «         d S )Nr   z	2000-01-1rà   rá   râ   Úminrå   )r   r  r   r*   Ú	transformr
   rW   rª   ©rZ   r!   r�   r_   s       r"   Útest_groupby_datetime64_32_bitz*TestGroupBy.test_groupby_datetime64_32_bití  sŒ   € õ �U 1™XœX­Y°{Ñ-CÔ-CÐ,DÀqÑ,HÐIÐIÑJÔJˆØ—’˜C‘” Ô%×/Ò/°Ñ6Ô6ˆÝ�9 [Ñ1Ô1Ð2°QÑ6¸SÐAÑAÔAˆÝ
Ô˜v xÑ0Ô0Ð0Ð0Ð0r$   c           	      ó�  — t          t          j                             d¦  «                             ddd¬¦  «        t          dddd¬	¦  «        d
œ¦  «        }|                     d¦  «                             ¦   «         d         }|                     d¦  «        d                              ¦   «         }t          j	        ||¦  «         d S )Nr   r   r   é<   )Úsizez01/01/2000 00:00r1  ÚUTC)rÑ   r)   rý   )ÚfactorÚtimer?  r@  )
r   rS   ÚrandomÚdefault_rngÚintegersr   r*   r3  rW   rª   )rZ   r!   Údf1Údf2s       r"   Ú$test_groupby_with_timezone_selectionz0TestGroupBy.test_groupby_with_timezone_selectionö  sº   € õ åœ)×/Ò/°Ñ2Ô2×;Ò;¸A¸qÀrÐ;ÑJÔJÝ"Ð#5¸rÈÐPUÐVÑVÔVðð ñ
ô 
ˆð �jŠj˜Ñ"Ô"×&Ò&Ñ(Ô(¨Ô0ˆØ�jŠj˜Ñ"Ô" 6Ô*×.Ò.Ñ0Ô0ˆÝ
Ô˜s CÑ(Ô(Ð(Ð(Ð(r$   c                 ó"  — t           j        }t          dgt          j        |¦  «        gdœ¦  «        }|d         d         j        |k    sJ ‚t          dg d¢i¦  «        }t          j        |¦  «        |d<   |d         d         j        |k    sJ ‚d S )Nr   )rö   rº   rº   r   rö   ©r   r   r   )r   Úutcr   r   ÚnowÚtzinfo)rZ   rI  r!   s      r"   Útest_timezone_infozTestGroupBy.test_timezone_info  s–   € õ ŒlˆÝ˜a˜S­¬°SÑ(9Ô(9Ð':Ð;Ð;Ñ<Ô<ˆØ�#Œw�qŒzÔ  CÒ'Ð'Ð'Ð'Ý˜˜Y˜Y˜YÐ'Ñ(Ô(ˆÝ”,˜sÑ#Ô#ˆˆ3‰Ø�#Œw�qŒzÔ  CÒ'Ð'Ð'Ð'Ð'Ð'r$   c                 ó   — t          g d¢dz  t          ddd¬¦  «        dœ¦  «        }|                     d¦  «        j                             ¦   «         }t          g d	¢t          g d¢d¬
¦  «        d¬¦  «        }t          j        ||¦  «         d S )NrH  r   rJ  rF   r7  )rÑ   r)   )rö   rì   rö   )r   r   r   rå   rì   r  )	r   r   r*   rì   Úcountr
   r   rW   rª   r9  s       r"   Útest_datetime_countzTestGroupBy.test_datetime_count  s•   € ÝØ�)�)˜a‘-­*°UÀAÈEÐ*RÑ*RÔ*RÐSÐSñ
ô 
ˆð —’˜C‘”Ô&×,Ò,Ñ.Ô.ˆÝ˜)˜)˜)­5°°°ÀÐ+EÑ+EÔ+EÈGÐTÑTÔTˆÝ
Ô˜v xÑ0Ô0Ð0Ð0Ð0r$   c           	      ó‚  — t          t          j        dddt          j        gt          j        t          d¬¦  «        t          d¬¦  «        t          d¬¦  «        t          j        gdœ¦  «        }t	          j        |j        ¦  «        |_        d	|d
<   ||j                             ¦   «                  }|                     d
¦  «        }|                     d
¦  «        }t          j
        |                     ¦   «         |                     ¦   «         ¦  «         t          j
        |                     ¦   «         |                     ¦   «         ¦  «         t          j
        |                     ¦   «         |                     ¦   «         ¦  «         t          j
        |                     ¦   «         |                     ¦   «         ¦  «         d S )Nz2015-07-24 10:10z2015-07-25 11:11z2015-07-23 12:12r   )Údaysr   r   )r¸   Útdrá   Úgroup)r   rS   Únanr   r   r§   r¸   Únotnar*   rW   rX   r3  r7  r  Úlast)rZ   Údf_testÚdf_refÚgrouped_testÚgrouped_refs        r"   Ú$test_first_last_max_min_on_time_dataz0TestGroupBy.test_first_last_max_min_on_time_data  sy  € õ õ ”FØ&Ø&Ø&Ý”Fðõ ”FÝ 1Ð%Ñ%Ô%Ý 1Ð%Ñ%Ô%Ý 1Ð%Ñ%Ô%Ý”Fððð ñ
ô 
ˆõ$ ”^ G¤JÑ/Ô/ˆŒ
Øˆ�ÑØ˜œ×)Ò)Ñ+Ô+Ô,ˆà—’ wÑ/Ô/ˆØ—n’n WÑ-Ô-ˆå
Ô˜kŸošoÑ/Ô/°×1AÒ1AÑ1CÔ1CÑDÔDÐDÝ
Ô˜kŸošoÑ/Ô/°×1AÒ1AÑ1CÔ1CÑDÔDÐDÝ
Ô˜k×/Ò/Ñ1Ô1°<×3EÒ3EÑ3GÔ3GÑHÔHÐHÝ
Ô˜k×.Ò.Ñ0Ô0°,×2CÒ2CÑ2EÔ2EÑFÔFÐFÐFÐFr$   c                 óô  — t          t          d¦  «        t          j        t          d¦  «        gg d¢dœ¦  «        }t	          dd¬¦  «        }|                     |¦  «        d                              ¦   «         }||j                             ¦   «                                       |¦  «        d                              ¦   «         }|j	         
                    d ¦  «        |_	        t          j        ||¦  «         d S )	Nz2016-06-28 09:35:35z2016-06-28 16:46:28)Ú1Ú2Ú3)r@  rí   r@  r#  r'   rí   )r   r   r   r    r   r*   Únuniquer@  ÚnotnullrB   Ú
_with_freqrW   rª   )rZ   ÚtestÚgrouperr�   r_   s        r"   Ú%test_nunique_with_timegrouper_and_natz1TestGroupBy.test_nunique_with_timegrouper_and_nat8  så   € åõ Ð3Ñ4Ô4Ý”FÝÐ3Ñ4Ô4ðð
 (˜˜ðð ñ	
ô 	
ˆõ ˜f¨3Ð/Ñ/Ô/ˆØ—’˜gÑ&Ô& vÔ.×6Ò6Ñ8Ô8ˆØ˜œ	×)Ò)Ñ+Ô+Ô,×4Ò4°WÑ=Ô=¸fÔE×MÒMÑOÔOˆØ!œ×2Ò2°4Ñ8Ô8ˆŒÝ
Ô˜v xÑ0Ô0Ð0Ð0Ð0r$   c                 óp  — g d¢t          g d¢d¬¦  «        g d¢dœ}t          |¦  «                             d¦  «        }t          d¬	¦  «        }|                     |¦  «        }|                     ¦   «         }|                     |g¦  «        }|                     ¦   «         }t          j        ||¦  «         d S )
N)ÚshanghaiÚbeijingrg  )z2017-08-09 13:32:23z2017-08-11 23:23:15z2017-08-11 22:23:15zdatetime64[ns]rJ   rH  )Úlocationr@  rÀ   r@  r’   rL   )r
   r   rO   r   r*   rN  rW   rX   )rZ   Ú
data_framerd  r¶   r�   r_   s         r"   Ú!test_scalar_call_versus_list_callz-TestGroupBy.test_scalar_call_versus_list_callK  sÈ   € ð <Ð;Ð;ÝØUÐUÐUØ&ðñ ô ð �Y�Yð
ð 
ˆ
õ ˜zÑ*Ô*×4Ò4°VÑ<Ô<ˆ
Ý˜sÐ#Ñ#Ô#ˆà×$Ò$ WÑ-Ô-ˆØ—’‘”ˆØ×$Ò$ g YÑ/Ô/ˆØ—=’=‘?”?ˆå
Ô˜f hÑ/Ô/Ð/Ð/Ð/r$   c           
      óˆ  — d}t          j        d|dd¬¦  «        }t          t          |¦  «        |¬¦  «        }|                     |j        j        ¦  «                             ¦   «         }t          t          |¦  «        t          t          d|dz   ¦  «        |j	        ¬¦  «        ¬¦  «        }t          j        ||¦  «         d S )	Nr   z2018-01ÚMÚMonth)rÐ   rÑ   r)   r=   rA   r   rå   )r   Úperiod_ranger
   r  r*   rB   rÖ   rV   r   r=   rW   rª   )rZ   rÑ   rB   Úperiod_seriesr�   r_   s         r"   Útest_grouper_period_indexz%TestGroupBy.test_grouper_period_index_  s¼   € àˆÝ”Ø W°3¸Wð
ñ 
ô 
ˆõ �u W™~œ~°UÐ;Ñ;Ô;ˆØ×&Ò& }Ô':Ô'@ÑAÔA×EÒEÑGÔGˆåÝ�'‰NŒN¥%­¨a°¸1±Ñ(=Ô(=ÀEÄJÐ"OÑ"OÔ"Oð
ñ 
ô 
ˆõ 	Ô˜v xÑ0Ô0Ð0Ð0Ð0r$   c                 ó<  — |}|d                               d„ ¦  «        }|j        }|d         j        j        }t	          dddd|¬¦  «        }t          j        |dgt          |¦  «        z  g¦  «        }t          g d	¢|d¬
¦  «        }t          j
        ||¦  «         d S )Nr   c                 ó$   — dt          | ¦  «        iS )Nr€   )r+   rÂ   s    r"   rØ   zRTestGroupBy.test_groupby_apply_timegrouper_with_nat_dict_returns.<locals>.<lambda>u  s   € ¨eµS¸±V´V¨_€ r$   r   ú
2013-09-01ú
2013-10-01r&   ©r)   r=   r?   r€   )r   r   r   r   r   r   r   r  )rÆ   ÚobjÚ_valuesr?   r   r	   r  r+   r
   rW   rª   )	rZ   r1   r0   Úresr!   r?   ÚdtiÚmir_   s	            r"   Ú4test_groupby_apply_timegrouper_with_nat_dict_returnsz@TestGroupBy.test_groupby_apply_timegrouper_with_nat_dict_returnsm  s©   € ð /ˆà�Œn×"Ò"Ð#<Ð#<Ñ=Ô=ˆàŒVˆØ�&ŒzÔ!Ô&ˆÝ˜ |¸$ÀVÐRVÐWÑWÔWˆÝÔ# S¨5¨'µC¸±H´HÑ*<Ð$=Ñ>Ô>ˆÝÐ/Ð/Ð/°rÀ
ÐKÑKÔKˆÝ
Ô˜s HÑ-Ô-Ð-Ð-Ð-r$   c           	      ó‚  — |}|d                               d„ ¦  «        }|j        }|d         j        j        }t	          dddd|¬¦  «        }t          dt          j        t          j        t          j        t          j        t          j        d	g|                     d ¦  «        d¬
¦  «        }t          j
        ||¦  «         d S )Nr   c                 óR   — t          | ¦  «        r| j        d         nt          j        S )Nr   )r+   rR   rS   rT  rÂ   s    r"   rØ   zTTestGroupBy.test_groupby_apply_timegrouper_with_nat_scalar_returns.<locals>.<lambda>…  s   € ½#¸a¹&¼&Ð-L¨Q¬V°A¬Y¨YÅbÄf€ r$   r   rt  ru  r&   rv  r   r   r  )rÆ   rw  rx  r?   r   r
   rS   rT  rb  rW   rª   )rZ   r1   r0   ry  r!   r?   rz  r_   s           r"   Ú6test_groupby_apply_timegrouper_with_nat_scalar_returnszBTestGroupBy.test_groupby_apply_timegrouper_with_nat_scalar_returns~  s°   € ð
 /ˆà�Œn×"Ò"Ð#LÐ#LÑMÔMˆàŒVˆØ�&ŒzÔ!Ô&ˆÝ˜ |¸$ÀVÐRVÐWÑWÔWˆÝØ•”�œ¥¤­¬µ´¸Ð;Ø—.’. Ñ&Ô&Øð
ñ 
ô 
ˆõ 	Ô˜s HÑ-Ô-Ð-Ð-Ð-r$   c                 ó–  — |}t          dd¬¦  «        }|                     |¦  «        }|j        dk    sJ ‚|j        j        j        dk    sJ ‚|                     d„ ¦  «        }t          t          d¦  «        g|d         j	        d¬¦  «        }t          g d¢g|t          g d	¢d
¬¦  «        ¬¦  «        }t          j        ||¦  «         d S )Nr   Ú100YEr'   r   c                 ó   — | d         dz  S )Nr   r   © rÂ   s    r"   rØ   zSTestGroupBy.test_groupby_apply_timegrouper_with_nat_apply_squeeze.<locals>.<lambda>¢  s   €   :¤°Ñ!2€ r$   r¯   )rK   r=   )é$   rF   rF   r   r   )r   r   r   r   r   r   rå   r  )r   r*   ÚngroupsÚ_selected_objrB   ÚnlevelsrÆ   r   r   rK   r   rW   rX   )rZ   r#   r!   r/   r0   ry  rz  r_   s           r"   Ú5test_groupby_apply_timegrouper_with_nat_apply_squeezezATestGroupBy.test_groupby_apply_timegrouper_with_nat_apply_squeeze’  sæ   € ð ,ˆõ ˜& wÐ/Ñ/Ô/ˆØ�ZŠZ˜‰_Œ_ˆð Œz˜QŠˆˆˆØÔÔ%Ô-°Ò2Ð2Ð2Ð2ð �hŠhÐ2Ð2Ñ3Ô3ˆå•Y˜|Ñ,Ô,Ð-°R¸´ZÔ5EÈFÐSÑSÔSˆÝØÐÐÐØÝ˜/˜/˜/°
Ð;Ñ;Ô;ð
ñ 
ô 
ˆõ
 	Ô˜c 8Ñ,Ô,Ð,Ð,Ð,r$   c                 ón  — t          j        d¦  «         |}|d                              d„ d¬¦  «        }|d                              d¦  «        }t          j        ||¦  «         |dg                              d„ d¬¦  «        }|dg                              d¦  «        }t          j        ||¦  «         d S )NÚnumbar   c                 ó*   — t          j        | ¦  «        S rË   ©rS   Únanmean©ÚvaluesrB   s     r"   rØ   zITestGroupBy.test_groupby_agg_numba_timegrouper_with_nat.<locals>.<lambda>¶  ó   € ¥"¤*¨VÑ"4Ô"4€ r$   )ÚengineÚmeanc                 ó*   — t          j        | ¦  «        S rË   rŒ  rŽ  s     r"   rØ   zITestGroupBy.test_groupby_agg_numba_timegrouper_with_nat.<locals>.<lambda>½  r�  r$   )rˆ   ÚimportorskipÚ	aggregaterW   rª   rX   )rZ   r1   r0   r�   r_   Ú	result_dfÚexpected_dfs          r"   Ú+test_groupby_agg_numba_timegrouper_with_natz7TestGroupBy.test_groupby_agg_numba_timegrouper_with_nat¬  sÌ   € õ 	Ô˜GÑ$Ô$Ð$ð /ˆà�J”×)Ò)Ø4Ð4¸Wð *ñ 
ô 
ˆð �j”>×+Ò+¨FÑ3Ô3ˆÝ
Ô˜v xÑ0Ô0Ð0à˜
�|Ô$×.Ò.Ø4Ð4¸Wð /ñ 
ô 
ˆ	ð ˜*˜Ô&×0Ò0°Ñ8Ô8ˆÝ
Ô˜i¨Ñ5Ô5Ð5Ð5Ð5r$   Úpyarrowc           
      ó„  — t          dg d¢it          t          d¦  «        t          d¦  «        t          d¦  «        gd¬¦  «        ¬¦  «        }|                     t	          d¬	¦  «        ¦  «        }|j        j        }t          t          d¦  «        t          d¦  «        gd¬¦  «        }t          j        ||¦  «         d S )
Nrö   rH  z
2013-01-01z
2013-01-02z&timestamp[ns, America/Denver][pyarrow]rJ   rA   r’   rL   )	r   r   r   r*   r   r,   r-   rW   Úassert_index_equal)rZ   r!   r0   r�   r_   s        r"   Útest_pyarrow_index_retentionz(TestGroupBy.test_pyarrow_index_retentionÂ  s×   € õ à�Y�Y�Yðõ å˜lÑ+Ô+Ý˜lÑ+Ô+Ý˜lÑ+Ô+ðð
 ?ðñ ô ð	
ñ 
ô 
ˆð �ZŠZ� SÐ)Ñ)Ô)Ñ*Ô*ˆØ”Ô)ˆÝÝ�|Ñ$Ô$¥i°Ñ&=Ô&=Ð>Ø:ð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r$   N)%Ú__name__Ú
__module__Ú__qualname__rd   rˆ   ÚmarkÚparametrizert   r‘   r«   r»   rÈ   rÍ   rÞ   rï   r  r  r   r(  r.  r5  r:  rF  rL  rO  r[  re  rk  rq  r|  r  rˆ  Ú
single_cpur˜  rR  Ú
skip_if_norœ  rƒ  r$   r"   r3   r3   N   s?  € € € € € ð75ð 75ð 75ðr „[×Ò˜]¨T°5¨MÑ:Ô:ð ð  ñ ;Ô:ð ð@s4ð s4ð s4ðj „[×Ò˜VÐ%@Ð%@Ð%@ÑAÔAð82ð 82ñ BÔAð82ðt@8ð @8ð @8ðD
ð 
ð 
ð"
ð 
ð 
ð"?ð ?ð ?ð4ð 4ð 4ð*=0ð =0ð =0ð~<ð <ð <ð01ð 01ð 01ðd;0ð ;0ð ;0ðz6ð 6ð 6ð1ð 1ð 1ð1ð 1ð 1ð)ð )ð )ð(ð (ð (ð1ð 1ð 1ð Gð  Gð  GðD1ð 1ð 1ð&0ð 0ð 0ð(1ð 1ð 1ð.ð .ð .ð".ð .ð .ð(-ð -ð -ð4 „[Ôð6ð 6ñ Ôð6ð* €R„]�9ÑÔð0ð 0ñ Ôð0ð 0ð 0r$   r3   ) Ú__doc__r   r   r   ÚnumpyrS   rˆ   Úpandas.util._test_decoratorsÚutilÚ_test_decoratorsrR  Úpandasr   r   r   r   r	   r
   r   r   r   Úpandas._testingÚ_testingrW   Úpandas.core.groupby.grouperr   Úpandas.core.groupby.opsr   Úfixturer#   r1   r3   rƒ  r$   r"   ú<module>r¯     s‘  ððð ðð ð ð ð ð ð ð ð ð ð Ð Ð Ð Ø €€€à )Ð )Ð )Ð )Ð )Ð )Ð )Ð )Ð )à Ð Ð Ð ð	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð Ð Ð Ð Ð Ð Ø /Ð /Ð /Ð /Ð /Ð /Ø .Ð .Ð .Ð .Ð .Ð .ð „ðð ñ „ðð, „ðð ñ „ðð,J0ð J0ð J0ð J0ð J0ñ J0ô J0ð J0ð J0ð J0r$   