o
    7?e                     @   sr  d dl Zd dlZd dlm  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d Zejdg d	g d
g dg dejg dejjdgdd Zejdddddggejdddgdd Zdd Zdd Zdd Zejdddgdd Zejdg d d!d" Zejdeejd#ed$dejd%ed$dgd&d' ZdS )(    N)is_integer_dtype)	DataFrameIndexPeriodIndexSeriesbyABc                 C   s:   | j |d}| }|D ]\}}|| t|ksJ qd S )Nr   )groupbysizelen)dfr   groupedresultkeygroup r   _/home/www/facesmatcher.com/pyenv/lib/python3.10/site-packages/pandas/tests/groupby/test_size.py	test_size   s
   r   )r   r   r   r   )r      r   r   )r   r   r   r   )r   NNN)NNNN)Zmarksc           
         s    fddt  D }|rdd | D }t|dd}|r#| }t|jjr9tdd  D s9|j	t
|_d}tjt|d	 | j |||d
}W d    n1 sVw   Y  | }	t|	| d S )Nc                    s$   i | ]  t  fd dD qS )c                 3   s    | ]}| kV  qd S Nr   ).0valuer   r   r   	<genexpr>%       z.test_size_axis_1.<locals>.<dictcomp>.<genexpr>)sum)r   r
   r   r   
<dictcomp>%   s   $ z$test_size_axis_1.<locals>.<dictcomp>c                 S   s   i | ]\}}|d ur||qS r   r   )r   r   r   r   r   r   r   '   s    int64dtypec                 s   s    | ]}|d u V  qd S r   r   )r   xr   r   r   r   +   r   z#test_size_axis_1.<locals>.<genexpr>z+DataFrame.groupby with axis=1 is deprecated)match)r   Zaxissortdropna)dictfromkeysitemsr   Z
sort_indexr   indexr!   anyastypeinttmZassert_produces_warningFutureWarningr   r   assert_series_equal)
r   Zaxis_1r   r$   r%   countsexpectedmsgr   r   r   r
   r   test_size_axis_1   s   r3   r$   TFc                 C   sb   t tjdddtdd}|j|| d }|j|| dd dd	 }t	j
||d
d d S )N      )i     ABCcolumns)r   r$   Cc                 S   s
   | j d S )Nr   )shape)ar   r   r   <lambda>:   s   
 z test_size_sort.<locals>.<lambda>F)Zcheck_names)r   nprandomZdefault_rngchoicelistr   r   applyr-   r/   )r$   r   r   leftrightr   r   r   test_size_sort5   s    rE   c                  C   s<   t ddgd} tdtg ddd}t| d | d S )Nr   r	   r8   r   namer!   r)   )r   r   r   r-   r/   r   r   )r   outr   r   r   test_size_series_dataframe>   s   rJ   c                  C   sB   t dd d gi} | d }tdtg ddd}t|| d S )Nr   r   rF   rH   r   r   r   r   r   r-   r/   )r   r   r1   r   r   r   test_size_groupby_all_nullE   s   rL   c                  C   s>   t dgtdgdddd} | jdd}| }t||  d S )Nr   2000r   D)rG   freq)r)   level)r   r   r   r   r-   r/   )sergrpr   r   r   r   test_size_period_indexN   s   rT   as_indexc                 C   s   t ddgddggddgd}|d d|d< |jddg| dd }t g d	g d
g dg dgg dd}|d d|d< | rN|ddgd d }t|| d S )Nr   r4   r   r	   r8   categoryF)rU   Zobservedr   r   r   )r   r4   r   )r4   r   r   )r4   r4   r   )r   r	   r   r   )r   r+   r   r   Z	set_indexrenamer-   Zassert_equal)rU   r   r   r1   r   r   r   test_size_on_categoricalV   s    rY   r!   )Int64ZFloat64booleanc                 C   sL   t g dg d| d}|jdd }t ddgdd	d
gd}t|| d S )NrW   r<   r<   b)r)   r!   r   rP   r4   r   rZ   r<   r]   rH   )r   r   r   r-   r/   )r!   rR   r   r1   r   r   r   *test_size_series_masked_type_returns_Int64f   s   r^   zstring[pyarrow_numpy]Zpyarrowstring[pyarrow]c                 C   sj   t g ddd| d}|dd  }| dkrdnd}td	d
gtddgd| dd|d}t|| d S )Nr\   r<   )r<   r]   r    r]   r_   rZ   r   r4   r   )rG   r!   )r)   rG   r!   rK   )r!   r   r   Z	exp_dtyper1   r   r   r   test_size_stringso   s   
r`   ) numpyr>   ZpytestZpandas.util._test_decoratorsutilZ_test_decoratorstdZpandas.core.dtypes.commonr   Zpandasr   r   r   r   Zpandas._testingZ_testingr-   markZparametrizer   paramZxfailr3   rE   rJ   rL   rT   rY   r^   objectZ
skip_if_nor`   r   r   r   r   <module>   sH    


	

