
    df                     @    d dl Zd dlZd dlmZ d Zd Zd Z	d Z
d ZdS )    Nc                  <   t          j        g dg dd                              d          } |                     dgd                              d           }|                     dgd                              d	           }t          j        ||           d S )
N)AliceBobCarl)      r   )nameager	   r
   F
group_keysc                     | S N groups    b/var/www/html/t/fyr/venv311/lib/python3.11/site-packages/pandas/tests/groupby/test_apply_mutate.py<lambda>z$test_group_by_copy.<locals>.<lambda>   s    RW     c                 *    |                                  S r   )copyr   s    r   r   z$test_group_by_copy.<locals>.<lambda>   s    ejjll r   )pd	DataFrame	set_indexgroupbyapplytmassert_frame_equal)dfgrp_by_same_valuegrp_by_copys      r   test_group_by_copyr!      s    	,,,<<	
 	

 

 i  

E7u
==CCDWDWXX**eW*77=="" K +[99999r   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   d
 t          dd          D             t          j                            dd          d          } d }d }|                     d                              |          }|                     d                              |          }t          j	        ||           d S )Na   b   c   defc                     g | ]}d | S )gr   ).0xs     r   
<listcomp>z&test_mutate_groups.<locals>.<listcomp>$   s    333WWW333r         d      )size)cat1cat2cat3valc                     |                                  } | j                            d          | d<   |                     d          d                                         S Nmin)methodrankr7   )r   r9   r>   r   r<   r/   s    r   f_copyz"test_mutate_groups.<locals>.f_copy)   sK    FFHHEJJeJ,,&	yy  (,,...r   c                     | j                             d          | d<   |                     d          d                                         S r;   )r9   r>   r   r<   r?   s    r   	f_no_copyz%test_mutate_groups.<locals>.f_no_copy.   s>    EJJeJ,,&	yy  (,,...r   r6   )
r   r   rangenprandomrandintr   r   r   assert_series_equal)r   r@   rB   
grpby_copygrpby_no_copys        r   test_mutate_groupsrJ      sB    
EAI	)EAIeaieai eai eai	
 eai eai 43eArll3339$$Sr$22	
 	

 
B/ / /
/ / / F##))&11JJJv&&,,Y77M:}55555r   c                  (   t          j        g dt          d          d          } |                     dd                              d           }|                     dd                              d           }t          j        ||           d S )	N)	r1   r1   r1   r(   r(   r(      rL   rL   	   )keyvaluerN   Tr   c                      | d d          j         S r   rN   r?   s    r   r   z/test_no_mutate_but_looks_like.<locals>.<lambda>=   s    111 r   c                     | j         S r   rQ   r?   s    r   r   z/test_no_mutate_but_looks_like.<locals>.<lambda>>   s     r   )r   r   rC   r   r   r   rG   )r   result1result2s      r   test_no_mutate_but_looks_likerU   7   s     
999E!HHMM	N	NBjj4j00667I7IJJGjj4j0066GGG7G,,,,,r   c                  2   t          j        g dg dd          } d }|                     dgd                              |          }t          j        g dt           j                            g d	          d
          }t          j        ||           d S )N)ArW   rW   BrX   rX   )r1   r(   rL         r&   )col1col2c                 >    d| j         | j        d         df<   | j        S )Nr   r\   )locindexr\   r?   s    r   fnz-test_apply_function_with_indexing.<locals>.fnH   s     %&agbk6!"vr   r[   F)as_index)r1   r(   r   rY   rZ   r   ))r   r   )r   r1   )r   r(   )r1   rL   )r1   rY   )r1   rZ   r\   )r`   r	   )	r   r   r   r   Series
MultiIndexfrom_tuplesr   rG   )r   ra   resultexpecteds       r   !test_apply_function_with_indexingrh   B   s    	///9K9K9KLL
 
B   ZZ5Z1177;;Fym''<<<
 
   H 68,,,,,r   c            	         t          j        g dg dg dg dg dg ddt           j                            g d                    } d }|                     dd                              |          }t          j        g dg d	g d
gt           j                            g d                    }t          j        ||           d S )N)r1   r(   rL   )CjulianrX   geoffreyrW   rl   rX   rl   rW   rn   rk   rn   )ro   rq   rp   rm   rj   rr   )columnsc                 b    | j         d         d         }|                     d          | d|f<   | S )Nr   r1   )axissum)rs   rv   )groupedr	   s     r   
add_columnz8test_apply_mutate_columns_multiindex.<locals>.add_columnn   s4    q!!$&{{{22tr   r1   )levelru   )r1   r1   r1   rL   r1   r1   r1   rL   )r(   r(   r(   r&   r(   r(   r(   r&   )rL   rL   rL   rM   rL   rL   rL   rM   ))rn   rW   rn   )rn   rX   rn   )rn   rk   rn   )rn   rv   rn   )rl   rW   rl   )rl   rX   rl   )rl   rk   rl   )rl   rv   rl   )r   r   rd   re   r   r   r   r   )r   rx   rf   rg   s       r   $test_apply_mutate_columns_multiindexrz   W   s#   	&YY(yy&YY&YY(yy(yy	
 	
 ))  	
 	

 
 
B*  
 ZZaaZ((..z::F|$$$$$$	 	 		
 ))	 	 	
 
  H8 &(+++++r   )numpyrD   pandasr   pandas._testing_testingr   r!   rJ   rU   rh   rz   r   r   r   <module>r      s                 : : : 6 6 6@- - -- - -*9, 9, 9, 9, 9,r   