
    Pi                     |   d dl Z d dlZd dlmZ d dlZd dlZd dlm	Z	 d dl
mZ d dlmZ d dlZd dlmZmZmZmZmZmZ d dlmZ d dlmZ d dlmZ ej                            d	g d
          d             Z ej                            dg dg dg dg dg dg dg dg dg dg dg dg dej!        ej!        ej!        gg          d             Z"d Z#d Z$ej                            dg dg dej%        ej%        ej%        gdej%        dgdej%        dgdej%        dgg          d             Z&ej                            d d!d" ej'        dge(#           ej'        ej%        gd$#          fd%d! ej'        ej%        gd$#           ej'        dge(#          fd%d% ej'        ej%        gd$#           ej'        ej%        gd$#          fd"d$ ej'        ej%        gd$#           ej'        ej%        gd$#          fg          d&             Z)ej                            d	g d'          d(             Z*ej                            d)d*ej%        ej!        gdfd*ej%        d+ej!        gdfd,ej%        ej+        gdfd,ej%        dej+        gdfg          d-             Z,d. Z-d/ Z.ej                            d0d1d2g          d3             Z/ej                            d0d1d2g          d4             Z0ej                            d5d1d d6gd+d7gd+d6gd8fd2d+d7gd d6gd d7gd8fg          ej                            d9ddg          d:                         Z1ej                            d ed;           ed<          fd=g          ej                            d>g d?          d@                         Z2ej                            d0dAdBg          dC             Z3dD Z4dE Z5ej                            dFd d+ej!        d7dGdHdIdJdKdLg
dMdMfd d+ej%        d7dGdHdIdJdKdLg
d"d"fd d+ej%        d7dGdHdIdJdKdLg
d%d"fd d+ej!        d7dGdHdIdJdKdLg
dNdNf ej6        dOej+        dPdQdRdSdTdUdVdWg
          dXdXfg          dY             Z7ej                            dZd d+ej!        d7dGdHdIdJdKdLg
dMfd d+ej%        d7dGdHdIdJdKdLg
d"fd d+ej%        d7dGdHdIdJdKdLg
d%fd d+ej!        d7dGdHdIdJdKdLg
dNfg          d[             Z8d\ Z9ej                            d]g d^d d+d7ej!        dGdHdIdJd_dLg
dMdMfd^d d`d7dGdHej%        dIdJdKdLg
d"d"fd^d d+d7dadHdIdJd_ej%        dLg
d%d%fd^ej!        gdbz  dMdMfd^ej%        gdbz  d"d"fd^ej%        gdbz  d%d%fdcd d`d7dGej!        dHdIdJdKdLg
dMdMfdcd d+d7dadHdIdJd_dLej%        g
d"d"fdcd d`d7dGdHdddJej%        dKdLg
d%d"fdcej!        gdbz  dMdMfdcej%        gdbz  d"d"fdcej%        gdbz  d%d"fded d+d7dadHdIdJd_ej!        dLg
dMdMfded d`d7dGdHdddJej%        dKdLg
d"d"fded d+d7dadHdIdJd_dLej%        g
d%d"fdeej!        gdbz  dMdMfdeej%        gdbz  d"d"fdeej%        gdbz  d%d"fdfd d`d7dGdHdddJej!        dKdLg
dMdMfdfd d+d7dadHdIdJd_ej%        dLg
d"d"fdfd d`d7dGdHdddJdKdLej%        g
d%d"fdfej!        gdbz  dMdMfdfej%        gdbz  d"d"fdfej%        gdbz  d%d"fdgd d`d7dGdHdddJej!        dKdLg
dMdMfdgd d+d7dadHdIdJd_ej%        dLg
d"d"fdgd d`d7dGdHdddJdKdLej%        g
d%d%fdgd d+ej!        d7dGdHdIdJdKdLg
dNdNfdg ej6        dOej+        dPdQdRdSdTdUdVdWg
          dXdXfdgej!        gdbz  dMdMfdgej%        gdbz  d"d"fdgej%        gdbz  d%d%fdhd d`d7dGdHdddJej!        dKdLg
dMdMfdhd d+d7dadHdIdJd_ej%        dLg
d"d"fdhd d`d7dGdHdddJdKdLej%        g
d%d%fdhd d+ej!        d7dGdHdIdJdKdLg
dNdNfdh ej6        dOej+        dPdQdRdSdTdUdVdWg
          dXdXfdhej!        gdbz  dMdMfdhej%        gdbz  d"d"fdhej%        gdbz  d%d%fdid d`d7dGdHdddJej!        dKdLg
dMdMfdid d+d7dadHdIdJd_ej%        dLg
d"d"fdid d`d7dGdHdddJdKdLej%        g
d%d"fdid d+ej!        d7dGdHdIdJdKdLg
dNdNfdi ej6        dOej+        dPdQdRdSdTdUdVdWg
          dXdXfdiej!        gdbz  dMdMfdiej%        gdbz  d"d"fdiej%        gdbz  d%d"f          dj             Z:dk Z;dl Z<dm Z=dn Z>do Z?dp Z@dq ZAej                            drdgdhg          ds             ZBej                            drdgdhg          dt             ZCdu ZDej                            drdgdhg          dreEfdv            ZFej                            d	g dw          dx             ZGdy ZHej                            drg dz          d{             ZIej                            drdgdhg          d|             ZJej                            d}d d+g          ej                            d~ddg          d                         ZKd ZLej        jM        ej                            dddg          ej                            ddgddgg          d                                     ZNd ZOd ZPd ZQd ZRej                            dg d ed          ej+         ed          gd ed+g ejS        dgd          d          fg d ejT        dd+d+          ej+         ejT        dd+d+          gd ed+g ejS        dgd          d          fg d ejT        dd+d+          ej+         ejT        dd+d+          ej+         ejT        dd+d+          gd ed6d6g ejS        ddgd          d          fg d ejT        dd+d+          ej+         ejT        dd+d+          ej+         ejT        dd+d+          gd ed6d+g ejS        ddgd          d          fg          d             ZUd ZVd ZWd ZXd ZYej                            d}d dbg          d             ZZd Z[d Z\ej                            d	g d          ej                            ddAdd+d+dd6d7dgifdBdd+d6dd6dGdgifdgdd+d+dd6d7dgifdhdd+d6dd6dGdgifdd+d6dd6d6dgddfg          d                         Z]d Z^ej                            ddej_        fdiej`        fdeeja        fdcejb        fdejc        fd^ejd        fdgeje        fdhejf        fdAd fdBd fdejg        f ejh        dfe^ eji        d                    g          d             Zjej                            dg dd+ej%        d6d+ej%        d6d+ej%        d6g	dg dg ddg          ej                            dg d          d                         Zkej                            dg d          d             Zld Zmd Znd ZodS )    N)ascii_lowercase)iNaT)pandas_dtype)na_value_for_dtype)	DataFrame
MultiIndexSeries	Timestamp
date_rangeisna)get_groupby_method_args)_test_decoratorsdtype)int64int32float64float32c                 f   t          t          j        d          dz  t          j        d          |           }t          j        d          }t          j                            d                              |           |                    |          }|                    d d          }|D ]\  }}t          |          dk    sJ |	                    t          j
                  }|d         dk    sJ |                    t          j
                  }t          j        ||           t          j        ||
                                           |                                }|                    t          j                  }| d	k    r|                    d	          }t          j        ||           |                    d
           }|                    d           }	|	d         dk    sJ t          j        |	|           |                    |          }
|
	                    t          j
                  }t          j        ||d           |	                    t          j
        t          j        g          }d}t'          j        t*          j        j        |          5  |	                    t          j
        t          j        d           d d d            n# 1 swxY w Y   d}t'          j        t0          |          5  |	                    d            d d d            d S # 1 swxY w Y   d S )N	      indexr      c                     | dz  S )Nr    xs    x/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/pandas/tests/groupby/test_reductions.py<lambda>z)test_basic_aggregations.<locals>.<lambda>#   s
    Q!V     F)
group_keys   r   c                 0    | |                                  z  S Nsumr   s    r   r   z)test_basic_aggregations.<locals>.<lambda>5   s    q15577{ r    c                 0    | |                                  z  S r$   r%   r   s    r   r   z)test_basic_aggregations.<locals>.<lambda>6   s    a!%%''k r          )check_index_typeznested renamer is not supportedmatch)onetwozMust produce aggregated valuec                     | dz  S )Nr   r   r   s    r   r   z)test_basic_aggregations.<locals>.<lambda>I   s
    AE r    )r	   nparangerandomdefault_rngshufflereindexgroupbylen	aggregatemeanaggtmassert_series_equalr&   astypeapply	transformstdpytestraisespderrorsSpecificationError	Exception)r   datar   groupedkvaggedexpectedresulttransformedvalue_groupedmsgs               r   test_basic_aggregationsrQ      s>   ")A,,!#29Q<<uEEEDIaLLEI!$$U+++<<Dll++l>>G  11vv{{{{{bg&&E8q===={{27##H5(+++5',,..111[[]]F{{26""H??7++68,,,}}2233H##$9$9::Kq>R;111LL&&M$$RW--F655AAAA rw/00E
,C	ry33	?	?	? ; ;"'"&99:::; ; ; ; ; ; ; ; ; ; ; ; ; ; ; *C	y	,	,	, + +//***+ + + + + + + + + + + + + + + + + +s$   !-KK!KL&&L*-L*vals)foobarbaz)rS    rV   )rV   rV   rV   r"   r   r   )r"   r   r   r   r   r   )      ?       @      @)rY           r\   )r\   r\   r\   )TTT)TFF)FFFc                    t          dgdz  dgdz  z   |dz  d          } t          t          |          |          }| r$t          t	          |                    r|dk    rd}t          |gdz  dgt          j        ddgd	
                    } t          |                    d	          |          |           }t          j	        ||           d S )Nar   br   )keyvalanyFra   r`   namecolumnsr   skipna)
r   getattrbuiltinsallr   rC   Indexr6   r;   assert_frame_equal)rh   all_boolean_reductionsrR   dfexprL   rM   s          r   test_groupby_bool_aggsrq   L   s    & 
C519uqy0BB	C	CB 4'(2
3
3D
9
9C  #d4jj// &<&E&E		E7"(C:E*J*J*J  H @WRZZ&&(>??vNNNF&(+++++r    c                  2   t          g ddt          j        dgdt          j        dggg d          } t          ddgd	dggd
dgddg          }d|j        _        |                     d                                          }t          j        ||           d S )N)r"   r   rS   r"   rT   r   rU   ABCrf   TFru   rv   re   rt   )	r   r0   nanr   rd   r6   rb   r;   rm   ro   rL   rM   s      r   test_anyrz   o   s    		BFE*Q,>?
 
 
B 
t}%Sz!Q  H HNZZ__  ""F&(+++++r    c                    t          ddggddg          }|                    dg          } t          ||                       }|                    t	          j        dg                    }t          j        ||           d S )NTr^   rw   r   )r   r6   ri   set_axisr0   arrayr;   rm   )rn   ro   grp_byrM   rL   s        r    test_bool_aggs_dup_column_labelsr   |   s{    	T4L>C:	6	6	6BZZ__F4WV34466F{{28QC==))H&(+++++r    rG   FTc                 (   t          |d          } t          ||           |          }t          |t          j        dg          d          }|                    g d                              | |          }t          j        ||           d S )Nbooleanr   rg   r   r   rX   )r	   ri   r0   r}   r6   r:   r;   r<   )rn   rh   rG   serexpected_datarL   rM   s          r   test_masked_kleene_logicr      s     Y
'
'
'C 9GC!788GGGMm28QC==	JJJH[[##''(>v'NNF68,,,,,r    zdtype1,dtype2,exp_col1,exp_col2floatFloat64r   r   Int64c                    |                      d          rdt          j        gndt          j        g}|                     d          rdt          j        gndt          j        g}t          t          j        ||           t          j        ||          d          }|                    ddg                              dd          }t          ||dt          j        dg          	          }t          j
        ||           d S )
NfrY   r   )col1col2r"   rk   Frg   r   )
startswithr0   rx   rC   NAr   r}   r6   r:   r;   rm   )	dtype1dtype2exp_col1exp_col2data1data2ro   rM   rL   s	            r   test_masked_mixed_typesr      s    > $..s33ES"&MM#ruE#..s33ES"&MM#ruE	%v...f8U8U8UVV
 
B ZZA##E%#88F(H==RXqc]]SSSH&(+++++r    )r   r   r   c                 *    |t           j        dg|          }d}|s| dk    rt           j        } ||gt          j        dg          d          }|                    ddg                              | |          }t          j        ||           d S )Nr"   r   Trk   r   r   rg   )rC   r   r0   r}   r6   r:   r;   assert_equal)rn   r   rh   frame_or_seriesobjexpected_resrL   rM   s           r   test_masked_bool_aggs_skipnar      s    
 /25!*E
2
2
2CL ,55u~RXqc]])TTTH[[!Q  $$%;F$KKFOFH%%%%%r    zbool_agg_func,data,expected_resrb   r"   rk   c                 
    ||t                     }|                    dgt          |          z                                |           } ||gt	          j        dg          d          }t          j        ||           d S )Nr   r"   boolr   )objectr6   r7   r:   r0   r}   r;   r   )bool_agg_funcrG   r   r   r   rM   rL   s          r   test_object_type_missing_valsr      s}     /$f
-
-
-C[[!s4yy))--m<<F~RXqc]]&QQQHOFH%%%%%r    c                    t          t          j        gt                    }t	          j        t          d          5  |                    dg                              | d           d d d            d S # 1 swxY w Y   d S )Nr   z boolean value of NA is ambiguousr+   r"   Frg   )	r	   rC   r   r   rA   rB   	TypeErrorr6   r:   )rn   r   s     r   'test_object_NA_raises_with_skipna_falser      s    
"%
'
'
'C	y(J	K	K	K C CQC3EBBBC C C C C C C C C C C C C C C C C Cs   ,A66A:=A:c                     | t           u rddginddi} | di |dt          i} t          |                    |j                  |                      } | di |dt
          i}t          j        ||           d S )Nrf   r^   rd   r   r   )r   r   ri   r6   r   r   r;   r   )r   rn   kwargsr   rM   rL   s         r   
test_emptyr      s    #2i#?#?i#fc]F
/
1
1F
1
1&
1
1
1CDWS[[++-CDDFFF4444t444HOFH%%%%%r    howidxminidxmaxc                    |t           u s	|t          u rd S d|v rt          j        nt          j        } ||          j        } ||          j        }t          g d||||gd|          }|                    d          } t          ||                       }t          dddgit          j        dd	gd|
                    }t          j        ||           d S )Nint)r   r"   r"   r   r^   r_   r   r^   r_   r"   r   r   rd   r   r   )r   r   r0   iinfofinfominmaxr   r6   ri   rC   rl   r;   rm   )	r   any_real_numpy_dtypeinfo	min_value	max_valuero   gbrM   rL   s	            r   test_idxmin_idxmax_extremesr      s    s""&:e&C&C 444288"(D)**.I)**.I	ll)Y	9!MNN"
 
 
B 
CBWRF	q!fRXq!f3>RSSS  H &(+++++r    c                    t          j        |          j        }t          j        |          j        }t	          t          t          j        t          dd          d          d          t          t           j        |t           j        ||t           j        |t           j        g|          d          }|	                    d          }| sT| d	}t          j        t          |
          5   t          ||          |            d d d            n# 1 swxY w Y   d S  t          ||          |           }t	          dg dit          j        t          dd          dd                    }	t!          j        ||	           d S )Nr"      r   )repeatsintpr   r   r^   z with skipna=Falser+   rg   r_   )r"   r         r   r   )r0   r   r   r   r   r	   repeatrangerx   r6   rA   rB   
ValueErrorri   rC   rl   r;   rm   )
rh   r   float_numpy_dtyper   r   ro   r   rP   rM   rL   s
             r   "test_idxmin_idxmax_extremes_skipnar     s    *++/I*++/I		%1++q999HHHFFFF	 (  	
 	

 
B$ 
CB (((]:S111 	, 	,GBF++++	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	,WRV,,,F	lll28E!QKKc#P#P#P  H &(+++++s   ,DDDzfunc, valuesr   r   )c_intc_floatc_datenumeric_onlyc                 .   t          g dg dg dg dd          }t          j        |d                   |d<   |d         j                            d          |d<   |d         |d         j        d	         z
  |d
<   |d         j                            d          |d<   |d                             d          |d<   |d                             d          |d<    t          |	                    d          |           |          }t          |t          j
        ddgd                    }|r|                    dg          }n!|d         |d<   |d         |d
<   |d         |d<   |d         |d<   |d         |d<   t          j        ||           d S )Nrt   rt   ru   ru   r"   r   r   r   )gGz@g=
ףp=@gRQ @g?)2019201820162017)rd   r   r   r   r   z
US/Pacific	c_date_tzr   c_timedeltaWc_periodr   r   	c_Integerr   r   
c_Floatingrd   r   rt   ru   rc   r   rw   )r   rC   to_datetimedttz_localizeiloc	to_periodr=   ri   r6   rl   dropr;   rm   )funcvaluesr   ro   rM   rL   s         r   $test_idxmin_idxmax_returns_int_typesr   2  s    
(((!\\///666		
 	

 
B >"X,//BxLlo11,??B{O8r(|'8';;B}\_..s33BzNk((11B{O)}++I66B|.WRZZ''..LIIIFrxc
'H'H'HIIIH 2==(=44 ( 2"*8"4'1$W-H[%i0H\&(+++++r    z2011-01-15 12:50:28.502376z2011-01-20 12:50:28.593448)l    m;-Ll    m;-Lmethod)countr   r   firstlastc                    t          ddg|d          }|                    d          } t          ||                       }| dk    rd}n<| dk    r	|d         }n-| dk    r	|d         }n t          |d	         |                       }t          d	|git          j        dgd
                    }t          j        ||           d S )Nr"   r   r^   r   r   r   r   r   r_   rc   r   )r   r6   ri   rC   rl   r;   rm   )r   rG   ro   rH   rM   expected_valuerL   s          r   2test_groupby_non_arithmetic_agg_int_like_precisionr   Z  s     
!Qd++	,	,BjjooG%WWf%%''F	7		a	6		a1C&1133#/0!38O8O8OPPPH&(+++++r    r   r   c           
         t          t          |                     }t          g d|d|d||g|d|d||gd|           }|                    d|          }t	          ||          } ||          }g d	g d
g dg dd||f         }	|j        |	                             d          }
|r|
                                }
t          j	        ||
           d S )N)r   r"   r"   r   r   r   r[         @r^   r_   cr   r^   )sortrg   )r   r"   r   )r   r"   r   )r   r"   r   )r   r   r   ))r   T)r   F)r   T)r   F)
r   r   r   r6   ri   r   	set_index
sort_indexr;   rm   )any_real_nullable_dtyper   rh   r   na_valuero   r   r   rM   ilocsrL   s              r   test_first_last_skipnar   x  s%    ",/F"G"GHHH	### C3(CC3(C	
 	
 &	
 	
 	
B 
Cd	#	#BRFV6"""F ##))!		"	 
 
6kE wu~'',,H )&&((&(+++++r    c                      t          g dg dd          } |                     d          d                                         d         dk    sJ d S )N)rt   rt   rt   rt   rt   )ij  i  io  i`  l    @~ )userconnectionsr   r   rt   l    ,fL )r   r6   r9   )ro   s    r   test_groupby_mean_no_overflowr     si    	---III	
 	

 
B ::fm,1133C8<OOOOOOOr    c                  n   t          t          j        t          d                    ddgdz  d          } |                     d          d                                         }t          t          j        ddg          dt          j        ddgd	          
          }t          j	        ||           d S )N
   rt   ru   r   )timecatr   r   r   rc   rd   r   )
r   rC   to_timedeltar   r6   r9   r	   rl   r;   r<   ro   rM   rL   s      r   test_mean_on_timedeltar     s    	BOE"II66SzA~NN	O	OBZZv&++--F
AfBHc3Ze4T4T4T  H 68,,,,,r    zvalues, dtype, result_dtyper   r   r   r(      r   r   ztimedelta64[ns]
2019-05-09z
2019-05-11z
2019-05-12z
2019-05-13z
2019-05-14z
2019-05-15z
2019-05-16z
2019-05-17z
2019-05-18zdatetime64[ns]c                 p   t          | ddgdz  d                              d|i          }|                    d          d                             fd                              |          }|                    d          d                                       }t          j        ||           d S )	Nrt   ru   r   ra   r   ra   r   c                 0    |                                S Nrg   )r9   r   rh   s    r   r   z"test_mean_skipna.<locals>.<lambda>  s    v.. r    rg   )r   r=   r6   r>   r9   r;   r<   )r   r   result_dtyperh   ro   rL   rM   s      `   r   test_mean_skipnar    s    : 
:>	
 	

 

 feU^  	

5% 	....	/	/			 
 ZZu%**&*99F68,,,,,r    zvalues, dtypec                 p   t          | ddgdz  d                              d|i          }|                    d          d                             fd                              |          }|                    d          d                                       }t          j        ||           d S )	Nrt   ru   r   r   ra   r   c                 0    |                                S r  r%   r  s    r   r   z!test_sum_skipna.<locals>.<lambda>  s    f1E1E r    rg   )r   r=   r6   r>   r&   r;   r<   )r   r   rh   ro   rL   rM   s     `   r   test_sum_skipnar    s     
:>	
 	

 

 feU^  	

5% &&'E'E'E'EFFMMeTT  ZZu%)))88F68,,,,,r    c                 :   t          ddt          j        ddddddd	g
d
dgdz  d                              dt          i          }| rCt          ddgt          j        d
dgd          d                              t                    }nLt          t          j        dgt          j        d
dgd          d                              t                    }|                    d          d         	                    |           }t          j        ||           d S )Nr^   r_   der   ghijrt   ru   r   r   ra   aegibdfhjr   rc   r   rd   rg   )r   r0   rx   r=   r   r	   rC   rl   r6   r&   r;   r<   )rh   ro   rL   rM   s       r   test_sum_skipna_objectr    s*   	bfc3S#sCH:>	
 	

 

 feV_   WRXsCju%E%E%EE
 
 

&.. 	 VWRXsCju%E%E%EE
 
 

&.. 	 ZZu%)))88F68,,,,,r    z!func, values, dtype, result_dtypeprodir   varir@   semr   r   medianc                 |    t          |ddgdz  d                              d|i          }|                    d          d                              fd                              |          } t	          |                    d          d                              }t          j        ||           d S )	Nrt   ru   r   r   ra   r   c                 8     t          |                     S r  ri   )r   r   rh   s    r   r   z'test_multifunc_skipna.<locals>.<lambda>  s    )D))888 r    rg   )r   r=   r6   r>   ri   r;   r<   )r   r   r   r  rh   ro   rL   rM   s   `   `   r   test_multifunc_skipnar    s    x 
:>	
 	

 

 feU^  	

5% 	88888	9	9			 
 5WRZZ&&u-t44FCCCF68,,,,,r    c                     t           j                            d                              d          } t           j        | d d d<   t          |           }t           j                            d                              ddd                              t                    }t           j        |d d d<   |	                    |          
                                }|	                    |                              t           j                  }t          j        ||           t          t           j                            d                              d                    }|	                    |                              t           j
                  }|	                    |          
                                }t          j        ||           d S )Nr     r   2   size   )r  r   )r0   r2   r3   standard_normalrx   r   integersr=   r   r6   r  r:   	nanmedianr;   rm   )arrro   labelsrM   rp   rsxps          r   test_cython_medianr+    s]   
)


"
"
2
24
8
8CvC!H	3BY""1%%..q"4.@@GGNNF6F44R4LZZ&&((F
**V


 
 
.
.C&#&&&	29((++;;IFF	G	GB	F						*	*B	F			"	"	$	$B"b!!!!!r    c                    t          t          j                            d                              ddd                    }t          ddd          }t          j        |d         |          }|                    ||           	                                }|                    ||           
                    d           }t          j        ||           d S )	Nr   r   ,     7   r   observedc                 *    |                                  S r$   )r  r   s    r   r   z(test_median_empty_bins.<locals>.<lambda>  s     r    )r   r0   r2   r3   r%  r   rC   cutr6   r  r:   r;   rm   )r1  ro   grpsbinsrM   rL   s         r   test_median_empty_binsr6    s    	29((++44QC@@	A	ABB??D6"Q%DZZxZ007799Fzz$z22667K7KLLH&(+++++r    c                     t          g dg dddgz  d          } |                     d                                          }d|v sJ |                     d                              d	          }d|v sJ |                     d                                          }d|v sJ |                     d                              d	          }d|v sJ d S )
N)   r8     r9  r   r   mama)nniissr;  r=  Fr   )r   r6   r   r   )aarM   s     r   test_max_min_non_numericr?    s    	***,,,a6(lSS	T	TBZZ!!##F6>>>>ZZ!!u!55F6>>>>ZZ!!##F6>>>>ZZ!!u!55F6>>>>>>r    c                 D   t          g dg dg dd          }|                                 | rt          |j        j                  dk    snnJ |                    d          }|dg                                         }t          j        g d	d
          }t          dg di|          }t          j
        ||           |dg                                         }t          j        g d	d
          }t          dg di|          }t          j
        ||           d S )N)r"   r"   r   r   r   )r"   rS   r   rT   F)r^   r_   r   r
  r  rs   r   r   rt   rv   rW   rc   )r_   r
  r  r   )r^   r   r  )r   _consolidate_inplacer7   _mgrblocksr6   r   rC   rl   r;   rm   r   )using_infer_stringro   r   rM   eirL   s         r   $test_max_min_object_multiple_columnsrF    s9   
 
 ,,,***	
 	

 
B '9@3rw~!#####@	CBY]]__F	)))#	&	&	&B#/r:::H&(+++Y]]__F	)))#	&	&	&B#/r:::H&(+++++r    c                  N   t          j        t          g d          d          j        j        } t          t          j        dt          j        gg d| d          }|                    dd	          d
         	                                d
         }t          j        t          ddgd
          d          j        j        }t          j        ||           |                    d          d
         	                                }d|j        _        t          j        ||           d S )N)r   r   r   z%Y-%m-%d)format1)r   r"   r"   r   r_   Fas_indexr   r   rc   )rC   r   r	   r   dater   r0   rx   r6   r   r;   r<   r   rd   )datesro   rM   rL   s       r   test_min_date_with_nansrN    s   N999:::   
 
"&#rv.YYYUKK	L	LBZZeZ,,S15577<F~l+#666z    68,,,ZZ__S!%%''FHN68,,,,,r    c                  b   t          dt          g          } t          j        ddgt          j                  }|                     |          }|                    d          }t          ddit          j                  }t          j        ||d           |	                    d          }t          dt          it          j                  }t          j        ||d           |	                    d          }t          dt          j
        i          }t          j        ||d           d S )Nr"   r   r   	min_countTcheck_exactr   )r	   r   r0   r}   r   r6   r   r;   r<   r   rx   )r   r`   r   rM   rL   s        r   test_max_inatrT    s
   
!T

C
(Aq6
*
*
*C	S		BVVaV  Fq!fBH---H68>>>>VVaV  Fq$irx000H68>>>> VVaV  Fq"&k""H68>>>>>>r    c                  t   t          dt          dt          dz   g          } |                     g d          }|                    d          }t          t          j        t          j        t          dz   d          }|j                            t                    |_        t          j
        ||d           d S )Nr"   r   )r"   r   r   r   rP  rW   TrR  )r	   r   r6   r   r0   rx   r   r=   r   r;   r<   )r   r   rM   rL   s       r   test_max_inat_not_all_narV    s     !T1dQh'
(
(C	\\\	"	"BVVaV  F "&RVq99::H^**3//HN68>>>>>>r    r   c                 @   ddg}t          j        ddd          }t          ||d          } t          |                    d          d         |                       }t          j        ddgd	          }t          ||d
          }t          j        ||           d S )Nr"   r   2020Yperiodsfreqr   r^   r_   rc   r  )	rC   period_ranger   ri   r6   rl   r	   r;   r<   r   groupsr[  ro   rM   idxrL   s          r   $test_groupby_aggregate_period_columnra    s     VFofac:::G	g..	/	/B0WRZZ__S)40022F
(Aq6
$
$
$CgSs333H68,,,,,r    c                 6   ddg}t          j        ddd          }t          ||d          } t          |                    d          |                       }t          j        ddgd          }t          d	|i|
          }t          j        ||           d S )Nr"   r   rX  rY  rZ  r   r^   rc   r_   r   )rC   r]  r   ri   r6   rl   r;   rm   r^  s          r   #test_groupby_aggregate_period_framerc  "  s     VFofac:::G	g..	/	/B+WRZZ__d++--F
(Aq6
$
$
$C#ws333H&(+++++r    c                  L   t          g dt          d          t          j        gdz  d                              t
                    } |                     d                                          }t          ddgdd	gt          j        t          j        gd                              d                              t
                    }t          j
        ||           t          g dt          d          t          d          d                              t
                    } |                     d                                          }t          ddgdd	gd
dgd                              d                              t
                    }t          j
        ||           d S )Nr   abcdr   )r`   r   r   r`   rt   ru   r^   r   r   r   )r   listr0   rx   r=   r   r6   r   r   r;   rm   r   r   s      r   #test_aggregate_numeric_object_dtyperg  0  sv    
$$$d6llRVHqLQQ
 
fVnn  ZZ""$$F#Jc
RVRV<LMM	
 	
 
5			  &(+++ 
$$$d6llE!HHMM
 
fVnn  ZZ""$$F3*sCj1a&IIJJ	5			 
 &(+++++r    c                    t          dgd          j                                        }t          dg|d          }|                    d                              d| i          }t          ddgit          j        dgd          	          }|d                             |j	                  |d<   t          j        ||           d S )
Nr_   categoryr   i  rt   ru   rt   ru   rc   r   )r	   r   
as_orderedr   r6   r:   rC   rl   r=   r   r;   rm   )r   dsro   rM   rL   s        r   %test_aggregate_categorical_lost_indexrm  N  s     
Z	(	(	(	,	7	7	9	9B	$b))	*	*BZZ__  #t--F#uRXtf3-G-G-GHHHH SM((22HSM&(+++++r    )r   Int32r   Float32r   c                    | dk    rd}n| dk    rd}nd}t          ddg||dz   gd          }|d	                             |           |d	<   |                    d
          }|                                }|j        d d                             d
          }t          j        ||           |                                }|j        dd                              d
          }t          j        ||           |                    d          }t          d	t          j
        gi|j        |           }	t          j        ||	           |                    d          }
t          j        |
|	           t          g d|t          j
        |dz   gd          }|d	                             |           |d	<   |                    d
          }|                                }t          j        ||           |                                }t          j        ||           |                    d          }t          j        ||	           |                    d          }t          j        ||	           d S )Nr   l   .D3 r   r   r   r   r"   )idtsrr  rq  r   rP  r   )r   r   r   d   )r   r=   r6   r   r   r   r;   rm   r   rC   r   r   )r   rr  ro   r   rM   rL   res_maxexpected_maxresult2	expected2res_max2df2gb2result3res_max3result4res_max4s                    r   test_groupby_min_max_nullabler  \  s@    	)			1a&R!V55	6	6B$xu%%BtH	D		BVVXXFwrr{$$T**H&(+++ffhhG7122;((..L'<000ffqf!!G4"%/uMMMI'9---vvv""H(I... 999RQ,?@@
A
ACD	  ''CI
++d

CggiiG'8,,,wwyyH(L111ggg$$G'9---www%%H(I.....r    c            	      J   t          j        dgdz  ddg          } t          | t          j        t	          j        dt          j                            d          }|                    dd	          }|                                }t          j	        ddg| j
        d
          }t          dt          j        dt           j        gd          i|          }t          j        ||           |                                }d|j        d<   t          j        ||           d S )Nr   r   r"   )
categoriesr   rj  rt   Fr0  r   rd   ru   UInt64r   r   )r   r   )rC   Categoricalr   r}   r0   r1   uint64r6   r   CategoricalIndexr   r   r;   rm   r   r   )r   ro   r   resr`  rL   s         r   (test_min_max_nullable_uint64_empty_groupr    s    
.!rq!f
5
5
5C	28BIb	,J,J,J#K#KLL	M	MB	C%	(	(B
&&((C

q!fCIC
@
@
@C#rxBE
(CCCDCPPPH#x(((
&&((CHM$#x(((((r    )r   r   r   r   c                    t          t          j        dgt          d          d          t          j        dgddgd          dd          } t	          |                    d	d
          |                       }t          j        ddgd	d          }t          t          j        dd gddgd          dd gd|          }t          j        ||           d S )Nrt   ABT)r  orderedr"   r   g?)r   r   valuer   Fr0  ru   )rG   rd   r  )r   r  r   )	r   rC   r  rf  ri   r6   r  r;   rm   )r   ro   rM   r`  rL   s        r    test_groupby_min_max_categoricalr    s     
NC5T$ZZNNNNA3Aq64HHH	
 	

 
B ?WRZZZ77>>@@F

C:FD
I
I
ICNAt9!QNNN4[	
 	
   H &(+++++r    c           	      "   |}t          dgddd|          j        d d         } t          |                    d          |                       }t          ddg|t	          j        g |d                    }t          j        ||           d S )	Nr^   r   r   r   r_   r   r  )rf   r   r   )r   r   ri   r6   rC   rl   r;   rm   )r   string_dtype_no_objectr   ro   rM   rL   s         r   test_min_empty_string_dtyper    s     #E	#Ss335	A	A	A	Frr	JB+WRZZ__d++--Fc
%rx%c/R/R/R  H &(+++++r    rQ  test_seriesc                 $   |dk    rd S | }|dv rd|i}n|dv rd|i}n|dv ri }n||d}|t           j        }}|dv rd	}|d
k    r| nd}nW|dv r6|r'|dk    r!|j        dk    r|j        t           j        u rd}nd}|dk    rdnd}n|r|dk    rt           j        }n|dk    rd}t	          dgt           j        gd|          }	|r|	d         n|	}
t          ||
          }|
                    |	d                   }t          ||          }|dv rFd| d| d}t          j	        t          |          5   ||i | d d d            n# 1 swxY w Y   d S |dv rJ|r| d }n| d!}t          j	        t          |          5   ||i | d d d            n# 1 swxY w Y   d S  ||i |}t          j        dgd|"          }|s|dk    r |s|dk    rd nd}t          ||||#          }nt	          d|i||$          }t          j        ||           d S )%Ncorrwith)rb   rk   r   r   r9   r  r@   r  rh   )kurtrQ  )r   nuniquequantiler  r"  )rh   rQ  )rk   rb   r   rb   T)r   r  r"  r"  pyarrowr   r   r"   r   r&   rV   r   r   r   r_   r^   )	r9   r  r  r  r  r  skewr@   r  zdtype 'z' does not support operation ''r+   )r   r   z+ with skipna=True encountered all NA valuesz+ with skipna=False encountered an NA value.r   )r   r   rd   r   )rC   r   storager   r   r   r6   ri   rA   rB   r   r   rl   r	   r;   r   )r  reduction_funcrh   rQ  r  r   r   expected_dtyper   ro   r   argsr   r   rP   rM   r   rd   rL   s                      r   test_string_dtype_all_nar    s    ##"E 	 	 	 F#	8	#	#y)	J	J	J";;%*BENN'''5'>'>VD	7	7	7 	%&((**"%''$NN$N,66A y1}}	5	 	 	#beW--U	;	;	;B 
("S''bC">377D	RW		BR((F 
 
 
 ONN^NNN]9C000 	$ 	$FD#F###	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$	/	/	/ 	Q#PPPCC#PPPC]:S111 	$ 	$FD#F###	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$VT$V$$FHcUE222E Wn..&L>V+C+Ctt.^RVWWWc>2%~VVVOFH%%%%%s$   /	EEE=	FFFc            	         t          g dg dt          t          j        t          j        dg          g dd          } |                     d          }|dg                                         }|d                                                                         }t          j        ||           |d         	                                
                                rJ d S )N)z-04-23z-05-06z-05-07)z2013-04-23 00:00:00z2013-05-06 00:00:00z2013-05-07 00:00:00OE)zlog080001.logzlog.logxlsx)z
Unnamed: 0DateappFiler  r  )r   r	   r0   rx   r6   r   to_framer;   rm   r   rb   )ro   r   rr  s       r   test_max_nan_bugr    s    	888  
 26264011888		
 		

 
B 
F		B
F8A
6
!!##A!Qy~~##%%%%%%%r    with_nankeysjoejimc           	      >   d}d}t          dd          }t          t          j                            d                              t          t                    |          t          j                            d                              ||          t          j                            d                              d||          d          }|rg|	                    dt          i          }d |j        d	d d
df<   d |j        dd ddf<   d |j        dd ddf<   d |j        dd ddf<   d |j        dd ddf<   |                                }	|                    |||           }
|
d                             |          }|                    |||           }
|
d                             t           j        |          }|s|                    d          }|rt%          j        ||d           nt%          j        ||d           t%          j        ||	           d S )Nrs  r   z
2015-08-23)r[  r   r   )r  r  julier  r"   r#  r  r   %   r  r(      r   r   )rK  r   dropnaT)r   F)check_names)r   r   r0   r2   r3   choicerf  r   r%  r=   r   loccopyr6   r  r>   r	   reset_indexr;   r<   rm   )r   r  rK  r  r  nmdaysro   original_dfgrleftrights                r   test_series_groupby_nuniquer  1  s    	A
AlB///D	9((++2243H3H!LL9((++224;;Y**1--66q!Q??	
 	

 
B  &YY'((#qu"ue|#qu"ue|!%qu"ug~!%qu"ug~!%qu"ug~''))K	D8$	7	7Bg;f--D	D8$	7	7BwKfnV<<E -!!t!,, >
tU>>>>>
dEu===="k*****r    c                     t          t          d          t          d          t          d          d          } t          t          d          g dg dd          }|                     dd	
                                          }t	          j        ||           t          d          |_        d|j        _        |                    d          }|                     d                                          }t	          j        ||           | 	                    dd i                              d                              d	          }t	          j        ||           t          dgdz  dgdz  dt          d                    }d|j        _        | 	                    dd i                              d                                          }t	          j        ||           d S )Nabbaccabxaccabbacxrs   abc)r"   r   r"   )r"   r"   r   rt   FrJ  rw   r   r  r"   r   )ru   rv   r   )
r   rf  r6   r  r;   rm   r   rd   r   replacery   s      r   test_nuniquer  V  s   	hd8nn4>>RR	S	SBtE{{KKLLHZZeZ,,4466F&(+++ %[[HNHN}}S}))HZZ__$$&&F&(+++ ZZd$$,,S11999GGF&(+++ sQwaS1W55T%[[IIIHHNZZd$$,,S1199;;F&(+++++r    c                  >   t          g dg dg dg dg dgg d          } |                     dd	g          d
                                         }t          j        | j        | j        g          }t          dgdz  d
|          }t          j	        ||           d S )N)rs  r"   Alice)   r   Bob)i,  r   Charlie)ipr   Dan)r.  r   Edith)amountrq  rd   rw   rq  r  rd   r"   r   r   )
r   r6   r  r   from_arraysrq  r  r	   r;   r<   )rG   rM   r   rL   s       r   test_nunique_with_objectr  o  s    OO	
 )((	 	 	D \\4*++F3;;==F"DGT[#9::EqcAgF%888H68,,,,,r    c                      t          dt                    } |                     d                                          }t          dd          }t	          j        ||           d S )Nrd   r   r   levelr   )r	   r   r6   r  r;   r<   )rG   rM   rL   s      r   test_nunique_with_empty_seriesr    s^    vV,,,D\\\""**,,F6111H68,,,,,r    c                     t          t          d          t          d          t          d          gg dd                              d          } |                     t	          j        d                    d	                                         }|                     t	          j        d                    d	                             t          j                  }t          j
        ||           d S )
Nz2016-06-28 09:35:35z2016-06-28 16:09:30z2016-06-28 16:46:28)rI  23)r   rG   r   r  )r\  rG   )r   r
   r   r6   rC   Grouperr  r>   r	   r;   r<   testrM   rL   s      r   test_nunique_with_timegrouperr    s     /00/00/00
 $OO	
 	
	 	 i 	 \\"*#...//7??AAF||BJC00011&9??OOH68,,,,,r    zkey, data, dropna, expected)r   r   r   z
2019-01-01r   r`   rc   r  i  )r   r   r   yr  r  )r   r   r   r   r  c                     t          | |d          }|                    dg          d                             |          }t          j        ||           d S )N)r`   rG   r`   rG   r  )r   r6   r  r;   r<   )r`   rG   r  rL   ro   rM   s         r   test_nunique_with_NaTr    s\    V 
3--	.	.BZZ  (000??F68,,,,,r    c                  (   t          g dt          j        dgd                    } |                     g d                                          }t          dgt          j        dg          | j        	          }t          j	        ||           d S )
N)r"   r   r   rt   level_0rc   rw   rX   r   r   )r   rf   )
r   rC   rl   r6   r  r0   r}   rf   r;   rm   r  s      r   )test_nunique_preserves_column_level_namesr    s    YYY#Y(G(G(GHHHD\\)))$$,,..F!BHaSMM4<HHHH&(+++++r    c                      t          t          dd          dg          } |                     g d          d                             d          }t	          g dd          }t          j        ||           d S )	Nz
2008-12-31z
2009-01-02rL  rw   )r   r   r"   r  )r   r   r"   rc   )r   r   r6   r?   r	   r;   r<   r   s      r   $test_nunique_transform_with_datetimer    sw    	:lL99F8	L	L	LBZZ			""6*44Y??Fiiif---H68,,,,,r    c                 @   t          dg                              d          }|d d         }|                    ||           }|                                }| rt          g |d d         d          }nt          dg|d          }t	          j        ||           d S )Nr"   ri  r   r0  r   r   )r	   r=   r6   r  r;   r<   )r1  r   r   r   rM   rL   s         r   test_empty_categoricalr    s    
!++

Z
(
(C
bqb'C	S8	,	,BZZ\\F 9"CG7;;;1#S88868,,,,,r    c                     t          ddt          j        dg          } |                     g d          }|                    t
          j                  }|                    t
          j                  }t          ddt          j        gt          j        g d                    }t          j
        ||           t          j
        ||           d S )NrY   rZ   r[   )r   r"   r   r   r   r"   r   r   )r	   r0   rx   r6   r:   rj   r&   r>   r}   r;   r<   )srH   rM   rv  rL   s        r   test_intercept_builtin_sumr    s    S"&#&''Aii%%G [[&&FmmHL))GsC(0C0CDDDH68,,,7H-----r    c           	      R   d}d}t           j        }t          j        |||||||gd          }t	          g d|d          }|                    d                              |           }| d	k    rVt	          d
t          j        g dd          it          j        g dd                    }t          j	        ||           d S t	          d
t          j        t          j
        gdz  d          it          j        g dd                    }t          j	        ||           d S )NTFr   r   )r"   r"   r   r   r   r   r"   rj  rt   rP  r   ru   )r   r   r   r   rW   rc   r   r   )r0   rx   rC   r}   r   r6   r&   rl   r;   rm   r   )rQ  r_   r^   nadfgro   rM   rL   s           r   !test_groupby_sum_mincount_booleanr    s?   AA	B
(Aq"b!Q*)
<
<
<C	...S99	:	:BZZ__  9 55FA~~"(999G4445(9993///
 
 
 	fh/////"(BE7Q;g6667(9993///
 
 
 	fh/////r    c                     t          g dg dg ddd          } |                     d          }t          j        g ddd          }|d                             d	          }t          t          j        gd
z  d|d          }t          j        ||           |                    d	          }t          t          j        gd
z  t          j        gd
z  dd|          }t          j	        ||           d S )Nr  r   r   r   r^   r   r_   r   rP  r   )r   r   rd   )r_   r   )r   r   )
r   r6   rC   rl   r&   r	   r   r;   r<   rm   )ro   rH   r`  rM   rL   s        r   0test_groupby_sum_below_mincount_nullable_integerr    s    	CC7	S	S	SBjjooG
(9993g
6
6
6CS\**Frugk#FFFH68,,,[[1[%%Fw{"%1==WTWXXXH&(+++++r    c                     t          g dt          j        d          t          j        d          t          j        d          t          j        gd          } t          j        d                              d          }|                     d	          }|                                }t          d
||git          j        ddgd	                    }t          j	        ||           |d
                                         }t          j
        ||d
                    |d
                             d          }t          |t          j        gdd
|j                  }t          j
        ||           d S )N)r"   r"   r   r   1D2D3Dr   r   )r  usr^   r_   r"   r   rc   r   rP  zm8[us])r   rd   r   )r   rC   	TimedeltaNaTas_unitr6   r&   rl   r;   rm   r<   r	   r   )ro   td3r   r  rL   s        r   #test_groupby_sum_timedelta_with_natr    sC   	,t$$bl4&8&8",t:L:LbfU	
 	

 
B ,A



&
&t
,
,C	CB
&&((C#Sz*"(Aq62L2L2LMMMH#x(((
S'++--C3...
S'+++
"
"CsBFm8#X^TTTH3)))))r    )int8int16r   r   r   r   r  zmethod,dataro   r   r   r   )ro   out_typec                    t          ddddddddddddg          }|j                            |           |d<   d|vrg |d<   d|v r	|d         }n| }|d	         }t          |          }|j                            |          |d<   |                    d
d           |                    d
          } t          ||          |d          }t          j        ||           d S )Nr"   r   r   r   r   r_   r  r  ro   r^   T)inplace)r   r_   r=   r   r6   ri   r;   rm   )	r   r   rG   ro   r  rp   df_outgrpdts	            r   %test_groupby_non_arithmetic_agg_typesr  3  s    
q		++11-=-=QQ?O?OP
 
B dkk%  BsGTVT
#
t*Cs^^F(//(++F3K
S$'''::c??DftF|,A!V$$$$$r    c                  "    ddl m}  || ddi|S )Nr   )r  ddofr"   )scipy.statsr  )r  r   r  s      r   	scipy_semr  [  s.    3'1''''r    z	op,targopr9   r&   c                     | j         d         S )Nr   r   r   s    r   r   r   l  s    AF1I r    c                     | j         d         S )Nr  r  r   s    r   r   r   m  s    16": r    scipy)marksc                    t          t          j                            d                              d                    }t          j                            d                              ddd                              t                    } t          |	                    |          |                       }| dv rdddni } |	                    |          j
        |fi |}t          j        ||           d S )	Nr   r  r   r   r!  )r@   r  r"   )r  axis)r   r0   r2   r3   r$  r%  r=   r   ri   r6   r:   r;   rm   )optargopro   r(  rM   r   rL   s          r   test_ops_generalr  a  s    $ 
29((++;;DAA	B	BBY""1%%..q"4.@@GGNNF,WRZZ'',,..F')^';';a###F%rzz&!!%f7777H&(+++++r    r   )	r"   r"   r"   r   r   r   r   r   r   )r"   r"   r   r   r   r   )r"   r   r"   r   r"   r   function)r9   r  r  c                 Z   |dk    rdnd}t          j        |gdz  t                    }t          j        g ddd	          }t          d
|i|                              d          }t          | d                              d          } t          ||                      }t          j
        ||           |                    |          }t          j
        ||           |                    |g          }t          j        d
|fg          |_        t          j
        ||           d S )Nr  g      ?g      ?r   r   rW   r^   r   r   r_   r   r   )r0   r}   r   rC   rl   r   r=   r6   ri   r;   rm   r:   r   from_tuplesrf   )r   r  outputr'  r`  rL   r_  rM   s           r   ,test_apply_to_nullable_integer_returns_floatr  |  s#    %%SS3F
(F8a<u
-
-
-C
(9993g
6
6
6C#s3///66yAAHvW---55c::F&WVX&&((F&(+++ZZ!!F&(+++ZZ
##F!-X.?@@H&(+++++r    r  )r&   r  r   r   r  r9   r  r  r@   r  r  c                 &    t          dg          }|                    d|          } dv rt t          |                     }|                    d                               fd          }|r|                                }t          j        ||           d S  t          |                       }|                    d                               fd          }|r|                                }t          j        ||           d S )Nr   )r  r   )r  r  r&   r9   rg   r  c                 8     t          |                     S r  r  )r  r  rh   s    r   r   z3test_regression_allowlist_methods.<locals>.<lambda>  s    .'!R..PV:W:W:W r    c                 4     t          |                       S r$   r  )r  r  s    r   r   z3test_regression_allowlist_methods.<locals>.<lambda>  s    .'!R..:J:J r    )r   r6   ri   r>   r   r;   rm   )r  rh   r   framerH   rM   rL   s   ``     r   !test_regression_allowlist_methodsr    s$   ( qcNNEmm!$m//G	,,,%"%%V444==q=))//0W0W0W0W0WXX 	-**,,H
fh/////%"%%''==q=))//0J0J0J0JKK 	-**,,H
fh/////r    c                  P   ddgddgddgddgddgddgddgdd	gdd
gddgddgddgddgddgg} t          | ddgd          }|                    dg                                                                          }t          dgdgdd          }t	          j        ||           d S )Nr"   r8  )   r#  r  r(         r   r   +   r   /   r  X   rt   ru   r   )rf   r   l   N+R@rj  r   )r   r6   r  r  r;   rm   )rG   ro   rM   rL   s       r   "test_groupby_prod_with_int64_dtyper!    s     
B	
B	
B	
B	
A	
B	
B	
A	
A	
B	
A	
B	
B	
BD  
4#s7	;	;	;BZZ##%%1133Fs*<)=>>gNNNH&(+++++r    c                     t          j        ddd          } t          |           }|d d dxx         dz  cc<   |                    d                                          }|t          d          z   |d	<   |t          dd
          z   |d<   t           j        |j        d<   |                    t          t          d                    dz            }|                                }t          j        d          }t          j        d          }t          |dz  ||||gt          j        d                    }t          |||d          }t!          j        ||           d S )Nz1 Dayi'  ns)r[  unitr   r   rt   r   ru   UTC)tzrv   r  i  z2887 days 11:21:02.326710176z2886 days 00:42:34.664668096r   rs   )rC   timedelta_ranger	   r  r  r
   r  r   r6   rf  r   r@   r  r0   r1   r   r;   rm   )	tdir   ro   r   rM   td1td4exp_serrL   s	            r   test_groupby_std_datetimeliker,    sB   

We$
?
?
?C
++C!HHHMHHH	c					!	!BIaLL BsGIaE****BsG&BGBK	DqNNT)	*	*BVVXXF ,5
6
6C
,5
6
6CcAgsCc2")A,,GGGGwW7CCDDH&(+++++r    c                     t          t          d          t          d          d          } d}t          j        t          |          5  |                     dg                              dg           d d d            n# 1 swxY w Y   t          j        t          |          5  |                     dg                              d           d d d            n# 1 swxY w Y   t          j        t          |          5  |                     dg                              d	           d d d            d S # 1 swxY w Y   d S )
Nr   rj  z(numeric_only accepts only Boolean valuesr+   rt   ru   Truer   r"   )r   r   rA   rB   r   r6   r9   )ro   rP   s     r   %test_mean_numeric_only_validates_boolr/    s    
qa11	2	2B
4C	z	-	-	- & &


C5u%%%& & & & & & & & & & & & & & & 
z	-	-	- 4 4


C5F3334 4 4 4 4 4 4 4 4 4 4 4 4 4 4 
z	-	-	- / /


C5A.../ / / / / / / / / / / / / / / / / /s6   
+BBB'+CC"%C"+D<<E E )prj   datetimer   stringr   numpyr0   rA   pandas._libs.tslibsr   pandas.core.dtypes.commonr   pandas.core.dtypes.missingr   pandasrC   r   r   r	   r
   r   r   pandas._testing_testingr;   pandas.tests.groupbyr   pandas.utilr   tdmarkparametrizerQ   rx   rq   rz   r   r   r   r}   r   r   r   r  r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r+  r6  r?  rF  rN  rT  rV  ra  rc  rg  strrm  r  r  r  r  r  r  slowr  r  r  r  r  rl   rL  r  r  r  r  r  r  r  r  r  r  r9   r  r@   r  r&   r  r   r   r"  param
skip_if_nor  r  r  r!  r,  r/  r   r    r   <module>rB     sR        " " " " " "      $ $ $ $ $ $ 2 2 2 2 2 2 9 9 9 9 9 9                          8 8 8 8 8 8 . . . . . . "J"J"JKK-+ -+ LK-+` 
							  $, ,% $,"
, 
, 
,, , , 
	ru	u	rud	rue
 

- 
-
 

- % BHdV4(((BHbeWI...		
 BHbeWI...BHdV4(((		
 BHbeWI...BHbeWI...		
 BHbeWI...BHbeWI...		
' :
, 
,; :
, "A"A"ABB& & CB& %	'	26"D)	&	rv&.	 & & &C C C& & & 8 455, , 65,( 8 455!, !, 65!,H 	aVA1a&IIJ	aVA1a&IIJ  $77, , 87 ,@ 
 I233I233	
 	/	 	 #K#K#KLL, , ML	 	,& & 122, , 32,:P P P- - - !
Q1aAq!	,iC
Qq!Q1a	+Y	B
Qq!Q1a	+Wi@
Q1aAq!	,.?ARSBN F          !	
 6- -7 6-& 
Q1aAq!	,i8
Qq!Q1a	+Y7
Qq!Q1a	+W5
Q1aAq!	,.?@	 - - -"- - -( 'v	!Q261aAr15y)Lv	!RAq"%Aq!4iKv 
!Q2q!QBE15wHv 
"&B	95	v
 
"%2y)4v 
"%2w0v 
B1bfaAq!4iKv 
Aq"aAr1be4iKv 
B1aQq!4gyIv 
2y)4v 
"i3v 
"gy1v 
Aq"aAr2615y)Lv 
B1aQq!4iKv 
Aq"aAr1be4gyIv  
2y)4!v" 
"i3#v$ 
"gy1%v& 
B1aQ15y)L'v( 
Aq"aAr25!4iK)v* 
B1aQ1be4gyI+v, 
2y)4-v. 
"i3/v0 
"gy11v2 
B1aQ15y)L3v4 
Aq"aAr25!4iK5v6 
B1aQ1be4gwG7v: 261aAq!Q/		
9vF BN F          #	
Evj 
2y)4kvl 
"i3mvn 
"gw/ovp 
B1aQ15y)Lqvr 
Aq"aAr25!4iKsvt 
B1aQ1be4gwGuvx 261aAq!Q/		
wvD BN F          #	
Cvh 
2y)4ivj 
"i3kvl 
"gw/mvn 
Ar1aB261a8)YOovp 
Aq!RAq"beQ7INqvr 
Ar1aB1a7)Lsvv 261aAq!Q/		
uvB BN F          #	
Avf 
BF8b=)Y7gvh 
BE7R<I6ivj 
BE7R<)4kvy yt- -uy yt-&" " "$, , ,  ", , ,<- - -$? ? ?(? ? ? %00
- 
- 10
- %00
, 
, 10
,, , ,< %00
, 
, 
, 
, 10
, "U"U"UVV,/ ,/ WV,/^) ) )" !@!@!@AA, , BA,, %00, , 10, q!f--u66X& X& 76 .-X&v& & &( dE]335'E5>!:;;+ + <; 43 +D, , ,2- - -&- - -- - -" ! OOY|$$bfii.E.EFFA3hbhu5999GGG		
 OORWT1a  "&'"'$1*=*=>FA3hbhu5999GGG		
 &%%a##a##a## FAq63*5!A!A!AOOO	
 &%%a##a##a## FAq63*5!A!A!AOOO	
3%( (R- -S( (R-, , ,- - -
- 
- 
-
. 
. 
. q"g..0 0 /.0,, , ,* * *0 PPP  	4**!!,<,<=>?	$qq))+;+;<=>	aa((*:*:;<=	aa((*:*:;<=	**!!,<,<=7SST	 	% %	 	 %6( ( ( 		29							%%&	%%&	"'UI]R]7-C-CDDD ", ,# ",  -,,RUAq"%Arua8	
 	
 !  '9'9'9::	 	 %>%>%>??, , @?	 	,(     0 0!  0., , ,0, , ,6/ / / / /r    