o
    d%                     @   s  d dl mZ d dlZd dlZd dlZd dlmZ d dlm	Z	m
Z
 d dlmZ d dlmZmZ ejdg dejdejg i d	d
ejdgi dd
ejg ddidd
ejg ddidd
ejddgddidd
gejdddgdd Zejdg ddd Zejdg dejdddgdd Zejdg dejdd dgd!d" Zejd#eee
ejd$d%d&ejfd'ejfd(d)d*ejfd+d,ejfd-ejfd.ejfg
ee
ejdd/d0gg d1ee
d2 g d3d4d5 Zejd#eee
ejd$d6e
g ejd$fd7e
g ejd$fgee
ejdd/d0gd6e
ejdd/d8gfd7e
ejdd0d8gfgee
d2 d7e
g d9fgd:d; Zejd<eee	 d=e
d>d$fd&e
d>d$fd'e
d>d$fd?e
ed$fd@e
ed$fd*e
d>d$fdAe
d>d$fd,e
d>d$fd-e
d>d$fd.e
d>d$fg
ee	ejdgdd/ggd=e
dBd0gfd&e
dBd/gfd'e
dBdgfd?e
ddgfd@e
ddgfd*e
ddCgfdAe
dBd/gfd,e
ejdDgfd-e
ejdEgfd.e
ddCgfg
dFdG Zejd<eee	 d6e	 fd7e	 fgee	ejdgdd/ggd6e	ejdgdd/ggfd7e	ejdgdd0ggfgdHdI Z ejdedJdK Z!ejdedLdM Z"ejdNg dOdPdQ Z#dS )R    )chainN)	is_number)	DataFrameSeries)frame_transform_kernelsseries_transform_kernelsfunc)summeanminmaxstdz	args,kwdsno_args_or_kwds)id   axis_from_argsaxisaxis_from_kwdsnumeric_onlyToptional_kwdsargs_and_kwdshowaggapplyc                 C   sl   t |dkr|dkr| jtjjtdd t|||g|R i |}t|||i |}t	|| d S )Nr   r   z>agg/apply signature mismatch - agg passes 2nd argument to funcraisesreason)
lennode
add_markerpytestmarkxfail	TypeErrorgetattrtmassert_series_equal)requestfloat_framer   argskwdsr   resultexpected r-   `/var/www/html/visualizacion-main/env/lib/python3.10/site-packages/pandas/tests/apply/test_str.pytest_apply_with_string_funcs   s   r/   argc                 C   s&   |  |}t| | }||ksJ d S N)r   r$   )datetime_seriesr0   r+   r,   r-   r-   r.   test_with_string_args.   s   
r3   op)r
   medianr   varc                 C   sl   t ddgddgd}t||| }| dv rddini }ttt| |fdd	i||jd
}t|| d S )Nr            )ab)r   r6   ddofr   r   )index)r   r$   r   npcolumnsr%   r&   )r4   r   r(   r+   kwargsr,   r-   r-   r.   test_apply_np_reducer5   s   rA   )absceilcoscumsumexplogsqrtsquare	transformc                 C   st   d| j d< d }|dv rt}tj|dd t| ||}tt|| }W d    n1 s-w   Y  t|| d S )Ng      )r   r   )rG   rH   F)check_stacklevel)ilocRuntimeWarningr%   assert_produces_warningr$   r>   assert_frame_equal)r(   r4   r   warnr+   r,   r-   r-   r.   test_apply_np_transformerC   s   
	rQ   zseries, func, expected)dtype)r	   r   r   r   allT)anyFr
   )prodr   r   r6   r5   r7   r8   )
)r	      )r   r8   )r   r   rS   rU   T)r
   r7   )rV   rW   )r   r   )r6   r   )r5   r7   za b c))r	   abc)r   c)r   r:   rS   rX   c                 C   s:   |  |}t|rtj||ddsJ d S ||ksJ d S )NT)	equal_nan)r   r   r>   iscloseseriesr   r,   r+   r-   r-   r.   test_agg_cython_table_seriesY   s   
1r_   cumprodrE   rW   )r:   abrY   c                 C   s   |  |}t|| d S r1   r   r%   r&   r]   r-   r-   r.   &test_agg_cython_table_transform_series   s   
rc   zdf, func, expectedr	   float64rT   rU   rV   g      ?g      ?g۞?g      ?c                 C   s   | j ||d}t|| d S )Nr   rb   dfr   r,   r   r+   r-   r-   r.   test_agg_cython_table_frame   s   'rh   c                 C   s0   |dv r	| d}| j||d}t|| d S )N)r?   r   rd   re   )astyper   r%   rO   rf   r-   r-   r.   %test_agg_cython_table_transform_frame   s   
rj   c                 C   s~   |dkr| j tjjtdd |dkrdgng }t|jd }|	|j
|g|R  }|j
|dg|R  }t|| d S )Nngroupngroup not valid for NDFramer   fillna        r   )r   r   r    r!   r"   
ValueErrorr>   onesshapegroupbyrJ   r%   r&   )r'   string_seriesr4   r)   rp   r,   r+   r-   r-   r.   $test_transform_groupby_kernel_series   s   rt   c           
      C   s4  |dkr| j tjjtdd |dkrdgng }|dv r&t|jd }nt|jd }|j	||d	j
|g|R  }|j
||g|R  }t|| d
|jvsSJ |d  |d
< t|jjdkseJ |dv rrt|jd }nt|jd }|j	||d	j
|g|R  }|j
||g|R  }	t|	| d S )Nrk   rl   r   rm   rn   )r   r=   r   r   re   EA)r   r   r    r!   r"   ro   r>   rp   rq   rr   rJ   r%   rO   r?   copyr   _mgrarrays)
r'   r   r(   r4   r)   rp   r,   r+   	expected2result2r-   r-   r.   #test_transform_groupby_kernel_frame  s(   r|   method)rB   shift
pct_changerE   rankc                 C   s8   t dddgi}|| }t| |}t|| d S )Nrv   r7   )r   rJ   operatormethodcallerr%   rO   )r}   rg   r+   r,   r-   r-   r.   test_transform_method_name#  s   
r   )$	itertoolsr   r   numpyr>   r    pandas.core.dtypes.commonr   pandasr   r   pandas._testing_testingr%   pandas.tests.apply.commonr   r   r!   parametrizeparamr/   r3   rA   rQ   get_cython_table_paramsrd   nansplitr_   rc   boolrh   rj   rt   r|   r   r-   r-   r-   r.   <module>   s   




-


#


