a
    nÝEbgÆ  ã                   @   sî   d dl m Z mZ d dlZd dl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mZmZ d dlmZ d dlmZ dd„ Zeƒ ZG dd„ dƒZG d	d
„ d
ƒZG dd„ dƒZ G dd„ dƒZ!G dd„ dƒZ"G dd„ dƒZ#dS )é    )ÚdatetimeÚ	timedeltaN)ÚCategoricalÚ	DataFrameÚDatetimeIndexÚIndexÚNaTÚPeriodÚPeriodIndexÚ
RangeIndexÚSeriesÚ	TimedeltaÚTimedeltaIndexÚ	TimestampÚ
date_rangeÚisnaÚtimedelta_rangeÚto_timedelta)Únanopsc                     s–   t jddd�t jddd�t jddd�t jddd�t jddd�jdd�t jddd�t jddd�t jddd�g} t	j
 d¡‰ ‡ fdd„| D ƒ}| | }|S )Né
   Úa)Únamez
US/Eastern©Útzc                    s   g | ]}t ˆ |d d�‘qS )r   )Úindexr   )r   )Ú.0Úidx©Úarr© úg/home/ja/django-apps/lartica_env/lib/python3.9/site-packages/pandas/tests/reductions/test_reductions.pyÚ
<listcomp>-   ó    zget_objs.<locals>.<listcomp>)ÚtmZmakeBoolIndexZmakeIntIndexZmakeFloatIndexZmakeDateIndexÚtz_localizeZmakePeriodIndexZmakeStringIndexZmakeUnicodeIndexÚnpÚrandomÚrandn)ZindexesÚseriesÚobjsr   r   r    Úget_objs    s    ør*   c                   @   sü   e Zd Zej dddg¡ej de¡dd„ ƒƒZej dddg¡ej ddd	d
edddƒfddg¡dd„ ƒƒZ	ej dddg¡dd„ ƒZ
ej dddg¡ej dddg¡dd„ ƒƒZdd„ Zej dddgddgg¡dd„ ƒZej d d!d"g¡d#d$„ ƒZd%S )&ÚTestReductionsÚopnameÚmaxÚminÚobjc                 C   s~   t ||ƒƒ }t|tƒs&t |j|ƒƒ }ntt |j|ƒƒ |jd�}t |dd ƒd urn| d¡ d¡}|j|kszJ ‚n||kszJ ‚d S )N)ZordinalÚfreqr   úM8[ns]Úint64)	ÚgetattrÚ
isinstancer
   Úvaluesr	   Zasi8r0   ÚastypeÚvalue)Úselfr,   r/   ÚresultÚexpectedr   r   r    Útest_ops7   s    
zTestReductions.test_opsz
dtype, val)Úobjectç       @)Úfloat64r=   údatetime64[ns]éÛ  é   é   )ÚInt64é   )ÚbooleanTc                    s  |}‡ fdd„}|d gˆ d�}|t ||ƒƒ ƒs2J ‚|t ||ƒdd�ƒsJJ ‚|g ˆ d�}|t ||ƒƒ ƒsjJ ‚|t ||ƒdd�ƒs‚J ‚ˆ dkrŽd S |d |gˆ d�}t ||ƒƒ |ks²J ‚|t ||ƒdd�ƒsÊJ ‚|d |d gˆ d�}t ||ƒƒ |ksðJ ‚|t ||ƒdd�ƒ�s
J ‚d S )Nc                    s.   ˆ dkr| t u S ˆ dv r"| tju S t| ƒS d S )Nr?   )rC   rE   )r   ÚpdÚNAr   )Úres©Údtyper   r    Úcheck_missingV   s
    
z4TestReductions.test_nanminmax.<locals>.check_missingrI   F©Úskipnar<   )r3   )r8   r,   rJ   ÚvalÚindex_or_seriesÚklassrK   r/   r   rI   r    Útest_nanminmaxG   s     zTestReductions.test_nanminmaxc                 C   sÚ   |}|t u rd| nd| }|ttdddƒgƒ}t||ƒƒ dksDJ ‚t||ƒdd�}|tu rlt |¡sxJ ‚n|dksxJ ‚|ttdddƒtgƒ}t||ƒƒ dks¢J ‚t||ƒdd�}|tu rÊt |¡sÖJ ‚n|dksÖJ ‚d S )	NÚargr   r@   rA   rB   FrL   éÿÿÿÿ)r   r   r   r3   r   r%   Úisnan)r8   r,   rO   rP   Úarg_opr/   r9   r   r   r    Útest_nanargminmaxr   s    z TestReductions.test_nanargminmaxrJ   r1   zdatetime64[ns, UTC]c                 C   sÐ   |}|t u rd| nd| }|g |d�}t||ƒƒ tu s<J ‚t||ƒdd�tu sTJ ‚tjtdd�� t||ƒƒ  W d   ƒ n1 s„0    Y  tjtdd��  t||ƒdd� W d   ƒ n1 sÂ0    Y  d S )NrR   r   rI   FrL   zempty sequence©Úmatch)r   r3   r   ÚpytestÚraisesÚ
ValueError)r8   r,   rO   rJ   rP   rU   r/   r   r   r    Útest_nanops_empty_object‰   s    *z'TestReductions.test_nanops_empty_objectc                 C   s°  t tjddd�ƒ}| ¡ dks"J ‚| ¡ dks2J ‚t tjdtjdgƒ}| ¡ dksVJ ‚| ¡ dksfJ ‚|jd	d
�dkszJ ‚|jd	d
�dksŽJ ‚t tjgƒ}| ¡ dksªJ ‚| ¡ dksºJ ‚|jd	d
�dksÎJ ‚|jd	d
�dksâJ ‚t ttdddƒtdddƒtgƒ}| ¡ dk�sJ ‚| ¡ dk�s&J ‚|jd	d
�dk�s<J ‚|jd	d
�dk�sRJ ‚t tgƒ}| ¡ dk�snJ ‚| ¡ dk�s€J ‚|jd	d
�dk�s–J ‚|jd	d
�dk�s¬J ‚d S )Né   r2   rI   r   é   rB   rD   é   FrL   rS   r@   rA   )r   r%   ÚarangeÚargminÚargmaxÚnanr   r   )r8   r/   r   r   r    Útest_argminmax™   s.     
zTestReductions.test_argminmaxzop, expected_colr   Úbc                 C   s\   t tdddd�dgd�}|j tdd�¡|d	< t||ƒd
d�}||  d ¡}t ||¡ d S )Nz2016-01-01 00:00:00r_   ÚUTC)Úperiodsr   r   )Úcolumnsi  ©Úsecondsre   rB   ©Úaxis)	r   r   r   Úsubtractr   r3   Úrenamer#   Úassert_series_equal)r8   ÚopZexpected_colÚdfr9   r:   r   r   r    Útest_same_tz_min_max_axis_1¶   s    ÿz*TestReductions.test_same_tz_min_max_axis_1ÚfuncÚmaximumÚminimumc                 C   s>   |}t  dg¡ |¡}t|ƒ}tt|ƒ||ƒ}t ||¡ d S )NZ2019)rF   Úto_datetimer$   r   r3   r%   r#   ro   )r8   Ztz_aware_fixturers   r   rR   r:   r9   r   r   r    Ú(test_numpy_reduction_with_tz_aware_dtypeÁ   s
    z7TestReductions.test_numpy_reduction_with_tz_aware_dtypeN)Ú__name__Ú
__module__Ú__qualname__rY   ÚmarkÚparametrizer)   r;   r   rQ   rV   r\   rd   rr   rw   r   r   r   r    r+   6   s0   ûþ
 


r+   c                   @   sÄ   e Zd Zej dg d¢¡dd„ ƒZdd„ Zej ddd	g¡d
d„ ƒZdd„ Z	dd„ Z
ej dg d¢¡dd„ ƒZdd„ Zej ddd	g¡dd„ ƒZdd„ Zdd„ Zdd„ Zdd„ Zd d!„ Zd"d#„ Zd$S )%ÚTestIndexReductionszstart,stop,step))r   i�  r_   )iô  r   iúÿÿÿ)éÀ½ðÿé@B r^   )r   r~   éüÿÿÿ)r   r   é   c                 C   sª   t |||ƒ}|j ¡ }| ¡ }||ks*J ‚|jdd�}||ksBJ ‚|j ¡ }| ¡ }||ks`J ‚|jdd�}||ksxJ ‚t ||| ƒ}t| ¡ ƒs–J ‚t| ¡ ƒs¦J ‚d S ©NFrL   )r   Z_valuesr-   r.   r   )r8   ÚstartÚstopÚstepr   r:   r9   Zresult2r   r   r    Útest_max_min_rangeÐ   s    

z&TestIndexReductions.test_max_min_rangec                 C   sŒ   t g d¢ƒ}|jsJ ‚t dtjddgƒ}|jr2J ‚||fD ]L}| ¡ tdƒksRJ ‚| ¡ tdƒksfJ ‚| ¡ dksvJ ‚| ¡ dks:J ‚q:d S )N)ú1 daysú2 daysú3 daysr‡   r‰   r   r   rD   )	r   Úis_monotonicr%   rc   r.   r   r-   ra   rb   )r8   Úidx1Úidx2r   r   r   r    Útest_minmax_timedelta64ò   s    

z+TestIndexReductions.test_minmax_timedelta64rp   r.   r-   c                 C   s`   t g ƒ}t||ƒƒ tu sJ ‚t tgƒ}t||ƒƒ tu s:J ‚t tttgƒ}t||ƒƒ tu s\J ‚d S ©N)r   r3   r   ©r8   rp   r/   r   r   r    Ú!test_minmax_timedelta_empty_or_na  s    
z5TestIndexReductions.test_minmax_timedelta_empty_or_nac                 C   s^  t dddd�}t |¡tdƒks$J ‚t |¡tdƒks:J ‚d}tjt|d�� tj|dd� W d   ƒ n1 sp0    Y  tjt|d�� tj|dd� W d   ƒ n1 s¬0    Y  t |¡dksÈJ ‚t 	|¡d	ksÚJ ‚d}tjt|d�� tj|dd� W d   ƒ n1 �s0    Y  tjt|d�� tj	|dd� W d   ƒ n1 �sP0    Y  d S )
Nz
16815 daysz
16820 daysÚD©r0   ú$the 'out' parameter is not supportedrW   r   ©Úoutr]   )
r   r%   r.   r   r-   rY   rZ   r[   ra   rb   )r8   ÚtdÚerrmsgr   r   r    Útest_numpy_minmax_timedelta64  s    ,,.z1TestIndexReductions.test_numpy_minmax_timedelta64c                 C   s¦  t dd„ tdƒD ƒƒ}| ¡ }| ¡ }ttdd�ƒ}||ks@J ‚| ¡  ¡ }|d |ks\J ‚| d¡}tt	 
dd	¡ƒ}||ks‚J ‚| ¡ }td
ƒ}||ksžJ ‚| ¡  ¡ }|d |ksºJ ‚| ¡ }tdƒ}||ksÖJ ‚| ¡  ¡ }|d |ksòJ ‚| ¡ }tt | ¡ jƒ ¡ ƒ}||k�sJ ‚| ¡  ¡ }|d |k�s<J ‚t tdƒtdƒgƒ}| ¡  ¡ tdd�k�slJ ‚t tdƒtdƒtdƒgƒ}| ¡  ¡ tdd�k�s¢J ‚d S )Nc                 S   s"   g | ]}t d ƒt|| d� ‘qS ©Z20130101ri   ©r   r   ©r   Úir   r   r    r!   '  r"   z:TestIndexReductions.test_timedelta_ops.<locals>.<listcomp>r   é	   ri   r   gš™™™™™¹?i(
  Úmsz00:00:09z00:01:21z
2015-02-03z
2015-02-07r^   )Údaysz
2015-02-15é   )r   ÚrangeÚdiffÚmeanr   r   Úto_frameZquantiler   r%   Ztimedelta64ÚmedianÚsumÚstdÚdropnar5   r   )r8   Úsr–   r9   r:   r   r   r    Útest_timedelta_ops#  sB    ÿ
ÿz&TestIndexReductions.test_timedelta_opsr,   )ZskewZkurtZsemÚprodÚvarc                 C   sÆ   t dd„ tdƒD ƒƒ}| ¡ }d d|› d�d|› d�d	|› d
�g¡}tjt|d�� t||ƒƒ  W d   ƒ n1 sv0    Y  tjt|d��$ t| ¡ |ƒdd� W d   ƒ n1 s¸0    Y  d S )Nc                 S   s"   g | ]}t d ƒt|| d� ‘qS r™   rš   r›   r   r   r    r!   [  r"   zDTestIndexReductions.test_invalid_td64_reductions.<locals>.<listcomp>r   ú|zreduction operation 'z' not allowed for this dtypezcannot perform z with type timedelta64\[ns\]zdoes not support reduction 'ú'rW   F)Znumeric_only)	r   r¡   r¢   ÚjoinrY   rZ   Ú	TypeErrorr3   r¤   )r8   r,   r©   r–   Úmsgr   r   r    Útest_invalid_td64_reductionsX  s    ÿ


ýÿ*z0TestIndexReductions.test_invalid_td64_reductionsc                 C   s    |}t g d¢|d�}|jsJ ‚t dtddtg|d�}|jr>J ‚||fD ]T}| ¡ td|d�ksbJ ‚| ¡ td|d�kszJ ‚| ¡ dksŠJ ‚| ¡ dksFJ ‚qFd S )N)ú
2011-01-01ú
2011-01-02ú
2011-01-03r   r³   rµ   r´   r   rD   )r   rŠ   r   r.   r   r-   ra   rb   )r8   Ztz_naive_fixturer   r‹   rŒ   r   r   r   r    Útest_minmax_tzm  s    
ÿ
z"TestIndexReductions.test_minmax_tzc                 C   s`   t g ƒ}tt||ƒƒ ƒsJ ‚t tgƒ}tt||ƒƒ ƒs:J ‚t tttgƒ}tt||ƒƒ ƒs\J ‚d S rŽ   )r   r   r3   r   r�   r   r   r    Útest_minmax_nat_datetime64  s    
z.TestIndexReductions.test_minmax_nat_datetime64c                 C   sŽ  t g d¢ƒ}|j ¡ }t |¡}||ks,J ‚|j ¡ }t |¡}||ksLJ ‚d}tjt|d�� tj|dd� W d   ƒ n1 s‚0    Y  tjt|d�� tj|dd� W d   ƒ n1 s¾0    Y  |j ¡ }t |¡}||ksèJ ‚|j 	¡ }t 	|¡}||k�s
J ‚d}tjt|d�� tj	|dd� W d   ƒ n1 �sB0    Y  tjt|d�� tj|dd� W d   ƒ n1 �s€0    Y  d S )N©rB   rD   r_   r“   rW   r   r”   )
r   r5   r-   r%   r.   rY   rZ   r[   rb   ra   )r8   r   r:   r9   r—   r   r   r    Útest_numpy_minmax_integer‹  s.    



,,



.z-TestIndexReductions.test_numpy_minmax_integerc                 C   s¸   t dddƒ}t |¡}|dks"J ‚t |¡}|dks8J ‚d}tjt|d�� tj|dd� W d   ƒ n1 sn0    Y  tjt|d�� tj|dd� W d   ƒ n1 sª0    Y  d S )Nr   r   r_   r�   r“   rW   r”   )r   r%   r-   r.   rY   rZ   r[   )r8   r   r9   r—   r   r   r    Útest_numpy_minmax_range«  s    

,z+TestIndexReductions.test_numpy_minmax_rangec                 C   s\  t ddd�}t |¡tdƒks"J ‚t |¡tdƒks8J ‚d}tjt|d�� tj|dd	� W d   ƒ n1 sn0    Y  tjt|d�� tj|dd	� W d   ƒ n1 sª0    Y  t |¡dksÆJ ‚t 	|¡d
ksØJ ‚d}tjt|d�� tj|dd	� W d   ƒ n1 �s0    Y  tjt|d�� tj	|dd	� W d   ƒ n1 �sN0    Y  d S )Nú
2016-01-15ú
2016-01-20©rƒ   Úendz2016-01-15 00:00:00z2016-01-20 00:00:00r“   rW   r   r”   r]   )
r   r%   r.   r   r-   rY   rZ   r[   ra   rb   )r8   Zdrr—   r   r   r    Útest_numpy_minmax_datetime64¾  s    ,,.z0TestIndexReductions.test_numpy_minmax_datetime64c                 C   sR  t tdddgdd�}|jrJ ‚|dd … js0J ‚t dtddtgdd�}|jrPJ ‚||fD ]4}| ¡ tddd�kstJ ‚| ¡ tddd�ksXJ ‚qX| ¡ dksžJ ‚| ¡ dks®J ‚| ¡ dks¾J ‚| ¡ d	ksÎJ ‚d
D ]z}t g dd�}t||ƒƒ }|tu súJ ‚t tgdd�}t||ƒƒ }|tu �s"J ‚t tttgdd�}t||ƒƒ }|tu sÒJ ‚qÒd S )Nr³   r´   rµ   r‘   r’   rB   r   r_   rD   )r.   r-   ÚM)	r
   r   rŠ   r.   r	   r-   ra   rb   r3   )r8   r‹   rŒ   r   rp   r/   r9   r   r   r    Útest_minmax_periodÕ  s0    
ÿ
z&TestIndexReductions.test_minmax_periodc                 C   sf  t jddd�}t |¡tddd�ks(J ‚t |¡tddd�ksBJ ‚d}tjt|d�� tj|dd	� W d   ƒ n1 sx0    Y  tjt|d�� tj|dd	� W d   ƒ n1 s´0    Y  t 	|¡dksÐJ ‚t 
|¡d
ksâJ ‚d}tjt|d�� tj	|dd	� W d   ƒ n1 �s0    Y  tjt|d�� tj
|dd	� W d   ƒ n1 �sX0    Y  d S )Nr»   r¼   r½   r‘   r’   r“   rW   r   r”   r]   )rF   Zperiod_ranger%   r.   r	   r-   rY   rZ   r[   ra   rb   )r8   Úprr—   r   r   r    Útest_numpy_minmax_periodø  s    ,,.z,TestIndexReductions.test_numpy_minmax_periodc                 C   sÈ   t jtdƒtdƒdd�}d}tjt|d�� | ¡  W d   ƒ n1 sH0    Y  d}tjt|d�� | ¡  W d   ƒ n1 s‚0    Y  t jtdƒtdƒdd�}| ¡ d	ks´J ‚| ¡ d
ksÄJ ‚d S )NZaabbcaZcabF©Ú
categoriesÚorderedzwCategorical is not ordered for operation min\nyou can use .as_ordered\(\) to change the Categorical to an ordered one\nrW   zwCategorical is not ordered for operation max\nyou can use .as_ordered\(\) to change the Categorical to an ordered one\nTÚcre   )rF   ZCategoricalIndexÚlistrY   rZ   r°   r.   r-   )r8   Úcir±   r   r   r    Útest_min_max_categorical  s    ÿ&ÿ&z,TestIndexReductions.test_min_max_categoricalN)rx   ry   rz   rY   r{   r|   r†   r�   r�   r˜   rª   r²   r¶   r·   r¹   rº   r¿   rÁ   rÃ   rÊ   r   r   r   r    r}   Ë   s*   þ


5

 #r}   c                   @   s$  e Zd Zdd„ Zej dg d¢¡ej dddg¡ej dd	d
g¡dd„ ƒƒƒZej dd	d
g¡dd„ ƒZej ddg¡ej dg d¢¡dd„ ƒƒZ	ej dg d¢¡dd„ ƒZ
dd„ Zej dddg¡dd„ ƒZdd„ Zdd„ Zdd „ Zd!d"„ Zd#d$„ Zd%d&„ Zej d'eeg¡d(d)„ ƒZd*d+„ Zej d,d-d.g¡ej d/ddg¡d0d1„ ƒƒZej d,d-d.g¡ej d2dd3gd3dgdejgejdgg¡d4d5„ ƒƒZej dg d6¢¡ej d,d-d.g¡ej d/ddg¡ej d7g d8¢ddgddggfg d9¢ddgddggfejejejgejejgddggfd:ejd:gejdgddggfd;ejd;gdejgddggfd;ejd:gddgddggfg¡d<d=„ ƒƒƒƒZej d>d.g d?¢fd-g d@¢fg¡dAdB„ ƒZdCdD„ ZdEdF„ Z dGdH„ Z!ej dIeg dJdK�e"feg dL¢ƒe#fedMdNgƒe#fedOdOdPdPd3ejdQgƒe#fg¡dRdS„ ƒZ$dTdU„ Z%d3S )VÚTestSeriesReductionsc                 C   sÐ   t tj d¡ƒ}| ¡ }tj|dd…< tj|dd…< t | ¡ ¡sFJ ‚tj dd¡ 	d¡}tj|d d …df< t
 dd¡�$ t | ¡ | ¡ ¡ W d   ƒ n1 s¢0    Y  tj|d	d
�}t |¡ ¡ sÌJ ‚d S )Nr   r]   é   éd   Zf4rD   úmode.use_inf_as_naTrB   rk   )r   r%   r&   r'   ÚcopyÚinfrc   Úisinfr¦   r6   rF   Úoption_contextr#   Úassert_almost_equalr   ÚnansumÚall)r8   r©   Ús2r   rH   r   r   r    Útest_sum_inf'  s    2z!TestSeriesReductions.test_sum_infrJ   )r>   ZFloat32rC   rE   r<   Úuse_bottleneckTFzmethod, unit)r¦   ç        )r«   ç      ð?c                 C   s\  t  d|¡��8 tg |d�}t||ƒƒ }||ks4J ‚t||ƒdd�}||ksPJ ‚t||ƒdd�}t|ƒslJ ‚t||ƒdd�}||k t||ƒddd�}||ks¢J ‚t||ƒddd�}t|ƒsÀJ ‚t||ƒd	dd�}||ksÞJ ‚t||ƒd	dd�}t|ƒsüJ ‚ttjg|d�}t||ƒƒ }||k�s&J ‚t||ƒdd�}||k�sDJ ‚t||ƒdd�}t|ƒ�sbJ ‚t||ƒdd�}||k t||ƒddd�}||k�sšJ ‚t||ƒddd�}t|ƒ�sºJ ‚ttjdg|d�}t||ƒƒ }|d
k�sæJ ‚t||ƒdd�}|d
k�sJ ‚t||ƒdd�}|d
k�s"J ‚t||ƒdd�}|d
k�s@J ‚t||ƒddd�}|d
k�s`J ‚tt d¡|d�}t||ƒdƒ|k 	¡ �sŽJ ‚tdg|d�}t||ƒdd�}t|ƒ�sºJ ‚t||ƒd	dd�}t|ƒ�sÚJ ‚ttjg|d�}t||ƒdd�}t|ƒ�sJ ‚ttjdg|d�}t||ƒdd�}t|ƒ�s8J ‚W d   ƒ n1 �sN0    Y  d S )NrØ   rI   r   )Ú	min_countrB   TrL   )rM   rÛ   FrÚ   )r   r   rD   )
rF   rÒ   r   r3   r   r%   rc   r   ÚemptyrÕ   )r8   ÚmethodÚunitrØ   rJ   r©   r9   rq   r   r   r    Ú
test_empty9  sn    zTestSeriesReductions.test_emptyc                 C   s@  t dtjtjtjgtj ddg¡d�}t t¡�  t	||ƒdd�}W d   ƒ n1 sV0    Y  t d|gddgd�}t 
||¡ t t¡�" t	||ƒddd	�}W d   ƒ n1 s²0    Y  t d|gddgd�}t 
||¡ t t¡�" t	||ƒddd	�}W d   ƒ n1 �s0    Y  t dtjgddgd�}t 
||¡ d S )
NrB   )r   re   )r   rB   ©r   r   ©Úlevelr   re   )râ   rÛ   )r   r%   rc   rF   Z
MultiIndexZfrom_productr#   Úassert_produces_warningÚFutureWarningr3   ro   )r8   rÝ   rÞ   r©   r9   r:   r   r   r    Útest_empty_multiž  s     þ.02z%TestSeriesReductions.test_empty_multirÝ   r£   )ÚFloat64rC   rE   c                 C   sT   t g |d�}t||ƒƒ }|tju s&J ‚t tjg|d�}t||ƒƒ }|tju sPJ ‚d S ©NrI   )r   r3   rF   rG   r%   rc   )r8   rÝ   rJ   Zeserr9   Znserr   r   r    Ú&test_ops_consistency_on_empty_nullable¶  s    z;TestSeriesReductions.test_ops_consistency_on_empty_nullable)r£   r¥   r§   r¬   c                 C   s˜   t ttd�|ƒƒ }t|ƒsJ ‚tg dd�}|dkr|d g d¢¡}tjt|d�� t ||ƒƒ  W d   ƒ q”1 sp0    Y  nt ||ƒƒ }|tu s”J ‚d S )NrI   úm8[ns]r¬   r­   )zoperation 'var' not allowedz.cannot perform var with type timedelta64\[ns\]z does not support reduction 'var'rW   )	r3   r   Úfloatr   r¯   rY   rZ   r°   r   )r8   rÝ   r9   Ztdserr±   r   r   r    Útest_ops_consistency_on_emptyÇ  s    ÿ,z2TestSeriesReductions.test_ops_consistency_on_emptyc                 C   s0   t dtjgddgd�}t |¡}t |d¡ d S )NrÚ   r   rB   rà   )r   r%   rc   rÔ   r#   rÓ   )r8   Úserr9   r   r   r    Útest_nansum_bugletá  s    
z'TestSeriesReductions.test_nansum_bugletc                 C   s8  t  d|¡�� dD ]z}tjd|d�}t|ƒ}|jdd�}t|ƒ|jdd�ksRJ ‚|jdd�}t|ƒdksnJ ‚|jdd�}t|ƒ|d	 ksJ ‚qd
D ]~}tjd|d�}t|ƒ}|jdd�}||j|d�ksÎJ ‚|jdd�}t 	t
|ƒd¡sîJ ‚|jdd�}t 	t
|ƒ|d	 ¡s”J ‚q”W d   ƒ n1 �s*0    Y  d S )NrØ   )Zint32r2   i@KL rI   FrL   r2   r   rS   )Zfloat32r>   rÙ   )rF   rÒ   r%   r`   r   r¦   Úintr.   r-   Zallcloserê   )r8   rØ   rJ   Úvr©   r9   r   r   r    Útest_sum_overflowæ  s&    z&TestSeriesReductions.test_sum_overflowc                 C   sv   dD ]l}t g |d� ¡ tu s J ‚t g |d� ¡ tu s8J ‚t g |d�jdd�tu sTJ ‚t g |d�jdd�tu sJ ‚qd S )N)ré   ré   r1   zM8[ns, UTC]rI   FrL   )r   r.   r   r-   )r8   rJ   r   r   r    Ú+test_empty_timeseries_reductions_return_nat  s
    z@TestSeriesReductions.test_empty_timeseries_reductions_return_natc                 C   s�   t  dd¡}t||d�}t  |¡}t  |¡}||ks8J ‚| ¡ }||ksLJ ‚d}tjt|d�� t j||d� W d   ƒ n1 s‚0    Y  d S ©NrB   rA   rà   r“   rW   r”   )r%   r`   r   ra   rY   rZ   r[   ©r8   Údatar©   r9   r:   r±   r   r   r    Útest_numpy_argmin
  s    

z&TestSeriesReductions.test_numpy_argminc                 C   s�   t  dd¡}t||d�}t  |¡}t  |¡}||ks8J ‚| ¡ }||ksLJ ‚d}tjt|d�� t j||d� W d   ƒ n1 s‚0    Y  d S rò   )r%   r`   r   rb   rY   rZ   r[   ró   r   r   r    Útest_numpy_argmax  s    

z&TestSeriesReductions.test_numpy_argmaxc                 C   sì   t  ¡  d¡}tj|dd…< || ¡  | ¡ ks4J ‚t|jdd�ƒsHJ ‚| ¡ }|| ¡  | ¡ kshJ ‚|j	j
 ¡  	| ¡ ¡|j
 ¡ ksŒJ ‚|tj }t| ¡ ƒs¦J ‚ttddd�ƒ}| ¡ }|d	ksÊJ ‚tj|d	< | ¡ }|d
ksèJ ‚d S )Nr(   r]   é   FrL   Ú20130102r    ©rg   r   rB   )r#   ÚmakeStringSeriesrn   r%   ÚNaNÚidxminr.   r   r¨   r   r5   Útolistra   rc   r   r   )r8   Ústring_seriesÚnonaÚallnar©   r9   r   r   r    Útest_idxmin-  s    $

z TestSeriesReductions.test_idxminc                 C   sp  t  ¡  d¡}tj|dd…< || ¡  | ¡ ks4J ‚t|jdd�ƒsHJ ‚| ¡ }|| ¡  | ¡ kshJ ‚|j	j
 ¡  	| ¡ ¡|j
 ¡ ksŒJ ‚|tj }t| ¡ ƒs¦J ‚ddlm} t|dd	d
�ƒ}| ¡ }|dksÖJ ‚tj|d< | ¡ }|dksôJ ‚tg d¢g d¢ƒ}| ¡ }|dk�sJ ‚| ¡ }|dk�s2J ‚t|j	|j	ƒ}| ¡ }|dk�sVJ ‚| ¡ }|dk�slJ ‚d S )Nr(   r]   r÷   FrL   r   )r   rø   r    rù   r^   r¸   )çš™™™™™ñ?gÍÌÌÌÌÌ @çÍÌÌÌÌÌ@r  r  )r#   rú   rn   r%   rû   Úidxmaxr-   r   r¨   r   r5   rý   rb   rc   Úpandasr   r   rü   )r8   rþ   rÿ   r   r   r©   r9   r   r   r    Útest_idxmaxK  s4    $

z TestSeriesReductions.test_idxmaxc                 C   sD   t  ¡ }|dk}| ¡ rJ ‚| ¡ s(J ‚tddgƒ}| ¡ s@J ‚d S )Nr   ÚabcT)r#   ZmakeTimeSeriesrÕ   Úanyr   )r8   ÚtsZbool_seriesr©   r   r   r    Útest_all_anyx  s    z!TestSeriesReductions.test_all_anyrP   c                 C   sF   |g d¢ƒ}t  |¡rJ ‚t  |¡s(J ‚tg d¢ƒ}t  |¡sBJ ‚d S )N)r   rB   rD   r¸   )r%   rÕ   r  r   )r8   rP   r   r   r   r    Útest_numpy_all_any‚  s
    z'TestSeriesReductions.test_numpy_all_anyc              	   C   sX  t tjdgƒ}t tjdgƒ}|jdd�s,J ‚|jdd�s<J ‚|jdd�sLJ ‚|jdd�r\J ‚t g d¢g d¢d�}t t¡�, t |jdd�t g d	¢ƒ¡ W d   ƒ n1 s¬0    Y  t t¡�, t |jdd�t g d
¢ƒ¡ W d   ƒ n1 sò0    Y  d}t	j
t|d��J t t¡� |jddd� W d   ƒ n1 �s@0    Y  W d   ƒ n1 �s`0    Y  t	j
t|d��J t t¡� |jddd� W d   ƒ n1 �sª0    Y  W d   ƒ n1 �sÊ0    Y  d}t	j
t|d�� |jdd� W d   ƒ n1 �s
0    Y  d}t	j
t|d�� |jdd� W d   ƒ n1 �sJ0    Y  d S )NTFrL   ©FFTTFT©r   r   rB   rB   rD   rD   rà   r   rá   ©FTF©FTTz5Option bool_only is not implemented with option levelrW   )Ú	bool_onlyrâ   z'Series.any does not implement bool_only)r  z(Series.all does not implement bool_only.)r   r%   rc   rÕ   r  r#   rã   rä   ro   rY   rZ   ÚNotImplementedError)r8   Ús1rÖ   r©   r±   r   r   r    Útest_all_any_params‹  s0    ::NN,z(TestSeriesReductions.test_all_any_paramsÚbool_agg_funcr  rÕ   rM   c                 C   s4   t g d¢td�}t||ƒ|d�}d}||ks0J ‚d S )N)r   re   rÇ   ÚdÚerI   rL   T)r   r<   r3   )r8   r  rM   rì   r9   r:   r   r   r    Útest_any_all_object_dtype«  s    z.TestSeriesReductions.test_any_all_object_dtyperô   Nc                 C   s8   t |ƒ}t||ƒdd�}|dko&d |v}||ks4J ‚d S )NFrL   r  )r   r3   )r8   rô   r  rì   r9   r:   r   r   r    Ú!test_any_all_object_dtype_missingµ  s    z6TestSeriesReductions.test_any_all_object_dtype_missing)rE   rC   ZUInt64ræ   zdata,expected_data)r   r   r   )rB   rB   rB   r   rB   c           	      C   sP   t ||d�}|| |dk }t||ƒ|d�}|tju r@|tju sL||ksLJ ‚d S )NrI   rÕ   rL   )r   r3   rF   rG   )	r8   r  rM   rô   rJ   Zexpected_datarì   r:   r9   r   r   r    Ú"test_any_all_nullable_kleene_logicÂ  s    z7TestSeriesReductions.test_any_all_nullable_kleene_logiczbool_agg_func,expectedr  r  c                 C   sl   t g d¢g d¢dd�}t t¡�  t||ƒdd�}W d   ƒ n1 sF0    Y  t |dd�}t ||¡ d S )Nr  r  rE   )r   rJ   r   rá   rI   )r   r#   rã   rä   r3   ro   )r8   r  r:   rì   r9   r   r   r    Útest_any_all_boolean_levelÜ  s    ý.z/TestSeriesReductions.test_any_all_boolean_levelc                 C   s@   t ddgddgdœƒ}|jddd�}tddgƒ}t ||¡ d S )NTFrB   rD   )ÚAÚB)rl   r  )r   r  r   r#   ro   )r8   rq   r9   r:   r   r   r    Útest_any_axis1_bool_onlyì  s    z-TestSeriesReductions.test_any_axis1_bool_onlyc                 C   sT  t ddd�j}t|ƒ}t|ƒ}| ¡ s*J ‚| ¡ s6J ‚| ¡ sBJ ‚| ¡ sNJ ‚| ¡  ¡ s^J ‚| ¡  ¡ snJ ‚| d¡}t|ƒ}t|ƒ}| ¡ s”J ‚| ¡ s J ‚| ¡ s¬J ‚| ¡ s¸J ‚| ¡  ¡ sÈJ ‚| ¡  ¡ sØJ ‚||d  }t|ƒ}t|ƒ}| ¡ �sJ ‚| ¡ �rJ ‚| ¡ �sJ ‚| ¡ �r,J ‚| ¡  ¡ �s>J ‚| ¡  ¡ �rPJ ‚d S )Nz
1995-01-02r_   rù   rf   r   )r   Ú_datar   r   rÕ   r  r$   )r8   Zdtarì   rq   Ztdar   r   r    Útest_any_all_datetimelikeó  s6    
z.TestSeriesReductions.test_any_all_datetimelikec                 C   s  t dddd�}t|ƒtdƒ }| ¡ }|dks2J ‚| ¡ }|dksFJ ‚tj|d< | ¡ }|dksdJ ‚| ¡ }|dksxJ ‚tt ddd	�ƒ}tt d
dd	�ƒ}t|| ƒ}t || ¡}t 	||¡ ||  ¡ }t 	||¡ | 
¡ }tdƒ}||ksòJ ‚| ¡ }tdƒ}||k�sJ ‚d S )Nz2012-1-1r_   r‘   ©rg   r0   Z20120101r   rD   rB   rù   Z20120102rˆ   r‡   )r   r   r   rü   r  r%   rc   Úabsr#   ro   r-   r   r.   )r8   Zdtir–   r9   r  rÖ   r:   r   r   r    Útest_timedelta64_analytics  s0    
z/TestSeriesReductions.test_timedelta64_analyticsztest_input,error_typer>   rI   )ÚfooÚbarÚbaz)rB   )rD   r#  r$  r%  c                 C   sì   d}t j||d�� | ¡  W d  ƒ n1 s00    Y  t j||d�� |jdd� W d  ƒ n1 sj0    Y  d}t j||d�� | ¡  W d  ƒ n1 s¤0    Y  t j||d�� |jdd� W d  ƒ n1 sÞ0    Y  dS )zU
        Cases where ``Series.argmax`` and related should raise an exception
        zbreduction operation 'argmin' not allowed for this dtype|attempt to get argmin of an empty sequencerW   NFrL   zbreduction operation 'argmax' not allowed for this dtype|attempt to get argmax of an empty sequence)rY   rZ   rü   r  )r8   Z
test_inputZ
error_typer±   r   r   r    Útest_assert_idxminmax_raisesG  s    ÿ&*ÿ&z1TestSeriesReductions.test_assert_idxminmax_raisesc                 C   sÜ   t dtj tjtjgƒ}| ¡ dks(J ‚t |jdd�¡s>J ‚| ¡ dksNJ ‚t |jdd�¡sdJ ‚t dd¡�X | ¡ dks‚J ‚t |jdd�¡s˜J ‚| ¡ dks¨J ‚t |jdd�¡ W d   ƒ n1 sÎ0    Y  d S )Nr   rB   FrL   rD   rÎ   T)	r   r%   rÐ   rc   rü   rT   r  rF   rÒ   )r8   r©   r   r   r    Útest_idxminmax_with_infg  s    z,TestSeriesReductions.test_idxminmax_with_inf)&rx   ry   rz   r×   rY   r{   r|   rß   rå   rè   rë   rí   rð   rñ   rõ   rö   r  r  r
  r   r   r  r  r  r%   rc   r  rF   rG   r  r  r  r  r"  r[   r°   r&  r'  r   r   r   r    rË   "  s„   ÿ`


-

  ÿ	"úü
þ
**úþ
rË   c                	   @   sœ   e Zd Zej deeegƒeeedƒgƒeedƒedƒgƒg¡dd„ ƒZ	ej de
eegƒe
eedƒgƒe
edƒedƒgƒg¡dd„ ƒZdd	„ Zd
d„ ZdS )ÚTestDatetime64SeriesReductionsÚnat_serZnatc                 C   sL   |  ¡ tu sJ ‚| ¡ tu s J ‚|j dd�tu s4J ‚|jdd�tu sHJ ‚d S r‚   ©r.   r   r-   )r8   r)  r   r   r    Útest_minmax_nat_series  s    
z5TestDatetime64SeriesReductions.test_minmax_nat_seriesÚnat_dfc                 C   s\   |  ¡ d tu sJ ‚| ¡ d tu s(J ‚|j dd�d tu s@J ‚|jdd�d tu sXJ ‚d S )Nr   FrL   r*  )r8   r,  r   r   r    Útest_minmax_nat_dataframeŽ  s    
z8TestDatetime64SeriesReductions.test_minmax_nat_dataframec                 C   s˜   t ddƒ}| tj t|ƒ¡¡}| ¡ }| ¡ }t|t	ƒs>J ‚t|t	ƒsLJ ‚||d ks\J ‚||d kslJ ‚| ¡ |d ks€J ‚| ¡ |d ks”J ‚d S )Nú1/1/2000z
12/31/2000r   rS   )
r   Ztaker%   r&   ZpermutationÚlenr.   r-   r4   r   )r8   ÚrngZrng2Zthe_minZthe_maxr   r   r    Útest_min_max�  s    
z+TestDatetime64SeriesReductions.test_min_maxc                 C   sž   t dddd�}g d¢}t|tj t|ƒ¡|dœƒ}|j ¡ }t|jj	d ƒ}t
|tƒsZJ ‚||ksfJ ‚|j ¡ }t|jj	d ƒ}t
|tƒsŽJ ‚||ksšJ ‚d S )	Nr.  r   Z4hr   )
r  r  r  r  r  r  ÚCr2  r2  r2  )ÚTSÚVÚLrS   r   )r   r   r%   r&   r'   r/  r3  r-   r   Ziatr4   r.   )r8   r0  Zlvlsrq   r9   Úexpr   r   r    Útest_min_max_series«  s    

z2TestDatetime64SeriesReductions.test_min_max_seriesN)rx   ry   rz   rY   r{   r|   r   r   r   r+  r   r-  r1  r7  r   r   r   r    r(  z  s$   
ýþ

ýþ
r(  c                   @   sú   e Zd Zej dddg¡dd„ ƒZej dedƒedƒfedƒedƒfedƒej	g edƒfg d	¢g d
¢fdddej	gg d
¢fg¡ej dddg¡dd„ ƒƒZ
ej dddg¡ej dddg¡dd„ ƒƒZej dddg¡ej dddg¡dd„ ƒƒZdS )ÚTestCategoricalSeriesReductionsÚfunctionr.   r-   c                 C   s\   t tg d¢dd�ƒ}d|› �}tjt|d�� t||ƒƒ  W d   ƒ n1 sN0    Y  d S )N)r   re   rÇ   r  F)rÆ   z)Categorical is not ordered for operation rW   )r   r   rY   rZ   r°   r3   )r8   r9  Úcatr±   r   r   r    Útest_min_max_unordered_raisesÀ  s    
z=TestCategoricalSeriesReductions.test_min_max_unordered_raiseszvalues, categoriesr  Zcbar¸   ©r_   rD   rB   rB   rD   r_   c                 C   sJ   t t||dd�ƒ}t||ƒdd�}|dkr2|d n|d }||ksFJ ‚d S )NTrÄ   rL   r.   r   rD   )r   r   r3   )r8   r5   rÅ   r9  r:  r9   r:   r   r   r    Útest_min_max_orderedÈ  s    z4TestCategoricalSeriesReductions.test_min_max_orderedrM   TFc                 C   s<   t ttjgddgdd�ƒ}t||ƒ|d�}|tju s8J ‚d S )NrB   rD   TrÄ   rL   ©r   r   r%   rc   r3   )r8   r9  rM   r:  r9   r   r   r    Ú"test_min_max_ordered_with_nan_onlyÚ  s    zBTestCategoricalSeriesReductions.test_min_max_ordered_with_nan_onlyc                 C   sh   t tddtjdgddgdd�ƒ}t||ƒ|d�}|du rV|dkrDdnd}||ksdJ ‚n|tju sdJ ‚d S )Nr   re   TrÄ   rL   r.   r>  )r8   r9  rM   r:  r9   r:   r   r   r    Útest_min_max_skipnaâ  s    ÿz3TestCategoricalSeriesReductions.test_min_max_skipnaN)rx   ry   rz   rY   r{   r|   r;  rÈ   r%   rc   r=  r?  r@  r   r   r   r    r8  »  s&   
ûþ
r8  c                   @   sB  e Zd Zej ddeg ejd�fdeg ejd�fg¡dd„ ƒZ	ej ddg d¢d	gfdg d
¢d	dgfdg d¢d	gfdg d
¢d	dgfg¡ej de
ejd ejd  ƒ¡dd„ ƒƒZej dddgfdd	ejgfg¡dd„ ƒZej dddgdgdgfddgejgdgfg¡dd„ ƒZej dddgdgfddgejgfg¡dd„ ƒZej ddg d¢dd gfdejgejdd gfg¡d!d"„ ƒZej ddg d#¢d$d%gfdejgejd$d%gfg¡d&d'„ ƒZej dded	d(gd	d(gd)�ed*gd	d*gd)�edd	gg d+¢dd,�fdeejgd	d(gd)�eejd*gd	d*gd)�eejdd	gg d+¢dd,�fg¡d-d.„ ƒZej ddd/gd	d/gfdd/gd	d/gfg¡d0d1„ ƒZd2d3„ Zd4d5„ Zej d6g d7¢ed	gejd�ejfg d7¢ed	gejd�ejfg d8¢ed9gejd�ejfg¡d:d;„ ƒZej d6g d<¢eg d=¢ejd�ejfg d>¢ed?d9gejd�ejfg¡d@dA„ ƒZdBS )CÚTestSeriesModezdropna, expectedTrI   Fc                 C   s(   t g tjd�}| |¡}t ||¡ d S rç   )r   r%   r>   Úmoder#   ro   ©r8   r¨   r:   r©   r9   r   r   r    Útest_mode_emptyö  s    
zTestSeriesMode.test_mode_emptyzdropna, data, expected)rB   rB   rB   rD   rB   )rB   rB   rB   rD   r_   r_   r_   r_   ÚdtZ
AllIntegerÚFloatc                 C   s2   t ||d�}| |¡}t ||d�}t ||¡ d S rç   ©r   rB  r#   ro   )r8   r¨   rô   r:   rE  r©   r9   r   r   r    Útest_mode_numericalÿ  s    
z"TestSeriesMode.test_mode_numericalrÚ   c                 C   s8   t dddtjtjgƒ}| |¡}t |ƒ}t ||¡ d S )NrB   rD   )r   r%   rc   rB  r#   ro   rC  r   r   r    Útest_mode_numerical_nan  s    
z&TestSeriesMode.test_mode_numerical_nanz'dropna, expected1, expected2, expected3re   r$  rc   c                 C   sÔ   dgd dgd  }t |dd�}| |¡}t |dd�}t ||¡ dddtjtjtjg}t |td�}| |¡}t |td�}t ||¡ dddtjtjtjg}t |td� t¡}| |¡}t |td�}t ||¡ d S )	Nr   rD   re   r_   rÇ   rI   r#  r$  )	r   rB  r#   ro   r%   rc   r<   r6   Ústr)r8   r¨   Ú	expected1Ú	expected2Ú	expected3rô   r©   r9   r   r   r    Útest_mode_str_obj  s    


z TestSeriesMode.test_mode_str_objzdropna, expected1, expected2r#  c                 C   sj   t g d¢ƒ}| |¡}t |ƒ}t ||¡ t dddtjtjtjgƒ}| |¡}t |td�}t ||¡ d S )N)rB   r#  r#  rB   r#  rI   )r   rB  r#   ro   r%   rc   r<   )r8   r¨   rK  rL  r©   r9   r:   r   r   r    Útest_mode_mixeddtype3  s    

z#TestSeriesMode.test_mode_mixeddtype)ú
1900-05-03rµ   ú
2013-01-02rµ   rQ  c                 C   sh   t g d¢dd�}| |¡}t |dd�}t ||¡ t g d¢dd�}| |¡}t |dd�}t ||¡ d S )N)rµ   rQ  rP  rc   rc   r1   rI   )rµ   rQ  rP  rµ   rQ  rc   rc   rG  ©r8   r¨   rK  rL  r©   r9   r   r   r    Útest_mode_datetimeB  s    ÿ
	ö
z!TestSeriesMode.test_mode_datetime)ú-1 daysú0 daysr‡   ú2 minú1 dayc                 C   sh   t g d¢dd�}| |¡}t |dd�}t ||¡ t g d¢dd�}| |¡}t |dd�}t ||¡ d S )N)r‡   rT  rU  rc   rc   ztimedelta64[ns]rI   )rW  rW  z-1 dayz-1 day 2 minrV  rV  rc   rc   rG  rR  r   r   r    Útest_mode_timedeltae  s    
ÿ

õ
z"TestSeriesMode.test_mode_timedeltarD   )rÅ   r   r<  rÄ   c              	   C   sÄ   t tddtjtjgƒƒ}| |¡}t |dd�}t ||¡ t tdddtjtjgƒƒ}| |¡}t |dd�}t ||¡ t tdddddtjtjgg d¢dd	�ƒ}| |¡}t |dd�}t ||¡ d S )
NrB   rD   ÚcategoryrI   r   r_   r<  TrÄ   )r   r   r%   rc   rB  r#   ro   )r8   r¨   rK  rL  rM  r©   r9   r   r   r    Útest_mode_category‡  s     

ÿÿ
z!TestSeriesMode.test_mode_categoryì            c                 C   sp   t g d¢tjd�}| |¡}t |tjd�}t ||¡ t ddgtjd�}| |¡}t |tjd�}t ||¡ d S )N)rB   r[  r[  rI   rB   r[  )r   r%   Zuint64rB  r#   ro   rR  r   r   r    Útest_mode_intoverflow¬  s    

z$TestSeriesMode.test_mode_intoverflowc                 C   sz   t dtjgƒ}t dddtjtjgƒ}t t¡�, |jdd�}| ¡ jdd�}W d   ƒ n1 s`0    Y  t 	||¡ d S )Nr#  rB   F)r¨   T)Zdrop)
r   r%   rc   r#   rã   ÚUserWarningrB  Zsort_valuesZreset_indexro   )r8   r:   r©   r9   r   r   r    Útest_mode_sortwarning¼  s    .z$TestSeriesMode.test_mode_sortwarningc                 C   s>   t dddtjgdd�}| ¡ }t ddidd�}t ||¡ d S )NTFrE   rI   r   )r   rF   rG   rB  r#   ro   )r8   rì   r9   r:   r   r   r    Útest_mode_boolean_with_naÉ  s    z(TestSeriesMode.test_mode_boolean_with_nazarray,expected,dtype)r   ù              ð?rB   rB   ù      ð?      ð?ù      ð?       @)ra  ù               @ra  ra  c                 C   s    t ||d� ¡ }t ||¡ d S rç   rG  ©r8   Úarrayr:   rJ   r9   r   r   r    Útest_single_mode_value_complexÐ  s    z-TestSeriesMode.test_single_mode_value_complex)r   r`  rB   ra  rb  )y                r`  y      ð?        ra  rb  )ra  rc  ra  rc  r_   rc  c                 C   s    t ||d� ¡ }t ||¡ d S rç   rG  rd  r   r   r    Útest_multimode_complexè  s    z%TestSeriesMode.test_multimode_complexN)rx   ry   rz   rY   r{   r|   r   r%   r>   rD  rÈ   Ú	typecodesrH  rc   rI  rN  rO  rS  rX  r   rZ  r\  r^  r_  Z
complex128Z	complex64rf  rg  r   r   r   r    rA  ñ  sÄ   "þ
üþ	ÿ 
$þ
þ
ýúþ
þþ
üüùþ
þ
ýýýõþ
üýùþrA  )$r   r   Únumpyr%   rY   r  rF   r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   Zpandas._testingZ_testingr#   Zpandas.corer   r*   r)   r+   r}   rË   r(  r8  rA  r   r   r   r    Ú<module>   s*   H   Y    \A6