
    Pi7                       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c 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*d2d	Z+	 	 	 	 	 	 d3dZ,e	j-        d             Z.e	j-        d             Z/ G d d          Z0 G d d          Z1 G d d          Z2 G d d          Z3d Z4d Z5e	j6        7                    dg d          e	j6        7                    dddg          d                          Z8e	j6        7                    d! ed"          ej9        g          d#             Z:d$ Z;e	j6        7                    dg d%          e	j6        7                    dd
dg          e	j6        7                    d&d'd(g          d)                                     Z<e	j6        7                    d*g d+          d,             Z=e	j6        7                    dg d-          e	j6        7                    d.d d/g          d0                         Z>d1 Z?dS )4    )	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                 $     rfd}n f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                 $     | j                   S Nvalues)xskipna_alternatives    v/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/pandas/tests/frame/test_reductions.pyskipna_wrapperz+make_skipna_wrapper.<locals>.skipna_wrapper=   s    %%ah///    c                     |                                  }t          |          dk    rt          j        S  |          S )Nr   )dropnalennpnanr   nonaalternatives     r    r!   z+make_skipna_wrapper.<locals>.skipna_wrapperB   s6    88::D4yyA~~v;t$$$r"    )r*   r   r!   s   `` r    make_skipna_wrapperr,   +   sM       %	0 	0 	0 	0 	0 	0
	% 	% 	% 	% 	% r"   TFh㈵>:0yE>c	                    t          ||           }	|rt          dt          dd          i          }
t          j        d          5   t          |
|                       }ddd           n# 1 swxY w Y   t          |t                    sJ t          t          |
                    |
d<   t          j        d          5   t          |
|                       }ddd           n# 1 swxY w Y   t          |t                    sJ t          |          sJ |rfd}t          |          } |	dd	
          } |	dd	
          }t          j
        ||                    |          |||           t          j
        ||                    |d          ||           n} |	d          } |	d          }t          j
        ||                    |          |||           | dv r0|                    |d          }t          j
        ||d	||           |r&|j        j        }||j        k    sJ ||j        k    sJ t          j        t           d          5   |	d           ddd           n# 1 swxY w Y   |r|t"          j        z  } t          ||           d          } t          ||           d          }| dv rp| dk    rdnd}t          ||j        |j                  }t          j
        ||           t          ||j        |j                  }t          j
        ||           dS dS 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                 $     | j                   S r   r   r   r*   s    r    wrapperz$assert_stat_op_calc.<locals>.wrapper       ;qx(((r"   r   Faxisskipna   )check_dtypertolatolr:   )r>   r?   )sumprodNo axis named 2matchrB   indexdtype)getattrr   r   tmassert_produces_warning
isinstancer   ranger%   r,   assert_series_equalapplyr   rH   pytestraises
ValueErrorr&   r'   rG   )opnamer*   frame
has_skipnar=   check_datesr>   r?   r   fdfresultr7   r!   result0result1expected	lcd_dtypeall_nar0r1units    `                    r    assert_stat_op_calcrb   K   s   J 	vA 
Z
A>>>?@@'-- 	+ 	+(WR((**F	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+&&)))))B..3'-- 	+ 	+(WR((**F	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+&&)))))6{{{ %	) 	) 	) 	) 	) -[:LMM!5)))!5)))
U[[)){TX	
 	
 	
 	
 	KKaK((		
 	
 	
 	
 	
 %aQiiiGaQiiiGN##      ;;~A;66
X5t$	
 	
 	
 	

  *L&	GM))))GM)))) 
z):	;	;	;  	q				                	1$WVV$$!,,,$WVV$$!,,,_$$&((11aDd"("(CCCH"2x000d"("(CCCH"2x00000	1 	1 %$s6   	A..A25A2C((C,/C,#I<<J J c            	         t          t          j        t          j        dt                    t          j        dt                    gd          t          d t          d          D             t                    t          t          d          t                    t                    } 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
    )      rH   r   r@   c                     g | ]}d | S foo_r+   .0is     r    
<listcomp>z&bool_frame_with_na.<locals>.<listcomp>       333AZAZZ333r"      ABCD)rG   columnsrH      
   rd      N)r   r&   concatenateonesboolzerosr   rM   objectlistr'   ilocrX   s    r    bool_frame_with_nar~      s     

WWD)))28G4+H+H+HIPQ	
 	
 	
 33r3336BBBd6ll&111
 
 
B FBGAbDM&BGBrE233JIr"   c            	         t          t          j                            d                              d          t          d t          d          D             t                    t          t          d          t                              } 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
    r1   )ro   re   c                     g | ]}d | S rh   r+   rj   s     r    rm   z'float_frame_with_na.<locals>.<listcomp>   rn   r"   ro   rf   rp   rG   rq   rr   rs   rd   rt   ru   N)r   r&   randomdefault_rngstandard_normalr   rM   rz   r{   r'   r|   r}   s    r    float_frame_with_nar      s     

	a  009933r3336BBBd6ll&111
 
 
B FBGAbDM&BGBrE233JIr"   c                      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j        d                     ej        d ej        d                    g          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j        d                     ej        d ej        d                    g          d                         Z
d Zd Zd Zej                            dg d          ej                            d eg dg dg ddg d d!"           eej        d#gej        d$gej        d%gd&e'          g          ej                            d(          d)                                     Zej                            d*g d+          d,             Zd- Zd. Zej                            d/d0d1g          d2             Zej                            d/d0d1g          d3             Zd4 Zd5 Zej                            d6g d7          d8             Zd9 Zej                            d:d;d<gd=gd>gd?g ed?gd?g@           edAgdB'           edCg          dDfdEd<gd=gej        g e ej        gdF'           eej        gd?g@           ee!j"        gdB'           ee!j"        g          #                    dG          dDfd;dHdIej        ej        gdHdIej        ej        gdej        ej        ej        g ed?ej        ej        ej        gd?g@           eg dJdB'           eg dK          g dLdMfdEdHdIej        ej        gdHdIej        ej        gdej        ej        ej        g eej        d?ej        ej        gd?g@           eg dNdB'           eg dO          g dLdMfg          dP             Z$dQ Z%dR Z&dS Z'dT Z(ej                            dUdVdWe!j"        dXgd%e!j"        gz  g          dY             Z)dZ Z*ej                            d[ e+d           eg            e,g ej-        '           e,g ej.        '           eg d\]           e/g d^]          g          d_             Z0ej                            d`ddg          da             Z1ej                            dbdcddg          ej                            deg df          dg                         Z2dh Z3di Z4ej                            djg dk          ej                            dldd#dmdndoej        gfdd$dmej        ej        ej        gfddEdpdndoej        gfg          dq                         Z5ej                            djg dk          ej                            dldd#dmdrdsej        gfdd$dmej        ej        ej        gfddEdpdrdsej        gfg          dt                         Z6du Z7dv Z8dw Z9dx Z:dy Z;dz Z<d{ Z=d| Z>d} Z?ej                            d~ddgddgdddgfddgddgdddgfddgddgdddgfg          d             Z@ej                            dddg          d             ZAej                            dddg          ej                            d          d                         ZBej                            ded;dEg          d             ZCd ZDej                            dddg          d             ZEej                            dddg          ej                            d          d                         ZFej                            ded;dEg          d             ZGd ZHd ZId ZJej                            dddd%gfdddgfg          d             ZKd ZLej                            dddg          ej                            ddEd;g          d                         ZMej                            dddg          d             ZNd ZOd ZPej                            dddg          d             ZQd ZRd ZSej                            dg ejT        i dEfejU        i d;fejT        dg idEfejU        dg id;fejT        ddEdEgidEfejU        ddEdEgidEfejT        dd;dEgid;fejU        dd;dEgidEfejT        dd;d;gid;fejU        dd;d;gid;fejT        dEgdEgddEfejU        dEgdEgddEfejT        dEdEgdEd;gdd;fejU        dEdEgdEd;gddEfejU        d e dd>gd'          idEfejT        d e dd>gd'          id;fejU        d e ddgeV'          idEfejT        d e ddgeV'          id;f ej        ejU        d e ddgdB'          idE           ej        ejU        d e ddgd'          idE           ej        ejT        d e ddgdB'          id;           ej        ejT        d e ddgd'          id;           ej        ejU        d e dd#gdB'          id;           ej        ejU        d e dd#gd'          id;           ej        ejT        d e dd#gdB'          id;           ej        ejT        d e dd#gd'          id;           ej        ejU        d e ddgd'          idE           ej        ejT        d e ddgd'          id;           ej        ejU        d e dd#gd'          id;           ej        ejT        d e dd#gd'          id;          ejU        d e ddgd'          id;fejT        d e ddgd'          idEfejU        d e dd#gd'          id;fejT        d e dd#gd'          idEf ej        ejU         e ddgdB'           e ddgd'          dd;                    d             ZWd ZXd ZYd ZZd0S )TestDataFrameAnalyticsr:   r   r<   rS   countrA   meanproductmedianminmaxnuniquevarstdsemskewscipy)markskurtc                 b   |dv r|dk    s|dv r t          ||          |           n|dv rd}no|dk    r|dk    rd	}n`d
}n]|dk    rd}nT|dk    r!|dk    rd                    ddg          }n0d}n-|dv rd}n&|dk    r t          j        dt          j                  }t          |t          j                  s|dz   }t          j        t          |          5   t          ||          |           d d d            n# 1 swxY w Y   |dk    r t          ||          |d           d S d S )N)rA   r   r   r   r   r   r@   )r   r   r   r   r   z(could not convert string to float: 'bar'r   r<   z2can't multiply sequence by non-int of type 'float'z0can't multiply sequence by non-int of type 'str'rA   z7unsupported operand type\(s\) for \+: 'float' and 'str'r   |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'r   z@Cannot convert \[.*\] to numeric|does not support|Cannot perform)flagsz*|does not support|Cannot perform reductionrD   r   Tr:   numeric_only)
rI   joinrecompileSrL   PatternrP   rQ   	TypeError)selffloat_string_framer:   rS   msgs        r    #test_stat_op_api_float_string_framez:TestDataFrameAnalytics.test_stat_op_api_float_string_frame   s   ( +++		f I
 ?
 ?
 0G&//T:::::>>>@9$$199NCCLCC5P6!!199((DM CC UCC>))T8##jW$   c2:.. IHHy444 ? ?3*F33>>>>? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Y/G&//TMMMMMM s   DDDc                 <     t          ||          |d           d S )NFr   rI   )r   float_framer:   rS   s       r    test_stat_op_api_float_framez3TestDataFrameAnalytics.test_stat_op_api_float_frame  s)    & 	%V$$$UCCCCCCr"   c                    d }d }d }d }d }t          d||ddd	           t          d
t          j        |                    d          dd           t          d
t          j        |t          j                   t          dt          j        |d           t          dt          j        |t          j                   t          d||           t          d||           t          d||           t          d||ddd	           d S )Nc                 D    t          |                                           S r   )r   rA   ss    r    r   z7TestDataFrameAnalytics.test_stat_op_calc.<locals>.count5  s    88<<>>!r"   c                 h    t          t          j        |                                                     S r   )r%   r   unique1dr$   r   s    r    r   z9TestDataFrameAnalytics.test_stat_op_calc.<locals>.nunique8  s#    z*188::66777r"   c                 .    t          j        | d          S Nr<   ddof)r&   r   r   s    r    r   z5TestDataFrameAnalytics.test_stat_op_calc.<locals>.var;      6!!$$$$r"   c                 .    t          j        | d          S r   )r&   r   r   s    r    r   z5TestDataFrameAnalytics.test_stat_op_calc.<locals>.std>  r   r"   c                 r    t          j        | d          t          j        t          |                     z  S r   )r&   r   sqrtr%   r   s    r    r   z5TestDataFrameAnalytics.test_stat_op_calc.<locals>.semA  s*    6!!$$$rws1vv66r"   r   FT)rU   r=   rV   rA   float32gMbP?)r=   r>   )r   r   rV   r   r   r   r   r   )rb   r&   rA   astypenansumr   rB   nanprod)r   r   mixed_float_framer   r   r   r   r   s           r    test_stat_op_calcz(TestDataFrameAnalytics.test_stat_op_calc4  s   	" 	" 	"	8 	8 	8	% 	% 	%	% 	% 	%	7 	7 	7 		
 	
 	
 	
 	F$$Y//	
 	
 	
 	
 	26.29	
 	
 	
 	
 	FBG-@dSSSSrw 3
	
 	
 	
 	
 	E3(;<<<E3(;<<<E3(;<<<	
 	
 	
 	
 	
 	
r"   c                     t          j        d          fd}fd}t          d||           t          d||           d S )Nscipy.statsc                 p    t          |           dk     rt          j        S                     | d          S )N   Fbias)r%   r&   r'   r   r   sp_statss    r    skewnesszHTestDataFrameAnalytics.test_stat_op_calc_skew_kurtosis.<locals>.skewnesso  s/    1vvzzv===///r"   c                 p    t          |           dk     rt          j        S                     | d          S )Nre   Fr   )r%   r&   r'   kurtosisr   s    r    r   zDTestDataFrameAnalytics.test_stat_op_calc_skew_kurtosis.<locals>.kurtt  s2    1vvzzv$$QU$333r"   r   r   )rP   importorskiprb   )r   r   r   r   r   s       @r    test_stat_op_calc_skew_kurtosisz6TestDataFrameAnalytics.test_stat_op_calc_skew_kurtosisl  ss    &}55	0 	0 	0 	0 	0
	4 	4 	4 	4 	4
 	FH.ABBBFD*=>>>>>r"   c                 Z    d }t          d||d           t          d||dd           d S )Nc                     t          |                                           rt          j        S t          j        |           S r   )r   anyr&   r'   r   r   s    r    r7   z3TestDataFrameAnalytics.test_median.<locals>.wrapper}  s-    Aww{{}} v9Q<<r"   r   Tr   F)r=   rV   )rb   )r   r   	int_framer7   s       r    test_medianz"TestDataFrameAnalytics.test_median|  sX    	  	  	 
 	Hg/BPTUUUUgye	
 	
 	
 	
 	
 	
r"   method)rA   r   rB   r   r   r   r   r   rX   )gȃw@Ba@gCVZg
?Z.F?)r   r           )g94c4?g@}jX?gNr4   r0   cfoobarbazOrF   r1   r   re   r   r<   r1   rf   z0ignore:Mismatched null-like values:FutureWarningc                 d   |j         j        t          j        k    sJ  t	          ||          |          } t	          |                    d          |          |                              t                    }|dv r|dv rd ||                                <   t          j	        ||           d S )Nr@   f8)r<   rq   r   )
r   rH   r&   object_rI   r   rz   r   rJ   rN   )r   r   rX   r:   rY   r\   s         r    %test_stat_operators_attempt_obj_arrayz<TestDataFrameAnalytics.test_stat_operators_attempt_obj_array  s    : y"*,,,,$V$$$///37299T??F33>>>EEfMM>!!f&>&>(,HX]]__%
vx00000r"   op)r   r   r   r   r   r   c                    t          g dg dg dd          }d                    g d          }t          j        t          |          5   t          ||                       d d d            n# 1 swxY w Y   t          j        dd	          5  t          j        t          |          5   t          ||                       d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )
Nr<   r1   r   re   )      ?       @      @      @r4   r0   r   d)intfloatstrr   )zCould not convertcould not convertz"can't multiply sequence by non-intzdoes not supportzCannot performrD   use_bottleneckF)r   r   rP   rQ   r   rI   pdoption_context)r   r   rX   r   s       r    test_mixed_opsz%TestDataFrameAnalytics.test_mixed_ops  s    #||---+++ 
 
 hh  
 
 ]9C000 	 	GBOO	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 /77 	" 	"y444 " "B!!!" " " " " " " " " " " " " " "	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	"sH   A11A58A5C*-CC*C	C*C	C**C.1C.c                 ^   t          g dg dg dd          }|                    g d           |                    d          }t          j        |j        t          j        g dt          	                     |j	                            d
          }t          j
        ||           d S )N)TTFFF)rs   rt   ro   (   2   )r4   r0   r   r   e)	bool_dataint_datastring_datarq   r   r@   )r1      abcderf   r<   )r   reindexrA   rJ   assert_numpy_array_equalr   r&   arrayrz   TrN   )r   rX   testalts       r    test_reduce_mixed_framez.TestDataFrameAnalytics.test_reduce_mixed_frame  s    >>>000888 
 
 	

CCC
DDDvv1v~~
#K"3"3"36BBB	
 	
 	
 dhhAh
tS)))))r"   c           	         t          g dg ddt          j        dgd          }t          j        |                                t          dddd                     t          j        |                    d          t          dddd                     t          j        |                    d	          t          g d
                     t          j        |                    dd          t          g d                     d S )Nr<   r<   r<   r<   r1   r   r<   r   ABCr1   Fr$   r@   )r<   r1   r1   )r:   r$   )r<   r   r1   )r   r&   r'   rJ   rN   r   r   r   rX   s     r    test_nuniquez#TestDataFrameAnalytics.test_nunique  s    YYYYYYa^LLMM
rzz||V!!!4L4L-M-MNNN
JJeJ$$f111-E-E&F&F	
 	
 	
 	rzzqz116)))3D3DEEE
rzzqz??			ARARSSSSSr"   tzNUTCc                     t          ddgt          d|          gdz  d          }|                                }t          dt          d|          gddg	          }t	          j        ||           d S )
Nr<   2000r  r1   r  r  r   r  r  rG   r   r   r   r   rJ   rN   r   r  rX   rY   r\   s        r     test_mean_mixed_datetime_numericz7TestDataFrameAnalytics.test_mean_mixed_datetime_numeric  s     aV9V+C+C+C*Dq*HIIJJ3	&R 8 8 89#sLLL
vx00000r"   c                     t          dt          d|          gdz  i          }|                                }t          t          d|          gdg          }t	          j        ||           d S )Nr  r  r  r1   r  r  r  s        r    test_mean_includes_datetimesz3TestDataFrameAnalytics.test_mean_includes_datetimes  su    
 i26667!;<==9V3334SEBBB
vx00000r"   c                    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          5  |                                 d d d            n# 1 swxY w Y   |ddg                                         }t          ddgddgt                    }t          j	        ||           d S )Nr1   z628.00r  r<   z383.00r   z651.00z575.00re   z1114.00TESTz241.00z572.00z609.00z820.00rr   z1223.00z8unsupported operand type|does not support|Cannot performrD   r  r	  g@gL@rF   )
r   r   rP   rQ   r   r   r   rz   rJ   rN   )r   r   rX   rY   r\   s        r    test_mean_mixed_string_decimalz5TestDataFrameAnalytics.test_mean_mixed_string_decimal  s   
 $WX%6%677$WX%6%677$WX%6%677$WX%6%677$WY%7%788&wx'8'899$WX%6%677$WX%6%677$WX%6%677$WY%7%788
 q\\]W
 
 
 	 	 GGIII	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 S#J$$&&3,sCjGGG
vx00000s   !DD	Dc                    |                     d          }|                    d           }t          j        ||           |                    d          }|                    d           }t          j        ||           t          j        t
          j                            d                              d          dd          }t          j
        |d	          }|dk                                     rJ t          j        d
d          5  t          j
        |d	          }|dk                                     rJ 	 d d d            d S # 1 swxY w Y   d S )Nre   r   c                 .    |                      d          S Nre   r   )r   r   s    r    <lambda>z5TestDataFrameAnalytics.test_var_std.<locals>.<lambda>      !%%Q%-- r"   c                 .    |                      d          S r  )r   r   s    r    r  z5TestDataFrameAnalytics.test_var_std.<locals>.<lambda>  r   r"   r1   r<     r#  r   r@   r   F)r   rO   rJ   assert_almost_equalr   r&   repeatr   r   r   nanvarr   r   r   r   datetime_framerY   r\   arrs        r    test_var_stdz#TestDataFrameAnalytics.test_var_std  s   ###++!''(?(?@@
vx000###++!''(?(?@@
vx000i	--a0077	BBD!LLs+++QJ##%%%%%/77 	* 	*]3Q///F
''))))))	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	*s   1EEEmeth)r   r   r   c                 4   t          t          j                            d                              d          g d          }|                    dt          i          }d|j        d<   t          t          j                            d                              d          g d          }|                    dt          i          }d|j        d<    t          ||          d	d
          } t          |ddg         |          d	          }t          j
        ||            t          ||          d	d
          } t          |ddg         |          d	          }t          j
        ||           d}t          j        t          |          5   t          ||          d	d           d d d            n# 1 swxY w Y   d}t          j        t          |          5   t          ||          d	d           d d d            d S # 1 swxY w Y   d S )Nr1   )rr   r   r   r   r   100)r   r   r4   r<   Tr   r   r   r@   z6unsupported operand type\(s\) for -: 'float' and 'str'rD   Fz&could not convert string to float: 'a')r   r&   r   r   r   r   rz   locrI   rJ   rN   rP   rQ   r   )r   r+  df1df2rY   r\   r   s          r    test_numeric_only_flagz-TestDataFrameAnalytics.test_numeric_only_flag  s    I!!!$$44V<<)))
 
 

 jj%))!I!!!$$44V<<)))
 
 

 jj%))#d##>>>573u~.551===
x000#d##>>>573u~.551===
x000 H]9C000 	; 	;GCAE::::	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	;6]9C000 	; 	;GCAE::::	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	;s$   F<<G G $HHHc                 2   |                     d          }|                    d           }t          j        ||           t	          j        t          j                            d                              d          dd          }t          j	        |d          }|dk     
                                rJ t          j        d	d
          5  t          j	        |d          }|dk     
                                rJ 	 d d d            d S # 1 swxY w Y   d S )Nre   r   c                 r    |                      d          t          j        t          |                     z  S r  )r   r&   r   r%   r   s    r    r  z1TestDataFrameAnalytics.test_sem.<locals>.<lambda>E  s%    !%%Q%--"'#a&&//2Q r"   r1   r"  r#  r   r@   r   F)r   rO   rJ   r$  r&   r%  r   r   r   nansemr   r   r   r'  s        r    test_semzTestDataFrameAnalytics.test_semC  sN   ###++!''(Q(QRR
vx000i	--a0077	BBD!LLs+++QJ##%%%%%/77 	* 	*]3Q///F
''))))))	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	*s   1DDDzdropna, expectedT   g      $@r   r4   )
categories
2000-01-02M8[ns]1 days)r  r  r	  DEFGFr   us   	   )r8  NaTrB  rB  r:  r'   r'   r'   r   r<   r1   r   )HIJKLMNrB  r8  rB  rB  )r'   r:  r'   r'   c                 N   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          t	          t          j        t          j        dt          j        g          t          g 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	          t          g d          t          j        dd          d          }|t          |	                                                   
                    |          }t          |          }t          j        ||           d S )N)r6  r6        rs   r   r<   r4   r   rf   rL  r9  rC  )r@  r@  rA  rA  )rA  rA  r@  r@  )r8  r8  rB  rB  )r:  r'   r:  r'   re   int64)r  r  r	  r;  r<  r=  r>  rE  rF  rG  rH  rI  rJ  rK  r
  )r   r&   r'   r   r	   r   r   arangesortedkeysmoderJ   assert_frame_equal)r   r$   r\   rX   rY   s        r    test_mode_dropnaz'TestDataFrameAnalytics.test_mode_dropnaP  su   t %%%"bfa(0RVRVS"&9GGG "&"&#rv!>??"#F#F#FhWWW!"A"A"ABB!\\!\\BFBF+ #rvsBF!;<<">>>h   ""D"D"DEEYq000! 
 
* F8==??++,111@@X&&
fh/////r"   c                     t          dt          j        t          j        ddgi          }t          ddt          j        gi          }|                    d          }t	          j        ||           d S )Nr  r4   Fr
  )r   r&   r'   rT  rJ   rU  )r   using_infer_stringrX   r\   rY   s        r    test_mode_sort_with_naz-TestDataFrameAnalytics.test_mode_sort_with_na  se    bfbfc37899cC=122&&
fh/////r"   c                     t          g ddg          }|                                }|                                }t          j        ||           d S )Nr4   r0   r   )r   copyrT  rJ   rU  )r   rX   r\   rY   s       r    test_mode_empty_dfz)TestDataFrameAnalytics.test_mode_empty_df  sK    rC:...7799
fh/////r"   c           
         t          t          dddd          t          dddd          t          d          t          dd	          z
  d
          }t          |d         |d         z
  |d         |d         z
  d          }|                                }|j        d         |j        d         k    sJ |j        d         |j        d         k    sJ |                    d          }||j        d         k                                    sJ |                                }|j        d         |j        d         k    sJ |j        d         |j        d         k    sJ |                    d          }||d         k                                    sJ |	                                }t          |          }t          |d         |d         z
  |d         |d         z
  d          }t          j        ||           t          j        ||           |                                }d|d<   d|d<   d|d<   t          d          |d<   |                                }t          t          j        t          d                    t          j        t          d                    dddt          d          g|j                  }t          j        ||           |                    dd !          }t          g d"          }t          j        ||           |ddg                             d          }t          t          d          gdz  d#$          }t          j        ||           |ddg                                         }t          t          d          t          d          gddgd#%          }t          j        ||           t          t          d&dd'          t          d(dd'          d)          }|d*         |d+         z
  |d,<   |d,         j        d-k    sJ |d+         |d*         z
  |d.<   |                                 |d,         j        d-k    sJ |d.         j        d-k    sJ d S )/Nz2012-1-1r   r;  ns)r3   freqra   z2012-1-220120101rr   )minutessecondsr  r  r	  r  r  r   )r   r  r<   )r   r  r@   )r1   r  )r1   r  r   r   r<  20130101r=  i1  rb  )daysr  Tr   )r<   r<   r   m8[ns]rf   rF   20130102)r3   ra   20130105)timetime2rk  rj  off1timedelta64[ns]off2)r   r   r   r   r   r|   r.  allr   absrJ   rU  r[  r   r   	Timedeltarq   rN   rH   _consolidate_inplace)r   rX   diffsrY   result2r\   mixeds          r    test_operators_timedelta64z1TestDataFrameAnalytics.test_operators_timedelta64  s   
ACdKKK
ACdKKKz**Yq!-L-L-LL 
 
 3"S' 13"S'8IJJKK {1~6!22222{1~6!22222""%)F++0022222 {1~6!22222{1~6!22222""%*$))+++++ e**2c7RW#42c7RW;LMMNN
fh///
gx000 

c
c
c
z**c
 Yz:::;;YB///00*%% -

 

 

 	vx000 55+++&&
vx000 Sz"&&A&..9"---.2(CCC
vx000Sz"&&((z***I2,>,>,>?*
 
 

 	vx000 ":qtDDD#JEEE 
 
 [2f:-6
&z#44444Z"W+-6

!!!&z#44444&z#4444444r"   c                 0   t          j        dd          }t          ||dd          }t           j        |j        d<   |                    d	          }t          |d
                                         t           j        gd
dgd          }t          j        ||           |                    dd          }t          t          j	        d          gdz  t           j        t          j	        d          gz   d          }t          j        ||           d S )Nz1 Dayrs   r2   r  Tr[  )ru   re  Fr;   r  r  ztimedelta64[us]rF   r<   r9   r   r@  zm8[us]rf   )
r   timedelta_ranger   rB  r|   r   r   rJ   rN   rq  )r   tdirX   rY   r\   s        r    !test_std_timedelta64_skipna_falsez8TestDataFrameAnalytics.test_std_timedelta64_skipna_false  s    "555Ss++$777&u%%W[[]]BF#C:=N
 
 
 	vx000Qu--\!__!RVR\!__$==X
 
 
 	vx00000r"   r   z
2022-01-01z
2022-01-02z
2022-01-03c                 j   t          |                              |          }t          d|i          }|                    |          }|rt	          d |D                       r"t          dt          j        id| d          }nt          ddid| d          }t          j	        ||           d S )Nr4   ry  c              3   2   K   | ]}|t           j        u V  d S r   )r   rB  )rk   values     r    	<genexpr>zFTestDataFrameAnalytics.test_std_datetime64_with_nat.<locals>.<genexpr>"  s(      AAUbf_AAAAAAr"   ztimedelta64[]rf   r:  )
r   as_unitr   r   ro  r   r   rB  rJ   rN   )	r   r   r;   requestra   dtirX   rY   r\   s	            r    test_std_datetime64_with_natz3TestDataFrameAnalytics.test_std_datetime64_with_nat  s    
 &!!))$//Sz""v&& 	MAA&AAAAA 	MsBFm3I$3I3I3IJJJHHsHo5KD5K5K5KLLLH
vx00000r"   c                 *   t                      }|                    d          }|                    d          }t          |t                    sJ t          |t                    sJ t	          |          dk    sJ t	          |          dk    sJ d S )Nr   r@   r<   )r   rA   rL   r   r%   )r   empty_frameaxis0axis1s       r    test_sum_cornerz&TestDataFrameAnalytics.test_sum_corner(  s    kkQ''Q''%(((((%(((((5zzQ5zzQr"   rG   ME)r_  r;  c                     t          dg|          } t          ||          d          }|dv rd}n|dk    rd}nd	}t          g ||
          }t          j        ||           d S )Nr4   )rq   rG   r<   r@   )r   ro  rx   r   rP  rz   rF   )r   rI   r   rJ   rN   )r   all_reductionsrG   rX   rY   expected_dtyper\   s          r    test_axis_1_emptyz(TestDataFrameAnalytics.test_axis_1_empty2  s     uE222,^,,!444^++#NNw&&$NN%N"E@@@
vx00000r"   	min_countc                     |}t          dt          j        gi|          }|                    d||          }|r|dk    rdnt          j        }t	          |g|          }t          j        ||           d S )Nr4   rf   r<   )r:   r;   r  r    )r   r   NArA   r   rJ   rN   )	r   string_dtype_no_objectr;   r  rH   rX   rY   r  r\   s	            r    test_axis_1_sum_naz)TestDataFrameAnalytics.test_axis_1_sum_naI  s     'beW~U333QvCC:aRU5'///
vx00000r"   zmethod, unit)rA   r   )rB   r<   r   )NTFc                 V   g d}t          ||g|t          j        gt          j        t          j        gd          } t          ||          |          }t	          |||g|d          }t          j        ||            t          ||          |d          }t	          ||t          j        g|          }t          j        ||            t          ||          |d          }t	          |||g|d          }t          j        ||            t          |j        dd          |          |d          }t	          |t          j        t          j        g|          }t          j        ||           t          |gd	z  |gd
z  t          j        gd
z  z   d          } t          ||          |d
          }t	          |ddg          }t          j        ||            t          ||          |d          }t	          |ddg          }t          j        ||           d S )Nr   r   float64rF   r<   )r   r  r  r   rs   rr   r  r  r     )r   r&   r'   rI   r   rJ   rN   r|   )r   r   ra   r   idxrX   rY   r\   s           r    test_sum_prod_nanopsz+TestDataFrameAnalytics.test_sum_prod_nanopsS  s:    oodD\rvbfbfEUVVWW$V$$,???4t,CyIII
vx000 %V$$,!LLL4rv.c:::
vx000 %V$$,!LLL4t,CyIII
vx000-f--<STUUU40<<<
vx000 dVb[vzRVHqL/HIIJJ$V$$,!LLL&c
333
vx000$V$$,!LLL&c
333
vx00000r"   c                    g d}t          ddgdt          j        gt          j        t          j        gd          }|                    t                    }|                                }t          g dd|          }t          j        ||           |                    d          }t          j        ||           |                    d          }t          ddt          j        gd|          }t          j        ||           d S )Nr   r   )r   r   r   rg  rH   rG   r  r<   )	r   r&   r'   rO   r   rA   r   rJ   rN   )r   r  rX   r0  rY   r\   s         r    test_sum_nanops_timedeltaz0TestDataFrameAnalytics.test_sum_nanops_timedeltau  s    ooaV1bf+RVRV<LMMNNhh|$$ )))83???
vx000 1%%
vx000 1%%1a.DDD
vx00000r"   c                     t          g dg dd          }|                    d          }t          t          j        t          j        gddg          }t          j        ||           d S )	Nr  re   rr   r  )r   yrs   r  r   r  r  )r   rA   r   r&   r'   rJ   rN   r   rX   rY   r\   s       r    test_sum_nanops_min_countz0TestDataFrameAnalytics.test_sum_nanops_min_count  sj    YYYYYY7788"%%2626*3*===
vx00000r"   
float_type)float16r   r  zkwargs, expected_result)r:   r  g	@g333333@r9   c                     t          g dddt          j        gd|          } |j        di |}t	          |                              |          }t          j        ||           d S )N)r   gffffff@皙@g@r   r4   r0   rf   r+   )r   r&   r'   rA   r   r   rJ   rN   r   r  kwargsexpected_resultrX   rY   r\   s          r    test_sum_nanops_dtype_min_countz6TestDataFrameAnalytics.test_sum_nanops_dtype_min_count  sv     ___CBF3CDDJWWW!!&!!/**11*==
vx00000r"   r   r   c                     t          g dddt          j        gd|          } |j        di |}t	          |                              |          }t          j        ||           d S )N)r   r   r  r   r  rf   r+   )r   r&   r'   rB   r   r   rJ   rN   r  s          r     test_prod_nanops_dtype_min_countz7TestDataFrameAnalytics.test_prod_nanops_dtype_min_count  s     !//c26(:;;:
 
 
 ""6""/**11*==
vx00000r"   c                     |j                             t                    }t          ||j        |j                  }|t          d          z  }|                                 d S )Nr   r<   )r   r   r   r   rG   rq   r   rA   )r   r   r   rT   deltass        r    test_sum_objectz&TestDataFrameAnalytics.test_sum_object  sS    #**3//&(9;CVWWW1%

r"   c                     t          j        |          }|                    d           |                    d           d S )Nr<   r@   r   )r&   isnanrA   )r   r   boolss      r    test_sum_boolz$TestDataFrameAnalytics.test_sum_bool  s?    %%		q			q	r"   c                    t          t          dd          g dd                              g d          }t          j        t
          d          5  |                                 d d d            d S # 1 swxY w Y   d S )	Nr  re   r2   r   r  )r1   r   re   z does not support operation 'sum'rD   )r   r   r   rP   rQ   r   rA   r  s     r    test_sum_mixed_datetimez.TestDataFrameAnalytics.test_sum_mixed_datetime  s    Z:::NNOOWWII
 
 ]9,NOOO 	 	FFHHH	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   A66A:=A:c                    d}t          j        t          |          5  |                    d           d d d            n# 1 swxY w Y   t          j        t          d          5  |                    d           d d d            n# 1 swxY w Y   |d         dk    |d<   |                    d          }|d         |d         j                                        k    sJ d S )	Nz1Could not convert|does not support|Cannot performrD   r   r@   unsupported operand typer<   r  rx   )rP   rQ   r   r   r   )r   r   r   r   meanss        r    test_mean_cornerz'TestDataFrameAnalytics.test_mean_corner  sg   A]9C000 	, 	,###+++	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, ]9,FGGG 	, 	,###+++	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, *#.2F  a ((V}F 3 : ? ? A AAAAAAAs#   AAA'B

BBc           
         t          t          j        d          t          dd          t	          j        dd          t	          j        ddd          d          }|                    d	
          }t          ddi          }t          j
        ||           t          j        t          d          5  |                                 d d d            d S # 1 swxY w Y   d S )Nr   
2016-01-01r2   1D2016Yr3   r_  )r  r  r	  r;  Tr  r  r   z'mean is not implemented for PeriodArrayrD   )r   r&   rQ  r   r   rz  period_ranger   r   rJ   rN   rP   rQ   r   r  s       r    test_mean_datetimelikez-TestDataFrameAnalytics.test_mean_datetimelike  s   
 Yq\\a888'a888_VQSAAA	 
 
 d++3*%%
vx000]9,UVVV 	 	GGIII	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   6CCCc                    t          t          j        d          t          dd          t	          j        dd          d          }|                    d          }t          d|j        d	         |j        d
         d          }t          j
        ||           t	          j        ddd          |d<   t          j        t          d          5  |                    d           d d d            d S # 1 swxY w Y   d S )Nr   r  r2   r  r  Fr  r<   )r<   r  )r<   r	  r  r  r  r;  z"mean is not implemented for PeriodrD   )r   r&   rQ  r   r   rz  r   r   r.  rJ   rN   r  rP   rQ   r   r  s       r    )test_mean_datetimelike_numeric_only_falsez@TestDataFrameAnalytics.test_mean_datetimelike_numeric_only_false  s>   Yq\\a888'a888 
 
 e,,vRVF^LLMM
vx000 /&!#>>>3]9,PQQQ 	( 	(GGG'''	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	(s   C66C:=C:c                 N   t           j                            d                              dd          }t	          |d          }|                    d          }t	          |                                                              d	          }t          j        ||           d S )
Nr1   r#  )rs   rr   )sizeInt64rf   Tr  Float64)	r&   r   r   integersr   r   r   rJ   rN   )r   r)  rX   rY   r\   s        r    *test_mean_extensionarray_numeric_only_truezATestDataFrameAnalytics.test_mean_extensionarray_numeric_only_true  s    i##A&&//7/CCs'***d++S>>&&((//	::
vx00000r"   c                 P   t          j        t          d          5  |                    d           d d d            n# 1 swxY w Y   t          j        t          d          5  |                    d           d d d            n# 1 swxY w Y   t          j        t          d          5  |                    d           d d d            n# 1 swxY w Y   t          j        t          d          5  |                    d           d d d            d S # 1 swxY w Y   d S )Nr   rD   r<   r@   r  )rP   rQ   r   r   r   r   r   )r   r   s     r    test_stats_mixed_typez,TestDataFrameAnalytics.test_stats_mixed_type  s   ]9,?@@@ 	+ 	+"""***	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+]9,?@@@ 	+ 	+"""***	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+]9,FGGG 	, 	,###+++	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	,]9,?@@@ 	, 	,###+++	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	,sE   ?AA%BBB.CCC7DD"Dc                     t          t          d          t          d                    }t          |          }|                    d          d         dk    sJ d S )Nr<   rs   r   r@   r   )r   rM   r   rA   )r   rX   r  s      r    test_sum_boolsz%TestDataFrameAnalytics.test_sum_bools  sU    U1XXuRyy999Ryyay  #r))))))r"   zinput_data, expected_data483394759r  483943759z483.948z3.0z94.2z759.93z483.94894.2z	3.0759.9379z48394.2z3.079c                     t          |          }t          |          }|                    d          }t          j        ||           d S Nr<   r@   )r   r   rA   rJ   rN   )r   
input_dataexpected_datarX   r\   rY   s         r    test_sum_string_dtype_coercionz5TestDataFrameAnalytics.test_sum_string_dtype_coercion  sH     z""-((Q
vx00000r"   c                    |}t           j        |j        dd<   t           j        |j        dddd f<   ||fD ]}|r|dk    r||ur|rd}nd}t          j        t
          |	          5  |                    ||
           d d d            n# 1 swxY w Y   t          j        t
          |	          5  |                    ||
           d d d            n# 1 swxY w Y   |                    ||
          }|                    t          j        ||
          }	|		                    |j
        j                  }	t          j        ||	           d S )Nrr   rs   rd   rt   ru   r<   Encountered all NA valuesEncountered an NA valuerD   r9   )r&   r'   r|   rP   rQ   rR   idxminrO   r   r   rG   rH   rJ   rN   
r   r   r   r;   r:   rT   rX   r   rY   r\   s
             r    test_idxminz"TestDataFrameAnalytics.test_idxmin,  s   6
1R4!#
2b5"##:)$ 	9 	9B 9daiiRy-@-@ 45CC3C]:S999 8 8II4I7778 8 8 8 8 8 8 8 8 8 8 8 8 8 8]:S999 8 8II4I7778 8 8 8 8 8 8 8 8 8 8 8 8 8 8 V<<88FMV8LL#??28>::&vx8888	9 	9s$   (BB	B	2CC	C	z3ignore:PeriodDtype\[B\] is deprecated:FutureWarningc                     |dk    rt          |          }nt          |          }|                    ||          }t          |j                  }t	          j        ||           d S Nr   r  r   r9   rf   )r   r  r   rH   rJ   rN   r   rG   r;   r:   rT   rY   r\   s          r    test_idxmin_emptyz(TestDataFrameAnalytics.test_idxmin_emptyA  o     199E***EEe,,,E477,,,
vx00000r"   c                     t          g dg dt          d          d          }|                    |          }|rt          ddgdd	g
          }nt          g dg d
          }t	          j        ||           d S )Nr1   r   r<   r1   r<   r<   xyxr   r  r1   r<   r4   r0   r  )r1   r<   r   )r   r{   r  r   rJ   rN   r   r   rX   rY   r\   s        r    test_idxmin_numeric_onlyz/TestDataFrameAnalytics.test_idxmin_numeric_onlyN      YYYYYYT%[[IIJJ55 	@q!fS#J777HHiii???H
vx00000r"   c                     |}d}t          j        t          |          5  |                    d           d d d            d S # 1 swxY w Y   d S Nz)No axis named 2 for object type DataFramerD   r1   r@   )rP   rQ   rR   r  r   r   rT   r   s       r    test_idxmin_axis_2z)TestDataFrameAnalytics.test_idxmin_axis_2X      9]:S111 	! 	!LLaL   	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	!   AAAc                    |}t           j        |j        dd<   t           j        |j        dddd f<   ||fD ]}|du s|dk    rX||u rT|rd}nd	}t          j        t
          |
          5  |                    ||           d d d            n# 1 swxY w Y    d S |                    ||          }|                    t          j        ||          }	|		                    |j
        j                  }	t          j        ||	           d S )Nrr   rs   rd   rt   ru   Fr<   r  r  rD   r9   )r&   r'   r|   rP   rQ   rR   idxmaxrO   r   r   rG   rH   rJ   rN   r  s
             r    test_idxmaxz"TestDataFrameAnalytics.test_idxmax^  s^   6
1R4!#
2b5"##:)$ 	5 	5B%4199"++ 45CC3C]:S999 8 8II4I7778 8 8 8 8 8 8 8 8 8 8 8 8 8 8YYDY88FxxDxHHHrx~66H"684444	5 	5s   )BB	B	c                     |dk    rt          |          }nt          |          }|                    ||          }t          |j                  }t	          j        ||           d S r  )r   r  r   rH   rJ   rN   r  s          r    test_idxmax_emptyz(TestDataFrameAnalytics.test_idxmax_emptyr  r  r"   c                     t          g dg dt          d          d          }|                    |          }|rt          ddgdd	g
          }nt          g dg d
          }t	          j        ||           d S )Nr  r  r  r   r  r<   r   r4   r0   r  )r<   r   r<   )r   r{   r  r   rJ   rN   r  s        r    test_idxmax_numeric_onlyz/TestDataFrameAnalytics.test_idxmax_numeric_only  r  r"   c                 x   t          j        d           t          g dg ddd          }|                                }t	          ddgd	d
g          }t          j        ||           |                                }t	          ddgd	d
g          }t          j        ||           t          d	g did          }|                    d          }t	          dgd	g          }t          j        ||           |                    d          }t	          dgd	g          }t          j        ||           d S )Npyarrowr  r  r  zint64[pyarrow]rf   r<   r   r4   r0   r  r1   )r0   r   r4   zstring[pyarrow]Fr  )rP   r   r   r  r   rJ   rN   r  r  s       r    test_idxmax_arrow_typesz.TestDataFrameAnalytics.test_idxmax_arrow_types  sD   I&&&YYYYYY77?OPPP1a&c
333
vx0001a&c
333
vx000___-5FGGG..1#cU+++
vx000..1#cU+++
vx00000r"   c                     |}d}t          j        t          |          5  |                    d           d d d            d S # 1 swxY w Y   d S r  )rP   rQ   rR   r  r  s       r    test_idxmax_axis_2z)TestDataFrameAnalytics.test_idxmax_axis_2  r  r  c                 b   t          dd          }t          g dt          d          d d d         |d          }|                                }t	          g dt          dd	          
          }t          j        ||           |                                }t	          g dt          dd	          
          }t          j        ||           t          j	        |j
        d<   |                                }t	          g dt          dd	          
          }t          j        ||           |                                }t	          g dt          dd	          
          }t          j        ||           |d d d         |d	<   |                                 |                                }t	          g dt          dd          
          }t          j        ||           |                                }t	          g dt          dd          
          }t          j        ||           d S )Nr  r   r2   )r   r1   r<   re  r  )r<   r   r1   r<   re   r  )r   r1   r   )r   r   )r<   r   r1   r   rr   )r   r1   r<   r1   )r   r   rM   r  r   rJ   rN   r  r   rB  r.  rr  r   r  rX   rY   r\   s        r    test_idxmax_mixed_dtypez.TestDataFrameAnalytics.test_idxmax_mixed_dtype  s   q111999q$$B$C@@AA)))5A;;777
vx000)))5A;;777
vx000 vt)))5A;;777
vx000)))5A;;777
vx000 DDbD	1
!!!,,,eAqkk:::
vx000,,,eAqkk:::
vx00000r"   zop, expected_valuer  r  rr   c                    t          g dg ddd          }|                    d          } t          ||                      }t          d|it          dd	gdd
                    }t	          j        ||           d S )N)d   r  r     r  r  )r   r   r   r<   r1   r   )IDr  r  rf   r  r  r  r  )namerH   r  )r   groupbyrI   r   rJ   rU  )r   r   expected_valuerX   rY   r\   s         r    !test_idxmax_idxmin_convert_dtypesz8TestDataFrameAnalytics.test_idxmax_idxmin_convert_dtypes  s     444+++  
 
 
 ZZ R""n%c
W===
 
 
 	fh/////r"   c                    t          dd          }t          ||d d d         dd          }t          j        |j        d<   |                                 |                    d	
          }t          g d          }t          j	        ||           |
                    d	
          }t          g d          }t          j	        ||           d S )Nr  r   r2   re  )r   re   Trx  )r   r   r<   r@   )re   r   r   )re   r   re   )r   r   r   rB  r|   rr  r  r   rJ   rN   r  r  s        r    "test_idxmax_dt64_multicolumn_axis1z9TestDataFrameAnalytics.test_idxmax_dt64_multicolumn_axis1  s    q11133ttt9--D999
!!!"")))$$
vx000"")))$$
vx00000r"   	bool_onlyc                     |}t           j                            d                              t	          |                    dk    |d<    t          ||          ||           d S )Nr1   g      ?_bool_r:   r  )r&   r   r   r   r%   rI   )r   all_boolean_reductionsr:   r  r   ru  s         r    test_any_all_mixed_floatz/TestDataFrameAnalytics.test_any_all_mixed_float  sb     #)//22BB3u::NNQTTh.-..DINNNNNNr"   c                 <     t          ||          |d           d S )NFr  r   )r   r  r:   r~   s       r    test_any_all_bool_with_naz0TestDataFrameAnalytics.test_any_all_bool_with_na  s,     	<"$:;;QVWWWWWWr"   c                    |                     d          }t          t          |          t          ||          }fd}fd} |dd          } |dd          }t          j        ||                    |                     t          j        ||                    |d                      |d          } |d          }t          j        ||                    |                     t          j        ||                    |d          d	           t          j        t          d
          5   |d           d d d            n# 1 swxY w Y   |t          j	        z  }	 t          |	|          d          }
 t          |	|          d          }|dk    r.|

                                rJ |
                                rJ d S |
                                sJ |                                sJ d S )NTc                 L    |                                  j        } |          S r   )r$   r   r(   s     r    r!   zFTestDataFrameAnalytics.test_any_all_bool_frame.<locals>.skipna_wrapper  s#    88::$D;t$$$r"   c                 $     | j                   S r   r   r6   s    r    r7   z?TestDataFrameAnalytics.test_any_all_bool_frame.<locals>.wrapper  r8   r"   r   Fr9   r<   r@   )r=   rC   rD   r1   r   )fillnarI   r&   rJ   rN   rO   rP   rQ   rR   r'   r   ro  )r   r  r~   rT   rW   r!   r7   rZ   r[   r^   r_   r`   r*   s               @r    test_any_all_bool_framez.TestDataFrameAnalytics.test_any_all_bool_frame  sd    #))$//b"899E122	% 	% 	% 	% 	%	) 	) 	) 	) 	) !5)))!5)))
wG(<(<===
wG!(D(DEEE!)))!)))
wN(C(CDDD
U[[a[88e	
 	
 	
 	

 ]:->??? 	 	A1IIII	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 4WV344!<<<4WV344!<<<!U**vvxx<vvxx<6688OO86688OO8OOs   9EEEc                 J   t          g dg dg ddg d          }|ddg                             d	
          }t          g dg d          }t          j        ||           |ddg                             d	d          }t          j        ||           |                    d	
          }t          g dg d          }t          j        ||           |                    d	d          }t          j        ||           |                    d 
          }|s|                                }|du sJ |                    d 
          }|s|                                }|du sJ |dg                             d 
          }|s|                                }|du sJ d S )N)TFF)TTF)TTTr  r   r  r  r  r<   r@   Tr  Fr	  )r   r   r   rJ   rN   ro  item)r   using_python_scalarsrX   rY   r\   s        r    test_any_all_extraz)TestDataFrameAnalytics.test_any_all_extra,  s   )))(((''' 
 "//
 
 
 S#J###++---___EEE
vx000S#J##d#;;
vx000Q...oooFFF
vx000Q$//
vx000 T""# 	#[[]]FT""# 	#[[]]F~~~~SED))# 	#[[]]F~~~~~~r"   c           	         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          } t          ||          ||          }t	          g d          }t          j        ||           d S )Nr<   Tr1   5datar9   )TTTT)r   r&   r'   rI   r   rJ   rN   )r   r:   r  r;   rX   rY   r\   s          r    test_any_all_object_dtypez0TestDataFrameAnalytics.test_any_all_object_dtypeS  s     BFBFD)BFD).bf-	
 
 
 5344$vNNN22233
vx00000r"   c                 ^   dt           j        dt           j        g}t          d          t          d          t          j        t          j        g}t          ||d          }d}t          j        t          |          5  |	                    d           d d d            d S # 1 swxY w Y   d S )	Nr<   r   z
1960-02-15z
1960-02-16r  z0datetime64 type does not support operation 'any'rD   r@   )
r&   r'   r   r   rB  r   rP   rQ   r   r   )r   
float_datadatetime_datarX   r   s        r    test_any_datetimez(TestDataFrameAnalytics.test_any_datetimeb  s    BF+
l##l##FF	
 Zm<<==@]9C000 	 	FFFNNN	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   >B""B&)B&c                    t          g dg dg ddt          g dt                              }|                    d          }t	          t
          j        g 	          }t          j        ||           t          g dg dg dg d
d          }|                    d          }t	          ddi          }t          j        ||           d S )Nr  r  )NNN)col1col2col3rf   r   Tr  r  )FFT)r)  r*  r+  col4r-  F)	r   r   rz   ro  r   r&   bool_rJ   rN   r  s       r    test_any_all_bool_onlyz-TestDataFrameAnalytics.test_any_all_bool_onlyq  s    YY			;M;M;MNN222&AAA
 
 

 $''333
vx000!		!		***,,,	 
 
 $''65/**
vx00000r"   zfunc, data, expectedr  r  r   r   zM8[ns, UTC]rg  categoryrs   rt   c                    t          |          }t          d |j        D                       rt          j        t
          d          5   ||           d d d            n# 1 swxY w Y   t          j        t
          d          5   t          t          |          |j                  d            d d d            n# 1 swxY w Y   |j                            d                                           rd}t          j        t
          |          5   ||           d d d            n# 1 swxY w Y   t          j        t
          |          5   t          t          |          |j                  d            d d d            d S # 1 swxY w Y   d S |j                            d                                           r ||          }|r||u sJ n4t          |t          j                  sJ |                                |u sJ  t          t          |          |j                  d           }|r||u sJ d S t          |t          j                  sJ |                                |u sJ d S d S )Nc              3   @   K   | ]}t          |t                    V  d S r   )rL   r
   )rk   r   s     r    r  z>TestDataFrameAnalytics.test_any_all_np_func.<locals>.<genexpr>  s-      DD1z!-..DDDDDDr"   z,.* dtype category does not support operationrD   r@   c                     | j         dk    S )NrJ  )kindr   s    r    r  z=TestDataFrameAnalytics.test_any_all_np_func.<locals>.<lambda>  s    qv} r"   z6datetime64 type does not support operation '(any|all)'c                     | dk    S )Nr0  r+   r   s    r    r  z=TestDataFrameAnalytics.test_any_all_np_func.<locals>.<lambda>  s
    j r"   )r   r   dtypesrP   rQ   r   rI   __name__rO   rL   r&   r.  r  )r   funcr"  r\   r  r   rY   s          r    test_any_all_np_funcz+TestDataFrameAnalytics.test_any_all_np_func  s   j DDDDDDD 
	C!O     T


               !O   C C 8	$77TBBBBC C C C C C C C C C C C C C C ;445599;; 	1JCy444  T


               y444 C C7	$77TBBBBC C C C C C C C C C C C C C C C C C [8899==?? 	1T$ZZF# 1)))))!&"(33333{{}}0000 =WYt__dm<<$GGGF# 1))))))!&"(33333{{}}0000	1 	1 10sH   	A!!A%(A%-C  CCD--D14D1-FFFc                    t          j        t          ddg                    }|s|                                }|du sJ t          j        t          ddg                    }|s|                                }|du sJ d S )Nr4   r0   r   TF)r&   ro  r   r  r   )r   r  rY   s      r    test_any_all_objectz*TestDataFrameAnalytics.test_any_all_object  s    	3*55566# 	#[[]]F~~~~	3*55566# 	#[[]]Fr"   c                    t          ddgddgd                              t                    }|                                 t	          ddg          |d<   |d                             d          |d<   |                                }|dg         }t          j        ||           |                    dd	
          }t	          dgdg          }t          j	        ||           |ddg                             dd	
          }t          j	        ||           |                    dd 
          sJ |
                    dd	
          }t	          dgdg          }t          j	        ||           |dg         
                    dd	
          }t          j	        ||           |
                    dd 
          sJ d S )Nr   r1   TFr  r	  r0  r;  r   )r  r:   r  r  )r   r   rz   rr  r   _get_bool_datarJ   rU  ro  rN   r   )r   rX   resr\   s       r    test_any_all_object_bool_onlyz4TestDataFrameAnalytics.test_any_all_object_bool_only  s   eQZtUm<<==DDVLL
!!!$&&3 S'..,,3 !!se9
c8,,,fft!f,,4&...
sH--- #sn  4a 88
sH---vv4v00000fft!f,,4&...
sH--- #immdm33
sH---vv4v0000000r"   c                    t          g d          }t          dt          j        dt          j        gi          }t          g d          }t          t          j        t          j        dg          }t	          j        d           5  |                    |d           dD ]} t          ||          |d	           	 d d d            d S # 1 swxY w Y   d S )
N)r   r   r   r  r   r  r<   r   )lowerr:   )ltlegtgeeqner@   )r   r&   r'   r   rJ   rK   cliprI   )r   rX   df_nanr   s_nanr   s         r    test_series_broadcastingz/TestDataFrameAnalytics.test_series_broadcasting  s    ''C"&#rv!6788999*++'-- 	/ 	/KKaaK(((: / /BA...../	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/s   8CCC)[r7  
__module____qualname__rP   markparametrizeparamtd
skip_if_nor   r   r   r   r   r   r&   r'   rz   filterwarningsr   r   r  r  r  r  r  r*  r1  r5  r	   r   r   r   r   rB  r  rV  rY  r\  rv  r|  r  r  r   r   rP  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  r  r   r  r  r  r  r  r  r  r#  r'  r/  r   ro  r   r9  r;  r?  rK  r+   r"   r    r   r      s        [VaV,,[FL}r}W'='=>>>FL}r}W'='=>>>	
 $'N 'N%  -,&'NR [VaV,,[FL}r}W'='=>>>FL}r}W'='=>>>	
 "D D#  -,$D6
 6
 6
p? ? ? 	
 	
 	
 [MMM  [I  
 '    ,++  " I261+261+261+FFfUUU%	
 . [ RSS1 1 TS/  61 [T#P#P#PQQ" " RQ"2* * *"T T T [TD%=111 1 211 [TD%=111 1 2111 1 16* * *" [V%:%:%:;;"; "; <;";H* * * [ $cUu===&~XFFF%xj11  &666$bfX3%@@@&xx@@@%rvh//77==  Q/Q/RVRVRV4$c262626%BPSuUUU&;;;8   &&E&E&EFF%
 
 Q/Q/RVRVRV4$bfc2626%BPSuUUU&;;;8   &&E&E&EFF%
 
O5	
8 8r0 0s8 8r040 0 00 0 0W5 W5 W5r1 1 1$ [L,EqBF8|T 	1 	1 	1   [JqMMM"E"BH%%%E"BJ'''M"4(((K%%%	

 

1 
1
 

1 [[1a&111 1 211 [^j+-FGG[^-@-@-@AA1 1 BA HG1@1 1 1*1 1 1 [\+L+L+LMM[!a((3RV*<=a((262626*BC5))Cbf+=>	
 1 1  NM1 [\+L+L+LMM[!a((3RV*<=a((262626*BC5))Cbf+=>	
 1 1  NM1      B B B  (( ( ((1 1 1, , ,* * *
 [#3<tUm44w6GH %(/ABB, 5>77)W9MN	

 
1 1
 
1 [VaV,,9 9 -,9( [VaV,,[ VWW	1 	1 XW -,	1 [^dE];;1 1 <;1! ! ! [VaV,,5 5 -,5& [VaV,,[ VWW	1 	1 XW -,	1 [^dE];;1 1 <;11 1 1,! ! !!1 !1 !1F [
QF	hA/0 0 0	 0$1 1 1$ [VaV,,[[5$-88O O 98 -,O [VaV,,X X -,X
) ) )V% % %N [VaV,,1 1 -,1  1 1 10 [/	
VR/	
VR/	
 Vc2Y&/	
 Vc2Y%	/	

 VcE5>*E2/	
 VcE5>*E2/	
 VcD%=)40/	
 VcD%=)51/	
 VcD$<($//	
 VcD$<($//	
 VE7%1159/	
 VE7%1159/	
 VE5>>>E/	
 VE5>>>F/	
  Vc663*G<<<=uE!/	
" Vc663*G<<<=tD#/	
$ Vc661a&4445u=%/	
& Vc661a&4445t<'/	
( FL#vvq!fH'E'E'E!FNN)/	
* FL#vvq!fM'J'J'J!KUSS+/	
, FL#vvq!fH'E'E'E!FMM-/	
. FL#vvq!fM'J'J'J!KTRR//	
0 FL#vvq!fH'E'E'E!FMM1/	
2 FL#vvq!fM'J'J'J!KTRR3/	
4 FL#vvq!fH'E'E'E!FMM5/	
6 FL#vvq!fM'J'J'J!KTRR7/	
8 FL#vvq!fH'E'E'E!FNN9/	
: FL#vvq!fH'E'E'E!FMM;/	
< FL#vvq!fH'E'E'E!FMM=/	
> FL#vvq!fH'E'E'E!FMM?/	
D Vc661a&
;;;<dCE/	
F Vc661a&
;;;<eDG/	
H Vc661a&
;;;<dCI/	
J Vc661a&
;;;<eDK/	
N FLR999R999   O/	
2 2f'1 '1g2 2f'1R
 
 
 1  1  1J/ / / / /r"   r   c                   .   e Zd Zd Zd Zd Zd Zd Zd Ze	j
                            ddd	g          e	j
                            d
ddg          defd                        Ze	j
                            d
ddg          d             Zd Zd Zd Zd ZdS )TestDataFrameReductionsc                    t          dt          j        t          j        t          d          gi          }|                                }t          t          d          gdg          }t          j        ||           |                                }t          t          d          gdg          }t          j        ||           t          dt          j        t          j        gi          }|                                }t          t          j        gdg          }t          j        ||           |                                }t          t          j        gdg          }t          j        ||           d S )Nr   z
2012-05-01r  )	r   r   rB  r   r   r   rJ   rN   r   r   rX   r>  exps       r    test_min_max_dt64_with_NaTz2TestDataFrameReductions.test_min_max_dt64_with_NaT%  s8   	,0G0GHIJJffhhi--.ug>>>
sC(((ffhhi--.ug>>>
sC((( /011ffhhbfXeW---
sC(((ffhhbfXeW---
sC(((((r"   c                    t          dt          j        t          j        t          d          gid          }|                    d          }|j                            d           }t          j        ||           |	                    d          }|j                            d           }t          j        ||           d S )Nr   z2012-05-01 09:20:00.123456789zdatetime64[ns]rf   r<   r@   )
r   r   rB  r   r   r   renamerJ   rN   r   rW  s       r    $test_min_max_dt64_with_NaT_precisionz<TestDataFrameReductions.test_min_max_dt64_with_NaT_precision<  s     RVRVY/N%O%OPQ"
 
 

 ff!fnnfmmD!!
sC(((ff!fnnfmmD!!
sC(((((r"   c                    t          dt          j        t          j        t          d          gid          }|                    d          }|j                            d           }t          j        ||           |	                    d          }|j                            d           }t          j        ||           d S )Nr   z10000 days 06:05:01.123456789rm  rf   r<   r@   )
r   r   rB  r   r   r   r[  rJ   rN   r   rW  s       r    $test_min_max_td64_with_NaT_precisionz<TestDataFrameReductions.test_min_max_td64_with_NaT_precisionL  s     FF !@AA $	
 	
 	
 ff!fnnfmmD!!
sC(((ff!fnnfmmD!!
sC(((((r"   c                    |}t          |t                    r"t                      rt          j        d           t          t          d|          t          d|          gt          d|          t          j        gd          }|	                    dd	          }t          |j        d
         t          j        g          }|j        |d         j        k    sJ t          j        ||           |                    dd	          }t          |j        d         t          j        g          }|j        |d         j        k    sJ t          j        ||           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:00r  r<   Fr9   )r   r4   r4   )r   r0   )rL   r   r   rP   skipr   r   r   rB  r   r   r.  rH   rJ   rN   r   )r   r  tz_naive_fixturer  rX   r>  r\   s          r    'test_min_max_dt64_with_NaT_skipna_falsez?TestDataFrameReductions.test_min_max_dt64_with_NaT_skipna_falseb  s\   b'"" 	':'<'< 	K4  
  3;;;3;;;   5"===rvF 
 
 ff!Ef**26&>26233~C....
sH---ff!Ef**26&>26233~C....
sH-----r"   c                 J   t          dt          g           i          }t          t          g                     }|                    d          j        t
          j        u |                                t
          j        u k    sJ |                    d          j        t
          j        u |                                t
          j        u k    sJ t          j	        |                    d          |           t          j	        |                    d          |           d S )Nr   r   r@   r<   )
r   r   r   r   r   r   rB  r   rJ   rN   )r   rX   expected_dt_seriess      r    *test_min_max_dt64_api_consistency_with_NaTzBTestDataFrameReductions.test_min_max_dt64_api_consistency_with_NaT  s    
 [__-..#KOO44A BF*0B0F0F0H0HBF0RSSSSA BF*0B0F0F0H0HBF0RSSSS 	rvv1v~~/ABBB
rvv1v~~/ABBBBBr"   c                 T   t          dg i          }t          g t                    }t          j        |                    d          j                  t          j        |                                          k    sJ t          j        |                    d          j                  t          j        |                                          k    sJ t          j	        |                    d          |           t          j	        |                    d          |           d S )Nr   rf   r   r@   r<   )
r   r   r   r&   r  r   r   r   rJ   rN   )r   rX   expected_float_seriess      r    *test_min_max_dt64_api_consistency_empty_dfzBTestDataFrameReductions.test_min_max_dt64_api_consistency_empty_df  s     Ry!! &r 7 7 7xA())RX6K6O6O6Q6Q-R-RRRRRxA())RX6K6O6O6Q6Q-R-RRRRR
rvv1v~~/DEEE
rvv1v~~/DEEEEEr"   initialz2018-10-08 13:36:45+00:00z2018-10-08 13:36:45+03:00r   r   r   c                     t          |          }t          |g          }t          |g          } t          ||          d          }t	          j        ||           d S r  )r   r   r   rI   rJ   rN   )r   ri  r   
initial_dtr\   rX   rY   s          r    test_preserve_timezonez.TestDataFrameReductions.test_preserve_timezone  sd     !))
:,''z""$V$$!,,,
vx00000r"   c                    t          dd          }t          t          t          j        t          j        |g          t          t          j        ||g          d          }t          ||          } |d|          }|rt          t          j        ||g          }n&t          t          j        t          j        |g          }t          j        ||           d S )Nz
1900-01-01T)utcr  r<   r9   )r   r   r   r   rB  rI   rJ   rN   )r   r   r;   valrX   r   rY   r\   s           r    !test_minmax_tzaware_skipna_axis_1z9TestDataFrameReductions.test_minmax_tzaware_skipna_axis_1  s     ,D111"&"&#.//fbfc3=O6P6PQQ
 
 R  6*** 	5rvsC011HHrvrvs344H
vx00000r"   c           
         t          t          ddg          t          t          dd          t          dd          g          d          }|                    d          }t          ddgd	d
g          }t	          j        ||           |                    d          }t          ddg          }t	          j        ||           d S )Nr   r   r<   ms)r4   tr@   FTr4   rs  )r"  rG   r!  )r   r   r   r   rJ   rN   r  s       r    test_frame_any_with_timedeltaz5TestDataFrameReductions.test_frame_any_with_timedelta  s    QF^^\!S11<43H3HIJJ 
 
 Qt}S#J???
vx000Qt}---
vx00000r"   c                 2   |dk    r3|                     t          j                            d                      |g d          }d}t          j        t
          |          5   t          ||          d            d d d            d S # 1 swxY w Y   d S )Nr   zCount does not accept skipna)reasonr  zAFor argument "skipna" expected type bool, received type NoneType.rD   ry  )applymarkerrP   rN  xfailrQ   rR   rI   )r   r  frame_or_seriesr  objr   s         r    "test_reductions_skipna_none_raisesz:TestDataFrameReductions.test_reductions_skipna_none_raises  s     W$$!!)G!HH   oiii((Q]:S111 	6 	6(GC((5555	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6s   $BBBc                 P   t          t          t          d          gd          t          t          d          gd          d          }|                                }t          t          d          t          d          gdddg	          }t	          j        ||           d S )
Nz
2019-12-31zdatetime64[s]rf   z2019-12-31 00:00:00.123zdatetime64[ms]r  r4   r0   r  )r   r   r   r   rJ   rN   r  s       r    &test_reduction_timestamp_smallest_unitz>TestDataFrameReductions.test_reduction_timestamp_smallest_unit  s    Y|445_MMM899:BR   
 
 |$$i0I&J&JK"*
 
 

 	vx00000r"   c                 x   t          t          t          j        d          gd          t          t          j        d          gd          d          }|                                }t          t          j        d          t          j        d          gdddg          }t          j        ||           d S )	Nr:  ztimedelta64[s]rf   ztimedelta64[ms]r  r4   r0   r  )r   r   r   rq  r   rJ   rN   r  s       r    &test_reduction_timedelta_smallest_unitz>TestDataFrameReductions.test_reduction_timedelta_smallest_unit  s    R\(334<LMMMR\(334<MNNN 
 
 \(##R\(%;%;<#*
 
 

 	vx00000r"   N)r7  rL  rM  rY  r\  r^  rb  re  rh  rP   rN  rO  r   rl  rp  rt  r{  r}  r  r+   r"   r    rU  rU  $  sM       ) ) ).) ) ) ) ) ),. . .<C C C
F 
F 
F [	$&AB  [Xu~661c 1 1 1 76	 
1 [Xu~661 1 7611 1 1"
6 
6 
61 1 1$1 1 1 1 1r"   rU  c                   f    e Zd Zd Zd Zej                            dddg          d             ZdS )TestNuisanceColumnsc                 j   t          ddgdd          }|                                }t          j        t          d          5   t          ||                       d d d            n# 1 swxY w Y   t          j        t          d          5   t          t          |          |           d d d            n# 1 swxY w Y   t          j        t          d          5   t          ||          d	           d d d            n# 1 swxY w Y   t          j        t          d          5   t          ||          d 	           d d d            n# 1 swxY w Y   t          j        t          d          5   t          t          |          |d
           d d d            d S # 1 swxY w Y   d S )Nr   r<   r0  r  )rH   r  does not support operationrD   Fr,  r@   )r   to_framerP   rQ   r   rI   r&   )r   r  serrX   s       r    .test_any_all_categorical_dtype_nuisance_columnzBTestNuisanceColumns.test_any_all_categorical_dtype_nuisance_column  s	   aV:C888\\^^ ]9,HIII 	3 	30GC/00222	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 ]9,HIII 	5 	5/GB.//444	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 ]9,HIII 	A 	A/GB.//%@@@@	A 	A 	A 	A 	A 	A 	A 	A 	A 	A 	A 	A 	A 	A 	A ]9,HIII 	@ 	@/GB.//$????	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ ]9,HIII 	< 	</GB.//;;;;	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	<sZ   A))A-0A-B::B>B> DDD-EEE:!F((F,/F,c                 l   t          dt          g d          i          }|d         }t          j        t          d          5  |                                 d d d            n# 1 swxY w Y   t          j        t          d          5  |                    d           d d d            n# 1 swxY w Y   t          j        t          d          5  |                                 d d d            n# 1 swxY w Y   |d                             t                    |d<   t          j        t          d          5  |                    d           d d d            n# 1 swxY w Y   t          j        t          d          5  |                                 d d d            d S # 1 swxY w Y   d S )Nr  )r<   r1   r1   r1   r   r  rD   Fr  r  )r   r	   rP   rQ   r   r   r   r   )r   rX   r  s      r    -test_median_categorical_dtype_nuisance_columnzATestNuisanceColumns.test_median_categorical_dtype_nuisance_column  s   [99:;;g ]9,HIII 	 	JJLLL	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ]9,HIII 	* 	*II5I)))	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* ]9,HIII 	 	IIKKK	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 S'..%%3]9,HIII 	* 	*II5I)))	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* ]9,HIII 	 	IIKKK	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	sZ   A%%A),A)B..B25B2C55C9<C9>E!!E%(E%F))F-0F-r   r   r   c                    t          g dd          }t          |          }|                    d          }t          j        t
          d          5   t          ||                       d d d            n# 1 swxY w Y   t          j        t
          d          5   t          t          |          |           d d d            n# 1 swxY w Y   t          j        t
          d          5   t          ||          d           d d d            n# 1 swxY w Y   t          j        t
          d          5   t          ||                       d d d            n# 1 swxY w Y   t          j        t
          d          5   t          t          |          |d	           d d d            n# 1 swxY w Y   |d                             t                    |d
<   t          j        t
          d          5   t          ||                       d d d            n# 1 swxY w Y   t          j        t
          d          5   t          t          |          |d	           d d d            d S # 1 swxY w Y   d S )N)r4   r0   r   r0   F)orderedr  zis not ordered for operationrD   r  r   r@   r  )
r	   r   r  rP   rQ   r   rI   r&   r   rz   )r   r   catr  rX   s        r    :test_min_max_categorical_dtype_non_ordered_nuisance_columnzNTestNuisanceColumns.test_min_max_categorical_dtype_non_ordered_nuisance_column(  s    ...>>>Skk\\# ]9,JKKK 	# 	# GC  """	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# ]9,JKKK 	% 	%GB$$$	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% ]9,JKKK 	4 	4GBU3333	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 ]9,JKKK 	" 	"GB!!!	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" ]9,JKKK 	, 	,GB++++	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, S'..((3]9,JKKK 	" 	"GB!!!	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" ]9,JKKK 	, 	,GB++++	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	,s~   A88A<?A<C		CC/DDD<E!!E%(E%!F44F8;F8=H""H&)H&!I66I:=I:N)	r7  rL  rM  r  r  rP   rN  rO  r  r+   r"   r    r  r    sd        < < <*  6 [Xu~66, , 76, , ,r"   r  c                      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             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             Zej                            d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             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             Zej                            dg d ej        ej        ej        gd!g d  ed"          ej        ej        gd!g d  ed"           ed#           ed$          gd!g d  ej        d%           ej        d&          ej        gd!g d  ej        d%           ej        d&           ej        d'          gd!g          d(             Zd)S )*TestEmptyDataFrameReductionsz#opname, dtype, exp_value, exp_dtyperA   r   rB   r<   c                     t          g g d|          } t          ||          d          }t          ||g|t          d                    }t	          j        ||           d S )Nr   r<   rf   r   r  r1   r  )r   rI   r   rM   rJ   rN   r   rS   rH   	exp_value	exp_dtyperX   rY   r\   s           r    test_df_empty_min_count_0z6TestEmptyDataFrameReductions.test_df_empty_min_count_0I  sp    " 2"~~U333$V$$q1119i0	qRRR
vx00000r"   zopname, dtype, exp_dtypec                     t          g g d|          } t          ||          d          }t          t          j        t          j        g|t          ddg                    }t          j        ||           d S Nr  rf   r<   r  r   r  )r   rI   r   r&   r'   r   rJ   rN   r   rS   rH   r  rX   rY   r\   s          r    test_df_empty_min_count_1z6TestEmptyDataFrameReductions.test_df_empty_min_count_1`  sx    " 2"~~U333$V$$q1112626*)5!Q==QQQ
vx00000r"   Int8Int32r  )rA   r  r   r  )rB   r  r<   r  UInt8UInt32UInt64)rA   r  r   r  )rB   r  r<   r  )rA   Float32r   r  )rB   r  r<   r  )rA   r  r   r  c                     t          g g d|          } t          ||          d          }t          ||g|t          ddg                    }t	          j        ||           d S )Nr  rf   r   r  r<   r  )r   rI   r   r   rJ   rN   r  s           r    "test_df_empty_nullable_min_count_0z?TestEmptyDataFrameReductions.test_df_empty_nullable_min_count_0w  sv    " 2"~~U333$V$$q1119i0	PQSTvWWW
vx00000r"   )rA   r  r  )rB   r  r  )rA   r  r  )rB   r  r  )rA   r  r  )rB   r  r  )rA   r  r  c                     t          g g d|          } t          ||          d          }t          t          j        t          j        g|t          ddg                    }t          j        ||           d S r  )r   rI   r   r   r  r   rJ   rN   r  s          r    "test_df_empty_nullable_min_count_1z?TestEmptyDataFrameReductions.test_df_empty_nullable_min_count_1  sw    " 2"~~U333$V$$q11125"%.	1vOOO
vx00000r"   r"  r   r  z
1990-01-01z
1991-01-01z
1992-01-01r:  z2 daysz3 daysc                     t          |          }t          j        t          d          5  |                                 d d d            d S # 1 swxY w Y   d S )Nznot supported for covrD   )r   rP   rQ   r   cov)r   r"  rX   s      r    test_df_cov_pd_natz/TestEmptyDataFrameReductions.test_df_cov_pd_nat  s    : t__]9,CDDD 	 	FFHHH	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   AAAN)r7  rL  rM  rP   rN  rO  r&   int8rP  int_uint8uint64uintr   r  r  r  is_windows_np2_or_is32r  is_windows_or_is32r  r   rB  r   rq  r  r+   r"   r    r  r  H  s?       [-BGQ)RWa)BHa*RXq"(+BHa+RXq"'*BIq"),RY29-BJ2:.RZBJ/BJ2:.	
  1 1!  1 ["BGRZ(RWbj)BHbj)RXrz*BHbj)RXrz*BIrz*RY
+BJ
+RZ,BJ
+	
  1 1!  1 [-FA+A NwPVQ,B!OQ()GQ-C!QSWa.D"R(((T*+,-,	
  1 1!  1 ["F(:GWWIV);HggJ%&G*<Jhh(LW+=Kxx8M'()*)	
  1 1!  1 [))262626":;;))99\#:#:BFBF"KLLYYIl++Il++Il++  YY"bl8,,lbl8.D.DbfM 
 YY BL** BL** BL** 	
 6 7 6  r"   r  c                  <   t          j        d                              t           j                                      d                              dd          } d| d<   t          |           }|j        | j        k    	                                sJ |
                    d          }t          t          j        d	
          t          j        gd          }t          j        ||           |
                    dd          }t          j        ||           |
                    dd          }t          t          j        d
          t          j        d
          t          j        d
          t          j        gd          }t          j        ||           d S )Nr@  zm8[s]re   r1   Nat)re  re  Fry  r6  rd  rf   r   r9   r<   rr   rA  )r&   rQ  r   rP  viewreshaper   r6  rH   ro  rA   r   r   rq  rB  rJ   rN   )r)  rX   rY   r\   s       r    !test_sum_timedelta64_skipna_falser    si   
)A,,

bh
'
'
,
,W
5
5
=
=a
C
CCCK	3BI"'')))))VV5V!!Fr|B///8HHHH68,,,VV5V))F68,,,VV5V))FL###L###L###F		
   H 68,,,,,r"   c                      t          ddggt          d                    } |                     ddi          } |                                 }t	          ddgddg          }t          j        ||           d S )Nr4   r<   abr   r0   r  r  )r   r{   r   rA   r   rJ   rN   rX   rY   r\   s      r    !test_mixed_frame_with_integer_sumr    su    	S!H:tDzz	2	2	2B	C>	"	"BVVXXFsAhsCj111H68,,,,,r"   r   )TFNr   r   r   c                 j   t          j        d          }t          |j        d |j        gt          j                              }t          d|i          } t          ||           |          }t          t          ||           gdt          dg                    }t          j        ||           d S )NrP  rf   r  r  r  )r&   iinfor   r   r   r   
Int64Dtyper   rI   r   rJ   rN   )r   r   
int64_infor  rX   rY   r\   s          r    test_minmax_extensionarrayr    s     '""J
*.$
7r}
O
O
OC	GS>	"	"B WR  l;;;F	V	$	$%WI  H
 68,,,,,r"   ts_valuez
2000-01-01c                     t          dgdgdg| gd          }t          j        t          d          5  |                                 d d d            d S # 1 swxY w Y   d S )Nr<   g?r   r   z)does not support operation|Cannot performrD   )r   rP   rQ   r   rA   )r  rX   s     r    .test_frame_mixed_numeric_object_with_timestampr    s     
!C5whZHH	I	IB	y(S	T	T	T  
                 s   AAAc                  p   t          g d          } |                     ddd          }t          dgt                    }t	          j        ||           t          j        d          }t          j	        t          |	          5  |                     ddd           d d d            d S # 1 swxY w Y   d S )
N)r<   r4   Tr   r<   F)r:   r  r   r4   rf   z2unsupported operand type(s) for +: 'int' and 'str'rD   )r   rB   r   rz   rJ   rN   r   escaperP   rQ   r   rA   )rX   rY   r\   r   s       r    $test_prod_sum_min_count_mixed_objectr    s    	>>>	"	"BWW!quW==Fse6***H68,,,
)H
I
IC	y	,	,	, 8 8
A7778 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8s   B++B/2B/)r   r   r   r   r   r   rH   r  r  c                    t          t          j                            d                              d          |          } t          ||           d |          }|                    t          j                  }| dv rOt          j	        d          }| dk    rd}  t          ||           |d	d 
          }t          j        ||           d S  t          t          |           |d           }||k    sJ d S )Nr1   )re   re   rf   r   >   r   r   r   r   r   F)r   r:   r@   )r   r&   r   r   r   rI   to_numpyr  rP   r   rJ   r$  )r   r   rH   rX   rY   np_arrcomp_modr\   s           r    'test_reduction_axis_none_returns_scalarr    s    
29((++;;FCC5	Q	Q	QB WR  dFFFF[[rz[**F!!!&}55VF,78V,,V%dKKK
vx00000&72v&&vD999!!!!!!r"   kernel)corrcorrwithr  r  r  r   r   r   r   r   rB   quantiler   r   r   rA   r   c                 L   t          g dt          d          }| dk    r|fnd}d                    g d          }| dk    rd}d	}d                    ||g          }t          j        t
          |
          5   t          ||           |  d d d            d S # 1 swxY w Y   d S )Nr  r  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 numberr   zTCannot convert \[\[<class 'object'> <class 'object'> <class 'object'>\]\] to numericzPCannot convert \[<class 'object'> <class 'object'> <class 'object'>\] to numericrD   )r   rz   r   rP   rQ   r   rI   )r  rX   argsr   msg1msg2s         r    test_fails_on_non_numericr  (  s   0 
00	1	1Bj((B55bD
((	
 	
 	
 C / 	
- 	 hhd|$$	y	,	,	, # #FT""# # # # # # # # # # # # # # # # # #s   8BB B)ro  r   r   r  r  r   r   r   r   r   r   r   rB   r   r   r   r   rA   r   r  r1   c           	         t          t          g d|          t          ddt          j        dg|          d          }t          g ddd	t          j        d
gd          }| dv rd}n%| dv rd}n| dv r|                    d          sd}n|}i }| dvr||d<   | dv r||d<   |s| dv rt          j        t          d          5   t          ||           dddi| d d d            n# 1 swxY w Y   t          j        t          d          5   t          ||           dddi| d d d            n# 1 swxY w Y   d S  t          ||           dddi|}	 t          ||           dddi|}
| dvrU|r|
                    |          }
n=t	          j        |
          }d|
|<   |
                    |          }
t          j        |
|<   t          j        |	|
           d S )NrD  rf   r   r<   r   r  )r   r   r   r   r   r   r   r   rP  )ro  r   boolean)r   r   r   r   r   r   r   r   Floatr  )r   r   r  r;   )rB   r   rA   r  )r  r  zencountered an NA valuerD   r:   r  r+   )r   r   r   r  r&   r'   
startswithrP   rQ   rR   rI   r   r  rJ   rN   )r   r;   r  any_numeric_ea_dtypeusing_nan_is_narX   expected_dfr  r  rY   r\   masks               r    test_numeric_ea_axis_1r  Z  s   : 
,@AAAArua(0DEEE	
 	

 
B %%%sBFC(	
 	
 K %%% 	>	!	!"	 	 	
 	
 #--g66	
 #-F555!x+++'{ f 444]:-FGGG 	2 	2GB11Q1&111	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2]:-FGGG 	; 	;(GK((::a:6:::	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; WR  22a2622F+w{F++===f==H))) 	#~66HH8H%%DHTN~66HUHTN68,,,,,s$   C))C-0C-D44D8;D8c                     t          g dt          g dt          j                              d          } |                     dd          }t          g dd	          }t          j        ||           |                     dd
          }t          dddt          j        gd	          }t          j        ||           d S )Nr   )r<   r1   re   Nrf   r  r<   Tr9   )r   r         @r   r  Fr   r   r  )r   r   r   r  r   rJ   rN   r  r  s      r    test_mean_nullable_int_axis_1r    s    	llr}!O!O!OPP
 
B WW!DW))F***)<<<H68,,,WW!EW**FsCbe,I>>>H68,,,,,r"   r   )TTFr-   r.   N)@datetimer   decimalr   r   dateutil.tzr   numpyr&   rP   pandas.compatr   r   pandas.compat.numpyr   pandas.util._test_decoratorsutil_test_decoratorsrQ  pandasr   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   pandas._testing_testingrJ   pandas.corer   r   r  r  r,   rb   fixturer~   r   r   rU  r  r  r  r  rN  rO  r  rB  r  r  r  r  r  r  r+   r"   r    <module>r     s               				                   / . . . . . ) ) ) ) ) ) ) ) )                                                 
 .-//F4FSt8 ((**6$h    H 		k1 k1 k1 k1\   (   "A/ A/ A/ A/ A/ A/ A/ A/H*P1 P1 P1 P1 P1 P1 P1 P1fN, N, N, N, N, N, N, N,b~ ~ ~ ~ ~ ~ ~ ~B- - -8- - - )<)<)<==E5>22- - 32 >=- ii&=&=rv%FGG  HG
8 
8 
8 #S#S#STT$779i"899" " :9 87 UT"$    ,# #- ,#8    0 q!f--8- 8- .-1 28-v- - - - -r"   