a
    é´«jþ* ã                   @   s@  d dl mZ d dlmZ d dlZd dlmZ d dlZd dl	Z	d dl
mZmZ d dlmZ d dlm  mZ d dlZd dlmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z" d dl#m$Z% d dl&m'Z'm(Z( eƒ rÚe pÞe Z)eƒ pêe Z*d=d	d
„Z+d>dd„Z,e	j-dd„ ƒZ.e	j-dd„ ƒZ/G dd„ dƒZ0G dd„ dƒZ1G dd„ dƒZ2G dd„ dƒZ3dd„ Z4dd „ Z5e	j6 7d!g d"¢¡e	j6 7d#d$d%g¡d&d'„ ƒƒZ8e	j6 7d(ed)ƒej9g¡d*d+„ ƒZ:d,d-„ Z;e	j6 7d#g d.¢¡e	j6 7d!ddg¡e	j6 7d/d0d1g¡d2d3„ ƒƒƒZ<e	j6 7d4g d5¢¡d6d7„ ƒZ=e	j6 7d#g d8¢¡e	j6 7d9d d:g¡d;d<„ ƒƒZ>dS )?é    )Ú	timedelta)ÚDecimalN)Útzlocal)ÚIS64Úis_platform_windows)Únp_version_gt2)ÚCategoricalÚCategoricalDtypeÚ	DataFrameÚDatetimeIndexÚIndexÚPeriodIndexÚ
RangeIndexÚSeriesÚ	TimestampÚ
date_rangeÚisnaÚnotnaÚto_datetimeÚto_timedelta)Ú
algorithmsÚnanopsc                    s"   ˆr‡fdd„}n‡ fdd„}|S )a`  
    Create a function for calling on an array.

    Parameters
    ----------
    alternative : function
        The function to be called on the array with no NaNs.
        Only used when 'skipna_alternative' is None.
    skipna_alternative : function
        The function to be called on the original array

    Returns
    -------
    function
    c                    s
   ˆ | j ƒS ©N©Úvalues©Úx©Úskipna_alternative© úa/var/www/html/laksyashrimp/venv/lib/python3.9/site-packages/pandas/tests/frame/test_reductions.pyÚskipna_wrapper=   s    z+make_skipna_wrapper.<locals>.skipna_wrapperc                    s"   |   ¡ }t|ƒdkrtjS ˆ |ƒS )Nr   )ÚdropnaÚlenÚnpÚnan©r   Znona©Úalternativer   r    r!   B   s    r   )r(   r   r!   r   )r(   r   r    Úmake_skipna_wrapper+   s    r)   TFçñhãˆµøä>ç:Œ0âŽyE>c	                    s„  t || ƒ}	|rÆtdtddd�iƒ}
t d¡� t |
| ƒƒ }W d  ƒ n1 sN0    Y  t|tƒsfJ ‚tt|
ƒƒ|
d< t d¡� t |
| ƒƒ }W d  ƒ n1 s¢0    Y  t|tƒsºJ ‚t|ƒsÆJ ‚|�r2‡ fdd„}t	ˆ |ƒ}|	d	d
d�}|	dd
d�}tj
|| |¡|||d� tj
||j|dd�||d� nˆ }|	d	d�}|	dd�}tj
|| |¡|||d� | dv �r�|j|dd�}tj
||d
||d� |�r¾|jj}||jk�s®J ‚||jk�s¾J ‚tjtdd�� |	dd� W d  ƒ n1 �sî0    Y  |�r€|tj }t || ƒd	d�}t || ƒdd�}| dv �r€| dk�r@dnd	}t||j|jd�}t 
||¡ t||j|jd�}t 
||¡ dS )aš  
    Check that operator opname works as advertised on frame

    Parameters
    ----------
    opname : str
        Name of the operator to test on frame
    alternative : function
        Function that opname is tested against; i.e. "frame.opname()" should
        equal "alternative(frame)".
    frame : DataFrame
        The object that the tests are executed on
    has_skipna : bool, default True
        Whether the method "opname" has the kwarg "skip_na"
    check_dtype : bool, default True
        Whether the dtypes of the result of "frame.opname()" and
        "alternative(frame)" should be checked.
    check_dates : bool, default false
        Whether opname should be tested on a Datetime Series
    rtol : float, default 1e-5
        Relative tolerance.
    atol : float, default 1e-8
        Absolute tolerance.
    skipna_alternative : function, default None
        NaN-safe version of alternative
    Úbz1/1/2001é   ©ÚperiodsNÚac                    s
   ˆ | j ƒS r   r   r   r'   r   r    Úwrapper€   s    z$assert_stat_op_calc.<locals>.wrapperr   F©ÚaxisÚskipnaé   )Úcheck_dtypeÚrtolÚatol©r3   )r7   r8   )ÚsumÚprodúNo axis named 2©Úmatchr;   ©ÚindexÚdtype)Úgetattrr
   r   ÚtmÚassert_produces_warningÚ
isinstancer   Úranger#   r)   Úassert_series_equalÚapplyr   rA   ÚpytestÚraisesÚ
ValueErrorr$   r%   r@   )Úopnamer(   ÚframeÚ
has_skipnar6   Úcheck_datesr7   r8   r   ÚfÚdfÚresultr1   r!   Úresult0Úresult1ÚexpectedZ	lcd_dtypeÚall_naÚr0Úr1Úunitr   r'   r    Úassert_stat_op_calcK   sp    %
**
ÿü

û

ÿ*

rZ   c                  C   s€   t tjtjdtd�tjdtd�gdd�tdd„ tdƒD ƒtd�tt	dƒtd�td	�} tj
| jd
d…< tj
| jdd…dd…f< | S )zˆ
    Fixture for DataFrame of booleans with index of unique strings

    Columns are ['A', 'B', 'C', 'D']; some entries are missing
    )é   é   ©rA   r   r9   c                 S   s   g | ]}d |› �‘qS ©Zfoo_r   ©Ú.0Úir   r   r    Ú
<listcomp>Ä   ó    z&bool_frame_with_na.<locals>.<listcomp>é   ÚABCD)r@   ÚcolumnsrA   é   é
   r[   é   éþÿÿÿN)r
   r$   ZconcatenateZonesÚboolZzerosr   rF   ÚobjectÚlistr%   Úiloc©rQ   r   r   r    Úbool_frame_with_na¹   s    ÿú	rp   c                  C   sj   t tj d¡ d¡tdd„ tdƒD ƒtd�ttdƒtd�d�} tj	| j
d	d
…< tj	| j
dd…dd…f< | S )z†
    Fixture for DataFrame of floats with index of unique strings

    Columns are ['A', 'B', 'C', 'D']; some entries are missing
    r-   )rd   r\   c                 S   s   g | ]}d |› �‘qS r^   r   r_   r   r   r    rb   ×   rc   z'float_frame_with_na.<locals>.<listcomp>rd   r]   re   ©r@   rf   rg   rh   r[   ri   rj   N)r
   r$   ÚrandomÚdefault_rngÚstandard_normalr   rF   rl   rm   r%   rn   ro   r   r   r    Úfloat_frame_with_naÎ   s    ýru   c                -   @   s  e Zd Zej dddg¡ej dddddd	d
dddddejde d¡d�ejde d¡d�g¡dd„ ƒƒZ	ej dddg¡ej dddddd	d
ddddejde d¡d�ejde d¡d�g¡dd„ ƒƒZ
dd„ Zdd„ Zdd„ Zej dg d¢¡ej d eg d!¢g d"¢g d#¢d$œg d%¢d&d'�eejd(gejd)gejd*gd+œed,�g¡ej d-¡d.d/„ ƒƒƒZej d0g d1¢¡d2d3„ ƒZd4d5„ Zd6d7„ Zej d8d9d:g¡d;d<„ ƒZej d8d9d:g¡d=d>„ ƒZd?d@„ ZdAdB„ Zej dCg dD¢¡dEdF„ ƒZdGdH„ Zej dIdJdKgdLgdMgdNgedNgdNgdO�edPgdQd,�edRgƒdSœfdTdKgdLgejge ejgdUd,�eejgdNgdO�ee!j"gdQd,�ee!j"gƒdSœfdJdVdWejejgdVdWejejgdejejejgedNejejejgdNgdO�eg dX¢dQd,�eg dY¢ƒg dZ¢d[œfdTdVdWejejgdVdWejejgdejejejgeejdNejejgdNgdO�eg d\¢dQd,�eg d]¢ƒg dZ¢d[œfg¡d^d_„ ƒZ#d`da„ Z$dbdc„ Z%ddde„ Z&dfdg„ Z'ej dhdidje!j"dkgd*e!j"g g¡dldm„ ƒZ(dndo„ Z)ej dpe*dƒeg ƒe+g ej,d,�e+g ej-d,�eg dqdr�e.g dsdr�g¡dtdu„ ƒZ/ej dvddg¡dwdx„ ƒZ0ej dydzd{g¡ej d|g d}¢¡d~d„ ƒƒZ1d€d�„ Z2d‚dƒ„ Z3ej d„g d…¢¡ej d†dd(d‡œdˆd‰ejgfdd)d‡œejejejgfddTdŠœdˆd‰ejgfg¡d‹dŒ„ ƒƒZ4ej d„g d…¢¡ej d†dd(d‡œd�dŽejgfdd)d‡œejejejgfddTdŠœd�dŽejgfg¡d�d�„ ƒƒZ5d‘d’„ Z6d“d”„ Z7d•d–„ Z8d—d˜„ Z9d™dš„ Z:d›dœ„ Z;d�dž„ Z<dŸd „ Z=d¡d¢„ Z>ej d£dJdTg¡ej dddg¡d¤d¥„ ƒƒZ?ej dddg¡ej d¦¡d§d¨„ ƒƒZ@ej d|dJdTg¡d©dª„ ƒZAd«d¬„ ZBej dddg¡d­d®„ ƒZCej dddg¡ej d¦¡d¯d°„ ƒƒZDej d|dJdTg¡d±d²„ ƒZEd³d´„ ZFdµd¶„ ZGd·d¸„ ZHej d¹dºdd*gfd»dd¼gfg¡d½d¾„ ƒZId¿dÀ„ ZJej ddÁdÂg¡ej dddg¡ej dÃdTdJg¡dÄdÅ„ ƒƒƒZKej ddÁdÂg¡ej dddg¡dÆdÇ„ ƒƒZLej dÈ¡ej ddÁdÂg¡dÉdÊ„ ƒƒZMdËdÌ„ ZNej dddg¡ej dÍdÁdÂg¡ej d£dJdTg¡dÎdÏ„ ƒƒƒZOej dÐ¡dÑdÒ„ ƒZPdÓdÔ„ ZQej dÕejRi dTfejSi dJfejRdÖg idTfejSdÖg idJfejRdÖdTdTgidTfejSdÖdTdTgidTfejRdÖdJdTgidJfejSdÖdJdTgidTfejRdÖdJdJgidJfejSdÖdJdJgidJfejRdTgdTgd×œdTfejSdTgdTgd×œdTfejRdTdTgdTdJgd×œdJfejSdTdTgdTdJgd×œdTfejSdÖe dØdMgdÙd,�idTfejRdÖe dØdMgdÙd,�idJfejSdÖe ddgeTd,�idTfejRdÖe ddgeTd,�idJfe ejSdÖe ddgdQd,�idT¡e ejSdÖe ddgdÚd,�idT¡e ejRdÖe ddgdQd,�idJ¡e ejRdÖe ddgdÚd,�idJ¡e ejSdÖe dd(gdQd,�idJ¡e ejSdÖe dd(gdÚd,�idJ¡e ejRdÖe dd(gdQd,�idJ¡e ejRdÖe dd(gdÚd,�idJ¡e ejSdÖe ddgdÛd,�idT¡e ejRdÖe ddgdÛd,�idJ¡e ejSdÖe dd(gdÛd,�idJ¡e ejRdÖe dd(gdÛd,�idJ¡ejSdÖe ddgdÜd,�idJfejRdÖe ddgdÜd,�idTfejSdÖe dd(gdÜd,�idJfejRdÖe dd(gdÜd,�idTfe ejSe dÝdÞgdQd,�e dÝdÞgdÛd,�d×œdJ¡g#¡dßdà„ ƒZUdádâ„ ZVdãdä„ ZWdådæ„ ZXd9S )çÚTestDataFrameAnalyticsr3   r   r5   rL   Úcountr:   ÚmeanÚproductÚmedianÚminÚmaxÚnuniqueÚvarÚstdÚsemÚskewZscipy)ZmarksÚkurtc                 C   s   |dv r|dks|dv r*t ||ƒ|d� nÖ|dv r8d}nv|dkrT|dkrNd	}q®d
}nZ|dkrbd}nL|dkrˆ|dkr‚d ddg¡}q®d}n&|dv r–d}n|dkr®tjdtjd�}t|tjƒsÂ|d }tjt	|d��  t ||ƒ|d� W d   ƒ n1 sö0    Y  |dk�rt ||ƒ|dd� d S )N)r:   r{   r|   r   ©rw   r}   r9   )r~   r   r€   r�   r‚   z(could not convert string to float: 'bar'ry   r5   z2can't multiply sequence by non-int of type 'float'z0can't multiply sequence by non-int of type 'str'r:   z7unsupported operand type\(s\) for \+: 'float' and 'str'rx   ú|z%Could not convert \['.*'\] to numericz/Could not convert string '(bar){30}' to numeric©r{   r|   z<'[><]=' not supported between instances of 'float' and 'str'rz   z@Cannot convert \[.*\] to numeric|does not support|Cannot perform)Úflagsz*|does not support|Cannot perform reductionr=   r}   T©r3   Únumeric_only)
rB   ÚjoinÚreÚcompileÚSrE   ÚPatternrI   rJ   Ú	TypeError)ÚselfÚfloat_string_framer3   rL   Úmsgr   r   r    Ú#test_stat_op_api_float_string_frameã   s>    þÿþ.
z:TestDataFrameAnalytics.test_stat_op_api_float_string_framec                 C   s   t ||ƒ|dd� d S )NFr‡   ©rB   )r�   Úfloat_framer3   rL   r   r   r    Útest_stat_op_api_float_frame  s    z3TestDataFrameAnalytics.test_stat_op_api_float_framec                 C   sÌ   dd„ }dd„ }dd„ }dd„ }d	d
„ }t d||dddd� t dtj| d¡ddd� t dtj|tjd� t dtj|dd� t dtj|tjd� t d||ƒ t d||ƒ t d||ƒ t d||dddd� d S )Nc                 S   s   t | ƒ ¡ S r   )r   r:   ©Úsr   r   r    rw   5  s    z7TestDataFrameAnalytics.test_stat_op_calc.<locals>.countc                 S   s   t t |  ¡ ¡ƒS r   )r#   r   Zunique1dr"   r–   r   r   r    r}   8  s    z9TestDataFrameAnalytics.test_stat_op_calc.<locals>.nuniquec                 S   s   t j| dd�S ©Nr5   ©Zddof)r$   r~   r   r   r   r    r~   ;  s    z5TestDataFrameAnalytics.test_stat_op_calc.<locals>.varc                 S   s   t j| dd�S r˜   )r$   r   r   r   r   r    r   >  s    z5TestDataFrameAnalytics.test_stat_op_calc.<locals>.stdc                 S   s   t j| dd�t  t| ƒ¡ S r˜   )r$   r   Úsqrtr#   r   r   r   r    r€   A  s    z5TestDataFrameAnalytics.test_stat_op_calc.<locals>.semr}   FT)rN   r6   rO   r:   Úfloat32gü©ñÒMbP?)r6   r7   r   rx   ©rO   ry   r~   r   r€   rw   )rZ   r$   r:   ÚastypeZnansumrx   r;   Znanprod)r�   ru   Zmixed_float_framerw   r}   r~   r   r€   r   r   r    Útest_stat_op_calc4  sL    úûÿÿúz(TestDataFrameAnalytics.test_stat_op_calcc                    s>   t  d¡‰ ‡ fdd„}‡ fdd„}td||ƒ td||ƒ d S )Núscipy.statsc                    s    t | ƒdk rtjS ˆ j| dd�S )Né   F©Úbias)r#   r$   r%   r�   r   ©Zsp_statsr   r    Úskewnesso  s    zHTestDataFrameAnalytics.test_stat_op_calc_skew_kurtosis.<locals>.skewnessc                    s    t | ƒdk rtjS ˆ j| dd�S )Nr\   Fr¡   )r#   r$   r%   Úkurtosisr   r£   r   r    r‚   t  s    zDTestDataFrameAnalytics.test_stat_op_calc_skew_kurtosis.<locals>.kurtr�   r‚   )rI   ÚimportorskiprZ   )r�   ru   r¤   r‚   r   r£   r    Útest_stat_op_calc_skew_kurtosisl  s
    
z6TestDataFrameAnalytics.test_stat_op_calc_skew_kurtosisc                 C   s.   dd„ }t d||dd� t d||ddd� d S )Nc                 S   s   t | ƒ ¡ rtjS t | ¡S r   )r   Úanyr$   r%   rz   r   r   r   r    r1   }  s    z3TestDataFrameAnalytics.test_median.<locals>.wrapperrz   Trœ   F)r6   rO   )rZ   )r�   ru   Ú	int_framer1   r   r   r    Útest_median|  s
    
ÿz"TestDataFrameAnalytics.test_medianÚmethod)r:   rx   r;   r~   r   r�   r{   r|   rQ   )gÈƒw@Ba@¿gCùVÞúZ¿g
?ZÁ½.F?)r   r   ç        )gê94­³c4?gÏ@ð}�jX?gþïœÕN¿©r0   r,   Úc©ÚfooÚbarÚbazÚOr?   r-   r    r\   ©r   r5   r-   r]   z0ignore:Mismatched null-like values:FutureWarningc                 C   sj   |j jtjksJ ‚t||ƒ|d�}t| d¡|ƒ|d� t¡}|dv rZ|dv rZd || ¡ < t 	||¡ d S )Nr9   Zf8)r5   rf   r…   )
r   rA   r$   Zobject_rB   r�   rl   r   rC   rG   )r�   r«   rQ   r3   rR   rU   r   r   r    Ú%test_stat_operators_attempt_obj_array‡  s    z<TestDataFrameAnalytics.test_stat_operators_attempt_obj_arrayÚop)rx   r   r~   r�   r‚   r€   c              	   C   sÎ   t g d¢g d¢g d¢dœƒ}d g d¢¡}tjt|d�� t||ƒƒ  W d   ƒ n1 sZ0    Y  t dd	¡�J tjt|d�� t||ƒƒ  W d   ƒ n1 s¢0    Y  W d   ƒ n1 sÀ0    Y  d S )
N©r5   r-   r    r\   )ç      ð?ç       @ç      @ç      @©r0   r,   r®   Úd)ÚintÚfloatÚstrr„   )zCould not convertúcould not convertz"can't multiply sequence by non-intzdoes not supportzCannot performr=   Úuse_bottleneckF)r
   r‰   rI   rJ   rŽ   rB   ÚpdÚoption_context)r�   r¶   rQ   r‘   r   r   r    Útest_mixed_ops«  s    ýÿÿ	*z%TestDataFrameAnalytics.test_mixed_opsc                 C   sr   t g d¢g d¢g d¢dœƒ}|jg d¢d� |jdd�}t |jtjg d¢td	�¡ |j	jd
d�}t 
||¡ d S )N)TTFFF)rh   ri   rd   é(   é2   )r0   r,   r®   r½   Úe)Z	bool_dataZint_dataZstring_data©rf   r   r9   )r-   é–   Zabcder]   r5   )r
   Úreindexr:   rC   Zassert_numpy_array_equalr   r$   Úarrayrl   ÚTrG   )r�   rQ   ÚtestZaltr   r   r    Útest_reduce_mixed_frameÅ  s    ýÿÿz.TestDataFrameAnalytics.test_reduce_mixed_framec                 C   s¢   t g d¢g d¢dtjdgdœƒ}t | ¡ tddddœƒ¡ t |jdd�tddddœƒ¡ t |jdd	�tdddd
œƒ¡ t |jddd�tdddd
œƒ¡ d S )N©r5   r5   r5   ©r5   r-   r    r5   r    ©ÚAÚBÚCr-   F©r"   r9   r´   )r3   r"   )r
   r$   r%   rC   rG   r}   r   ©r�   rQ   r   r   r    Útest_nuniqueÖ  s     ÿ ÿz#TestDataFrameAnalytics.test_nuniqueÚtzNÚUTCc                 C   sT   t ddgtd|d�gd dœƒ}| ¡ }tdtd|d�gddgd	�}t ||¡ d S )
Nr5   Ú2000©rÙ   r-   ©rÓ   rÔ   r¸   rÓ   rÔ   ©r@   ©r
   r   rx   r   rC   rG   ©r�   rÙ   rQ   rR   rU   r   r   r    Ú test_mean_mixed_datetime_numericá  s     z7TestDataFrameAnalytics.test_mean_mixed_datetime_numericc                 C   sJ   t dtd|d�gd iƒ}| ¡ }ttd|d�gdgd�}t ||¡ d S )NrÓ   rÛ   rÜ   r-   rÞ   rß   rà   r   r   r    Útest_mean_includes_datetimesé  s    z3TestDataFrameAnalytics.test_mean_includes_datetimesc                 C   s  dd t dƒdœdd t dƒdœdd t dƒdœdd t dƒdœd	d t d
ƒdœddt dƒdœdd t dƒdœd	d t dƒdœdd t dƒdœdd t dƒdœg
}t|ƒ}tjtdd�� | ¡  W d   ƒ n1 sÄ0    Y  |ddg  ¡ }tddgddgtd�}t 	||¡ d S )Nr-   z628.00rÒ   r5   z383.00r    z651.00z575.00r\   z1114.00ÚTESTz241.00z572.00z609.00z820.00rg   z1223.00z8unsupported operand type|does not support|Cannot performr=   rÓ   rÕ   gš™™™™™@gÍÌÌÌÌL…@r?   )
r   r
   rI   rJ   rŽ   rx   r   rl   rC   rG   )r�   r½   rQ   rR   rU   r   r   r    Útest_mean_mixed_string_decimalô  s&    öÿ&z5TestDataFrameAnalytics.test_mean_mixed_string_decimalc                 C   sÔ   |j dd�}| dd„ ¡}t ||¡ |jdd�}| dd„ ¡}t ||¡ t tj d¡ d¡dd	¡}t	j
|d	d
�}|d	k  ¡ r†J ‚t dd¡�. t	j
|d	d
�}|d	k  ¡ r²J ‚W d   ƒ n1 sÆ0    Y  d S )Nr\   r™   c                 S   s   | j dd�S ©Nr\   r™   )r   r   r   r   r    Ú<lambda>  rc   z5TestDataFrameAnalytics.test_var_std.<locals>.<lambda>c                 S   s   | j dd�S rå   )r~   r   r   r   r    ræ     rc   r-   ©r5   éè  rè   r   r9   rÂ   F)r   rH   rC   Úassert_almost_equalr~   r$   Úrepeatrr   rs   r   Znanvarr¨   rÃ   rÄ   ©r�   Zdatetime_framerR   rU   Úarrr   r   r    Útest_var_std  s    z#TestDataFrameAnalytics.test_var_stdÚmeth)r€   r~   r   c                 C   sh  t tj d¡ d¡g d¢d�}| dti¡}d|jd< t tj d¡ d¡g d¢d�}| dti¡}d|jd< t||ƒd	d
d�}t|ddg |ƒd	d�}t	 
||¡ t||ƒd	d
d�}t|ddg |ƒd	d�}t	 
||¡ d}tjt|d��" t||ƒd	dd� W d   ƒ n1 �s0    Y  d}tjt|d��" t||ƒd	dd� W d   ƒ n1 �sZ0    Y  d S )Nr-   )rg   r    r¯   rÉ   r°   Ú100)r   r°   r0   r5   Tr‡   r±   r²   r9   z6unsupported operand type\(s\) for -: 'float' and 'str'r=   Fz&could not convert string to float: 'a')r
   r$   rr   rs   rt   r�   rl   ÚlocrB   rC   rG   rI   rJ   rŽ   )r�   rî   Zdf1Údf2rR   rU   r‘   r   r   r    Útest_numeric_only_flag   s0    þ
þ
2z-TestDataFrameAnalytics.test_numeric_only_flagc                 C   s®   |j dd�}| dd„ ¡}t ||¡ t tj d¡ d¡dd¡}tj	|dd	�}|dk  
¡ r`J ‚t d
d¡�. tj	|dd	�}|dk  
¡ rŒJ ‚W d   ƒ n1 s 0    Y  d S )Nr\   r™   c                 S   s   | j dd�t t| ƒ¡ S rå   )r   r$   rš   r#   r   r   r   r    ræ   G  rc   z1TestDataFrameAnalytics.test_sem.<locals>.<lambda>r-   rç   rè   r   r9   rÂ   F)r€   rH   rC   ré   r$   rê   rr   rs   r   Znansemr¨   rÃ   rÄ   rë   r   r   r    Útest_semE  s    zTestDataFrameAnalytics.test_semzdropna, expectedTé   g      $@r¸   r0   )Ú
categoriesú
2000-01-02úM8[ns]ú1 days)rÓ   rÔ   rÕ   ÚDÚEÚFÚGFrÀ   é   é	   )rö   ÚNaTrÿ   rÿ   ©rø   r%   r%   r%   ©r   r5   r-   r    )ÚHÚIÚJÚKÚLÚMÚN©rÿ   rö   rÿ   rÿ   )r%   rø   r%   r%   c                 C   sð   t g d¢ddtjdgdtjtjtjgttjtjdtjgdd�ttjtjdtjgƒtg d¢d	d�tg d
¢ƒg d¢g d¢ddtjtjgtdtjdtjgƒtg d¢d	d�tg d¢ƒtjddd�dœƒ}|t| 	¡ ƒ j
|d�}t |ƒ}t ||¡ d S )N)rô   rô   é   é   rh   r    r5   r0   rÀ   r]   r	  r÷   r   )rý   rý   rþ   rþ   )rþ   rþ   rý   rý   )rö   rö   rÿ   rÿ   )rø   r%   rø   r%   r\   Úint64)rÓ   rÔ   rÕ   rù   rú   rû   rü   r  r  r  r  r  r  r  rÖ   )r
   r$   r%   r   r   r   r   ÚarangeÚsortedÚkeysÚmoderC   Úassert_frame_equal)r�   r"   rU   rQ   rR   r   r   r    Útest_mode_dropnaR  s,    :
ÿ
ðÿz'TestDataFrameAnalytics.test_mode_dropnac                 C   sF   t dtjtjddgiƒ}t ddtjgiƒ}|jdd�}t ||¡ d S )NrÓ   r0   FrÖ   )r
   r$   r%   r  rC   r  )r�   Zusing_infer_stringrQ   rU   rR   r   r   r    Útest_mode_sort_with_na¥  s    z-TestDataFrameAnalytics.test_mode_sort_with_nac                 C   sD   t g ddgd�}| ¡ }t g ddgtg tjd�d�}t ||¡ d S )Nr0   r,   rÉ   r]   ©rf   r@   )r
   r  r   r$   r  rC   r  ©r�   rQ   rR   rU   r   r   r    Útest_mode_empty_df«  s    z)TestDataFrameAnalytics.test_mode_empty_dfc                 C   sü  t tdddd�tdddd�tdƒtddd� d	œƒ}t |d
 |d  |d
 |d  dœƒ}| ¡ }|jd |jd kszJ ‚|jd |jd ks’J ‚|jdd�}||jd k ¡ s´J ‚| ¡ }|jd |jd ksÔJ ‚|jd |jd ksìJ ‚|jdd�}||d
 k ¡ �sJ ‚| 	¡ }t	|ƒ}t |d
 |d  |d |d
  dœƒ}t
 ||¡ t
 ||¡ | ¡ }d|d< d|d< d|d< tdƒ|d< | ¡ }tt tdd�¡t tdd�¡dddtdƒg|jd�}t
 ||¡ |jddd �}tg d!¢g d"¢d�}t
 ||¡ |d
dg  d¡}ttdd�gd ƒ}t
 ||¡ |d
dg  ¡ }ttdd�tdd�gd
dgd�}t
 ||¡ t td#dd$�td%dd$�d&œƒ}|d' |d(  |d)< |d) jd*k�s´J ‚|d( |d'  |d+< | ¡  |d) jd*k�säJ ‚|d+ jd*k�søJ ‚d S ),Nz2012-1-1r    rù   ©r/   Úfreqz2012-1-2Z20120101rg   )ÚminutesÚsecondsrÒ   rÓ   rÕ   rÔ   rÝ   r   )r   rÓ   r5   )r   rÔ   r9   )r-   rÓ   )r-   rÔ   r°   r¸   rú   Z20130101rû   i1  ©r  éÿÿÿÿ)ÚdaysrÞ   Tr‡   )r5   r5   r¸   r´   Z20130102r.   Z20130105)ÚtimeÚtime2r  r  Zoff1útimedelta64[ns]Zoff2)r
   r   r   r   r{   rn   rð   Úallr|   ÚabsrC   r  Úcopyr   rÃ   Ú	Timedeltarf   rG   rA   Ú_consolidate_inplace)r�   rQ   ZdiffsrR   Zresult2rU   Úmixedr   r   r    Útest_operators_timedelta64±  sz    ýÿ&&ú÷ÿ

þÿz1TestDataFrameAnalytics.test_operators_timedelta64c                 C   s¦   t jddd�}t||dœdd�}t j|jd< |jdd	�}t|d
  ¡ t jgd
dgdd�}t ||¡ |jddd�}tt  	d¡gd t jt  	d¡g ƒ}t ||¡ d S )Nz1 Dayrh   r.   rÝ   T©r#  )rj   r  F©r4   rÓ   rÔ   r   r?   r5   r2   r   rý   )
rÃ   Útimedelta_ranger
   rÿ   rn   r   r   rC   rG   r$  )r�   ZtdirQ   rR   rU   r   r   r    Ú!test_std_timedelta64_skipna_false  s    ÿ$z8TestDataFrameAnalytics.test_std_timedelta64_skipna_falser   z
2022-01-01z
2022-01-02z
2022-01-03c                 C   s²   |r2|rt dd„ |D ƒƒr2tjjdd�}| |¡ t|ƒ |¡}td|iƒ}|j|d�}	|rnt dd„ |D ƒƒrŠt	dt
jid|› d	�d
�}
nt	ddid|› d	�d
�}
t |	|
¡ d S )Nc                 s   s   | ]}|t ju V  qd S r   ©rÃ   rÿ   ©r`   Úvaluer   r   r    Ú	<genexpr>   rc   zFTestDataFrameAnalytics.test_std_datetime64_with_nat.<locals>.<genexpr>z=GH#51446: Incorrect type inference on NaT in reduction result©Úreasonr0   r)  c                 s   s   | ]}|t ju V  qd S r   r,  r-  r   r   r    r/  )  rc   ztimedelta64[ú]r]   l     ž"R: )r!  rI   ÚmarkÚxfailÚapplymarkerr   Zas_unitr
   r   r   rÃ   rÿ   rC   rG   )r�   r   r4   Úusing_array_managerÚrequestrY   r3  ÚdtirQ   rR   rU   r   r   r    Útest_std_datetime64_with_nat  s     ÿÿÿ
z3TestDataFrameAnalytics.test_std_datetime64_with_natc                 C   sZ   t ƒ }| d¡}| d¡}t|tƒs(J ‚t|tƒs6J ‚t|ƒdksFJ ‚t|ƒdksVJ ‚d S )Nr   r5   )r
   r:   rE   r   r#   )r�   Zempty_frameZaxis0Zaxis1r   r   r    Útest_sum_corner0  s    

z&TestDataFrameAnalytics.test_sum_cornerr@   ZME)r  rù   c                 C   s\   t dg|d�}t||ƒdd�}|dv r,d}n|dkr:d}nd	}tg ||d
�}t ||¡ d S )Nr0   r  r5   r9   )r¨   r!  rk   rw   r  rl   r?   ©r
   rB   r   rC   rG   )r�   Úall_reductionsr@   rQ   rR   Úexpected_dtyperU   r   r   r    Útest_axis_1_empty:  s    z(TestDataFrameAnalytics.test_axis_1_emptyÚ	min_countc           	      C   s\   |}t dtjgi|d�}|jd||d�}|r8|dkr8dntj}t|g|d�}t ||¡ d S )Nr0   r]   r5   )r3   r4   r?  r   Ú )r
   rÃ   ÚNAr:   r   rC   rG   )	r�   Zstring_dtype_no_objectr4   r?  rA   rQ   rR   r.  rU   r   r   r    Útest_axis_1_sum_naQ  s    z)TestDataFrameAnalytics.test_axis_1_sum_nazmethod, unit)r:   r   )r;   r5   rˆ   )NTFc                 C   s‚  g d¢}t ||g|tjgtjtjgdœƒ}t||ƒ|d�}t|||g|dd�}t ||¡ t||ƒ|dd�}t||tjg|d�}t ||¡ t||ƒ|dd�}t|||g|dd�}t ||¡ t|jdd … |ƒ|dd�}t|tjtjg|d�}t ||¡ t |gd	 |gd
 tjgd
  dœƒ}t||ƒ|d
d�}t|ddgd�}t ||¡ t||ƒ|dd�}t|ddgd�}t ||¡ d S )Nr­   ©rˆ   Úfloat64r?   r5   )rˆ   r?  rÞ   r   rh   rg   rÝ   rÓ   rÔ   é   )r
   r$   r%   rB   r   rC   rG   rn   )r�   r«   rY   rˆ   ÚidxrQ   rR   rU   r   r   r    Útest_sum_prod_nanops[  s*    "&z+TestDataFrameAnalytics.test_sum_prod_nanopsc                 C   s¤   g d¢}t ddgdtjgtjtjgdœƒ}| t¡}| ¡ }tg d¢d|d�}t ||¡ |jdd�}t ||¡ |jdd�}tddtjgd|d�}t ||¡ d S )Nr­   r   )r   r   r   úm8[ns]©rA   r@   ©r?  r5   )	r
   r$   r%   rH   r   r:   r   rC   rG   )r�   rF  rQ   rñ   rR   rU   r   r   r    Útest_sum_nanops_timedelta}  s    "
z0TestDataFrameAnalytics.test_sum_nanops_timedeltac                 C   sJ   t g d¢g d¢dœƒ}|jdd�}ttjtjgddgd�}t ||¡ d S )	NrÑ   ©r\   rg   rE  )r   Úyrh   rJ  r   rM  rÞ   )r
   r:   r   r$   r%   rC   rG   r  r   r   r    Útest_sum_nanops_min_count’  s    z0TestDataFrameAnalytics.test_sum_nanops_min_countÚ
float_type)Zfloat16r›   rD  zkwargs, expected_result)r3   r?  gš™™™™™	@g333333@r2   c                 C   sL   t g d¢ddtjgdœ|d�}|jf i |¤Ž}t|ƒ |¡}t ||¡ d S )N)r¸   gffffff@çš™™™™™@gš™™™™™@r    ©r0   r,   r]   )r
   r$   r%   r:   r   r�   rC   rG   ©r�   rO  ÚkwargsZexpected_resultrQ   rR   rU   r   r   r    Útest_sum_nanops_dtype_min_count™  s    z6TestDataFrameAnalytics.test_sum_nanops_dtype_min_countr¹   r»   c                 C   sL   t g d¢ddtjgdœ|d�}|jf i |¤Ž}t|ƒ |¡}t ||¡ d S )N)r¸   r¹   rP  r¹   rQ  r]   )r
   r$   r%   r;   r   r�   rC   rG   rR  r   r   r    Ú test_prod_nanops_dtype_min_count©  s    ÿz7TestDataFrameAnalytics.test_prod_nanops_dtype_min_countc                 C   s6   |j  t¡}t||j|jd�}|tdƒ }| ¡  d S )Nrq   r5   )r   r�   r¾   r
   r@   rf   r   r:   )r�   r”   r   rM   Zdeltasr   r   r    Útest_sum_object»  s    z&TestDataFrameAnalytics.test_sum_objectc                 C   s"   t  |¡}| d¡ | d¡ d S )Nr5   r   )r$   Úisnanr:   )r�   r”   Úboolsr   r   r    Útest_sum_boolÁ  s    

z$TestDataFrameAnalytics.test_sum_boolc                 C   s^   t tddd�g d¢dœƒ g d¢¡}tjtdd�� | ¡  W d   ƒ n1 sP0    Y  d S )	NrÛ   r\   r.   r·   rÝ   )r-   r    r\   z does not support reduction 'sum'r=   )r
   r   rË   rI   rJ   rŽ   r:   r×   r   r   r    Útest_sum_mixed_datetimeÇ  s
    ÿz.TestDataFrameAnalytics.test_sum_mixed_datetimec                 C   s°   d}t jt|d�� |jdd� W d   ƒ n1 s40    Y  t jtdd�� |jdd� W d   ƒ n1 sn0    Y  |d dk|d< | d¡}|d |d j ¡ ks¬J ‚d S )	Nz1Could not convert|does not support|Cannot performr=   r   r9   úunsupported operand typer5   rÓ   rk   )rI   rJ   rŽ   rx   r   )r�   r”   r�   r‘   Zmeansr   r   r    Útest_mean_cornerÏ  s    **
z'TestDataFrameAnalytics.test_mean_cornerc              	   C   s”   t t d¡tddd�tjddd�tjdddd�dœƒ}|jd	d
�}tddiƒ}t	 
||¡ tjtdd�� | ¡  W d   ƒ n1 s†0    Y  d S )Nr    ú
2016-01-01r.   Ú1DÚ2016ÚYr  )rÓ   rÔ   rÕ   rù   TrC  rÓ   r¸   z'mean is not implemented for PeriodArrayr=   )r
   r$   r  r   rÃ   r*  Úperiod_rangerx   r   rC   rG   rI   rJ   rŽ   r  r   r   r    Útest_mean_datetimelikeÞ  s    
üÿz-TestDataFrameAnalytics.test_mean_datetimelikec                 C   s®   t t d¡tddd�tjddd�dœƒ}|jdd�}td|jd	 |jd
 dœƒ}t	 
||¡ tjdddd�|d< tjtdd�� |jdd� W d   ƒ n1 s 0    Y  d S )Nr    r]  r.   r^  rÒ   FrC  r5   )r5   rÔ   )r5   rÕ   r_  r`  r  rù   z"mean is not implemented for Periodr=   )r
   r$   r  r   rÃ   r*  rx   r   rð   rC   rG   ra  rI   rJ   rŽ   r  r   r   r    Ú)test_mean_datetimelike_numeric_only_falseò  s    
ýÿ	z@TestDataFrameAnalytics.test_mean_datetimelike_numeric_only_falsec                 C   sP   t j d¡jddd�}t|dd�}|jdd�}t|ƒ ¡  d	¡}t ||¡ d S )
Nr-   rè   )rh   rg   )ÚsizeÚInt64r]   TrC  ÚFloat64)	r$   rr   rs   Zintegersr
   rx   r�   rC   rG   )r�   rì   rQ   rR   rU   r   r   r    Ú*test_mean_extensionarray_numeric_only_true  s
    zATestDataFrameAnalytics.test_mean_extensionarray_numeric_only_truec                 C   sä   t jtdd�� | d¡ W d   ƒ n1 s.0    Y  t jtdd�� | d¡ W d   ƒ n1 sf0    Y  t jtdd�� | d¡ W d   ƒ n1 sž0    Y  t jtdd�� | d¡ W d   ƒ n1 sÖ0    Y  d S )NrÁ   r=   r5   r[  )rI   rJ   rŽ   r   r~   rx   r�   )r�   r�   r   r   r    Útest_stats_mixed_type  s    (((z,TestDataFrameAnalytics.test_stats_mixed_typec                 C   s8   t tdƒtdƒd�}t|ƒ}|jdd�d dks4J ‚d S )Nr5   rh   rq   r9   r   )r
   rF   r   r:   )r�   rQ   rX  r   r   r    Útest_sum_bools  s    z%TestDataFrameAnalytics.test_sum_boolsr4   c              	   C   s   |}t j|jdd…< t j|jdd…dd …f< ||fD ]Æ}d }|du sL|dkr\||u rXd nt}d}tj||d	�� |j||d
�}	W d   ƒ n1 s’0    Y  d}
tj||
d	��" |jtj||d
�}W d   ƒ n1 sÖ0    Y  | 	|j
j¡}t |	|¡ q4d S )Nrg   rh   r[   ri   rj   Fr5   z3The behavior of DataFrame.idxmin with all-NA valuesr=   r2   zThe behavior of Series.idxmin)r$   r%   rn   ÚFutureWarningrC   rD   ÚidxminrH   r   r�   r@   rA   rG   ©r�   r”   r©   r4   r3   rM   rQ   Úwarnr‘   rR   Úmsg2rU   r   r   r    Útest_idxmin   s    ,0z"TestDataFrameAnalytics.test_idxminz3ignore:PeriodDtype\[B\] is deprecated:FutureWarningc                 C   sH   |dkrt |d�}n
t |d�}|j||d�}t|jd�}t ||¡ d S ©Nr   rÞ   rÉ   r2   r]   )r
   rk  r   rA   rC   rG   ©r�   r@   r4   r3   rM   rR   rU   r   r   r    Útest_idxmin_empty4  s    
z(TestDataFrameAnalytics.test_idxmin_emptyc                 C   sf   t g d¢g d¢tdƒdœƒ}|j|d�}|rBtddgdd	gd
�}ntg d¢g d¢d
�}t ||¡ d S )N©r-   r    r5   ©r-   r5   r5   Úxyxr­   rC  r-   r5   r0   r,   rÞ   )r-   r5   r   )r
   rm   rk  r   rC   rG   ©r�   rˆ   rQ   rR   rU   r   r   r    Útest_idxmin_numeric_onlyA  s    z/TestDataFrameAnalytics.test_idxmin_numeric_onlyc                 C   sF   |}d}t jt|d�� |jdd� W d   ƒ n1 s80    Y  d S ©Nz)No axis named 2 for object type DataFramer=   r-   r9   )rI   rJ   rK   rk  ©r�   r”   rM   r‘   r   r   r    Útest_idxmin_axis_2K  s    z)TestDataFrameAnalytics.test_idxmin_axis_2c              	   C   s   |}t j|jdd…< t j|jdd…dd …f< ||fD ]Æ}d }|du sL|dkr\||u rXd nt}d}tj||d	�� |j||d
�}	W d   ƒ n1 s’0    Y  d}
tj||
d	��" |jtj||d
�}W d   ƒ n1 sÖ0    Y  | 	|j
j¡}t |	|¡ q4d S )Nrg   rh   r[   ri   rj   Fr5   z3The behavior of DataFrame.idxmax with all-NA valuesr=   r2   zThe behavior of Series.idxmax)r$   r%   rn   rj  rC   rD   ÚidxmaxrH   r   r�   r@   rA   rG   rl  r   r   r    Útest_idxmaxQ  s    ,0z"TestDataFrameAnalytics.test_idxmaxc                 C   sH   |dkrt |d�}n
t |d�}|j||d�}t|jd�}t ||¡ d S rp  )r
   r{  r   rA   rC   rG   rq  r   r   r    Útest_idxmax_emptyd  s    
z(TestDataFrameAnalytics.test_idxmax_emptyc                 C   sf   t g d¢g d¢tdƒdœƒ}|j|d�}|rBtddgdd	gd
�}ntg d¢g d¢d
�}t ||¡ d S )Nrs  rt  ru  r­   rC  r5   r   r0   r,   rÞ   )r5   r   r5   )r
   rm   r{  r   rC   rG   rv  r   r   r    Útest_idxmax_numeric_onlyq  s    z/TestDataFrameAnalytics.test_idxmax_numeric_onlyc                 C   sÜ   t  d¡ tg d¢g d¢dœdd�}| ¡ }tddgd	d
gd�}t ||¡ | ¡ }tddgd	d
gd�}t ||¡ td	g d¢idd�}|jdd�}tdgd	gd�}t ||¡ |jdd�}tdgd	gd�}t ||¡ d S )NZpyarrowrs  rt  rQ  zint64[pyarrow]r]   r5   r   r0   r,   rÞ   r-   )r,   r®   r0   zstring[pyarrow]FrC  )rI   r¦   r
   r{  r   rC   rG   rk  r  r   r   r    Útest_idxmax_arrow_types{  s    
z.TestDataFrameAnalytics.test_idxmax_arrow_typesc                 C   sF   |}d}t jt|d�� |jdd� W d   ƒ n1 s80    Y  d S rx  )rI   rJ   rK   r{  ry  r   r   r    Útest_idxmax_axis_2‘  s    z)TestDataFrameAnalytics.test_idxmax_axis_2c                 C   sP  t ddd�}tg d¢tdƒd d d… |jdd�dœƒ}| ¡ }tg d	¢g d¢d
�}t ||¡ | ¡ }tg d¢g d¢d
�}t ||¡ t	j
|jd< | ¡ }tg d	¢g d¢d
�}t ||¡ | ¡ }tg d¢g d¢d
�}t ||¡ |d d d… |d< | ¡  | ¡ }tg d¢g d¢d
�}t ||¡ | ¡ }tg d¢g d¢d
�}t ||¡ d S )Nr]  r    r.   )r   r-   r5   r  T)ÚdeeprÑ   )r5   r   r-   rÞ   )r   r-   r   )r   r    r\   )r5   r   r-   r   r·   )r   r-   r5   r-   )r   r
   rF   r#  r{  r   rC   rG   rk  rÃ   rÿ   rð   r%  ©r�   r8  rQ   rR   rU   r   r   r    Útest_idxmax_mixed_dtype—  s.    *z.TestDataFrameAnalytics.test_idxmax_mixed_dtypezop, expected_valuer{  rk  rg   c                 C   s^   t g d¢g d¢dœdd�}| d¡}t||ƒƒ }t d|itdd	gddd
�d�}t ||¡ d S )N)éd   r„  r„  éÈ   r…  r…  )r   r   r   r5   r-   r   )ÚIDr.  re  r]   r†  r.  r„  r…  )ÚnamerA   rÞ   )r
   ÚgroupbyrB   r   rC   r  )r�   r¶   Zexpected_valuerQ   rR   rU   r   r   r    Ú!test_idxmax_idxmin_convert_dtypes½  s    þû
þz8TestDataFrameAnalytics.test_idxmax_idxmin_convert_dtypesc                 C   sˆ   t ddd�}t||d d d… dœdd�}tj|jd< | ¡  |jd	d
�}tg d¢ƒ}t 	||¡ |j
d	d
�}tg d¢ƒ}t 	||¡ d S )Nr]  r    r.   r  )r    r\   Tr(  )r   r   r5   r9   )r\   r    r    )r\   r    r\   )r   r
   rÃ   rÿ   rn   r%  r{  r   rC   rG   rk  r‚  r   r   r    Ú"test_idxmax_dt64_multicolumn_axis1Ó  s    z9TestDataFrameAnalytics.test_idxmax_dt64_multicolumn_axis1r¨   r!  Ú	bool_onlyc                 C   s8   |}t j d¡ t|ƒ¡dk|d< t||ƒ||d� d S )Nr-   g      à?Z_bool_©r3   r‹  )r$   rr   rs   rt   r#   rB   )r�   rL   r3   r‹  r�   r&  r   r   r    Útest_any_all_mixed_floatå  s    z/TestDataFrameAnalytics.test_any_all_mixed_floatc                 C   s   t ||ƒ|dd� d S )NFrŒ  r“   )r�   rL   r3   rp   r   r   r    Útest_any_all_bool_with_naï  s    z0TestDataFrameAnalytics.test_any_all_bool_with_naz4ignore:Downcasting object dtype arrays:FutureWarningc                    s`  |  d¡}tt|ƒ‰ t||ƒ}‡ fdd„}‡ fdd„}|ddd�}|d	dd�}t || |¡¡ t ||j|d	d
�¡ |dd
�}|d	d
�}t || |¡¡ tj||j|d	d
�dd� tjtdd�� |dd
� W d   ƒ n1 sä0    Y  |tj	 }	t|	|ƒdd
�}
t|	|ƒd	d
�}|dk�r@|
 
¡ �r0J ‚| 
¡ �r\J ‚n|
 ¡ �sNJ ‚| ¡ �s\J ‚d S )NTc                    s   |   ¡ j}ˆ |ƒS r   )r"   r   r&   r'   r   r    r!   ý  s    
zFTestDataFrameAnalytics.test_any_all_bool_frame.<locals>.skipna_wrapperc                    s
   ˆ | j ƒS r   r   r   r'   r   r    r1     s    z?TestDataFrameAnalytics.test_any_all_bool_frame.<locals>.wrapperr   Fr2   r5   r9   )r6   r<   r=   r-   r¨   )ZfillnarB   r$   rC   rG   rH   rI   rJ   rK   r%   r¨   r!  )r�   rL   rp   rM   rP   r!   r1   rS   rT   rV   rW   rX   r   r'   r    Útest_any_all_bool_frameô  s2    




ÿ(

z.TestDataFrameAnalytics.test_any_all_bool_framec                 C   s  t g d¢g d¢g d¢dœg d¢d�}|ddg jd	d
�}tg d¢g d¢d�}t ||¡ |ddg jd	dd�}t ||¡ | d	¡}tg d¢g d¢d�}t ||¡ |jd	dd�}t ||¡ |jd d
� ¡ }|du sÚJ ‚|jd d
� ¡ }|du söJ ‚|dg jd d
� ¡ }|du �sJ ‚d S )N)TFF)TTF)TTTrÒ   r­   rÞ   rÓ   rÔ   r5   r9   TrŒ  ©r‹  FrÕ   )r
   r¨   r   rC   rG   r!  Úitemr  r   r   r    Útest_any_all_extra!  s.    ýú
z)TestDataFrameAnalytics.test_any_all_extraÚbool_agg_funcc                 C   st   t dtjtjdgtjdtjdgtjtjtjdgtjtjdtjggd�}t||ƒ||d�}tg d¢ƒ}t ||¡ d S )Nr5   Tr-   Ú5©Údatar2   )TTTT)r
   r$   r%   rB   r   rC   rG   )r�   r3   r“  r4   rQ   rR   rU   r   r   r    Útest_any_all_object_dtypeB  s    üÿz0TestDataFrameAnalytics.test_any_all_object_dtypezAignore:'any' with datetime64 dtypes is deprecated.*:FutureWarningc                 C   s^   dt jdt jg}tdƒtdƒtjtjg}t||dœƒ}|jdd�}tg d¢ƒ}t 	||¡ d S )Nr5   r    z
1960-02-15z
1960-02-16rÝ   r9   )TTTF)
r$   r%   r   rÃ   rÿ   r
   r¨   r   rC   rG   )r�   Z
float_dataZdatetime_datarQ   rR   rU   r   r   r    Útest_any_datetimeT  s    üz(TestDataFrameAnalytics.test_any_datetimec                 C   sœ   t g d¢g d¢g d¢dœtg d¢td�d�}|jdd�}ttjg d	�}t ||¡ t g d¢g d¢g d¢g d
¢dœƒ}|jdd�}tddiƒ}t ||¡ d S )NrÑ   rL  )NNN)Úcol1Úcol2Úcol3r]   rÉ   Tr�  rI  )FFT)r™  rš  r›  Úcol4rœ  F)	r
   r   rl   r!  r   r$   Úbool_rC   rG   r  r   r   r    Útest_any_all_bool_onlyg  s"    þüÿ	z-TestDataFrameAnalytics.test_any_all_bool_onlyzfunc, data, expectedrÓ   rÝ   r¬   r¿   zM8[ns, UTC]rH  Úcategoryrh   ri   c                 C   s„  t |ƒ}tdd„ |jD ƒƒr˜tjtdd�� ||ƒ W d   ƒ n1 sH0    Y  tjtdd��& tt |ƒ|jƒd d� W d   ƒ n1 sŒ0    Y  nèd}|j dd„ ¡ ¡ r¶t	}nd }t
j||d	d
�� ||ƒ}W d   ƒ n1 sè0    Y  t|tjƒ�sJ ‚| ¡ |u �sJ ‚t
j||d��& tt |ƒ|jƒd d�}W d   ƒ n1 �sR0    Y  t|tjƒ�snJ ‚| ¡ |u �s€J ‚d S )Nc                 s   s   | ]}t |tƒV  qd S r   )rE   r	   )r`   r   r   r   r    r/  ¶  rc   z>TestDataFrameAnalytics.test_any_all_np_func.<locals>.<genexpr>z)dtype category does not support reductionr=   r9   z0'(any|all)' with datetime64 dtypes is deprecatedc                 S   s
   | j dkS )Nr  )Úkindr   r   r   r    ræ   Ã  rc   z=TestDataFrameAnalytics.test_any_all_np_func.<locals>.<lambda>F)r>   Zcheck_stacklevel)r
   r¨   ÚdtypesrI   rJ   rŽ   rB   Ú__name__rH   rj  rC   rD   rE   r$   r�  r‘  )r�   Úfuncr–  rU   r‘   rm  rR   r   r   r    Útest_any_all_np_func  s,    5ÿ&ÿ6&6z+TestDataFrameAnalytics.test_any_all_np_funcc                 C   sL   t  tddgd�¡ ¡ }|du s$J ‚t  tddgd�¡ ¡ }|du sHJ ‚d S )Nr0   r,   rÉ   TF)r$   r!  r
   r‘  r¨   )r�   rR   r   r   r    Útest_any_all_objectÕ  s    z*TestDataFrameAnalytics.test_any_all_objectc                 C   s$  t ddgddgdœƒ t¡}| ¡  tddgƒ|d< |d  d¡|d< | ¡ }|dg }t ||¡ |jdd	d
�}tdgdgd�}t 	||¡ |ddg jdd	d
�}t 	||¡ |jdd d
�sÂJ ‚|j
dd	d
�}tdgdgd�}t 	||¡ |dg j
dd	d
�}t 	||¡ |j
dd d
��s J ‚d S )Nr°   r-   TFrÝ   rÕ   rŸ  rù   r   )r‹  r3   rÞ   rÔ   )r
   r�   rl   r%  r   Z_get_bool_datarC   r  r!  rG   r¨   )r�   rQ   ÚresrU   r   r   r    Útest_any_all_object_bool_onlyÝ  s&    
z4TestDataFrameAnalytics.test_any_all_object_bool_onlyc                 C   s˜   t g d¢ƒ}t dtjdtjgiƒ}tg d¢ƒ}ttjtjdgƒ}t d ¡�: |j|dd� dD ]}t||ƒ|dd	� q^W d   ƒ n1 sŠ0    Y  d S )
N)r¸   r¸   r¸   rÓ   r¹   rÐ   r5   r   )Úlowerr3   )ÚltÚleÚgtÚgeÚeqÚner9   )r
   r$   r%   r   rC   rD   ZcliprB   )r�   rQ   Zdf_nanr—   Zs_nanr¶   r   r   r    Útest_series_broadcasting  s    z/TestDataFrameAnalytics.test_series_broadcasting)Yr¢  Ú
__module__Ú__qualname__rI   r3  ÚparametrizeÚparamÚtdZ
skip_if_nor’   r•   rž   r§   rª   r
   r$   r%   rl   Úfilterwarningsrµ   rÅ   rÏ   rØ   rá   râ   rä   rí   rò   ró   r   r   r   r   rÃ   rÿ   r  r  r  r'  r+  r9  r:  r   r   r  rD  r   r>  rB  rG  rK  rN  rT  rU  rV  rY  rZ  r\  rb  rc  rg  rh  ri  ro  rr  rw  rz  r|  r}  r~  r  r€  rƒ  r‰  rŠ  r�  rŽ  r�  r’  r—  r˜  rž  r¨   r!  r¾   r¤  r¥  r§  r¯  r   r   r   r    rv   à   s  óþ)ôþ8ÿùñ$îþ
	




$ùþ
ùþÿ
÷þÿ
÷þÙþ9
Wÿ



úþ

	 ýþýþ	


	


	&þ

+!ÿ


þúÙþ3
#%rv   c                   @   s¤   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zej 	d	d
dg¡ej 	dddg¡e
dœdd„ƒƒZej 	dddg¡dd„ ƒZdd„ Zdd„ Zejdd„ ƒZejdd„ ƒZdS )ÚTestDataFrameReductionsc                 C   sÎ   t dtjtjtdƒgiƒ}| ¡ }ttdƒgdgd�}t ||¡ | ¡ }ttdƒgdgd�}t ||¡ t dtjtjgiƒ}| ¡ }ttjgdgd�}t ||¡ | ¡ }ttjgdgd�}t ||¡ d S )Nr°   z
2012-05-01rÞ   )	r
   rÃ   rÿ   r   r{   r   rC   rG   r|   )r�   rQ   r¦  Úexpr   r   r    Útest_min_max_dt64_with_NaT  s    z2TestDataFrameReductions.test_min_max_dt64_with_NaTc                 C   sÖ   |}t |tƒrtƒ rt d¡ ttd|d�td|d�gtd|d�tjgdœƒ}|j	ddd	�}t
|jd
 tjgƒ}|j|d jks„J ‚t ||¡ |jddd	�}t
|jd tjgƒ}|j|d jksÆJ ‚t ||¡ d S )NzSGH#37659 OSError raised within tzlocal bc Windows chokes in times before 1970-01-01z2020-01-01 08:00:00rÜ   z1920-02-01 09:00:00z2020-02-01 08:00:00rQ  r5   Fr2   )r   r0   r0   )r   r,   )rE   r   r   rI   Úskipr
   r   rÃ   rÿ   r{   r   rð   rA   rC   rG   r|   )r�   r7  Ztz_naive_fixturerÙ   rQ   r¦  rU   r   r   r    Ú'test_min_max_dt64_with_NaT_skipna_false(  s(    ÿ

þûÿ	z?TestDataFrameReductions.test_min_max_dt64_with_NaT_skipna_falsec                 C   s”   t dtg ƒiƒ}ttg ƒƒ}|jdd�jtju | ¡ tju ksBJ ‚|jdd�jtju | ¡ tju kshJ ‚t 	|jdd�|¡ t 	|jdd�|¡ d S )Nr   r   r9   r5   )
r
   r   r   r{   r   rÃ   rÿ   r|   rC   rG   )r�   rQ   Zexpected_dt_seriesr   r   r    Ú*test_min_max_dt64_api_consistency_with_NaTF  s    &&zBTestDataFrameReductions.test_min_max_dt64_api_consistency_with_NaTc                 C   s�   t dg iƒ}tg td�}t |jdd�j¡t | ¡ ¡ks>J ‚t |jdd�j¡t | ¡ ¡ksdJ ‚t 	|jdd�|¡ t 	|jdd�|¡ d S )Nr   r]   r   r9   r5   )
r
   r   r¿   r$   rW  r{   r   r|   rC   rG   )r�   rQ   Zexpected_float_seriesr   r   r    Ú*test_min_max_dt64_api_consistency_empty_dfU  s    &&zBTestDataFrameReductions.test_min_max_dt64_api_consistency_empty_dfÚinitialz2018-10-08 13:36:45+00:00z2018-10-08 13:36:45+03:00r«   r{   r|   )r½  c                 C   s<   t |ƒ}t|gƒ}t|gƒ}t||ƒdd�}t ||¡ d S )Nr5   r9   )r   r   r
   rB   rC   rG   )r�   r½  r«   Z
initial_dtrU   rQ   rR   r   r   r    Útest_preserve_timezonea  s
    

z.TestDataFrameReductions.test_preserve_timezonec                 C   s‚   t ddd�}tttjtj|gƒttj||gƒdœƒ}t||ƒ}|d|d�}|r`ttj||gƒ}nttjtj|gƒ}t ||¡ d S )Nz
1900-01-01T)ÚutcrQ  r5   r2   )r   r
   r   rÃ   rÿ   rB   rC   rG   )r�   r«   r4   ÚvalrQ   r¶   rR   rU   r   r   r    Ú!test_minmax_tzaware_skipna_axis_1n  s    "ÿ
z9TestDataFrameReductions.test_minmax_tzaware_skipna_axis_1c                 C   s€   t tddgƒttddƒtddƒgƒdœƒ}|jdd�}tddgd	d
gd�}t ||¡ |jdd�}tddgd�}t ||¡ d S )Nr   r—   r5   Úms)r0   Útr9   FTr0   rÃ  )r–  r@   r•  )r
   r   r   r¨   rC   rG   r  r   r   r    Útest_frame_any_with_timedelta}  s    
þÿz5TestDataFrameReductions.test_frame_any_with_timedeltac                 C   sn   |dkr|  tjjdd�¡ |g d¢ƒ}d}tjt|d��  t||ƒd d� W d   ƒ n1 s`0    Y  d S )Nrw   zCount does not accept skipnar0  rÑ   zAFor argument "skipna" expected type bool, received type NoneType.r=   r)  )r5  rI   r3  r4  rJ   rK   rB   )r�   r7  Zframe_or_seriesr<  Úobjr‘   r   r   r    Ú"test_reductions_skipna_none_raisesŽ  s    ÿz:TestDataFrameReductions.test_reductions_skipna_none_raisesc                 C   s`   t ttdƒgdd�ttdƒgdd�dœƒ}| ¡ }ttdƒtdƒgdddgd	�}t ||¡ d S )
Nz
2019-12-31zdatetime64[s]r]   z2019-12-31 00:00:00.123zdatetime64[ms]rQ  r0   r,   rI  )r
   r   r   r|   rC   rG   r  r   r   r    Ú&test_reduction_timestamp_smallest_unitš  s    
ÿþÿýz>TestDataFrameReductions.test_reduction_timestamp_smallest_unitc                 C   sh   t tt d¡gdd�tt d¡gdd�dœƒ}| ¡ }tt d¡t d¡gdddgd�}t ||¡ d S )	Nrø   ztimedelta64[s]r]   ztimedelta64[ms]rQ  r0   r,   rI  )r
   r   rÃ   r$  r|   rC   rG   r  r   r   r    Ú&test_reduction_timedelta_smallest_unit­  s    þÿýz>TestDataFrameReductions.test_reduction_timedelta_smallest_unitN)r¢  r°  r±  r¸  rº  r»  r¼  rI   r3  r²  rÀ   r¾  rÁ  rÄ  rÆ  r´  Zskip_array_manager_invalid_testrÇ  Z&skip_array_manager_not_yet_implementedrÈ  r   r   r   r    r¶    s$   þ

r¶  c                   @   sH   e Zd Zej dddg¡dd„ ƒZdd„ Zej ddd	g¡d
d„ ƒZdS )ÚTestNuisanceColumnsr«   r¨   r!  c                 C   sT  t ddgddd�}| ¡ }tjtdd�� t||ƒƒ  W d   ƒ n1 sJ0    Y  tjtdd�� tt|ƒ|ƒ W d   ƒ n1 s†0    Y  tjtdd��  t||ƒdd	� W d   ƒ n1 sÄ0    Y  tjtdd��  t||ƒd d	� W d   ƒ n1 �s0    Y  tjtdd��" tt|ƒ|dd
� W d   ƒ n1 �sF0    Y  d S )Nr   r5   rŸ  rÓ   )rA   r‡  údoes not support reductionr=   Fr�  r9   )r   Úto_framerI   rJ   rŽ   rB   r$   )r�   r«   ÚserrQ   r   r   r    Ú.test_any_all_categorical_dtype_nuisance_columnÀ  s    *,.0zBTestNuisanceColumns.test_any_all_categorical_dtype_nuisance_columnc                 C   sL  t dtg d¢ƒiƒ}|d }tjtdd�� | ¡  W d   ƒ n1 sH0    Y  tjtdd�� |jdd� W d   ƒ n1 s‚0    Y  tjtdd�� | ¡  W d   ƒ n1 s¸0    Y  |d  t¡|d< tjtdd�� |jdd� W d   ƒ n1 �s0    Y  tjtdd�� | ¡  W d   ƒ n1 �s>0    Y  d S )NrÓ   )r5   r-   r-   r-   r    rÊ  r=   FrC  rÔ   )r
   r   rI   rJ   rŽ   rz   r�   r¾   )r�   rQ   rÌ  r   r   r    Ú-test_median_categorical_dtype_nuisance_columnÖ  s    &*&,zATestNuisanceColumns.test_median_categorical_dtype_nuisance_columnr{   r|   c                 C   sè  t g d¢dd�}t|ƒ}| d¡}tjtdd�� t||ƒƒ  W d   ƒ n1 sR0    Y  tjtdd�� tt|ƒ|ƒ W d   ƒ n1 sŽ0    Y  tjtdd��  t||ƒdd� W d   ƒ n1 sÌ0    Y  tjtdd�� t||ƒƒ  W d   ƒ n1 �s0    Y  tjtdd��" tt|ƒ|dd	� W d   ƒ n1 �sJ0    Y  |d  t	¡|d
< tjtdd�� t||ƒƒ  W d   ƒ n1 �s˜0    Y  tjtdd��" tt|ƒ|dd	� W d   ƒ n1 �sÚ0    Y  d S )N)r0   r,   r®   r,   F)ZorderedrÓ   zis not ordered for operationr=   rC  r   r9   rÔ   )
r   r   rË  rI   rJ   rŽ   rB   r$   r�   rl   )r�   r«   ÚcatrÌ  rQ   r   r   r    Ú:test_min_max_categorical_dtype_non_ordered_nuisance_columnñ  s$    
*,.,2,zNTestNuisanceColumns.test_min_max_categorical_dtype_non_ordered_nuisance_columnN)	r¢  r°  r±  rI   r3  r²  rÍ  rÎ  rÐ  r   r   r   r    rÉ  ¿  s
   
rÉ  c                   @   sJ  e Zd Zej ddejdejfdejdej	fdejdejfdejdejfdej
dejfdej
dejfdejdejfdejdejfdejdejfdejdejfdejdejfg¡dd„ ƒZej ddejejfdejejfdejejfdejejfdej
ejfdej
ejfdejejfdejejfdejejfdejejfdejejfg¡d	d
„ ƒZej dddde�rjdndfddde�r~dndfddde�r’dndfddddde�rªdndfddde�r¾dndfdddddg¡dd„ ƒZej ddde�rðdndfdde�rdndfdddde�rdndfdde�r*dndfddddd g¡d!d"„ ƒZd#S )$ÚTestEmptyDataFrameReductionsz#opname, dtype, exp_value, exp_dtyper:   r   r;   r5   c                 C   sB   t g g dœ|d�}t||ƒdd�}t||g|d�}t ||¡ d S ©N©r   r5   r]   r   rJ  r;  ©r�   rL   rA   Z	exp_valueÚ	exp_dtyperQ   rR   rU   r   r   r    Útest_df_empty_min_count_0  s    z6TestEmptyDataFrameReductions.test_df_empty_min_count_0zopname, dtype, exp_dtypec                 C   sF   t g g dœ|d�}t||ƒdd�}ttjtjg|d�}t ||¡ d S ©NrÓ  r]   r5   rJ  )r
   rB   r   r$   r%   rC   rG   ©r�   rL   rA   rÕ  rQ   rR   rU   r   r   r    Útest_df_empty_min_count_1)  s    z6TestEmptyDataFrameReductions.test_df_empty_min_count_1ZInt8ZInt32re  )r:   re  r   re  )r;   re  r5   re  ZUInt8ZUInt32ÚUInt64)r:   rÚ  r   rÚ  )r;   rÚ  r5   rÚ  )r:   ÚFloat32r   rÛ  )r;   rÛ  r5   rÛ  )r:   rf  r   rf  c                 C   sB   t g g dœ|d�}t||ƒdd�}t||g|d�}t ||¡ d S rÒ  r;  rÔ  r   r   r    Ú"test_df_empty_nullable_min_count_0@  s    z?TestEmptyDataFrameReductions.test_df_empty_nullable_min_count_0)r:   re  re  )r;   re  re  )r:   rÚ  rÚ  )r;   rÚ  rÚ  )r:   rÛ  rÛ  )r;   rÛ  rÛ  )r:   rf  rf  c                 C   sF   t g g dœ|d�}t||ƒdd�}ttjtjg|d�}t ||¡ d S r×  )r
   rB   r   rÃ   rA  rC   rG   rØ  r   r   r    Ú"test_df_empty_nullable_min_count_1Z  s    z?TestEmptyDataFrameReductions.test_df_empty_nullable_min_count_1N)r¢  r°  r±  rI   r3  r²  r$   Zint8r  Úint_Zuint8Zuint64Zuintr›   rD  rÖ  rÙ  Úis_windows_np2_or_is32rÜ  Úis_windows_or_is32rÝ  r   r   r   r    rÑ    s‚   õþ
õþ
ôþ
	õþrÑ  c                 C   sø   | rt jjdd�}| |¡ t d¡ tj¡ d¡ 	dd¡}d|d< t
|ƒ}|j|jk ¡ s`J ‚|jd	d
�}ttjdd�tjgdd�}t ||¡ |jdd	d�}t ||¡ |jdd	d�}ttjdd�tjdd�tjdd�tjgdd�}t ||¡ d S )Nz3Incorrect type inference on NaT in reduction resultr0  rý   zm8[s]r\   r-   ZNat)r  r  Fr)  rô   r  r]   r   r2   r5   rg   rþ   )rI   r3  r4  r5  r$   r  r�   r  ÚviewZreshaper
   r¡  rA   r!  r:   r   rÃ   r$  rÿ   rC   rG   )r6  r7  r3  rì   rQ   rR   rU   r   r   r    Ú!test_sum_timedelta64_skipna_falser  s0    ÿ
 


üù	râ  c                  C   sP   t ddggtdƒd�} |  ddi¡} |  ¡ }tddgddgd�}t ||¡ d S )Nr0   r5   ÚabrÉ   r,   re  rÞ   )r
   rm   r�   r:   r   rC   rG   )rQ   rR   rU   r   r   r    Ú!test_mixed_frame_with_integer_sum”  s
    rä  rˆ   )TFNr«   r{   r|   c                 C   sl   t  d¡}t|jd |jgt ¡ d�}td|iƒ}t|| ƒ|d�}tt|| ƒgdt	dgƒd�}t
 ||¡ d S )Nr  r]   re  rC  rI  )r$   Ziinfor   r|   r{   rÃ   Z
Int64Dtyper
   rB   r   rC   rG   )r«   rˆ   Z
int64_inforÌ  rQ   rR   rU   r   r   r    Útest_minmax_extensionarray�  s    

ýrå  Úts_valuez
2000-01-01c                 C   sT   t dgdgdg| gdœƒ}tjtdd�� | ¡  W d   ƒ n1 sF0    Y  d S )Nr5   gš™™™™™ñ?r°   r¼   z5does not support (operation|reduction)|Cannot performr=   )r
   rI   rJ   rŽ   r:   )ræ  rQ   r   r   r    Ú.test_frame_mixed_numeric_object_with_timestamp­  s
    ÿrç  c                  C   s‚   t g d¢ƒ} | jdddd�}tdgtd�}t ||¡ t d¡}tj	t
|d	��  | jdddd� W d   ƒ n1 st0    Y  d S )
N)r5   r0   Tr   r5   F)r3   r?  rˆ   r0   r]   z2unsupported operand type(s) for +: 'int' and 'str'r=   )r
   r;   r   rl   rC   rG   rŠ   ÚescaperI   rJ   rŽ   r:   )rQ   rR   rU   r‘   r   r   r    Ú$test_prod_sum_min_count_mixed_object·  s    
ré  )r{   r|   rx   rz   r�   r‚   rA   rD  rf  c                 C   sœ   t tj d¡ d¡|d�}t|| ƒd |d�}|jtjd�}| dv rzt 	d¡}| dkrXd} t|| ƒ|d	d d
�}t
 ||¡ ntt| ƒ|d d�}||ks˜J ‚d S )Nr-   )r\   r\   r]   r‡   >   r�   r‚   rŸ   r‚   r¥   F)r¢   r3   r9   )r
   r$   rr   rs   rt   rB   Zto_numpyrD  rI   r¦   rC   ré   )r«   rˆ   rA   rQ   rR   Znp_arrZcomp_modrU   r   r   r    Ú'test_reduction_axis_none_returns_scalarÄ  s    
rê  Úkernel)ZcorrÚcorrwithZcovr{  rk  r‚   r|   rx   rz   r{   r;   Úquantiler€   r�   r   r:   r~   c                 C   s�   t g d¢tdœƒ}| dkr |fnd}d g d¢¡}| dkrPd}d	}d ||g¡}tjt|d
�� t|| ƒ|Ž  W d   ƒ n1 s‚0    Y  d S )NrÑ   rQ  rì  r   r„   )znot allowed for this dtypez%argument must be a string or a numberz"not supported between instances ofr[  z*argument must be a string or a real numberrz   zTCannot convert \[\[<class 'object'> <class 'object'> <class 'object'>\]\] to numericzPCannot convert \[<class 'object'> <class 'object'> <class 'object'>\] to numericr=   )r
   rl   r‰   rI   rJ   rŽ   rB   )rë  rQ   Úargsr‘   Zmsg1rn  r   r   r    Útest_fails_on_non_numericÙ  s    ÿ	ÿÿrï  )r!  r¨   rw   r{  rk  r‚   r¥   r|   rx   rz   r{   r}   r;   ry   r€   r�   r   r:   r~   r?  r-   c                 C   s|  t tg d¢|d�tddtjdg|d�dœƒ}t g d¢dd	tjd
gdœƒ}| dv rVd}n*| dv rdd}n| dv r|| d¡s|d}n|}i }| dvr”||d< | dv r¤||d< d }d }	|sÈ| dv rÈt}d| › d�}	tj	||	d��( t
|| ƒf ddi|¤Ž}
W d   ƒ n1 �s0    Y  tj	||	d��( t
|| ƒf ddi|¤Ž}W d   ƒ n1 �sN0    Y  | dv�rl| |¡}t |
|¡ d S )Nr  r]   r   r5   r    rQ  )r¬   r¸   r¹   rº   r¬   r¸   rº   rƒ   r  )r!  r¨   Úboolean)r‚   r¥   rx   rz   r€   r�   r   r~   ÚFloatrf  )rw   r}   rí  r4   )r;   ry   r:   r?  )r{  rk  zThe behavior of DataFrame.z with all-NA valuesr=   r3   )r
   r   rÃ   rA  r$   r%   Ú
startswithrj  rC   rD   rB   r�   rG   )r«   r4   r?  Zany_numeric_ea_dtyperQ   Zexpected_dfr=  rS  rm  r‘   rR   rU   r   r   r    Útest_numeric_ea_axis_1  sH    þÿþÿ	÷
88

ró  )N)TTFr*   r+   N)?Údatetimer   Údecimalr   rŠ   Zdateutil.tzr   Únumpyr$   rI   Zpandas.compatr   r   Zpandas.compat.numpyr   Zpandas.util._test_decoratorsÚutilZ_test_decoratorsr´  ZpandasrÃ   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   Zpandas._testingZ_testingrC   Zpandas.corer   r   rß  rà  r)   rZ   Zfixturerp   ru   rv   r¶  rÉ  rÑ  râ  rä  r3  r²  rå  rÿ   rç  ré  rê  rï  ró  r   r   r   r    Ú<module>   s€   @
$      ÷
n

          : 0Ra"	
	þ
þ