
     j                     L   d dl Zd dlZd dlmc mZ d dlmZ d dl	m
Z
mZmZmZ d dlmZ ej                            dddddgg          d             Zej                            dg dg d	g d
g d ej        g dej        j                  g          d             Zej                            dddddgg          ej                            dddg          d                         Zd Zd Zd Zej                            dddg          d             Zej                            dg d          d             Zej                            de ej        d ej        d                     ej        d ej        d                    g          d             ZdS )    N)is_integer_dtype)	DataFrameIndexPeriodIndexSeriesbyABc                     |                      |          }|                                }|D ] \  }}||         t          |          k    sJ !d S )N)r   )groupbysizelen)dfr   groupedresultkeygroups         zC:\Users\Terasoftware\OneDrive\Desktop\faahhh\fyndo\fyndo\venv\Lib\site-packages\pandas/tests/groupby/methods/test_size.py	test_sizer      s]    jjBjG\\^^F ) )
Uc{c%jj((((() )    )r   r   r   r   )r      r   r   )r   r   r   r   )r   NNN)NNNN)marksc                 |   fdt                                         D             }|rd |                                D             }t          |d          }|r|                                }t          |j        j                  r=t          d D                       s$|j        	                    t                    |_        d}t          j        t          |          5  |                     |||          }d d d            n# 1 swxY w Y   |                                }	t          j        |	|           d S )	Nc                 J    i | ]t          fd D                       S )c              3   $   K   | ]
}|k    V  d S N ).0valuer   s     r   	<genexpr>z.test_size_axis_1.<locals>.<dictcomp>.<genexpr>%   s'      44u|444444r   )sum)r   r   r   s    @r   
<dictcomp>z$test_size_axis_1.<locals>.<dictcomp>%   s9    RRRc3444444444RRRr   c                     i | ]
\  }}|||S r   r   )r   r   r   s      r   r"   z$test_size_axis_1.<locals>.<dictcomp>'   s#    QQQeQ#uQQQr   int64dtypec              3      K   | ]}|d u V  	d S r   r   )r   xs     r   r    z#test_size_axis_1.<locals>.<genexpr>+   s&      9P9P!t)9P9P9P9P9P9Pr   z+DataFrame.groupby with axis=1 is deprecated)match)r   axissortdropna)dictfromkeysitemsr   
sort_indexr   indexr&   anyastypeinttmassert_produces_warningFutureWarningr   r   assert_series_equal)
r   axis_1r   r+   r,   countsexpectedmsgr   r   s
     `       r   test_size_axis_1r=      s    SRRRb@Q@QRRRF RQQv||~~QQQfG,,,H )&&((,-- 4c9P9PR9P9P9P6P6P 4!..s33
7C		#M	=	=	= K K**d6*JJK K K K K K K K K K K K K K K\\^^F68,,,,,s   "DDDr+   TFc                    t          t          j                            d                              dd          t          d                    }|                    ||                                           }|                    ||           d                             d           }t          j
        ||d	
           d S )N      )i     ABCcolumns)r   r+   Cc                     | j         d         S )Nr   )shape)as    r   <lambda>z test_size_sort.<locals>.<lambda>:   s    agaj r   F)check_names)r   nprandomdefault_rngchoicelistr   r   applyr5   r8   )r+   r   r   leftrights        r   test_size_sortrS   5   s     
29((++222yAA4PU;;	W	W	WB::$:'',,..DJJ"4J((-334H4HIIE4E::::::r   c                      t          ddg          } t          dt          g d                    }t          j        |                     d                                          |           d S )Nr	   r
   rC   r$   namer&   r1   )r   r   r   r5   r8   r   r   )r   outs     r   test_size_series_dataframerY   >   sd    	C:	&	&	&B
weBS&9&9&9
:
:
:C2::c??//11377777r   c                      t          dd d gi          } |                     d                                          }t          dt	          g d                    }t          j        ||           d S )Nr	   r$   rU   rW   r   r   r   r   r   r5   r8   )r   r   r;   s      r   test_size_groupby_all_nullr\   E   sm     
C$&	'	'BZZ__!!##FG5#+>+>+>???H68,,,,,r   c                      t          dgt          dgdd                    } |                     d          }|                                }t	          j        ||            d S )Nr   2000r	   D)rV   freq)r1   level)r   r   r   r   r5   r8   )sergrpr   s      r   test_size_period_indexre   N   s`    
!KsEEE
F
F
FC
++C+
 
 CXXZZF63'''''r   as_indexc                    t          ddgddggddg          }|d                             d          |d<   |                    ddg| d                                          }t          g d	g d
g dg dgg d          }|d                             d          |d<   | r0|                    ddg          d                             d           }t          j        ||           d S )Nr   r?   r	   r
   rC   categoryF)rf   observedr   r   r   )r   r?   r   )r?   r   r   )r?   r?   r   )r	   r
   r   r   )r   r3   r   r   	set_indexrenamer5   assert_equal)rf   r   r   r;   s       r   test_size_on_categoricalrn   V   s   	QFQF#c3Z	8	8	8BgnnZ((BsGZZc
XZFFKKMMF	IIIyyy)))4>P>P>P  H SM((44HSM G%%sCj11&9@@FFOFH%%%%%r   r&   )Int64Float64booleanc                     t          g dg d|           }|                    d                                          }t          ddgdd	d
g          }t          j        ||           d S )Nrj   rH   rH   b)r1   r&   r   ra   r?   r   ro   rH   rt   rW   )r   r   r   r5   r8   )r&   rc   r   r;   s       r   *test_size_series_masked_type_returns_Int64ru   f   st     ///
?
?
?C[[q[!!&&((Fq!fGC:>>>H68,,,,,r   zstring[pyarrow_numpy]pyarrowstring[pyarrow]c                    t          g ddd|           }|                    d          d                                         }| dk    rdnd}t          d	d
gt	          ddgd|           d|          }t          j        ||           d S )Nrs   rH   )rH   rt   r%   rt   rw   ro   r$   r?   r   )rV   r&   )r1   rV   r&   r[   )r&   r   r   	exp_dtyper;   s        r   test_size_stringsrz   o   s     
s335	A	A	ABZZ__S!&&((F $55B7I	
AS#JS666	  H 68,,,,,r   ) numpyrK   pytestpandas.util._test_decoratorsutil_test_decoratorstdpandas.core.dtypes.commonr   pandasr   r   r   r   pandas._testing_testingr5   markparametrizer   paramxfailr=   rS   rY   r\   re   rn   ru   object
skip_if_norz   r   r   r   <module>r      s        ) ) ) ) ) ) ) ) ) 6 6 6 6 6 6                  S3*566) ) 76) ---V[5FGGG	 	- -	 	-$ S3*566$//; ; 0/ 76;8 8 8- - -( ( ( dE]33& & 43& "A"A"ABB- - CB- ,MBM)4L4LMMM&mbmI.F.FGGG - - - - -r   