ó
    ­œ‘h\)  ã            
       ó,  • S SK rS SKrS SKJr  S SKJs  Jr  S SK	r
S SK	JrJr  S SKJr  \R                   " \R"                  \R$                  \R&                  \R(                  SS// SQS9S 5       rS	 r\R.                  R0                  S
 5       rS rS r\R.                  R9                  SSS/5      \R.                  R9                  S/ SQ5      S 5       5       rS rS r\R.                  R9                  SSS/5      \R.                  R9                  S/ SQ5      \R.                  R9                  S/ SQ/ SQ4/ SQ/ SQ4/ SQ/ SQ4/5      S 5       5       5       r \R.                  R9                  SSS/5      S 5       r!\R.                  R9                  SSS /5      S! 5       r"\RF                  \R.                  R9                  SSS/5      \R.                  R9                  S"S#\RH                  " S$5      RJ                  4S%/5      S& 5       5       5       r&S' r'g)(é    N)ÚUnsupportedFunctionCall)Ú	DataFrameÚSeriesÚInt64ÚFloat64)znp.int32znp.int64z
np.float32z
np.float64r   r   )ÚparamsÚidsc                 ó  • U R                   nUnUS:X  a  [        R                  nOUS:X  a  [        R                  n[        R                  " U5      R
                  S:X  a   [        R                  " U5      R                  O[        R                  " U5      R                  n[        R                  " U5      R
                  S:X  a   [        R                  " U5      R                  O[        R                  " U5      R                  nXU4$ )zN
Fixture of dtypes with min and max values used for testing
cummin and cummax
r   r   Úi)
ÚparamÚnpÚint64Úfloat64ÚdtypeÚkindÚiinfoÚminÚfinfoÚmax)Úrequestr   Únp_typeÚmin_valÚmax_vals        ÚhC:\Users\psant\Downloads\Noiseback\school\venv\Lib\site-packages\pandas/tests/groupby/test_cumulative.pyÚdtypes_for_minmaxr      sÉ   € ð �M‰M€Eà€GØ�ÓÜ—(‘(‰Ø	�)Ó	Ü—*‘*ˆô �8Š8�GÓ×!Ñ! SÓ(ô 	�Š�Ó×Òä�XŠX�gÓ×"Ñ"ð ô �8Š8�GÓ×!Ñ! SÓ(ô 	�Š�Ó×Òä�XŠX�gÓ×"Ñ"ð ð ˜GÐ$Ð$ó    c                  ó
  • [        S/S-  SS.5      n U R                  S5      S   R                  5       nU R                  SSS9S   R                  S	 5      nSUl        [
        R                  " X5        [        S/S
-  SS.5      n U S   R                  [        5      U S'   U R                  S5      S   R                  5       nU R                  SSS9S   R                  S 5      nSUl        [
        R                  " X5        g )NÚbé
   é   ©ÚkeyÚvaluer"   r#   F©Ú
group_keysc                 ó"   • U R                  5       $ ©N©Úcumprod©Úxs    r   Ú<lambda>Ú&test_groupby_cumprod.<locals>.<lambda>3   ó
   € ÈAÏIÉIÌKr   éd   c                 ó"   • U R                  5       $ r'   r(   r*   s    r   r,   r-   :   r.   r   )	r   Úgroupbyr)   ÚapplyÚnameÚtmÚassert_series_equalÚastypeÚfloat)ÚdfÚactualÚexpecteds      r   Útest_groupby_cumprodr;   .   sì   € ä	˜C˜5 2™:°Ñ2Ó	3€Bà�Z‰Z˜Ó˜wÑ'×/Ñ/Ó1€FØ�z‰z˜%¨EˆzÐ2°7Ñ;×AÑAÑBWÓX€HØ€H„MÜ×Ò˜6Ô,ä	˜C˜5 3™;°Ñ3Ó	4€BØ�W‘+×$Ñ$¤UÓ+€B€w�KØ�Z‰Z˜Ó˜wÑ'×/Ñ/Ó1€FØ�z‰z˜%¨EˆzÐ2°7Ñ;×AÑAÑBWÓX€HØ€H„MÜ×Ò˜6Õ,r   c                  ó0  • [        S/S-  SS.5      n U R                  S5      S   R                  5       n[        / SQSS9n[        R
                  " X5        U R                  SS	S
9S   R                  S 5      nSUl        [        R
                  " X5        g )Nr   é   é † r!   r"   r#   )r>   l    d(	 l     �Iú5 l      Fµx:^ ©r3   Fr$   c                 ó"   • U R                  5       $ r'   r(   r*   s    r   r,   Ú/test_groupby_cumprod_overflow.<locals>.<lambda>K   s
   € �!—)‘)”+r   )r   r1   r)   r   r4   r5   r2   r3   )r8   r9   r:   Únumpy_results       r   Útest_groupby_cumprod_overflowrC   ?   s’   € ô 
˜C˜5 1™9¨wÑ7Ó	8€BØ�Z‰Z˜Ó˜wÑ'×/Ñ/Ó1€FÜÚMØñ€Hô ×Ò˜6Ô,à—:‘:˜e°�:Ð6°wÑ?×EÑEÙó€Lð  €LÔÜ×Ò˜6Õ0r   c                  ó  • [        SS[        R                  S// SQS.5      n U R                  S5      R	                  SSS9n[        S[        R                  [        R                  // S	QS
.5      n[
        R                  " X5        g )Né   r    )rE   r    g      @)Úar   ÚcrF   TF)Únumeric_onlyÚskipna)rE   r    g      @)r   rG   )r   r   Únanr1   r)   r4   Úassert_frame_equal)r8   Úresultr:   s      r   Ú1test_groupby_cumprod_nan_influences_other_columnsrM   Q   so   € ä	àØ”R—V‘V˜Q�Úñ	
ó
€Bð �Z‰Z˜‹_×$Ñ$°$¸uÐ$ÐE€FÜ ¤2§6¡6¬2¯6©6Ð2ºÑEÓF€HÜ×Ò˜&Õ+r   c                 ó   • U S   nU S   n[        / SQ/ SQS.5      n/ SQnUR                  U5      n[        SU05      R                  U5      nUR                  S5      R                  5       n[        R
                  " Xv5        UR                  SS	S
9R                  R                  S 5      R                  5       n[        R
                  " Xv5        X%R                  SS/S4'   US-   UR                  SS/S4'   X&R                  / SQS4'   US-   UR                  SS/S4'   UR                  S5      R                  5       n[        R
                  " XvSS9  UR                  SS	S
9R                  R                  S 5      R                  5       n[        R
                  " XvSS9  UR                  SS05      n[        R                  UR                  / SQS4'   [        S[        R                  S[        R                  S[        R                  S[        R                  S/05      nUR                  S5      R                  5       n[        R
                  " Xv5        UR                  SS	S
9R                  R                  S 5      R                  5       n[        R
                  " Xv5        [        S/[        R                  " S/5      S.5      n[        [        R                  " S5      S/SS9nUR                  S5      S   R                  5       n[        R                  " Xg5        [        / SQ/ SQS.5      nUR                  S5      R                   R                  5       n[        / SQSS9n[        R                  " Xv5        g ) Nr   rE   ©rE   rE   rE   rE   r    r    r    r    ©é   r=   rQ   r    r    rQ   r    rE   ©ÚAÚB)rQ   rQ   rQ   r    r    r    r    rE   rT   rS   Fr$   c                 ó"   • U R                  5       $ r'   ©Úcumminr*   s    r   r,   Útest_cummin.<locals>.<lambda>l   ó
   € ÀÇÁÄr   r    é   é   ©r    rQ   rZ   é   T)Úcheck_exactc                 ó"   • U R                  5       $ r'   rV   r*   s    r   r,   rX   w   ó
   € ¸A¿H¹H¼Jr   r7   ©r   r    r=   rZ   r=   rQ   c                 ó"   • U R                  5       $ r'   rV   r*   s    r   r,   rX   ƒ   rY   r   Ú2001©rF   r   r   ©Úindexr3   rF   ©rE   r    rE   )rE   r    r    r?   )r   r6   r1   rW   r4   rK   rT   r2   Úto_frameÚlocr   rJ   ÚpdÚto_datetimer   r5   r   )r   r   r   Úbase_dfÚexpected_minsr8   r:   rL   s           r   Útest_cumminrn   _   sß  € Ø˜aÑ €EØ Ñ"€Gô Ò6Ò=UÑVÓW€GÚ,€Mà	�‰˜Ó	€Bä˜#˜}Ð-Ó.×5Ñ5°eÓ<€HØ�Z‰Z˜‹_×#Ñ#Ó%€FÜ×Ò˜&Ô+Ø�Z‰Z˜¨ˆZÐ.×0Ñ0×6Ñ6Ñ7KÓL×UÑUÓW€FÜ×Ò˜&Ô+ð "‡F�FˆAˆqˆ6�3ˆ;ÑØ! A™+€B‡F�FˆAˆqˆ6�3ˆ;ÑØ&-‡L�L’˜sÐ"Ñ#Ø '¨!¡€H‡L�L�!�Q�˜�ÑØ�Z‰Z˜‹_×#Ñ#Ó%€FÜ×Ò˜&¸Ò=à
�
‰
�3 5ˆ
Ð)×+Ñ+×1Ñ1Ñ2FÓG×PÑPÓRð ô ×Ò˜&¸Ò=ð �n‰n˜c 7˜^Ó,€GÜ%'§V¡V€G‡K�K’˜cÐ!Ñ"Ü˜#¤§¡¨¬2¯6©6°1´b·f±f¸aÄÇÁÈÐKÐLÓM€HØ�_‰_˜SÓ!×(Ñ(Ó*€FÜ×Ò˜&Ô+à�‰˜¨ˆÐ.×0Ñ0×6Ñ6Ñ7KÓL×UÑUÓWð ô ×Ò˜&Ô+ô 
˜!˜¤2§>¢>°6°(Ó#;Ñ<Ó	=€BÜ”b—n’n VÓ,°Q°C¸cÑB€Hà�Z‰Z˜‹_˜SÑ!×(Ñ(Ó*€FÜ×Ò˜8Ô,ô 
šªÑ3Ó	4€BØ�Z‰Z˜‹_×Ñ×%Ñ%Ó'€FÜ’i cÑ*€HÜ×Ò˜6Õ,r   ÚmethodrW   Úcummaxr   )ÚUInt64r   r   r7   Úbooleanc                 ó�  • [        / SQ[        R                  /S-  S.5      nUS   R                  U5      US'   UR	                  S5      n[        S[        R                  /S-  0US9n[        X05      " 5       n[        R                  " XE5        [        US   U 5      " 5       R                  5       n[        R                  " XE5        g )NrO   é   rR   rT   rS   ©r   )	r   r   rJ   r6   r1   Úgetattrr4   rK   rh   )ro   r   rl   Úgroupedr:   rL   s         r   Útest_cummin_max_all_nan_columnrx   •   s¤   € ô Ò6¼b¿f¹f¸XÈ¹\ÑJÓK€GØ˜3‘<×&Ñ& uÓ-€GˆC�LØ�o‰o˜cÓ"€Gä˜#¤§¡˜x¨!™|Ð,°EÑ:€HÜ�WÔ%Ó'€FÜ×Ò˜(Ô+ä�W˜S‘\ 6Ô*Ó,×5Ñ5Ó7€FÜ×Ò˜(Õ+r   c                 ó¬  • U S   nU S   n[        / SQ/ SQS.5      n/ SQnUR                  U5      n[        SU05      R                  U5      nUR                  S5      R                  5       n[        R
                  " Xv5        UR                  SS	S
9R                  R                  S 5      R                  5       n[        R
                  " Xv5        X%R                  SS/S4'   X&R                  / SQS4'   UR                  S5      R                  5       n[        R
                  " Xv5        UR                  SS	S
9R                  R                  S 5      R                  5       n[        R
                  " Xv5        UR                  SS05      n[        R                  UR                  / SQS4'   [        S[        R                  S[        R                  S[        R                  S[        R                  S/05      nUR                  S5      R                  5       n[        R
                  " Xv5        UR                  SS	S
9R                  R                  S 5      R                  5       n[        R
                  " Xv5        [        S/[        R                  " S/5      S.5      n[        [        R                  " S5      S/SS9nUR                  S5      S   R                  5       n[        R                  " Xg5        [        / SQ/ SQS.5      nUR                  S5      R                   R                  5       n[        / SQSS9n[        R                  " Xv5        g )Nr   r    rO   rP   rR   )rQ   r=   r=   r=   r    rQ   rQ   rQ   rT   rS   Fr$   c                 ó"   • U R                  5       $ r'   ©rp   r*   s    r   r,   Útest_cummax.<locals>.<lambda>±   rY   r   rZ   r\   c                 ó"   • U R                  5       $ r'   r{   r*   s    r   r,   r|   º   r`   r   r7   ra   r=   rQ   c                 ó"   • U R                  5       $ r'   r{   r*   s    r   r,   r|   Æ   rY   r   rE   rc   rd   r   re   rF   rg   )r    rE   rE   )r    rE   r    r?   )r   r6   r1   rp   r4   rK   rT   r2   rh   ri   r   rJ   rj   rk   r   r5   r   )r   r   r   rl   Úexpected_maxsr8   r:   rL   s           r   Útest_cummaxr€   ¤   s§  € Ø˜aÑ €EØ Ñ"€Gô Ò6Ò=UÑVÓW€GÚ,€Mà	�‰˜Ó	€Bä˜#˜}Ð-Ó.×5Ñ5°eÓ<€HØ�Z‰Z˜‹_×#Ñ#Ó%€FÜ×Ò˜&Ô+Ø�Z‰Z˜¨ˆZÐ.×0Ñ0×6Ñ6Ñ7KÓL×UÑUÓW€FÜ×Ò˜&Ô+ð "‡F�FˆAˆqˆ6�3ˆ;ÑØ&-‡L�L’˜sÐ"Ñ#Ø�Z‰Z˜‹_×#Ñ#Ó%€FÜ×Ò˜&Ô+à
�
‰
�3 5ˆ
Ð)×+Ñ+×1Ñ1Ñ2FÓG×PÑPÓRð ô ×Ò˜&Ô+ð �n‰n˜c 7˜^Ó,€GÜ%'§V¡V€G‡K�K’˜cÐ!Ñ"Ü˜#¤§¡¨¬2¯6©6°1´b·f±f¸aÄÇÁÈÐKÐLÓM€HØ�_‰_˜SÓ!×(Ñ(Ó*€FÜ×Ò˜&Ô+à�‰˜¨ˆÐ.×0Ñ0×6Ñ6Ñ7KÓL×UÑUÓWð ô ×Ò˜&Ô+ô 
˜!˜¤2§>¢>°6°(Ó#;Ñ<Ó	=€BÜ”b—n’n VÓ,°Q°C¸cÑB€Hà�Z‰Z˜‹_˜SÑ!×(Ñ(Ó*€FÜ×Ò˜8Ô,ô 
šªÑ3Ó	4€BØ�Z‰Z˜‹_×Ñ×%Ñ%Ó'€FÜ’i cÑ*€HÜ×Ò˜6Õ,r   c                  óX  • [        [        S5       V s/ s H   n [        R                  R                  U -   PM"     sn 5      n[        SXR                  R                  S5      S.5      nUR                  S5      nUR                  5       nUSS/   n[        R                  " XE5        g s  sn f )Nr[   rE   zM8[ns]©rS   rT   ÚCrS   rT   rƒ   )r   Úrangerj   ÚNaTÚ_valuer   Ú_valuesÚviewr1   rp   r4   rK   )ÚnÚserr8   ÚgbÚresÚexps         r   Ú&test_cummax_i8_at_implementation_boundrŽ   Ø   s„   € ô ¬U°1¬XÓ6ªX¨”"—&‘&—-‘- !Ô#©XÑ6Ó
7€CÜ	˜ ¯;©;×+;Ñ+;¸HÓ+EÑFÓ	G€BØ	�‰�C‹€Bà
�)‰)‹+€CØ
ˆc�3ˆZ‰.€CÜ×Ò˜#Õ#ùò 7s   “'B')r7   r   r   zgroups,expected_data©rE   rE   rE   )rE   NN©rE   r    rQ   ©rE   Nr    )rE   rQ   rQ   c                 ó  • [        S[        / SQUS905      nUR                  5       nUR                  U5      S   n[	        X`5      " SS9n[        X1SS9n[
        R                  " XE5        [
        R                  " Xx5        g )NrF   r‘   ru   F©rI   )r   r3   )r   r   Úcopyr1   rv   r4   rK   r5   )	ro   r   ÚgroupsÚexpected_datar8   Úorigr‹   rL   r:   s	            r   Útest_cummin_max_skipnar˜   ä   sq   € ô 
�Cœ¢°EÑ:Ð;Ó	<€BØ�7‰7‹9€DØ	�‰�FÓ	˜CÑ	 €Bä�RÔ ¨Ñ.€FÜ�m°sÑ;€Hô ×Ò˜"Ô#ä×Ò˜6Õ,r   c                 ó:  • [        [        R                  SS// SQS.5      nUR                  / SQ5      SS/   n[	        X 5      " SS9n[        [        R                  [        R                  [        R                  // SQS.5      n[
        R                  " X45        g )	Nç       @)rš   rš   rš   rd   r�   rF   r   Fr“   )r   r   rJ   r1   rv   r4   rK   )ro   r8   r‹   rL   r:   s        r   Ú$test_cummin_max_skipna_multiple_colsr›   ý   st   € ô 
œ"Ÿ&™& # sÐ+²/ÑBÓ	C€BØ	�‰’IÓ	  S˜zÑ	*€Bä�RÔ ¨Ñ.€FÜ¤§¡¬¯©´·±Ð7ºoÑNÓO€Hä×Ò˜&Õ+r   Úfuncr)   Úcumsumc                 ó^  • [        / SQ/ SQS.5      nUR                  S5      nSn[        R                  " [        US9   [        X 5      " SSS	5        S S S 5        [        R                  " [        US9   [        X 5      " SS
9  S S S 5        g ! , (       d  f       N@= f! , (       d  f       g = f)Nrg   r�   rR   rS   z+numpy operations are not valid with groupby©ÚmatchrE   r    rQ   )Úfoo)r   r1   ÚpytestÚraisesr   rv   )rœ   r8   ÚgÚmsgs       r   Útest_numpy_compatr¦   	  s~   € ô 
šªÑ3Ó	4€BØ
�
‰
�3‹€Aà
7€Cä	�ŠÔ.°cÓ	:Ü�Ô˜˜A˜qÔ!÷ 
;ä	�ŠÔ.°cÓ	:Ü�Ô˜QÒ÷ 
;Ð	:÷ 
;Õ	:úç	:Õ	:ús   ¿BÁ4BÂ
BÂ
B,z	dtype,valrq   Úuint64)r   l         c                 óÎ   • U[         R                  /n[        SS/US.US9nUR                  S5      nUR	                  U 5      n[        SU0US9n[
        R                  " Xg5        g )NrE   )Úgrpr   ru   r©   r   )rj   ÚNAr   r1   Ú	transformr4   rK   )ro   r   ÚvalÚdatar8   rw   rL   r:   s           r   Ú#test_nullable_int_not_cast_as_floatr®     sb   € ð ”—‘ˆ<€DÜ	˜A˜q˜6¨Ñ-°UÑ	;€BØ�j‰j˜Ó€Gà×Ñ˜vÓ&€FÜ˜#˜t˜¨EÑ2€Hä×Ò˜&Õ+r   c                  ó~  • [        SS[        R                  /S[        R                  S// SQ// SQS9n [        S[        R                  /[        R                  S/SS//SS	/S9nU R                  S
5      R	                  5       n[
        R                  " X!5        U R                  S
SS9R	                  5       n[
        R                  " X!5        Sn[
        R                  " [        US9   U R                  S
5      R	                  SS9nS S S 5        U R	                  SS9n[
        R                  " X!5        Sn[
        R                  " [        US9   U R                  S
5      R                  SS9nS S S 5        U R                  SS9n[
        R                  " X!5        g ! , (       d  f       N›= f! , (       d  f       NE= f)NrE   r    é	   )rQ   r=   r°   r‚   )Úcolumnsr=   rT   rƒ   rS   F)Úas_indexz1DataFrameGroupBy.cumsum with axis=1 is deprecatedrŸ   )Úaxisz2DataFrameGroupBy.cumprod with axis=1 is deprecated)
r   r   rJ   r1   r�   r4   rK   Úassert_produces_warningÚFutureWarningr)   )r8   r:   rL   r¥   s       r   Útest_cython_api2r¶   '  s_  € ô 
�Q˜œ2Ÿ6™6�N Q¬¯©° N²IÐ>ÊÑ	X€BÜ˜1œbŸf™f˜+¬¯©° {°Q¸°FÐ;ÀcÈ3ÀZÑP€HØ�Z‰Z˜‹_×#Ñ#Ó%€FÜ×Ò˜&Ô+ð �Z‰Z˜ eˆZÐ,×3Ñ3Ó5€FÜ×Ò˜&Ô+ð >€CÜ	×	#Ò	#¤M¸Ó	=Ø—‘˜C“×'Ñ'¨QÐ'Ð/ˆ÷ 
>à�y‰y˜aˆyÐ €HÜ×Ò˜&Ô+à
>€CÜ	×	#Ò	#¤M¸Ó	=Ø—‘˜C“×(Ñ(¨aÐ(Ð0ˆ÷ 
>à�z‰z˜qˆzÐ!€HÜ×Ò˜&Õ+÷ 
>Õ	=ú÷ 
>Õ	=ús   Ã)FÅF.Æ
F+Æ.
F<)(Únumpyr   r¢   Úpandas.errorsr   Úpandas.util._test_decoratorsÚutilÚ_test_decoratorsÚtdÚpandasrj   r   r   Úpandas._testingÚ_testingr4   ÚfixtureÚint32r   Úfloat32r   r   r;   ÚmarkÚ
skip_ubsanrC   rM   rn   Úparametrizerx   r€   rŽ   r˜   r›   r¦   Úskip_if_32bitr   r   r®   r¶   © r   r   Ú<module>rÈ      s"  ðÛ Û å 1ß )Ð )ã ÷õ ð ‡‚Ø�H‰H�b—h‘h §
¡
¨B¯J©J¸ÀÐKÚPññ%ó	ð%ò6-ð" ‡�×Ññ1ó ð1ò",ò3-ðl ‡�×Ñ˜ H¨hÐ#7Ó8Ø‡�×Ñ˜Ò"TÓUñ
,ó Vó 9ð
,ò1-òh	$ð ‡�×Ñ˜ H¨hÐ#7Ó8Ø‡�×Ñ˜Ò"?Ó@Ø‡�×ÑØâ	’OÐ$Ú	’LÐ!Ú	’OÐ$ðóñ-óó Aó 9ð-ð ‡�×Ñ˜ H¨hÐ#7Ó8ñ,ó 9ð,ð ‡�×Ñ˜ )¨XÐ!6Ó7ñ
 ó 8ð
 ð ×ÑØ‡�×Ñ˜ H¨hÐ#7Ó8Ø‡�×ÑØ�8˜RŸXšX hÓ/×3Ñ3Ð4Ð6JÐKóñ,óó 9ó ð
,ó,r   