Ë
    *V.j·  ã                   ó>   — d dl Zd dlZd dlmZ d„ Zd„ Zd„ Z	d„ Z
d„ Zy)é    Nc                  óÞ  — t        j                  g d¢g d¢dœ«      j                  d«      } d}t        j                  t
        |¬«      5  | j                  dgd¬	«      j                  d
„ «      }d d d «       d}t        j                  t
        |¬«      5  | j                  dgd¬	«      j                  d„ «      }d d d «       t        j                  «       y # 1 sw Y   ŒjxY w# 1 sw Y   Œ,xY w)N)ÚAliceÚBobÚCarl)é   é   r   )ÚnameÚager	   ú7DataFrameGroupBy.apply operated on the grouping columns©Úmatchr
   F©Ú
group_keysc                 ó   — | S ©N© ©Úgroups    úhC:\xampp\htdocs\tradingbinance\backend\.venv\Lib\site-packages\pandas/tests/groupby/test_apply_mutate.pyÚ<lambda>z$test_group_by_copy.<locals>.<lambda>   s   € ™%ó    c                 ó"   — | j                  «       S r   )Úcopyr   s    r   r   z$test_group_by_copy.<locals>.<lambda>   s
   € ˜%Ÿ*™*œ,r   )	ÚpdÚ	DataFrameÚ	set_indexÚtmÚassert_produces_warningÚDeprecationWarningÚgroupbyÚapplyÚassert_frame_equal)ÚdfÚmsgÚgrp_by_same_valueÚgrp_by_copys       r   Útest_group_by_copyr'      sÔ   € ä	�‰â,Úñ	
ó
÷
 �i�Óð ð D€CÜ	×	#Ñ	#Ô$6¸cÖ	BØŸJ™J¨ w¸5˜JÓA×GÑGÙó
Ð÷ 
Cð D€CÜ	×	#Ñ	#Ô$6¸cÖ	BØ—j‘j % °U�jÓ;×AÑAÙ&ó
ˆ÷ 
Cô ×ÑÐ+¨[Õ9÷ 
CÐ	Bú÷
 
CÐ	Bús   Á	%CÂ%C#ÃC Ã#C,c            	      óÂ  — t        j                  dgdz  dgdz  z   dgdz  dgdz  z   dgdz  z   d	gdz  z   dgdz  z   dgdz  z   dgdz  z   t        d
d«      D � cg c]  } d| › �‘Œ	 c} t        j                  j                  d«      j                  dd¬«      dœ«      }d„ }d„ }d}t        j                  t        |¬«      5  |j                  d«      j                  |«      }d d d «       t        j                  t        |¬«      5  |j                  d«      j                  |«      }d d d «       t        j                  «       y c c} w # 1 sw Y   ŒixY w# 1 sw Y   Œ1xY w)NÚaé   Úbé   Úcé   ÚdÚeÚfé   é   Úgéd   é   )Úsize)Úcat1Úcat2Úcat3Úvalc                 ó¤   — | j                  «       } | j                  j                  d¬«      | d<   | j                  d«      d   j	                  «       S ©NÚmin)ÚmethodÚrankr9   )r   r;   r@   r    r>   ©Úxs    r   Úf_copyz"test_mutate_groups.<locals>.f_copy/   sB   € Ø�F‰F‹HˆØ—E‘E—J‘J e�JÓ,ˆˆ&‰	Ø�y‰y˜Ó  Ñ(×,Ñ,Ó.Ð.r   c                 ó„   — | j                   j                  d¬«      | d<   | j                  d«      d   j                  «       S r=   )r;   r@   r    r>   rA   s    r   Ú	f_no_copyz%test_mutate_groups.<locals>.f_no_copy4   s7   € Ø—E‘E—J‘J e�JÓ,ˆˆ&‰	Ø�y‰y˜Ó  Ñ(×,Ñ,Ó.Ð.r   r   r   r8   )r   r   ÚrangeÚnpÚrandomÚdefault_rngÚintegersr   r   r   r    r!   Úassert_series_equal)rB   r#   rC   rE   r$   Ú
grpby_copyÚgrpby_no_copys          r   Útest_mutate_groupsrN      sj  € ô 
�‰à�E˜A‘I  ¨¡	Ñ)Ø�E˜A‘IØˆe�a‰iñàˆe�a‰iñð ˆe�a‰iñð ˆe�a‰iñ	ð
 ˆe�a‰iñð ˆe�a‰iñô ',¨A¨r¤lÓ3¡l �q˜˜’W lÑ3Ü—9‘9×(Ñ(¨Ó+×4Ñ4°S¸rÐ4ÓBñ	
ó
€Bò/ò
/ð D€CÜ	×	#Ñ	#Ô$6¸cÖ	BØ—Z‘Z Ó'×-Ñ-¨fÓ5ˆ
÷ 
Cä	×	#Ñ	#Ô$6¸cÖ	BØŸ
™
 6Ó*×0Ñ0°Ó;ˆ÷ 
Cä×Ñ˜: }Õ5ùò' 4÷ 
CÐ	Búç	BÐ	Bús   ÁEÃ !E	Ä!EÅ	EÅEc                  óÆ  — t        j                  g d¢t        d«      dœ«      } d}t        j                  t
        |¬«      5  | j                  dd¬«      j                  d	„ «      }d d d «       t        j                  t
        |¬«      5  | j                  dd¬«      j                  d
„ «      }d d d «       t        j                  «       y # 1 sw Y   ŒgxY w# 1 sw Y   Œ,xY w)N)	r2   r2   r2   r.   r.   r.   é   rP   rP   é	   )ÚkeyÚvaluer   r   rR   Tr   c                 ó    — | d d  j                   S r   ©rR   rA   s    r   r   z/test_no_mutate_but_looks_like.<locals>.<lambda>H   s   € ÀQÁqÀTÇXÂXr   c                 ó   — | j                   S r   rU   rA   s    r   r   z/test_no_mutate_but_looks_like.<locals>.<lambda>J   s   € ÀQÇUÂUr   )	r   r   rF   r   r   r   r    r!   rK   )r#   r$   Úresult1Úresult2s       r   Útest_no_mutate_but_looks_likerY   @   s«   € ô 
�‰Ò9ÄEÈ!ÃHÑMÓ	N€Bà
C€CÜ	×	#Ñ	#Ô$6¸cÖ	BØ—*‘*˜U¨t�*Ó4×:Ñ:Ñ;MÓNˆ÷ 
Cä	×	#Ñ	#Ô$6¸cÖ	BØ—*‘*˜U¨t�*Ó4×:Ñ:¹?ÓKˆ÷ 
Cä×Ñ˜7 GÕ,÷	 
CÐ	Búç	BÐ	Bús   Á$CÂ$CÃCÃC c                 óŽ  — t        j                  g d¢g d¢dœ«      }d„ }d}t        j                  t        ||  ¬«      5  |j                  dgd¬	«      j                  |«      }d d d «       t        j                  g d
¢t         j                  j                  g d¢«      d¬«      }t        j                  |«       y # 1 sw Y   ŒYxY w)N)ÚAr[   r[   ÚBr\   r\   )r2   r.   rP   é   é   r,   )Úcol1Úcol2c                 óV   — d| j                   | j                  d   df<   | j                  S )Nr   éÿÿÿÿr`   )ÚlocÚindexr`   rA   s    r   Úfnz-test_apply_function_with_indexing.<locals>.fnT   s&   € Ø%&ˆ�‰ˆa�g‰g�b‰k˜6Ð!Ñ"Ø�v‰vˆr   r   )r   Úraise_on_extra_warningsr_   F)Úas_index)r2   r.   r   r]   r^   r   ))r   r   )r   r2   )r   r.   )r2   rP   )r2   r]   )r2   r^   r`   )rd   r	   )r   r   r   r   r   r    r!   ÚSeriesÚ
MultiIndexÚfrom_tuplesrK   )Úwarn_copy_on_writer#   re   r$   ÚresultÚexpecteds         r   Ú!test_apply_function_with_indexingrn   N   s¯   € ä	�‰Ú/Ò9KÑLó
€Bòð D€CÜ	×	#Ñ	#Ü #ÐCUÐ?Uö
ð —‘˜V˜H¨u�Ó5×;Ñ;¸BÓ?ˆ÷
ô �y‰yÚÜ�m‰m×'Ñ'Ú<ó
ð ô€Hô ×Ñ˜6 8Õ,÷
ð 
ús   ¿$B;Â;Cc            	      óò  — t        j                  g d¢g d¢g d¢g d¢g d¢g d¢dœt         j                  j                  g d¢«      ¬«      } d„ }d}t	        j
                  t        |¬«      5  | j                  dd¬	«      }d d d «       j                  |«      }t        j                  g d
¢g d¢g d¢gt         j                  j                  g d¢«      ¬«      }t	        j                  ||«       y # 1 sw Y   ŒpxY w)N)r2   r.   rP   )©ÚCÚjulian©r\   Úgeoffrey©r[   rr   ©r\   rr   ©r[   rt   ©rq   rt   )ru   rw   rv   rs   rp   rx   )Úcolumnsc                 óX   — | j                   d   d   }| j                  d¬«      | d|f<   | S )Nr   r2   )ÚaxisÚsum)ry   r|   )Úgroupedr	   s     r   Ú
add_columnz8test_apply_mutate_columns_multiindex.<locals>.add_column~   s3   € Ø�‰˜qÑ! !Ñ$ˆØ&Ÿ{™{°˜{Ó2ˆ��t�ÑØˆr   z+DataFrame.groupby with axis=1 is deprecatedr   r2   )Úlevelr{   )r2   r2   r2   rP   r2   r2   r2   rP   )r.   r.   r.   r,   r.   r.   r.   r,   )rP   rP   rP   rQ   rP   rP   rP   rQ   ))rt   r[   rt   )rt   r\   rt   )rt   rq   rt   )rt   r|   rt   )rr   r[   rr   )rr   r\   rr   )rr   rq   rr   )rr   r|   rr   )
r   r   ri   rj   r   r   ÚFutureWarningr    r!   r"   )r#   r~   r$   Úgbrl   rm   s         r   Ú$test_apply_mutate_columns_multiindexr‚   g   sÓ   € ä	�‰â&Ú(Ú&Ú&Ú(Ú(ñ	
ô —‘×)Ñ)òó	
ô
€Bò*ð
 8€CÜ	×	#Ñ	#¤M¸Ö	=Ø�Z‰Z˜a aˆZÓ(ˆ÷ 
>à�X‰X�jÓ!€FÜ�|‰|â$Ú$ò	ð	
ô —‘×)Ñ)ò	ó
ô€Hô8 ×Ñ˜& (Õ+÷? 
>Ð	=ús   Á*C-Ã-C6)ÚnumpyrG   Úpandasr   Úpandas._testingÚ_testingr   r'   rN   rY   rn   r‚   r   r   r   Ú<module>r‡      s(   ðÛ ã Ý ò:ò, 6òF-ò-ó2<,r   