
    >ie,                      d dl mZ d dlZd dlZd dlmZ d dlZd dlZd dl	Z	d dl
mZ d dlmZ d dlmZ d dlmZmZmZmZmZ d dlmZmZmZmZ 	 d dlZn# e$ r dZY nw xY w	 d dlZd dl m!Z! n# e$ r dZdZ!Y nw xY we	j"        j#        d	             Z$d
 Z%e	j"        j#        d             Z&dndZ'dndZ(d Z)d Z*e	j"        +                    edk    d          d             Z,e	j"        -                    dddg          d             Z.e	j"        -                    dddg          d             Z/e	j"        -                    d ej0        g dg ddg d          d  ej1        g d !          f ej0        g dg ddg d          d" ej1        g d !          f ej1        g d#          ddfg          e	j"        -                    d$g d%          d&                         Z2e	j"        -                    dddg          e	j"        j3        d'                         Z4e	j"        -                    dddg          d(             Z5d) Z6e	j"        j3        d*             Z7e	j"        -                    dddg          d+             Z8e	j"        -                    d,d-d.d/d0d1d2d3d ifd2d4difd2d dd5fd6d7d8d9d:d3d ifd:d4difd:d dd5fd;d<d3d ifd<d4difd<d dd5fg          e	j"        -                    d=dd e	j9        de	j"        +                    dd>d?          @          g          dA                         Z:dB Z;e	j"        -                    dCg dD          dE             Z<e	j"        -                    dCdFd:g          dG             Z=e	j"        -                    dCdHdIg          dJ             Z>e	j"        -                    dddg          dK             Z?e	j"        -                    dLg dM          dN             Z@dO ZAdP ZBe	j"        C                    dQ          dR             ZDe	j"        -                    dCg dS          dT             ZEe	j"        -                    dUg dV          e	j"        -                    dWd dXg          dY                         ZFdod[ZGe	j"        -                    d\d d"g          e	j"        -                    d=g d]          d^                         ZHe	j"        -                    d\d d"g          e	j"        -                    d4ddg          e	j"        -                    d=g d]          d_                                     ZIe	j"        -                    d4ddg          e	j"        -                    d=g d]          d`                         ZJda ZKe	j"        C                    e db          dc             ZLe	j"        -                    dd e	j9        dee	j"        C                    edu pe df          @           e	j9        dge	j"        C                    edu pe df          @          dhdidjdkg          e	j"        -                    dCg dl          dm                         ZMdS )p    )annotationsNdatetime)	is_scalar)
_numpy_125)PANDAS_GE_140PANDAS_GE_150PANDAS_GE_200PANDAS_VERSIONcheck_numeric_only_deprecation)assert_dask_graph	assert_eq	make_metapyarrow_strings_enabled)ArrowNotImplementedErrorc                 
   t          j        g dg ddg d          t          j        g dg ddg d          t          j        g dg d	dg d
          d} t          dddt          j        g d          t          j                              }t	          j        | d|g d          }|                                }t          j        g dg dd          }t          j        g dg dd          }t	          j        |d          }t	          j        |d          }t          j        g dg ddg d          t          j        g dg ddg d          t          j        g dg ddg d
          d}t	          j        |d|g d          }	|	                                }
||||f||                    g d          ||f||||f|                    g d          |                    ddg          ||f|                    ddg          |                    g d           ||f||	||
f||	                    dd!g          ||
f|                    g d"          |	                    g d#          ||
f||
||
f||||fg
}|D ]?\  }}}}t          |j	        |j
        |j	        |j
                   t          ||||           @t          j        g d$g d%dg d&          }t	          j        |d          }t          j        g d$g d'dg d(          }t	          j        |d)          }t          j        g dg ddt          d*                    }t          j        g dg ddt          d+                    }t	          j        |d          }t	          j        |d)          }t          j        g dg dg dd,t          d*                    }t          j        g dg dg dd-t          d+                    }t	          j        |d          }t	          j        |d)          }||||f|                    dd!g          |||f|                    g d#          |                    g d.          ||f||||f|                    g d/          |                    d0d1g          ||f|                    g d2          |                    g d3          ||f||||f|                    g d/          |                    d0d1g          ||f||||f||||f||||fg}|D ]C\  }}}}t          |j	        |j
        |j	        |j
        d45           t          ||||d45           Dd S )6N                  abr   r   r   indexr   r   r   r   r         r#   	   r   r   r   r&   r&   r&   )xr   )r*   r   )r*   r   i8r    parent_metar*   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   r   r#   )r   r   r   )r   r   
   )r   r   r   ))yr   )r4   r   )r4   r   r4   )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   r3   )	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   aaabcdehabcdefghr   r   c)r   r8   d)r   r%   r&   )r   r8   hr   r:   )r   r   er:   )r   r;   r:   Fallow_comparison_ops)pd	DataFramer   Indexddcomputefrom_pandasrepartitioncheck_series_arithmeticsr   r   check_frame_arithmeticslist)dskmetaddf1pdf1pdf2pdf3ddf2ddf3dsk4ddf4pdf4caseslrelerpdf5ddf5pdf6ddf6pdf7pdf8ddf7ddf8pdf9pdf10ddf9ddf10s                               Olib/python3.11/site-packages/dask/dataframe/tests/test_arithmetics_reduction.pytest_arithmeticsre   )   s    ,YYYYYY??yyyQQQ,YYYYYY??yyyQQQ,YYYYYY??yyyQQQ C
 bhr4&8&8blnn  D <S$55D<<>>D<666=U=U=UVVWWD<666=U=U=UVVWWD>$""D>$""D ,YYYYYY??yyyQQQ,YYYYYY??yyyQQQ,ZZZiii@@			RRR D
 <c466D<<>>D 
tT4 	t00$=	tT4 			,,,	'	')9)91a&)A)A4N			1a&	!	!4#3#3OOO#D#DdDQ	tT4 	tA''t4			)))	$	$d&6&6yyy&A&A4N	tT4 	tT4 E  . .1b" ac246661b"---- <***1L1L1LMM)))  D >$""D<***1L1L1LMM)))  D >$""D<&&&-E-E-EFF:  D <&&&-E-E-EFF:  D >$""D>$""D<)))))))))	
 	

 :  D L)))))))))	
 	

 :  E >$""DN5!$$E 
tT4 			1a&	!	!4t4			)))	$	$d&6&6yyy&A&A4N	tT4 			///	*	*D,<,<c3Z,H,H$PTU11122___--		
 
udE"			///	*	*E,=,=sCj,I,I4QVW	tT4 	tT4 	udE"#E(  J J1b" ac24ERRRR1b"5IIIIIJ J    c                 0   t          j        g dg dd          } t          j        | d          }t	          |j        |j        dz  z   j                  t	          |j        |j        dz  z   j                  k    sJ t	          |j        |j        dz  z   j                  t	          |j        |j        dz  z   j                  k    sJ t	          |j        |j        dz  z   j                  t	          |j        |j        dz  z
  j                  k    sJ d S )Nr   r   r   r   r   r   r%   r#   r*   r4   r   npartitionsr   )r>   r?   rA   rC   sortedr*   r4   dask)dfr   s     rd   #test_deterministic_arithmetic_namesrp      s    	LLL|||<<	=	=B
rq)))A13a<%&&&!#Q,1D*E*EEEEE13a<%&&&!#Q,1D*E*EEEEE13a<%&&&!#Q,1D*E*EEEEEEErf   c                 `	   t          j        g dg ddg d          } t          j        | d          }t          j        g dg ddg d          }t          j        |d          }t          j        g dg ddg d          }t          j        |d          }t          j        g dg ddg d	          }t          j        |d          }t          j        g dg ddg d
          }t          j        |d          }	t          j        g dg ddg d          }
t          j        |
d          }||| |f|||| f|                    g d          |                    g d          | |f|                    g d          |                    g d          || f||||f||||f|                    g d          |                    g d	          ||f|                    ddg          |                    g d          ||f|	|||
f||	|
|f|	                    g d          |                    g d          ||
f|                    ddg          |	                    g d          |
|f||| |f|| || f||||f||||f|	|
||
f|||
|fg}|D ]C\  }}}}t          |j        |j        |j        |j        d           t          ||||d           Dt          j        g dg ddg d          }t          j        g dg ddg d          }t          j        |d          }t          j        |d          }t          j        g dg ddg d          }t          j        g dg ddg d           }t          j        |d          }t          j        |d          }||||f||||f|                    g d!d"#          |                    g d$d"#          ||f|                    g d%          |                    g d&d"#          ||f|                    g d'd"#          |                    g d(d"#          ||f||||f||||f||||f||||f||||f||||fg}|D ]C\  }}}}t          |j        |j        |j        |j        d           t          ||||d           Dd S ))N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%   )r3               )r   r   r   r%   r&   )r   r   r   r   r   )r   r   r   )r   r   r%   )r   r   r   r%   )r   r   r   r   r3   rv   )r   r   r   r   )r   r%   r#   r&   )r   r   r   r   r   )r   r   r%   r&   Fr<   r/   r0   )r   r   r   r#   r&   r3   rs   ru   r1   r2   )r   r   r   r#   r&   rs   rt   ru   r   )r   r   r   r#   r&   rs   rt   ru   )r3      T)force)r   rs   rv   )r   r#   rt   ru   )r   r   r#   rt   ru   )rw   r   r3      )rz   r   rs   ru   )	r>   r?   rA   rC   rD   rE   r   r   rF   )rK   rJ   rL   rN   rM   rO   rR   rQ   rX   rY   rZ   r[   rS   rT   rU   rV   rW   r\   r]   r^   r_   r`   ra   rb   rc   s                            rd    test_arithmetics_different_indexr|      sk    <ooOOO44OOO  D >$""D<ooOOO44OOO  D >$""D <ooOOO44OOO  D >$""D<ooOOO44<P<P<P  D >$""D <ooOOO44OOO  D >$""D<ooOOO44OOO  D >$""D 
tT4 	tT4 			)))	$	$d&6&6yyy&A&A4N			,,,	'	')9)9,,,)G)GtT	tT4 	tT4 ___--11122		
 
		2r(	#	#T%5%5lll%C%CT4P	tT4 	tT4 			,,,	'	')9)9,,,)G)GtT			1a&	!	!4#3#3LLL#A#A4N	tT4 	tT4 	tT4 	tT4 	tT4 	tT4 1E6  J J1b" ac24ERRRR1b"5IIIII<&&&-E-E-EFF)))  D <&&&-E-E-EFF)))  D >$""D>$""D<&&&-E-E-EFF)))  D L&&&-E-E-EFF)))  E >$""DN5!$$E 
tT4 	tT4 
 \\\66___D99		
 ^^^,,...d;;		
 ___D99___D99		
 
udE"	eT"	tT4 	tT4 	udE"	eT"=EB  J J1b" ac24ERRRR1b"5IIIIIJ Jrf   Tc                   t          | t          j                  sJ t          |t          j        t          j        f          sJ t          |t          j                  sJ t          |t          j                  sJ t	          | |           t	          ||           t	          | |z   ||z              t	          | |z  ||z             t	          | |z
  ||z
             t	          | |z  ||z             t	          | |z  ||z             t	          | |z  ||z             t	          | |z  ||z             |rt	          | |z  ||z             t	          | |z  ||z             t	          | |z  ||z             t	          | |k    ||k               t	          | |k     ||k                t	          | |k    ||k               t	          | |k    ||k               t	          | |k    ||k               t	          | |k    ||k               t	          |                     |          |                    |                     t	          |                     |          |                    |                     t	          |                     |          |                    |                     t	          |                     |          |                    |                     t	          | 	                    |          |	                    |                     t	          | 
                    |          |
                    |                     t	          | dz   |dz              t	          | dz  |dz             t	          | dz
  |dz
             t	          | dz  |dz             t	          | dz  |dz             t	          | dz  |dz             t	          | dz  |dz             t	          | dz  |dz             t	          | dz  |dz             t	          | dz  |dz             t	          | dk    |dk               t	          | dk     |dk                t	          | dk    |dk               t	          | dk    |dk               t	          | dk    |dk               t	          | dk    |dk               t	          d|z   d|z              t	          d|z  d|z             t	          d|z
  d|z
             t	          d|z  d|z             t	          d|z  d|z             t	          d|z  d|z             t	          d|z  d|z             t	          d|z  d|z             t	          d|z  d|z             t	          d|z  d|z             t	          d|k    d|k               t	          d|k     d|k                t	          d|k    d|k               t	          d|k    d|k               t	          d|k    d|k               t	          d|k    d|k               t	          |                     d          |                    d                     t	          |                     d          |                    d                     t	          |                     d          |                    d                     t	          |                     d          |                    d                     t	          | 	                    d          |	                    d                     t	          | 
                    d          |
                    d                     t	          |  |            t	          t          |           t          |                     |rt	          | |k     ||k                d S d S Nr   T)
isinstancerA   Seriesr>   r   ltgtlegeneeqabsrT   rU   rV   rW   r=   s        rd   rE   rE      s'   a#####a")RY/00000b")$$$$$b")$$$$$ aaa!eR"Wa!eR"Wa!eR"Wa!eR"Wa1fbBhadBFa!eR"W &!a%b!!!!a%b!!!!a%b!!!!a%b!!!!a%b!!!!q&"(###!q&"(###!q&"(###!q&"(###!$$q''25599%%%!$$q''25599%%%!$$q''25599%%%!$$q''25599%%%!$$q''25599%%%!$$q''25599%%%a!eR!Va!eR!Va!eR!Va!eR!Va$hT	"""a$hT	"""a$hT	"""a1fbAgadBEa!eR!Va!eR!Va!eR!Va1fbAga1fbAga1fbAga1fbAga!eQVa!eQVa!eQVa!eQVdQhr	"""dQhr	"""dQhr	"""a1fa2gadArEa!eQVa!eQVa!eQVa1fa2ga1fa2ga1fa2ga1fa2gadd1ggruuQxx   add1ggruuQxx   add1ggruuQxx   add1ggruuQxx   add1ggruuQxx   add1ggruuQxx   qb2#c!ffc"gg *AF)rRx[)))))* *rf   c                   t          | t          j                  sJ t          |t          j        t          j        f          sJ t          |t          j                  sJ t          |t          j                  sJ t	          | |           t	          ||           t	          | |z   ||z              t	          | |z  ||z             t	          | |z
  ||z
             t	          | |z  ||z             t	          | |z  ||z             t	          | |z  ||z             t	          | |z  ||z             |rt	          | |z  ||z             t	          | |z  ||z             t	          | |z  ||z             t	          | |k    ||k               t	          | |k     ||k                t	          | |k    ||k               t	          | |k    ||k               t	          | |k    ||k               t	          | |k    ||k               t	          |                     |          |                    |                     t	          |                     |          |                    |                     t	          |                     |          |                    |                     t	          |                     |          |                    |                     t	          | 	                    |          |	                    |                     t	          | 
                    |          |
                    |                     t	          | dz   |dz              t	          | dz  |dz             t	          | dz
  |dz
             t	          | dz  |dz             t	          | dz  |dz             t	          | dz  |dz             t	          | dz  |dz             t	          | dz  |dz             t	          | dz  |dz             t	          | dz  |dz             t	          | dk    |dk               t	          | dk     |dk                t	          | dk    |dk               t	          | dk    |dk               t	          | dk    |dk               t	          | dk    |dk               t	          d| z   d|z              t	          d| z  d|z             t	          d| z
  d|z
             t	          d| z  d|z             t	          d| z  d|z             t	          d| z  d|z             t	          d| z  d|z             t	          d| z  d|z             t	          d| z  d|z             t	          d| z  d|z             t	          d| k    d|k               t	          d| k     d|k                t	          d| k    d|k               t	          d| k    d|k               t	          d| k    d|k               t	          d| k    d|k               t	          |                     d          |                    d                     t	          |                     d          |                    d                     t	          |                     d          |                    d                     t	          |                     d          |                    d                     t	          | 	                    d          |	                    d                     t	          | 
                    d          |
                    d                     t	          |  |            t	          t          |           t          |                     |rt	          | |k     ||k                d S d S r~   )r   rA   r?   r>   r   r   r   r   r   r   r   r   r   s        rd   rF   rF   u  s%   a&&&&&a",566666b",'''''b",'''''aaa!eR"Wa!eR"Wa!eR"Wa!eR"Wa1fbBhadBFa!eR"W &!a%b!!!!a%b!!!!a%b!!!!a%b!!!!a%b!!!!q&"(###!q&"(###!q&"(###!q&"(###!$$q''25599%%%!$$q''25599%%%!$$q''25599%%%!$$q''25599%%%!$$q''25599%%%!$$q''25599%%%a!eR!Va!eR!Va!eR!Va!eR!Va$hT	"""a$hT	"""a$hT	"""a1fbAgadBEa!eR!Va!eR!Va!eR!Va1fbAga1fbAga1fbAga1fbAga!eQVa!eQVa!eQVa!eQVdQhr	"""dQhr	"""dQhr	"""a1fa2gadArEa!eQVa!eQVa!eQVa1fa2ga1fa2ga1fa2ga1fa2gadd1ggruuQxx   add1ggruuQxx   add1ggruuQxx   add1ggruuQxx   add1ggruuQxx   add1ggruuQxx   qb2#c!ffc"gg *AF)rRx[)))))* *rf   c                 
   t          j        d          } t          j        d          }t          j                            d| idd          }t          j                            d|idd          }t          |t          j        j                  sJ t          |t          j        j                  sJ t          ||            t          ||           t          ||z   | |z              t          ||z  | |z             t          ||z
  | |z
             t          ||z  | |z             t          ||z  | |z             t          ||z  | |z             t          ||z  | |z             t          ||z  | |z             t          ||z  | |z             t          ||z  | |z             t          ||k    | |k               t          ||k     | |k                t          ||k    | |k               t          ||k    | |k               t          ||k    | |k               t          ||k    | |k               t          |dz   | dz              t          |dz  | dz             t          |dz
  | dz
             t          |dz  | dz             t          |d	z  | d	z             t          |d	z  | d	z             t          |d	z  | d	z             t          |dz  | dz             t          |dz  | dz             t          |dz  | dz             t          |dk    | dk               t          |dk     | dk                t          |dk    | dk               t          |dk    | dk               t          |dk    | dk               t          |dk    | dk               t          d|z   d|z              t          d|z  d|z             t          d|z
  d|z
             t          d|z  d|z             t          d	|z  d	|z             t          d	|z  d	|z             t          d	|z  d	|z             t          d|z  d|z             t          d|z  d|z             t          d|z  d|z             t          d|k    d|k               t          d|k     d|k                t          d|k    d|k               t          d|k    d|k               t          d|k    d|k               t          d|k    d|k               t          | |             t          t          |          t          |                      t          ||k     | |k                d S )
Nr3   r   )rT   r   rT   r+   )rU   r   rU   r   T)npint64rA   coreScalarr   r   r   )rV   rW   rT   rU   s       rd   test_scalar_arithmeticsr     sx   	"B	!B
"~sD11A
"~sD11Aa(((((a(((((aaa!eR"Wa!eR"Wa!eR"Wa!eR"Wa1fbBhadBFa!eR"Wa!eR"Wa!eR"Wa!eR"Wa!eR"Wa!eR"Wa1fbBha1fbBha1fbBha1fbBha!eR!Va!eR!Va!eR!Va!eR!Va$hT	"""a$hT	"""a$hT	"""a1fbAgadBEa!eR!Va!eR!Va!eR!Va1fbAga1fbAga1fbAga1fbAga!eQVa!eQVa!eQVa!eQVdQhr	"""dQhr	"""dQhr	"""a1fa2gadArEa!eQVa!eQVa!eQVa1fa2ga1fa2ga1fa2ga1fa2gqb2#c!ffc"ggQi28%%%%%rf   c                 F   t           j                            ddidd          } d}t          j        g d          }t          j        |d          }t          j        g dg dd          }t          j        |d          }|| z   }t          |t          j                  sJ t          |||z              | |z   }t          |t           j                  sJ t          |||z              || z   }t          |t           j                  sJ t          |||z              | |z   }t          |t           j                  sJ t          |||z              || z   }t          |t          j                  sJ t          |||z              | |z   }t          |t           j                  sJ t          |||z              || z   }t          |t           j                  sJ t          |||z              | |z   }t          |t           j                  sJ t          |||z              d S )	Nsr   r3   r   r+   r   r   r   r   r   r   r%   r   )r%   r   r   r   r   r   r   r   )	rA   r   r   r>   r   rC   r?   r   r   )r   r;   pdsddspdfddfresults          rd   +test_scalar_arithmetics_with_dask_instancesr     s5   
"~sD11A
A
))))
*
*C
.a
 
 C
,2229N9N9NOO
P
PC
.a
 
 C 1WFfbi(((((fcAgWFfbi(((((fcAg 1WFfbi(((((fcAgWFfbi(((((fcAg 1WFfbl+++++fcAgWFfbl+++++fcAg 1WFfbl+++++fcAgWFfbl+++++fcAgrf   z1.0.2z1https://github.com/pandas-dev/pandas/issues/32685)reasonc                 D   t          j        t          j        d          t          j        ddddgdz  t          j        gdz  t          j        d          dt          d          t          d          	          } t          j        t          j                            dd          t          d
          t          d          	          }| j        }|j        }t          j	        t          j                            d          t          d                    }t          j        | d          }t          j        |d          }|j        }|j        }t          j                            ddidd          }	||| |f||||f|                    g d          || |f|                    g d          |||f||                    ddg          | |f||                    g d          ||f|d| df|d|df||	| df||	|dff
D ]\  }
}}}t          |
|           t          ||           t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     ||| |f||j         | |j         ffD ]\  }
}}}t          |
|           t          ||           t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     t          |
                    |d          |                    |d                     tC          j"        tF          |
|fd           ||| |f||| |ffD ]\  }
}}}t          |
|           t          ||           dD ]}t          |
                    ||          |                    ||                     t          |
                    ||          |                    ||                     t          |
                    ||          |                    ||                     t          |
                    ||          |                    ||                     t          |
                    ||          |                    ||                     t          |
                    ||          |                    ||                     t          |
                    ||          |                    ||                     t          |
                    ||          |                    ||                     t          |
                    ||          |                    ||                     t          |
                    ||          |                    ||                     t          |
                    ||          |                    ||                     t          |
                    ||          |                    ||                     t          |
                    ||          |                    ||                     t          |
                    ||          |                    ||                     t          |
                    ||          |                    ||                     t          |
                    ||          |                    ||                     d S )Nr3   r   r   r   r   ABCD
abcdefghijABCD)r    columns
abcdefghjkABCX
ABCDXabcder   r   r   r+   )r   fj)r   r   r   r   r   k)r   r   r9   r:   r   r   
fill_valueaxisc                0    |                      |d          S )Nr   r   )add)rT   rU   s     rd   <lambda>z6test_frame_series_arithmetic_methods.<locals>.<lambda>  s    15553C3C rf   r   r   r    r   )$r>   r?   r   arangenanrG   randomrandnr   r   rA   rC   r   r   rD   r   r   submuldivdividetruedivfloordivpowmodraddrsubrmulrdivrtruedivrpowrmodXpytestraises
ValueError)rK   rL   ps1ps2ps3rJ   rN   ds1ds2r   rT   rU   rV   rW   r   s                  rd   $test_frame_series_arithmetic_methodsr   >  s"   
 <2&!Q1%)&B2		
 	
 <  V	 	 	D <
	Ad<&8&8$v,,  D &C
&C
)BIOOB''tL/A/A
B
B
BC>$""D>$""D
&C
&C
!}c400A 
tT4 	c3			///	*	*D$=	---	.	.S#>	tc
++T48	coo77788#sC	q$	aa	q$	aa  F  F1b" 	!R!R!%%a%(("&&&*B*BCCC!%%a%(("&&&*B*BCCC!%%a%(("&&&*B*BCCC!%%a%(("&&&*B*BCCC!((1(++RYYraY-H-HIII!))A!),,bjjj.J.JKKK!**Q1*--r{{2!{/L/LMMM!%%a%(("&&&*B*BCCC!%%a%(("&&&*B*BCCC!&&q&))2772!7+D+DEEE!&&q&))2772!7+D+DEEE!&&q&))2772!7+D+DEEE!&&q&))2772!7+D+DEEE!**Q1*--r{{2!{/L/LMMM!&&q&))2772!7+D+DEEE!&&q&))2772!7+D+DEEEET3/$df1MN E E1b"!R!R 	!%%%""BFF2AF$6$6777!%%%""BFF2AF$6$6777!%%%""BFF2AF$6$6777!%%%""BFF2AF$6$6777!((11(%%ryy!y'<'<===!))AA)&&

2A
(>(>???!**QQ*''Ra)@)@AAA!%%%""BFF2AF$6$6777!%%%""BFF2AF$6$6777!&&&##RWWRaW%8%8999!&&&##RWWRaW%8%8999!&&&##RWWRaW%8%8999!&&&##RWWRaW%8%8999!**QQ*''Ra)@)@AAA!&&&##RWWRaW%8%8999!&&&##RWWRaW%8%8999j1"C"C"CDDDDdD1D#tS3IJ D D1b"!R!R. 	D 	DDaeeADe))266"46+@+@AAAaeeADe))266"46+@+@AAAaeeADe))266"46+@+@AAAaeeADe))266"46+@+@AAAahhqth,,biii.F.FGGGaiii--rzz"4z/H/HIIIajjj..BT0J0JKKKaeeADe))266"46+@+@AAAaeeADe))266"46+@+@AAAaffQTf**BGGBTG,B,BCCCajjj..BT0J0JKKKaffQTf**BGGBTG,B,BCCCaffQTf**BGGBTG,B,BCCCaffQTf**BGGBTG,B,BCCCaffQTf**BGGBTG,B,BCCCaffQTf**BGGBTG,B,BCCCC!	D	D Drf   split_everyFr   c           
        t          j        g dg dg ddg d          t          j        g dg dg ddg d	          t          j        g d
g dg ddg d          d}t          ddddt          j        g d          t          j                              }t	          j        |d|g d          }|                                }t          j        dgt          j        gdz  z   dgz   t          j        gdz  z             }t	          j	        |d          }t          j        dgt          j        gdz  z             }t	          j	        |d          }t          j        t          j        gdz            }	t	          j	        |	d          }
t          j        g dt                    }t	          j	        |d          }|j        |j        f|j        |j        f|j        |j        f|d         |d         f|d         |d         f||f||f|
|	f||ff	D ]h\  }}t          |t          j                  sJ t          |t           j                  sJ t          |                    |           |                                           t          |                    |           |                                           t          |                    |           |                                           t          |                    |           |                                           t          |                    |           |                                           t          |                    |           |                                           t,          r|j        d         }||dz
  z  d z  |dz
  z  }t          |                                |                                |z             t2          rJt5          j        t8          d!"          5  |                    d #           d d d            n# 1 swxY w Y   n;t          |                    d #          |                    d #          |z             t,          r|j        d         }|dz
  |dz   z  |dz
  |dz
  z  z  }d$|dz
  z  |dz
  |dz
  z  z  }t          ||                                z  |z   |                                           t2          rJt5          j        t8          d!"          5  |                    d #           d d d            n# 1 swxY w Y   n>t          ||                    d #          z  |z   |                    d #                     t=          j                    5  t=          j         d%tB                     t          |"                    |           |"                                           t          |#                    |           |#                                           t          |$                    |           |$                                           d d d            n# 1 swxY w Y   t=          j                    5  t=          j         d%tB                     t          |"                    d| &          |"                    d'                     t          |#                    d| &          |#                    d'                     t          |$                    d| &          |$                    d'                     d d d            n# 1 swxY w Y   t          |%                    |           |%                                           t          |&                    |           |&                                           t          |                    d(| )          |                    d(*                     t          |                    d(| )          |                    d(*                     t          |                    d(| )          |                    d(*                     t          |                    d(| )          |                    d(*                     t          |                    d(| )          |                    d(*                     t          |"                    d(| )          |"                    d(*                     t          |#                    d(| )          |#                    d(*                     t          |$                    d(| )          |$                    d(*                     t          |"                    d(d| +          |"                    d(d,                     t          |#                    d(d| +          |#                    d(d,                     t          |$                    d(d| +          |$                    d(d,                     t          |%                    d(| )          |%                    d(*                     jtO          |j                            |           d-           tO          |j                            |           d.           tO          |j                            |           d/           tO          |j                            |           d0           tO          |j                            |           d1           tO          |j        "                    |           d2           tO          |j        #                    |           d3           tO          |j        $                    |           d4           tO          |j        "                    d| &          d2           tO          |j        #                    d| &          d3           tO          |j        $                    d| &          d4           tO          |j        %                    |           d5           tO          |j        &                    |           d6           t          |j(                            |           |j(                                                   t          |j(                            |           |j(                                                   t          |j(                            |           t          j)        |j(                                                             d S )7Nr   r   )TTFr7   r   r   r!   )FFFr"   )l   "9 l   M ivr'   )TTTr(   r)   r+   boolr,   r*   r.   r   r   r   r   r#   r&   )TFTFTdtyper   r   r   r   g      ?z%`axis=None` isn't currently supportedmatchr   r   ignoreddofr   r   Fskipnar   r   r   r   r   r   r   z
series-sumzseries-prodz
series-minz
series-maxzseries-countz
series-stdz
series-varz
series-semzseries-meanzdrop-duplicates)*r>   r?   r   r@   rA   rB   r   r   r   rC   r   r   r   r8   r   r   sumprodproductminmaxcountscipyshapeskewr
   r   r   r   kurtosiswarningscatch_warningssimplefilterRuntimeWarningstdvarsemmeannuniquer   r    notnull)r   rH   rI   rJ   rK   nans1nands1nans2nands2nans3nands3boolsbooldsr   r   nbias_factorfactoroffsets                      rd   test_reductionsr     s    ,)))))2E2E2EFFiii
 
 
 ,)))))2G2G2GHH))
 
 
 ,999YY''' 
 ))
 
 
 C" F++hr4  LNN  D
 <S$55D<<>>DIqcRVHqL(A3."&A=>>E^E1%%FIqcRVHqL())E^E1%%FIrvhl##E^E1%%FI666dCCCE^E1%%F 
			cDI	cDI				
 d
 d
S #ry)))))#ry)))))#''k'22CGGII>>>#(({(33SXXZZ@@@#++++66FFF#''k'22CGGII>>>#''k'22CGGII>>>#)))44ciikkBBB 	R	!AA;3.!a%8Kchhjj#((**{":;;; R ]&M   ( ( HH$H'''( ( ( ( ( ( ( ( ( ( ( ( ( ( (
 #(((--sxxTx/B/B[/PQQQ 		!A1uQ'QUq1u,=>F1q5kq1uQ&78Ffs||~~-6GGG 
 ]&M   , , LLdL+++, , , , , , , , , , , , , , ,
 S\\t\444v=s||QU|?V?V   $&& 	C 	C!(N;;;cgg+g66		BBBcgg+g66		BBBcgg+g66		BBB	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C $&& 	Q 	Q !(N;;;cgg1+g>>QPPPcgg1+g>>QPPPcgg1+g>>QPPP	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	#(({(33SXXZZ@@@#++++66FFF#''K'@@#''QV'BWBWXXXHHE{H;;SXXUX=S=S	
 	
 	
 	KKu+K>>KKuK%%	
 	
 	
 	#''K'@@#''QV'BWBWXXX#''K'@@#''QV'BWBWXXX#''K'@@#''QV'BWBWXXX#''K'@@#''QV'BWBWXXX#''K'@@#''QV'BWBWXXXGG5qkGBBGG5qG))	
 	
 	
 	GG5qkGBBGG5qG))	
 	
 	
 	GG5qkGBBGG5qG))	
 	
 	
 	HHE{H;;SXXUX=S=S	
 	
 	
 	
 dfjj[j99<HHHdfkkkk::MJJJdfjj[j99<HHHdfjj[j99<HHHdfll{l;;^LLLdfjj[j99<HHHdfjj[j99<HHHdfjj[j99<HHHdfjja[jAA<PPPdfjja[jAA<PPPdfjja[jAA<PPPdfkkkk::MJJJdfnnn==?PQQQ djnnn55tz~~7G7GHHHdjnnn55tz~~7G7GHHHdj;77DJ9O9O9S9S9U9UVVVVVsJ   P88P<	?P<	T>>U	U	B=Y$$Y(	+Y(	C]]	]	c           	     J   t          j        t          j        dddt          j        dg                    }t          j        |d          }t          |                    |           |                                           t          |	                    |           |	                                           t          |
                    |           |
                                           t          |                    |           |                                           d S )Nr   r   r   r   r   )r>   r   to_timedeltar   r   rA   rC   r   r   r   r   r   )r   dsr   s      rd   test_reductions_timedeltar  N  s    	2?Aq!RVQ#788	9	9B
.Q

Ccgg+g..999cgg+g..999cgg+g..999ciiKi00"((**=====rf   zframe,axis,outr   r   r   r   r   float64r   r   )r   g      @r   redfunc)r   r   r   r   r   r   r   r   c                   t          j        | d          }t          j        t          j        dg          d                                          }|t          j        |d          }t          t          |          }t          | j        |          }t          |j        |          }|dv r |||d|           nct          j	                    }	t          r!|dk    rt          j        t          d          }	|	5   ||||	           d d d            n# 1 swxY w Y   t          | || |
                      |||d|           t          | || |
                      |||d|           t          | || |
                     d S )Nr   r   r   )r   r   )r   r   outr   z`product` is deprecatedr   )r   r  r   Fr   r   r  r   )rA   rC   r>   r   r   getattrr   	__class__
contextlibnullcontextr   r   warnsDeprecationWarningr   )
framer   r  r  dsk_indsk_out
np_redfunc
pd_redfuncdsk_redfuncctxs
             rd   test_reductions_outr  Y  s   ( ^E1%%FnRYs^^Q//3355G
.a((W%%J'22J&*G44K.   	
61':::::$&& 	T'Y..,19RSSSC 	7 	7JvDg6666	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 gzz%d333444KTu'BBBBgzz%d333444KTqg>>>>gzz%d33344444s   7DDDc                   t          j        t          j                            ddgd          g d          }t          d          dz  |d	<   t          j        |d
          }t          |	                    |           |	                                           t          |	                    d|           |	                    d                     t          |	                    d|           |	                    d                     t          |
                    |           |
                                           t          |
                    d|           |
                    d                     t          |
                    d|           |
                    d                     t          |j        	                    |           |j        	                                           t          |j        
                    |           |j        
                                           t          j        t          j        g dg d          d
          }t          j        t          j        t          j                            ddgd                    d
          }|	                    | |           t          ||	                                           |	                    d| |           t          ||	                    d                     |	                    | d|           t          ||	                    d                     |
                    | |           t          ||
                                           |
                    d| |           t          ||
                    d                     |
                    | d|           t          ||
                    d                     d S )NTF)d   r   )sizer   r   abcder{   Er3   r   r   r   r   r   r   )FFFFF)r   r   r   r   r  r   )r  )r   r  r	  )r   r   r  )r>   r?   r   r   choicerG   rA   rC   r   allanyr   r   )r   ro   r   ddf_out_axis_defaultddf_out_axis1s        rd   test_allanyr$    sf    

	$X66@T@T@T
 
 
B 7mmb BsG
.R
 
 Ccgg+g..999cgg1+g66AGGGcgg1+g66AGGGcgg+g..999cgg1+g66AGGGcgg1+g66AGGGceiiKi00"$((**===ceiiKi00"$((**=== >
	555=V=V=VWWW
  N
	")""D%=v">>?? M
 GG)=G>>>"BFFHH---GGG???mRVVV^^,,,GG!1EGFFF"BFFFNN333 GG)=G>>>"BFFHH---GGG???mRVVV^^,,,GG!1EGFFF"BFFFNN33333rf   c                   t          j        g dg dd          }t          j        |d          }||j        fD ]G}|                    |           j        |                    |           j        k    sJ |                    |           j        |                    |           j        k    sJ |                    |           j        |                    |           j        k    sJ |	                    |           j        |	                    |           j        k    sJ |
                    |           j        |
                    |           j        k    sJ |                    |           j        |                    |           j        k    sJ |                    |           j        |                    |           j        k    sJ |                    |           j        |                    |           j        k    sJ |                    |           j        |                    |           j        k    sJ |                    |           j        |                    |           j        k    sJ I|j                            |           j        |j                            |           j        k    sJ d S )Nrh   ri   rj   r   rk   r   )r>   r?   rA   rC   r*   r   _namer   r   r   r   r   r   r   r   r   r   )r   ro   r   r*   s       rd   "test_deterministic_reduction_namesr'    s   	LLL|||<<	=	=B
.
+
+
+C35\ "
 "
EEkE**0AEEkE4R4R4XXXXX FF{F++1vv+v..45 5 5 5 II+I..4yy[y1178 8 8 8 EEkE**0AEEkE4R4R4XXXXX EEkE**0AEEkE4R4R4XXXXX GGG,,2ww;w//56 6 6 6 EEkE**0AEEkE4R4R4XXXXX EEkE**0AEEkE4R4R4XXXXX EEkE**0AEEkE4R4R4XXXXX FF{F++1vv+v..45 5 5 5 5
 	+..45==[=117	8 	8 	8 	8 	8 	8rf   c                    t          j        g dg ddg d          t          j        g dg ddg d          t          j        g dg d	dg d
          d} t          dddt          j        g d          t          j                              }t	          j        | d|g d          }|                                }dD ]B}|j        |j        fD ]/}t          j        t          ||fd           t          j        t          ||fd           t          j        t          ||fd           t          j        t          ||fd           t          j        t          ||fd           t          j        t          ||fd           t          j        t          ||fd           t          j        t          ||fd           t          j        t          ||fd           t          j        t          ||fd           1Dd S )Nr   r   r   r   r   r!   r"   r$   r'   r(   r)   r+   r,   r*   r.   )r   r   c                .    |                      |          S Nr   )r   r   r   s     rd   r   z4test_reduction_series_invalid_axis.<locals>.<lambda>      QUUU=M=M rf   c                .    |                      |          S r*  )r   r+  s     rd   r   z4test_reduction_series_invalid_axis.<locals>.<lambda>      QVVV=N=N rf   c                .    |                      |          S r*  )r   r+  s     rd   r   z4test_reduction_series_invalid_axis.<locals>.<lambda>  s    QYYDY=Q=Q rf   c                .    |                      |          S r*  )r   r+  s     rd   r   z4test_reduction_series_invalid_axis.<locals>.<lambda>  r,  rf   c                .    |                      |          S r*  )r   r+  s     rd   r   z4test_reduction_series_invalid_axis.<locals>.<lambda>  r,  rf   c                .    |                      |          S r*  )r   r+  s     rd   r   z4test_reduction_series_invalid_axis.<locals>.<lambda>  s    AGGG<N<N rf   c                .    |                      |          S r*  )r   r+  s     rd   r   z4test_reduction_series_invalid_axis.<locals>.<lambda>  r,  rf   c                .    |                      |          S r*  )r   r+  s     rd   r   z4test_reduction_series_invalid_axis.<locals>.<lambda>  r,  rf   c                .    |                      |          S r*  )r   r+  s     rd   r   z4test_reduction_series_invalid_axis.<locals>.<lambda>  r,  rf   c                .    |                      |          S r*  )r   r+  s     rd   r   z4test_reduction_series_invalid_axis.<locals>.<lambda>  r.  rf   )r>   r?   r   r@   rA   rB   r   r   r   r   	TypeError)rH   rI   rJ   rK   r   r   s         rd   "test_reduction_series_invalid_axisr8    sA   ,YYYYYY??yyyQQQ,YYYYYY??yyyQQQ,YYYYYY??yyyQQQ C
 bhr4&8&8blnn  D <S$55D<<>>D P P&$&! 	P 	PAM*qt&M&M&MNNNM*qt&N&N&NOOOM*qt&Q&Q&QRRRM*qt&M&M&MNNNM*qt&M&M&MNNNM)ad%N%N%NOOOM*qt&M&M&MNNNM*qt&M&M&MNNNM*qt&M&M&MNNNM*qt&N&N&NOOOO	PP Prf   c            	     	   d } t          j        g d          }t          j        |d          }t	          |                                |                                            | ||d            | ||d           t	          |                                |                                           t	          |                                |                                           t	          |                                |                                            | ||d            | ||d            | ||d            | ||d	            | ||d
           t	          |	                                |	                                           t          j        t          j
        g dd                    t          j        t          j
        t          d          d                    t          j        t          j        ddd                    fD ][}t          j        |d          } | ||d            | ||d            | ||d           t	          |                                |                                           t	          |                                |                                           t	          |                                |                                           |j        dk    r | ||d            | ||d            | ||d            | ||d	            | ||d
           t	          |	                                |	                                           ]t          j        t          j        ddd                    }t          j        |d          }t	          |                                |                                           t	          |                                |                                           t	          |                                |                                           t	          |                                |                                            | ||d	            | ||d
           t	          |	                                |	                                           d S )Nc                     t          j        t          t          f fd           t          j        t          t          ffd           d S )Nc                 X     t                                                                 S N)r
  rB   )r9   funcs   rd   r   zJtest_reductions_non_numeric_dtypes.<locals>.check_raises.<locals>.<lambda>  s&    7Gwq$7G7G7I7I7Q7Q7S7S rf   c                 4     t                                 S r<  )r
  )r=  ps   rd   r   zJtest_reductions_non_numeric_dtypes.<locals>.check_raises.<locals>.<lambda>  s    7Gwq$7G7G7I7I rf   )r   r   r7  r   )r9   r?  r=  s   ```rd   check_raisesz8test_reductions_non_numeric_dtypes.<locals>.check_raises  sS    y*-/S/S/S/S/STTTy*-/I/I/I/I/IJJJJJrf   )r   r   r8   r9   r;   r   r   r   r   r   r   r   r   rr   T)orderedr  z
2011-01-01r   r   )freqperiodsr   zdatetime64[ns]z1 days)r>   r   rA   rC   r   r   r   r   r   r   CategoricalrG   
date_ranger   timedelta_range)r@  r   r   s      rd   "test_reductions_non_numeric_dtypesrG    s$   K K K )---
.
.C
.a
 
 Ccggii###Lc6"""Lc9%%%cggii###cggii###ciikk399;;'''Lc5!!!Lc5!!!Lc5!!!Lc6"""Lc:&&&ckkmmS[[]]+++ 		".$???@@
	".g===>>
	"-3BBBCC 0 0
 nS!$$S#u%%%S#v&&&S#y)))#''))SWWYY'''#''))SWWYY'''#))++syy{{+++9((( Lc5)))S#u%%%S#u%%%S#v&&&S#z***#++--////
)B&xc1EEE
F
FC
.a
 
 Ccggii###cggii###cggii###ciikk399;;'''Lc6"""Lc:&&& ckkmmS[[]]+++++rf   c                   t          j        g dg ddg d          t          j        g dg ddg d          t          j        g dg d	dg d
          d}t          dddt          j        g d          t          j                              }t	          j        |d|g d                                          }t                              |           |                                           t                              |           |                                           t          	                    |           |	                                           t          
                    |           |
                                           t                              |           |                                           t                              |           |                                           t                              |           |                                           t                              |           |                                           t                              |           |                                           t                              d|           |                    d                     t                              d|           |                    d                     t                              d|           |                    d                     t                              |           |                                           dD ]}t                              ||           |                    |                     t                              ||           |                    |                     t          	                    ||           |	                    |                     t          
                    ||           |
                    |                     t                              ||           |                    |                     t                              ||           |                    |                     t                              ||           |                    |                     t                              ||           |                    |                     t                              ||           |                    |                     t                              |d|           |                    |d                     t                              |d|           |                    |d                     t                              |d|           |                    |d                     t                              ||           |                    |                     t#          j        t&          fd           t(          r#t*          st#          j        t.          d          }nt1          j                    }|5  
                    d |           }d d d            n# 1 swxY w Y   |5  |
                    d           }d d d            n# 1 swxY w Y   t          ||           |5                      d |           }d d d            n# 1 swxY w Y   |5  |                    d           }d d d            n# 1 swxY w Y   t          ||           |5                      d |           }d d d            n# 1 swxY w Y   |5  |                    d           }d d d            n# 1 swxY w Y   t          ||           t5                              |           d           t5                              |           d           t5          
                    |           d           t5                              |           d           t5                              |           d            t5                              |           d!           t5                              |           d"           t5                              |           d#           t5                              |           d$           t5                              |           d"           t5                              |           d#           t5                              |           d$           t5                              |           d!           t5                              |           d"           t5                              |           d#           t5                              |           d$           t5                              |           d           t5                              |           d            t5                              d%|           d           t5                              d%|           d           t5          
                    d%|           d           t5                              d%|           d           t5                              d%|           d            t5                              d%|           d&           t5                              d%|           d!           t5                              d%|           d'           t5                              d%|           d(           d S ))Nr   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   c                 T                          d                                          S )N	incorrectr   )r   rB   )rJ   s   rd   r   z'test_reductions_frame.<locals>.<lambda>  s!    dhhKh&@&@&H&H&J&J rf   z	axis=Noner   zdataframe-sumzdataframe-prodzdataframe-minzdataframe-maxzdataframe-countzdataframe-varmoment_chunk
moment_aggvaluesr   zdataframe-stdzdataframe-semzdataframe-mean)r>   r?   r   r@   rA   rB   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r
   r  FutureWarningr  r  r   )	r   rH   rI   rK   r   r  r   expectedrJ   s	           @rd   test_reductions_framerP  J  s    ,YYYYYY??yyyQQQ,YYYYYY??yyyQQQ,YYYYYY??yyyQQQ C
 bhr4&8&8blnn  D <S$55D<<>>Ddhh;h//<<<diiKi00$))++>>>dll{l33T\\^^DDDdhh;h//<<<dhh;h//<<<djj[j114::<<@@@dhh;h//<<<dhh;h//<<<dhh;h//<<<dhhA;h77q9I9IJJJdhhA;h77q9I9IJJJdhhA;h77q9I9IJJJdiiKi00$))++>>>* W W$((+(>>d@S@STTT$));)??PTAUAUVVVLLdL<<dllPTl>U>U	
 	
 	
 	$((+(>>d@S@STTT$((+(>>d@S@STTT$**$K*@@$**RV*BWBWXXX$((+(>>d@S@STTT$((+(>>d@S@STTT$((+(>>d@S@STTTHH$QKH@@HH$QH''	
 	
 	
 	HH$QKH@@HH$QH''	
 	
 	
 	HH$QKH@@HH$QH''	
 	
 	
 	$));)??PTAUAUVVVV
M*JJJJKKK  '] 'l=<<<$&&	 > >t==> > > > > > > > > > > > > > >	 ' '888&&' ' ' ' ' ' ' ' ' ' ' ' ' ' 'fh	 > >t==> > > > > > > > > > > > > > >	 ' '888&&' ' ' ' ' ' ' ' ' ' ' ' ' ' 'fh	 ? ?+>>? ? ? ? ? ? ? ? ? ? ? ? ? ? ?	 ( (99$9''( ( ( ( ( ( ( ( ( ( ( ( ( ( (fh dhh;h77IIIdiiKi88:JKKKdhh;h77IIIdhh;h77IIIdjj[j99;LMMM dhh;h77IIIdhh;h77HHHdhh;h77FFFdhh;h77BBBdhh;h77HHHdhh;h77FFFdhh;h77BBBdhh;h77IIIdhh;h77HHHdhh;h77FFFdhh;h77BBBdiiKi88/JJJdiiKi88:KLLL dhhA;h??QQQdiiQKi@@BRSSSdhhA;h??QQQdhhA;h??QQQdjja[jAACTUUUdhhA;h??QQQdhhA;h??QQQdhhA;h??QQQdiiQKi@@BRSSSSSsl   [>>\\\..\25\2]//]36]3<^^#&^#<_  _$'_$-```zfunc, kwargs)r   N)r   N)r   N)r   N)r   Nr   r   r   )r   r   )r   N)r   N)r   N)r   Nr   )r   Nr   numeric_onlyz"numeric_only=False not implemented)r   strict)marksc                   t                      r| dk    r|t          j        d           t          j        g dddddt
          j        dd	d
gt          j        gd t          dd          D             z   t          d          t          j
        dddddddt
          j        g          ddgdz  d          }|i }|du s|7| dv r|                    ddg          }| dv r|                    dg          }|||d<   t          j        |d          }t                      5   t          ||           di |} t          ||           di |}t!          ||           d d d            d S # 1 swxY w Y   d S ) Nr   z"Known failure with pyarrow stringsr/         ?       @      @      @      @      @       @c                0    g | ]}t          d |d          S i  r   r   .0is     rd   
<listcomp>z0test_reductions_frame_dtypes.<locals>.<listcomp>  $    HHHqhtQ22HHHrf   r   r#   r6   r   r   r   r   r   r%   TFintfloatdtstr	timedeltar   )r   r   r   r   medianr   r   r   rf  rh  r  )r   r   r   r   r   r   rg  rQ   )r   r   xfailr>   r?   r   r   NaTrangerG   r  droprA   rC   r   r
  r   )r=  kwargsrQ  ro   r   rO  actuals          rd   test_reductions_frame_dtypesrq    s   L    ;TU]]|7K9:::	+++3S"&#sC@6(HHE!QKKHHHH
##!Q1aArv)FGG5MA%	
 	
	
 	
B ~u 4TTT$!455BCCC%))B!-~
.Q

C	'	)	) $ $$72t$$..v..#d##--f--(F###$ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $s   !=E++E/2E/c                    t          j        g dddddt          j        dddgt           j        gd	 t          d
d          D             z   t          d          t          j        d
ddddddt          j        g          ddgdz  d          } t          j	        | d          }t          |                    d
          |                     d
                     t          |                    dd
          |                     dd
                     t          |                    dd
          |                     dd
                     d S )Nr/   rU  rV  rW  rX  rY  rZ  r[  c                0    g | ]}t          d |d          S r]  r   r^  s     rd   ra  z4test_count_numeric_only_axis_one.<locals>.<listcomp>  rb  rf   r   r#   r6   r   r   r   r   r   r%   TFrc  rk   r   )rQ  r   )r>   r?   r   r   rl  rm  rG   r  rA   rC   r   r   )ro   r   s     rd    test_count_numeric_only_axis_onert    sI   	+++3S"&#sC@6(HHE!QKKHHHH
##!Q1aArv)FGG5MA%	
 	
	
 	
B .
+
+
+CciiQiq!1!1222		u1	--rxxUQRx/S/S   ciiTi22BHH$UVH4W4WXXXXXrf   r=  )	r   r   r   r   r   r   r   r   quantilec                v   t          j        g dddddt          j        dddgt           j        gd	 t          d
d          D             z   t          d          t          j        d
ddddddt          j        g          ddgdz  d          }d}| dk    r|                    d          }d
}t          j
        ||          }g d}t           t          ||           d           t          ||           d                     t          t          nt          t          f}| |v rPt!          j        |d          5   t          ||           d           d d d            n# 1 swxY w Y   t$          }nBt           t          ||           d           t          ||           d                     d }t&          r| |v rHt!          j        |d          5   t          ||                        d d d            n# 1 swxY w Y   nt           t          ||                        t          ||                                  nFt(          rt!          j        |d          5   t          ||                       }d d d            n# 1 swxY w Y   t!          j        |d          5   t          ||                       }d d d            n# 1 swxY w Y   t          ||           n| dv rd }t!          j        |d          5   t          ||                       }d d d            n# 1 swxY w Y   t!          j        |d          5   t          ||                       }d d d            n# 1 swxY w Y   t          ||           d d!g}	| dk    r|	                    d           ||	         }
||	         }t           t          |
|                        t          ||                                  t           t          |
|           d           t          ||           d                     d S )"Nr/   rU  rV  rW  rX  rY  rZ  r[  c                0    g | ]}t          d |d          S r]  r   r^  s     rd   ra  zGtest_reductions_frame_dtypes_numeric_only_supported.<locals>.<listcomp>#  rb  rf   r   r#   r6   r   r   r   r   r   r%   TFrc  ru  r   r  )r   r   r   r   r   ru  rQ  z'DatetimeArray' with dtype datetime64.*|'DatetimeArray' does not implement reduction|could not convert|'ArrowStringArray' with dtype string|unsupported operand|no kernelr   z!The default value of numeric_only)r   r   ru  zDropping of nuisancerd  re  )r>   r?   r   r   rl  rm  rG   r  rn  rA   rC   r   r
  par7  r   r   r   rN  r
   r	   r  append)r=  ro   rl   r   numeric_only_false_raiseserrorswarning	pd_result	dd_resultnum_colsdf_numericsddf_numericss               rd   3test_reductions_frame_dtypes_numeric_only_supportedr    s(    
+++3S"&#sC@6(HHE!QKKHHHH
##!Q1aArv)FGG5MA%	
 	
	
 	
B KzWWVW$$
.[
)
)C T T T Dt,,,T---   *YY96N*OF (((]-
 
 
 	3 	3 GCE2222	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3  GB5111GCE222	
 	
 	
   (,,,1   % % #T""$$$% % % % % % % % % % % % % % % !D!!##"T""$$    
 (\')LMMM 	, 	,)D))++I	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	,\')LMMM 	- 	-*T**,,I	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	-)Y''''---G\')?@@@ 	, 	,)D))++I	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	,\')?@@@ 	- 	-*T**,,I	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	-)Y'''wHzX,Kx=L"T""$$#d##%%   "T""666#d##777    sl   ;E""E&)E&G==HH%J

JJ+KKKL--L14L1M33M7:M7r   c                   t          j        g dddddt          j        dddgt           j        gd	 t          d
d          D             z   t          d          t          j        d
ddddddt          j        g          ddgdz  d          }t          j	        |d          }ddi}t           t          ||           di | t          ||           di |           t          j        t          d          5   t          ||           d           d d d            n# 1 swxY w Y   t           |j        dddi| |j        dddi|           t           |j        dddi| |j        dddi|           t           |j        dddi| |j        dddi|           t           |j        dddi| |j        dddi|           t           |j        dddd| |j        dddd|           t          |                                |                                           |g d         }|g d         }t          ||                                           |                                j        |j        k    sJ t           t          ||                        t          ||                                  d S ) Nr/   rU  rV  rW  rX  rY  rZ  r[  c                0    g | ]}t          d |d          S r]  r   r^  s     rd   ra  z=test_reductions_frame_dtypes_numeric_only.<locals>.<listcomp>  rb  rf   r   r#   r6   r   r   r   r   r   r%   TFrc  rQ  z'numeric_only=Falser   rx  r   r   r   r   )rd  re  r   rj  )r>   r?   r   r   rl  rm  rG   r  rA   rC   r   r
  r   r   NotImplementedErrorr   r   r   _get_numeric_datarn   )r=  ro   r   ro  r  r  s         rd   )test_reductions_frame_dtypes_numeric_onlyr  }  s    
+++3S"&#sC@6(HHE!QKKHHHH
##!Q1aArv)FGG5MA%	
 	
	
 	
B .Q

Cd#FD##F##T$$V$$   
*2G	H	H	H / /T..../ / / / / / / / / / / / / / / fbf&&!&v&&(A(AQ(A&(A(ABBBfbf&&!&v&&(A(AQ(A&(A(ABBBfbf&&!&v&&(A(AQ(A&(A(ABBBfbf,,E,V,,gcg.M.MU.Mf.M.MNNN.e!..v..0Wu10W0WPV0W0W  
 b""$$c&;&;&=&=>>>---.K///0Lk30022333))++0L4EEEEE"T""$$#d##%%    s   8DD#&D#r   r   c                f   t          j        d           t          j        g dddddt          j        ddd	gt          j        gd
 t          dd          D             z   d          }t          j	        |d          }t          j
        t          d          }|5   t          ||           d           d d d            n# 1 swxY w Y   |5   t          ||           d           d d d            n# 1 swxY w Y   t          r#t          st          j        t           d          }n"t          st          j        t           d          }|5   t          ||                        d d d            n# 1 swxY w Y   |5   t          ||                        d d d            d S # 1 swxY w Y   d S )Nzscipy.statsr/   rU  rV  rW  rX  rY  rZ  r[  c                0    g | ]}t          d |d          S )i  r   r   r^  s     rd   ra  z5test_skew_kurt_numeric_only_false.<locals>.<listcomp>  rb  rf   r   r#   )rd  re  rf  r   rk   z#does not support|does not implementr   Frx  zdefault valueznuisance columns)r   importorskipr>   r?   r   r   rl  rm  rA   rC   r   r7  r
  r	   r
   r  rN  )r=  ro   r   r  s       rd   !test_skew_kurt_numeric_only_falser    s   
&&&	+++3S"&#sC@6(HHE!QKKHHHH	
 	

 
B .
+
+
+C
-	)N
O
O
OC	 . .Du----. . . . . . . . . . . . . . .	 / /T..../ / / / / / / / / / / / / / /  D] Dl=@@@ Dl=0BCCC	  D              	  T                 sH   CCCC55C9<C9E33E7:E7 F&&F*-F*c                   t          j        ddt          j        dddddgddt          j        t          j        t          j        dt          j        t          j        gt          j        gdz  d          }t	          j        |d	          }t          |                                |                    | 
                     t          |                                |                    | 
                     t          |	                                |	                    | 
                     t          |
                                |
                    | 
                     t          |                                |                    | 
                     t          |                                |                    | 
                     t          j                    5  t          j        dt                      t          |                                |                    | 
                     t          |                                |                    | 
                     t          |                                |                    | 
                     t          |                    d          |                    d|                      t          |                    d          |                    d|                      t          |                    d          |                    d|                      d d d            n# 1 swxY w Y   t          |                                |                    | 
                     t          j        d          5  t          |                    d          |                    d|                      t          |                    d          |                    d|                      t          |	                    d          |	                    d|                      t          |
                    d          |
                    d|                      t          |                    d          |                    d|                      t          |                    d          |                    d|                      t          |                    d          |                    d|                      t          |                    d          |                    d|                      t          |                    dd          |                    dd|                      t          |                    dd          |                    dd|                      t          |                    dd          |                    dd|                      t          |                    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dd|                      t          |                    ddd          |                    ddd|                      t          |                    ddd          |                    ddd|                      t          |                    dd          |                    dd|                      d d d            d S # 1 swxY w Y   d S )Nr   r   r   r   r   r%   r#   r7   r   r   r   r   r   r   T)recordFr   r   r   r   )r   r   )r   r   r   )r   r   r   )r   r   r   r   )r>   r?   r   r   rA   rC   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   ro   r   s      rd   test_reductions_frame_nanr    s   	Q1aA.Q2626B&A	
 	

 
B .Q

CbffhhK88999bggiik::;;;bjjllCKKKK@@AAAbffhhK88999bffhhK88999bhhjj#)))<<===		 	"	" 	L 	L 	h777"&&((CGGG<<==="&&((CGGG<<==="&&((CGGG<<==="&&a&..#''qk'"J"JKKK"&&a&..#''qk'"J"JKKK"&&a&..#''qk'"J"JKKK	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L bggiik::;;;		 	-	-	- L
 L
"&&&&&u+(V(VWWWGG5G!!3885k8#R#R	
 	
 	
 	JJeJ$$ckkKk&X&X	
 	
 	
 	"&&&&&u+(V(VWWW"&&&&&u+(V(VWWW"&&&&&u+(V(VWWW"&&&&&u+(V(VWWW"&&&&&u+(V(VWWWFF%aF((GG5qkGBB	
 	
 	
 	FF%aF((GG5qkGBB	
 	
 	
 	FF%aF((GG5qkGBB	
 	
 	
 	GG5G!!3885k8#R#R	
 	
 	
 	FF%F((GG5kGBB	
 	
 	
 	GG5G))HH!E{HCC	
 	
 	
 	JJAeJ,,KKQu+KFF	
 	
 	
 	FF%F((GG5kGBB	
 	
 	
 	FF%F((GG5kGBB	
 	
 	
 	FF%F((GG5kGBB	
 	
 	
 	FF%F((GG5kGBB	
 	
 	
 	FF%F((GG5kGBB	
 	
 	
 	FF%aF00GG5qkGJJ	
 	
 	
 	FF%aF00GG5qkGJJ	
 	
 	
 	FF%aF00GG5qkGJJ	
 	
 	
 	GG5G))HH!E{HCC	
 	
 	
SL
 L
 L
 L
 L
 L
 L
 L
 L
 L
 L
 L
 L
 L
 L
 L
 L
 L
s&   E(MMM)U=d33d7:d7
comparison)r   r   r   r   r   r   c           	     `   t          j        g d          }t          j        dddt          j        dddg          }t	          j        |d          }t	          j        |d          }d	}t          ||           }t          ||           }t           |||
           |||
                     d S )Nr   r   rz   r#   r   r   g333333@r   r%   r   )r>   r   r   r   rA   rC   r
  r   )r  r   s_nanr  ds_nanr   comparison_pdcomparison_dds           rd   test_series_comparison_nanr  :  s    
	'''((AIq"aAs344E	1		B^E1%%FJAz**MB
++Mf444e
333    rf   c                     t          j        g dt          j                              } t          j        | d          }t          |                                 |                                           d S )N)r   Nr   r   r   )r>   r   
Int32DtyperA   rC   r   r   r   s     rd   test_sum_intnar  J  sW    
	,,,bmoo666A
q!Aaeeggquuwwrf   c                    t          j        t          j                            d                    } t          j        t          j                            d                    }t          j        | d          }t          j        |d          }t          |d          }t          | d          }t          |d         |d                    t          |d         |d                    t          ||          }t          | |          }t          |d         |d                    t          |d         |d                    d S )Nr3   r   rk   rV  r   r   )	r>   r   r   r   randrA   rC   divmodr   )df1df2rJ   rN   r   rO  s         rd   test_divmodr  P  s   
)BINN2&&
'
'C
)BINN2&&
'
'C>#1---D>#1---DD#Fc3HfQi!%%%fQi!%%%D$Fc3HfQi!%%%fQi!%%%%%rf   z	not scipyc                 &   ddl m}  ddlm} t	          j        t          t          d                              }t          j	        |d          } || 
                    |dd          t          j        
                    |dd                     d S )Nr   )stats)r   r3   r   rk   )
dask.arrayr  dask.array.utilsr   r>   r   rG   rm  rA   rC   momentr   )r  r   ro   r   s       rd   test_momentr  b  s          ******	4b		??	#	#B
.
+
+
+CIell31%%u{'9'9"a'C'CDDDDDrf   )r   r   r   r   r   c                   t          j                    }t          j        |d          }t	          |j        |           }t	          |j        |           }t           ||           ||                     t          j        dd          }t          j        |          }t          j        |d          }t           ||           ||                     d S )Nr   rk   2000r   )rC  r   )r>   r?   rA   rC   r
  r  r   rE  )r=  r   r   dsk_funcpd_funcidxs         rd   test_empty_df_reductionsr  m  s    
,..C
.!
,
,
,Cs}d++HcmT**GhhsmmWWS\\***
-
*
*
*C
,S
!
!
!C
.!
,
,
,ChhsmmWWS\\*****rf   method)r   r   r   	min_countr&   c                   t          j        dggdg          }t          j        |d          }t	          |d         |           } ||                                          }|dk    r
|dk    sJ d S |t          j        u sJ d S )Nr   r   r  rk   )r  r   )r>   r?   rA   rC   r
  rB   r   r   )r  r  ro   r   r=  r   s         rd   test_series_agg_with_min_countr  ~  s     
secU	+	+	+B
.
+
+
+C3s8V$$DTI&&&..00FA~~{{{{{{rf     c                &   t          |           rt          j        | g          } t          |          rt          j        |g          }| j        |j        k    sJ t	          t          j        |           t          j        |          |           d S )N)atol)r   r>   r   r   r   
to_numeric)t1t2r  s      rd   assert_near_timedeltasr    s    }} Yt__}} Yt__8rxbmBr!2!2>>>>>>rf   r   )TFNc                   t          j        d t          d          D             d t          d          D             d          }t          j        |d          }|i nd|i}t           |d         j        d	i | |d         j        d	i |           t           |d         j        d	i | |d         j        d	i |            |j        d	d| i|} |j        d	d| i|}t          |                                |            |j        d	d| i|} |j        d	d| i|}t          |                                |           d S )
Nc                B    g | ]}t          j        d |dz  z             S )a r   fromtimestampr^  s     rd   ra  z7test_datetime_std_creates_copy_cols.<locals>.<listcomp>  9       FG&zQZ'@AA  rf   r3   c                B    g | ]}t          j        d |dz  z             S )r  i r  r^  s     rd   ra  z7test_datetime_std_creates_copy_cols.<locals>.<listcomp>  r  rf   dt1dt2r   rQ  r  r   rj  )	r>   r?   rm  rA   rC   r   r   r  rB   )r   rQ  r   r   ro  rO  r   s          rd   #test_datetime_std_creates_copy_colsr    s    , KPQS99   KPQS99  		
 	
	 	C .a
 
 C'RRnl-KF nc%jn&&v&&E
(@(@(@(@AAAnc%jn&&v&&E
(@(@(@(@AAA sw++D+F++HSW))$)&))F6>>++X666sw++D+F++HSW))$)&))F6>>++X66666rf   c                z   d}t          j        t          j        t           j        gdz  t	          d                    t          j        t          j        d t	          |dz
            D             t	          dd                              gd          }d t	          |          D             }t          j        |t          j        t          j        |                    dt	          d                    }t	          d	d
          D ]:t          j        t          j        fd|D                                 |d <   ;t          j        |d
          }|i nd|i}||d<    |dg         j	        dd| i|}	 |dg         j	        dd| i|}
t          |
                                |	           t           |d         j	        di |                                 |d         j	        di |            |j	        dd| i|}	 |j	        dd| i|}
t          |
                                |	           d S )N   rx   r   c                B    g | ]}t          j        d |dz  z             S ar  r  r^  s     rd   ra  z9test_datetime_std_with_larger_dataset.<locals>.<listcomp>  s<        !.zQZ/HII  rf   F)ignore_indexc                    g | ]
}d |dz  z   S )l   TVr 5 l   Iw| rj  r^  s     rd   ra  z9test_datetime_std_with_larger_dataset.<locals>.<listcomp>  s0       9:	N 2	3  rf   r  r   r#   c                :    g | ]}t          |d z  z             S )gQ?)rd  )r_  r*   r`  s     rd   ra  z9test_datetime_std_with_larger_dataset.<locals>.<listcomp>  s)    AAAqs1q>**AAArf   rf  rQ  r   r  r   rj  )r>   concatr   rl  rm  to_datetimer?   rA   rC   r   r  rB   )r   r   rQ  num_rowsr  base_numbersr   r   ro  rO  r   r`  s              @rd   %test_datetime_std_with_larger_datasetr    s    H
)Irvhm599555N	 !&x"}!5!5    C..   	
   C  >CHoo  L ,BN29\+B+BCCDDERUJJ  C 1a[[ 
 
IAAAALAAABB
 
HHH .a
 
 C'RRnl-KFF8sE7|44T4V44HS%\2242622F6>>++X666 >3u:>33F33;;==~s5z~?W?WPV?W?WXXX sw++D+F++HSW))$)&))F6>>++X66666rf   c                ~   t          j        d t          d          D             d t          d          D             d t          d          D             d          }t          j        |d          }|i nd|i}| |d<   t          j                    }d	}|d
u s	t          r|t          j	        t                    }d
}n|t          j        t          d          } |dg         j        dddi|} |dg         j        dddi|}|rt          ||           |5   |j        dddi|}d d d            n# 1 swxY w Y   |5   |j        dddi|}d d d            n# 1 swxY w Y   |rt          ||           t          j        t           j        gd t          d          D             z   t           j        gz   d t          d          D             d t          d          D             d          }	t          j        |	d          }
 |	j        dddi|} |
j        dddi|}|rt          ||           d S d S )Nc                B    g | ]}t          j        d |dz  z             S r  r  r^  s     rd   ra  z?test_datetime_std_across_axis1_null_results.<locals>.<listcomp>  r  rf   r3   c                B    g | ]}t          j        d |dz  z             S )r  iR r  r^  s     rd   ra  z?test_datetime_std_across_axis1_null_results.<locals>.<listcomp>  r  rf   c                    g | ]}|S rj  rj  r^  s     rd   ra  z?test_datetime_std_across_axis1_null_results.<locals>.<listcomp>  s    ***1Q***rf   )r  r  numsr   rQ  r   TFr   r  r   r   c                B    g | ]}t          j        d |dz  z             S r  r  r^  s     rd   ra  z?test_datetime_std_across_axis1_null_results.<locals>.<listcomp>  s,    TTTQx%jAJ&?@@TTTrf   c                B    g | ]}t          j        d |dz  z             S r  r  r^  s     rd   ra  z?test_datetime_std_across_axis1_null_results.<locals>.<listcomp>  r  rf   rt   c                B    g | ]}t          j        d |dz  z             S )r  iO r  r^  s     rd   ra  z?test_datetime_std_across_axis1_null_results.<locals>.<listcomp>  r  rf   )r  r  dt3rj  )r>   r?   rm  rA   rC   r  r  r
   r   r   r7  r  rN  r   r   rl  )r   rQ  r   r   ro  r  successrO  r   rL   rN   s              rd   +test_datetime_std_across_axis1_null_resultsr    su    , KPQS99   KPQS99   +*b		***	
 	

 
C .a
 
 C'RRnl-KFF8

 
"
"CGu<3GmI&&		l=???  sE7|11Q1&11HS%\//1///F $&(### 
 - -37,,,V,,- - - - - - - - - - - - - - -	 + +**a*6**+ + + + + + + + + + + + + + + $&(### <F8TT%PR))TTTUvh KPQS99   KPQS99  
	
 
	
 D >$""Dtx))Q)&))HTX''1'''F $&(#####$ $s$   D77D;>D;E  E$'E$c                     t          j        t          d          5  t          j        t          j        dddgi          d          j                                         d d d            d S # 1 swxY w Y   d S )NzB`std` is only supported with objects that are Dataframes or Seriesr   testr   r   rk   )	r   r   r  rA   rC   r>   r?   r    r   rj  rf   rd   test_std_raises_on_indexr  ,  s    	R
 
 
 R R 	r|VaV$4551EEEKOOQQQ	R R R R R R R R R R R R R R R R R Rs   AA--A14A1zArrowDtype not supportedc                 X   t          j        d          } t          j        g dt          j         | j                                        }t          j        |d          }t          j        t          d          5  |
                                 d d d            d S # 1 swxY w Y   d S )Npyarrowr7   r   r   rk   z&`std` not supported with string seriesr   )r   r  r>   r   
ArrowDtypestringrA   rC   r   r   r   )ry  serr  s      rd   $test_std_raises_with_arrow_string_ear  4  s    		Y	'	'B
)OOO2=+E+E
F
F
FC		+	+	+B	z)Q	R	R	R  
                 s   =BB#&B#r   zint64[pyarrow]zrequires pyarrow installedzfloat64[pyarrow]Int64Int32Float64UInt64)r   r   r   r   c                   |dv r,t          j        d           d| v rt          j        d           t          j        g d|           }t          j        |d          } t          ||                      } t          ||                      }|d	k    r@|j        d
         }|dz
  |dz   z  |dz
  |dz
  z  z  }d|dz
  z  |dz
  |dz
  z  z  }||z  |z   }t          ||d           d S )N)r   r   r   r  z.skew/kurtosis not implemented for arrow dtypesrh   r   r   rk   r   r   r   r   r   F)check_dtype)
r   r  rk  r>   r   rA   rC   r
  r   r   )	r   r=  r  r  r~  r  r   r   r   s	            rd   (test_reductions_with_pandas_and_arrow_ear  =  s   . ###G$$$LIJJJ
)LLL
.
.
.C		+	+	+B"T""$$I!D!!##IzIaLq5QU#Q1q5(9:q1u+1q5QU"34Y&/	i666666rf   )T)r  )N
__future__r   r  r   r   numpyr   pandasr>   r   pandas.api.typesr   dask.dataframe	dataframerA   dask.array.numpy_compatr   dask.dataframe._compatr   r	   r
   r   r   dask.dataframe.utilsr   r   r   r   r   ImportErrorr  ry  pyarrow.libr   markslowre   rp   r|   rE   rF   r   r   rk  r   parametrizer   r  r?   r   r  xfail_with_pyarrow_stringsr$  r'  r8  rG  rP  paramrq  rt  r  r  r  r  r  r  r  skipifr  r  r  r  r  r  r  r  r  r  rj  rf   rd   <module>r     s
   " " " " " "                     & & & & & &       . . . . . .                        LLLL   EEE$4444444 $ $ $	B#$
 oJ oJ oJdF F F wJ wJ wJtR* R* R* R*jQ* Q* Q* Q*hC& C& C&L, , ,^ g>   iD iD	 iDX 
33\W \W 43\W~ 
33> > 43>  BLyyyyyy99KKKBIb	***	
 BLyyyyyy99KKKBIb	***	

 
;;;		t,   MMM 5 5 ! &5@ 
33'-4 -4 (' 43-4` 
33+ + 43+\P P P6 '>, >, ('>,B 
33pT pT 43pTf 		5!"	e,,-		5!"	e,,-		5!"	e,,-' 0 +##A% $  	
 	
 	
	 !$ !$ 1 J!$HY Y Y( 
WWW \ \ \~ 
 * * *Z &*!566  76: 
33g
 g
 43g
T 'K'K'KLL  ML     & & &$ K  E E ! E !G!G!GHH+ + IH+  #=#=#=>>q!f--    .- ?> ? ? ? ? !Q(()<)<)<==7 7 >= )(7< !Q((E4=11)<)<)<==/7 /7 >= 21 )(/7d E4=11)<)<)<==<$ <$ >= 21<$~R R R %.HII  JI +$$d
/-/8T %  	
 	
 	
 	+$$d
/-/8T %  	
 	
 	
 	! * !C!C!CDD7 7 ED+ ,7 7 7s$   A AA!
A, ,	A87A8