o
    d                     @   s  d dl Z d dlZd dlZd dlZd dlmZmZmZm	Z	 d dl
mZ ejdddgejdddgejd	g d
g dg dg dg dg dg dg dg dg dg dg dejejejggdd Zdd Zejdddgdd Zejdddgejdddgejdg dg dejejejgdejdgdejdgdejdggdd Zejd d!d"ejdged#ejejgd$d#fd%d!ejejgd$d#ejdged#fd%d%ejejgd$d#ejejgd$d#fd"d$ejejgd$d#ejejgd$d#fgd&d' Zejdddgejd(g d)ejdddgd*d+ Zejd,dejejgdfdejd-ejgdfdejejgdfdejdejgdfgd.d/ Zejdddgd0d1 Zejdddgd2d3 ZdS )4    N)	DataFrameIndexSeriesisnaagg_funcanyallskipnaTFvals)foobarbaz)r    r   )r   r   r   )         )r   r   r   r   r   r   )      ?g       @g      @)r           r   )r   r   r   )TTT)TFF)FFFc                 C   s   t dgd dgd  |d d}tt| |}|r&tt|r&| dkr&d}t |gd dgtddgd	d
d}t|d	| |d}t|| d S )Nar   br   )keyvalr   Fr   r   )namecolumnsindexr	   )	r   getattrbuiltinsr   r   r   groupbytmassert_frame_equal)r   r	   r
   dfexpexp_dfresult r'   f/var/www/html/visualizacion-main/env/lib/python3.10/site-packages/pandas/tests/groupby/test_any_all.pytest_groupby_bool_aggs   s   ""r)   c                  C   sr   t g ddtjdgdtjdggg dd} t ddgd	dggd
dgddgd}d|j_| d }t|| d S )N)r   r   r   r   r   r   r   )ABCr   TFr+   r,   r   r*   )	r   npnanr   r   r    r   r!   r"   )r#   expectedr&   r'   r'   r(   test_any3   s   r1   bool_agg_funcc                 C   sP   t ddggddgd}|dg}t||  }|tdg}t|| d S )NTr   r-   r   )r   r    r   set_axisr.   arrayr!   r"   )r2   r#   grp_byr&   r0   r'   r'   r(    test_bool_aggs_dup_column_labels@   s
   r6   datac                 C   sZ   t |dd}t|| |d}t |tdgdd}|g dj| |d}t|| d S )Nbooleandtyper   r   r   r:   r   )r   r   r.   r4   r    aggr!   assert_series_equal)r2   r	   r7   serexpected_datar0   r&   r'   r'   r(   test_masked_kleene_logicK   s
   r@   zdtype1,dtype2,exp_col1,exp_col2floatFloat64r9   r8   Int64c                 C   sn   dt jg}ttj|| dtj||dd}|ddgjddd}t||dt dgd}t|| d S )	Nr   r9   )col1col2r   r   Fr   )r   )	r.   r/   r   pdr4   r    r<   r!   r"   )dtype1dtype2exp_col1exp_col2r7   r#   r&   r0   r'   r'   r(   test_masked_mixed_typese   s   
rK   r:   )rC   rB   r8   c                 C   sh   |t jdg|d}d}|s| dkrt j}||gtdgdd}|ddgj| |d}t|| d S )Nr   r9   Tr   r8   r;   r   )rF   NAr.   r4   r    r<   r!   assert_equal)r2   r:   r	   frame_or_seriesobjexpected_resr0   r&   r'   r'   r(   test_masked_bool_aggs_skipna   s   rQ   zbool_agg_func,data,expected_resr   c                 C   sN   ||t d}|dgt| | }||gtdgdd}t|| d S )Nr9   r   boolr;   )objectr    lenr<   r.   r4   r!   rM   )r2   r7   rP   rN   rO   r&   r0   r'   r'   r(   test_object_type_missing_vals   s   rU   c                 C   sZ   t tjgtd}tjtdd |dgj| dd W d    d S 1 s&w   Y  d S )Nr9   z boolean value of NA is ambiguous)matchr   Fr   )	r   rF   rL   rS   pytestraises	TypeErrorr    r<   )r2   r>   r'   r'   r(   'test_object_NA_raises_with_skipna_false   s   "rZ   c                 C   sj   | t u r	ddginddi}| di |dti}t||j| }| di |dti}t|| d S )Nr   r   r   r:   r'   )r   rS   r   r    r   rR   r!   rM   )rN   r2   kwargsrO   r&   r0   r'   r'   r(   
test_empty   s
   r\   )r   numpyr.   rW   pandasrF   r   r   r   r   pandas._testing_testingr!   markparametrizer/   r)   r1   r6   rL   r@   r4   rR   rK   rQ   NaTrU   rZ   r\   r'   r'   r'   r(   <module>   s    






	
