
    o[we&V                     
   d dl Zd dlZd dlZd dlmZmZmZmZm	Z	m
Z
 d dlmZ d dlmZ  ej        ddg          d             Zd Zd	 Zd
 Zej                            dddg          d             Zd Zej                            ddi d fdddidfdi dfdddidfg          d             Zd Zd Zd Zd Zd Zej                            dd d ej        gd d!ej        gg          d"             Z d# Z!d$ Z"d% Z#ej                            d&e          d'             Z$d( Z%d) Z&ej                            d*e'd+ g          d,             Z(d- Z)ej                            d.d/d0g          d1             Z*d2 Z+d3 Z,ej                            d4d/i fd0d5difd0d5difg          d6             Z-d7 Z.ej                            d8 eddg ej/        d d9g          :           e ej0        ddggdd ;          d<=          f ej1        d>?           e ej0        ddggd>d ;          d<=          fg          ej                            d@ddg          dA                         Z2ej                            dBd e ej3        d>          d<=          fdCg          dD             Z4dE Z5ej                            dFej6        gdGgfej6        ej7        gdGdHgf ej8        ej6        g          dGgf ej8        ej6        ej7        g          dGdHgfg          ej                            dId/i gd0d5digd0d5digg          dJ                         Z9ej                            dKdLej6        iej6        ej7        dM edLej6        i           eej6        ej7        dM          g          ej                            dId/i gd0d5digd0d5digg          dN                         Z:ej                            dFej;        gdOgfej<        ej;        gdPdOgf ej8        ej;        g          dOgf ej8        ej<        ej;        g          dPdOgfg          dQ             Z=ej                            dRdS g edTg dUi          fdV g edWgdTg:          fg          dX             Z>ej                            dKdLej;        iej;        ej?        dM edLej;        i           eej;        ej?        dM          g          dY             Z@ej                            dRddZ i eg dU ejA        dgd[z   eBd[          g          :          fdd\ i edWgdg:          fg          d]             ZCd^ ZDd_ ZEd` ZFdS )a    N)	DataFrameIndex
MultiIndexSeriesconcattimedelta_range)series_transform_kernelsFcompat)paramsc                     | j         S N)param)requests    Dlib/python3.11/site-packages/pandas/tests/apply/test_series_apply.pyby_rowr      s
    =    c                      t          t          ddd                    } fd}|                    |           }|                    d           }t	          j        ||           t          g d          }t	          j        ||           d S )	Nz	1 day 1 s   h)periodsfreqc                 b    r|                                  n| j                                         S r   )total_secondsdtxr   s    r   fz(test_series_map_box_timedelta.<locals>.f   s+    $*Dq   0B0B0D0DDr   r   c                 *    |                                  S r   )r   r   s    r   <lambda>z/test_series_map_box_timedelta.<locals>.<lambda>   s    !2!2 r   )g    @g    @g    @)r   r   applymaptmassert_series_equal)r   serr   resultexpecteds   `    r   test_series_map_box_timedeltar)      s    
acBBB
C
CCE E E E E YYqY((Fww2233H68,,,11122H68,,,,,r   c                 6   |                      t          j        |          }t          j        d          5  t          j        |           }d d d            n# 1 swxY w Y   t	          j        ||           |                      t          j        |          }t          j        |           }t	          j        ||           t          t          dt          g d                    }|                     d |          }t	          j        ||           ||usJ |j
        |j
        u sJ |j        |j        k    sJ |j        |j        k    sJ t          g d	t          j        
          }|                     d |          }t	          j        ||           d S )Nr   ignoreallfoobarname)dtyper1   indexc                     | S r    r    s    r   r!   ztest_apply.<locals>.<lambda>3       1 r         r   r3   r2   c                     | S r   r5   r    s    r   r!   ztest_apply.<locals>.<lambda>>   r6   r   )r"   npsqrterrstater$   r%   expr   objectr   r3   r2   r1   float64)datetime_seriesr   r'   r(   srss         r   
test_applyrE   &   s   ""276"::F		"	"	" , ,7?++, , , , , , , , , , , , , , ,68,,, ""26&"99Fvo&&H68,,, 	V%uRe/D/D/DEEEA	
V	,	,B1b!!! B;;;;7bh7bh6RW 	YYYbj111A	
V	,	,B1b!!!!!s   AAAc                      t          ddg          } d }|                     |d          }|                     |          }t          j        ||           d S )Nr8   r9   c                     | | dz   fS Nr8   r5   r    s    r   r   z3test_apply_map_same_length_inference_bug.<locals>.fE   s    1q5zr   r
   r   )r   r"   r#   r$   r%   )rC   r   r'   r(   s       r   (test_apply_map_same_length_inference_bugrI   B   s_    1vA   WWQxW((FuuQxxH68,,,,,r   convert_dtypeTc                    t          t          j                            d                              d                    }d }t          j        t                    5  |                    || d           d d d            d S # 1 swxY w Y   d S )Nr9   
   c                 *    | dk    r| nt           j        S )Nr   )r<   nanr    s    r   funcz1test_apply_convert_dtype_deprecated.<locals>.funcQ   s    EEqqrv%r   r
   )rJ   r   )	r   r<   randomdefault_rngstandard_normalr$   assert_produces_warningFutureWarningr"   )rJ   r&   rO   s      r   #test_apply_convert_dtype_deprecatedrU   M   s    
&&q))99"==
>
>C& & & 
	#M	2	2 F F		$mH	EEEF F F F F F F F F F F F F F F F F Fs   BB	Bc                      t          dg          } |                     t          j        d          }|d         ddgk    sJ t	          |d         t
                    sJ d S )Nzfoo,bar),argsr   r.   r/   )r   r"   strsplit
isinstancelist)rC   r'   s     r   test_apply_argsr^   X   sa    	{AWWSYVW,,F!9&&&&fQi&&&&&&&r   zargs, kwargs, incrementr5   ar8   )r9   r       )r8   cr9      c                     dd}t          ddg          }d}t          j        t          |          5   |j        |dg| R i |}d d d            n# 1 swxY w Y   ||z   }t          j        ||           d S )Nr   c                 $    | |z   d|z  z   d|z  z   S )NrL   d   r5   )r   r_   bra   s       r   r   ztest_agg_args.<locals>.ff   s    1urAv~a''r   r8   r9   zhin Series.agg cannot aggregate and has been deprecated. Use Series.transform to keep behavior unchanged.match)r   r   r   )r   r$   rS   rT   aggr%   )rY   kwargs	incrementr   rC   msgr'   r(   s           r   test_agg_argsrm   `   s    ( ( ( ( 	1vA	;  
	#M	=	=	= . .q!-d---f--. . . . . . . . . . . . . . .9}H68,,,,,s   AAAc                     t          g d          } dd}dd}d}t          j        t          |          5  |                     |dd	d
           d d d            n# 1 swxY w Y   t          j        t          |          5  |                     ||gdd	d
           d d d            n# 1 swxY w Y   t          j        t          |          5  |                     ||ddd	d
           d d d            d S # 1 swxY w Y   d S )Nr7   r8   r   c                     | |z   |z   S r   r5   )r   r_   ra   s      r   foo1z.test_agg_mapping_func_deprecated.<locals>.foo1x       1uqyr   r9   c                     | |z   |z   S r   r5   )r   rf   ra   s      r   foo2z.test_agg_mapping_func_deprecated.<locals>.foo2{   rq   r   z+using .+ in Series.agg cannot aggregate andrg   r      )ra   )r_   rf   )r8   r   )r9   r   )r   r$   rS   rT   ri   )rC   rp   rs   rl   s       r    test_agg_mapping_func_deprecatedru   t   s   yyyA       8C		#M	=	=	=  	dAqA              		#M	=	=	= ' '	tTlAqA&&&' ' ' ' ' ' ' ' ' ' ' ' ' ' '		#M	=	=	= 1 1	Dt$$aa0001 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1s5   AA!$A!B++B/2B/C;;C?C?c                 t   t          t          j        dd                    }d }| sNd}t          j        t
          |          5  |                    ||            d d d            n# 1 swxY w Y   d S |                    ||           }|                    |          }t          j	        ||           d S )Nz1/1/2000rL   )r   c                 *    | j         | j        | j        fS r   )hourdaymonthr    s    r   rO   z2test_series_apply_map_box_timestamps.<locals>.func   s    qw''r   z&Series' object has no attribute 'hour'rg   r   )
r   pd
date_rangepytestraisesAttributeErrorr"   r#   r$   r%   )r   r&   rO   rl   r'   r(   s         r   $test_series_apply_map_box_timestampsr      s    
z2666
7
7C( ( (  6]>555 	+ 	+IId6I***	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+YYtFY++Fwwt}}H68,,,,,s   A**A.1A.c                  &   t          j        d          t          j        d          g} t          |           }|j        dk    sJ |                    d d          }t          ddg          }t          j        ||           t          j        dd	
          t          j        dd	
          g} t          |           }|j        dk    sJ |                    d d          }t          ddg          }t          j        ||           t          j        d          t          j        d          g} t          |           }|j        dk    sJ |                    d d          }t          ddg          }t          j        ||           t          j        dd          t          j        dd          g} t          |           }|j        dk    sJ |                    d d          }t          ddg          }t          j        ||           d S )N
2011-01-01
2011-01-02zdatetime64[ns]c                 N    t          |           j         d| j         d| j         S N_type__name__ry   tzr    s    r   r!   z test_apply_box.<locals>.<lambda>   )    tAww/@@!%@@!$@@ r   r
   r   Timestamp_1_NoneTimestamp_2_Nonez
US/Eastern)r   zdatetime64[ns, US/Eastern]c                 N    t          |           j         d| j         d| j         S r   r   r    s    r   r!   z test_apply_box.<locals>.<lambda>   r   r   zTimestamp_1_US/EasternzTimestamp_2_US/Easternz1 daysz2 daysztimedelta64[ns]c                 >    t          |           j         d| j         S r   )r   r   daysr    s    r   r!   z test_apply_box.<locals>.<lambda>   s    tAww/::!&:: r   Timedelta_1Timedelta_2Mr   z	Period[M]c                 >    t          |           j         d| j         S r   )r   r   freqstrr    s    r   r!   z test_apply_box.<locals>.<lambda>   s    tAww/==!)== r   Period_M)	r{   	Timestampr   r2   r"   r$   r%   	TimedeltaPeriod)valsrC   resr?   s       r   test_apply_boxr      s   L&&\(B(BCDtA7&&&&&
''@@'
R
RC
$&89
:
:C3$$$ 	\l333
\l333D 	tA722222
''@@'
R
RC
*,DE
F
FC3$$$ L""BL$:$:;DtA7'''''
''::8'
L
LC
-/
0
0C3$$$ Il---ryC/P/P/PQDtA7k!!!!
''==h'
O
OC
*j)
*
*C3$$$$$r   c                     t          j        ddd                              d          }t          |d          }|                    d  	          }t          j        dd
d                              d          }t          |d          }t          j        ||           |                     fd 	          }t          t          t          d                    dgz   d rdnd          }t          j        ||            fd}|                    | 	          } r,t          dgdz  d          }t          j        ||           d S |dk     d S )Nr   r   Hr   z
Asia/TokyoXXr0   c                 D    | t           j                                        z   S r   )r{   offsetsDayr    s    r   r!   z'test_apply_datetimetz.<locals>.<lambda>   s    q2:>>#3#33 r   r   z
2011-01-03c                 .    r| j         n| j        j         S r   )rx   r   r   s    r   r!   z'test_apply_datetimetz.<locals>.<lambda>   s    >qvvQTY r      r   int64int32r1   r2   c                 b    rt          | j                  nt          | j        j                  S r   )rZ   r   r   r   s    r   r   z test_apply_datetimetz.<locals>.f   s$    "4s14yyyADG4r      )	r{   r|   tz_localizer   r"   r$   r%   r]   range)r   valuesrC   r'   
exp_valuesr?   r   s   `      r   test_apply_datetimetzr      s   ]<C@@@LL F 	vD!!!AWW33FWCCF|\DDDPP J $
'
'
'C63'''WW>>>>vWNNF
eBiiA3&TF9WPW
X
X
XC63'''5 5 5 5 5 WWQvW&&F l^b(t444
vs+++++,r   c                 |   t          j        t          d          t          d          d          }t          |dt          d                    }| smd}t	          j        t          |	          5  |                    d
 |            d d d            n# 1 swxY w Y   |                    d |           dk    sJ d S |                    d |           }t          j        t          d          t          d          d          }t          |dt          d                    }t          j	        ||           t          j
        |j        |j                   |                    d           }t          dgdz  dt          d                    }t          j	        ||           |j        t          k    sJ d S )NABBABCDDCBAT)
categoriesorderedr   abcdefg)r1   r3   z&Series' object has no attribute 'lowerrg   c                 *    |                                  S r   lowerr    s    r   r!   z(test_apply_categorical.<locals>.<lambda>   s    		 r   r   c                     dS NAr5   r    s    r   r!   z(test_apply_categorical.<locals>.<lambda>   s    3 r   r   c                 *    |                                  S r   r   r    s    r   r!   z(test_apply_categorical.<locals>.<lambda>   s     r   abbabcddcbac                     dS r   r5   r    s    r   r!   z(test_apply_categorical.<locals>.<lambda>   s     r      )r{   Categoricalr]   r   r}   r~   r   r"   r$   r%   assert_categorical_equalr   r2   r@   )r   r   r&   rl   r'   r?   s         r   test_apply_categoricalr      s   ^DOOVdSSSF
d$y//
:
:
:C 6]>555 	: 	:II))&I999	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	:yyvy66#====YY**6Y::F ^DOOVdSSSF
d$y//
:
:
:C63'''sz:::YY}}%%F
#T)__
=
=
=C63'''<6!!!!!!s   0BBBseriesz1-1z1-2c                    t          | d          }|sOd}t          j        t          |          5  |                    d |           d d d            n# 1 swxY w Y   d S |                    d |          }|                    t                    }t          ddt          j        gd          }|                    t                    }t          j
        ||           d S )	Ncategoryr2   z('Series' object has no attribute 'split'rg   c                 8    |                      d          d         S N-r   r[   r    s    r   r!   z8test_apply_categorical_with_nan_values.<locals>.<lambda>   s    aggcll1o r   r   c                 8    |                      d          d         S r   r   r    s    r   r!   z8test_apply_categorical_with_nan_values.<locals>.<lambda>   s    qwws||A r   1)r   r}   r~   r   r"   astyper@   r<   rN   r$   r%   )r   r   rC   rl   r'   r(   s         r   &test_apply_categorical_with_nan_valuesr      s    	vZ(((A 8]>555 	> 	>GG--fG===	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	>WW..vW>>F]]6""FsC(
;;;Hv&&H68,,,,,s   AAAc                     t          g t          j        dd          t                    }|                    d |           }t          j        ||           d S )Nz
2018-01-01r   )startr   r:   c                     | S r   r5   r    s    r   r!   zEtest_apply_empty_integer_series_with_datetime_index.<locals>.<lambda>	  s    q r   r   )r   r{   r|   intr"   r$   r%   )r   rC   r'   s      r   3test_apply_empty_integer_series_with_datetime_indexr     sU    r\1EEESQQQAWW[[W00F61%%%%%r   c                     t          t          j        g d          dg          } t          g ddg          }d }|d                             || f          }t	          g ddd	
          }t          j        ||           d S )N)r8   r9   r   rt      Numbers)columns)r9   r   r9   r8   r9   Indicesc                 ,    |d         j         |          }|S )Nr   )iloc)	targetRowtargetDFvals      r   retrievez+test_apply_dataframe_iloc.<locals>.retrieve  s    y!&y1
r   rX   )r   rt   r   r9   r   uint64r   )r   r<   r   r"   r   r$   r%   )uintDFindexDFr   r'   r(   s        r   test_apply_dataframe_ilocr     s    ry11I;GGGF)===G   Y%%hfY%??FoooIXFFFH68,,,,,r   c                 X   t          j        d          5  t          j        |           }t          j        |           }|                     t           j        |          }|                                }t          j        ||           |                     t           j        g|          }|                                                                }dg|_	        t          j
        ||           |                     dg|          }t          j
        ||           t          ||gd          }ddg|_	        |                     t           j        t           j        g|          }t          j
        ||           t          ||gd          }dd	g|_	        |                                                    d
          }|                     t           j        t           j        d|          }t          j        |                    |          |           d d d            d S # 1 swxY w Y   d S )Nr+   r,   r   r=   r8   axisabsoluter.   r/   r   )r.   r/   )r<   r>   r=   absr"   copyr$   r%   to_framer   assert_frame_equalr   unstackrenamereindex_like)string_seriesr   f_sqrtf_absr'   r(   s         r   test_transformr     sN    
	"	"	"  H  H''}%% $$RWV$<<;;==
vx000 $$bgYv$>>??$$))++"8
fh///$$fXf$==
fh///
 65/222"J/$$bgrv%6v$FF
fh/// 65/222!5>##%%,,X66$$RWRV%D%DV$TT
v228<<hGGGA H  H  H  H  H  H  H  H  H  H  H  H  H  H  H  H  H  Hs   G<HH#&H#opc                 F   | dv r;|j                             t          j                            |  d                     t          dt          gz            }| dv r
t          }d}nt          }d	                    dd	g          }t          j
        ||
          5  |                    | dg           d d d            n# 1 swxY w Y   t          j
        ||
          5  |                    | dd           d d d            n# 1 swxY w Y   t          j
        ||
          5  |                    | gdgd           d d d            n# 1 swxY w Y   t          j
        ||
          5  |                    | dg| gd           d d d            d S # 1 swxY w Y   d S )N)ffillbfillpadbackfillshiftz is successful on any dtype)reasonr   )fillnangroupTransform function failed|z4not supported between instances of 'type' and 'type'zunsupported operand typerg   r   r   B)node
add_markerr}   markxfailr   r@   
ValueError	TypeErrorjoinr~   	transform)r   r   r&   errorrl   s        r   test_transform_partial_failurer
  @  s    
;;;K%G%G%GHH	
 	
 	

 fX

C	!!!)hhF*
 
 
uC	(	(	( % %r7m$$$% % % % % % % % % % % % % % % 
uC	(	(	( / /BW--.../ / / / / / / / / / / / / / / 
uC	(	(	( 3 3RDy112223 3 3 3 3 3 3 3 3 3 3 3 3 3 3 
uC	(	(	( 7 7RM556667 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7sH   B>>CCDDD%EEE-FFFc                     d } d }t          dt          gz            }d}t          j        t          |          5  |                    | |g           d d d            n# 1 swxY w Y   t          j        t          |          5  |                    || d           d d d            n# 1 swxY w Y   t          j        t          |          5  |                    |g| gd           d d d            n# 1 swxY w Y   t          j        t          |          5  |                    | |g| gd           d d d            d S # 1 swxY w Y   d S )Nc                     | S r   r5   r    s    r   noopz7test_transform_partial_failure_valueerror.<locals>.noopf  s    r   c                     t           r   )r  )r   s    r   
raising_opz=test_transform_partial_failure_valueerror.<locals>.raising_opi  s    r   r   r   rg   r   )r   r@   r}   r~   r  r  )r  r  r&   rl   s       r   )test_transform_partial_failure_valueerrorr  d  sg        fX

C
%C	z	-	-	- * *tZ()))* * * * * * * * * * * * * * * 
z	-	-	- 4 4JT223334 4 4 4 4 4 4 4 4 4 4 4 4 4 4 
z	-	-	- 8 8ZLv667778 8 8 8 8 8 8 8 8 8 8 8 8 8 8 
z	-	-	- > >T:.dV<<===> > > > > > > > > > > > > > > > > >sG   A  A$'A$B++B/2B/C88C<?C<EEEc                  H   t          t          d          dd          } |                     ddg          }t          ddgddgd	          }t          j        ||           |                     d
di          }t          dgd
gd	          }t          j        ||           d S )N   r   r   )r2   r1   minmaxr   r   )r3   r1   r.   )r   r   ri   r$   r%   rC   r'   r(   s      r   	test_demor  |  s    uQxxwX666AUUE5>""Fq!fUENBBBH68,,,UUE5>""Fqc%x888H68,,,,,r   rO   c                      t          |           S r   )rZ   r    s    r   r!   r!     s    Q r   c                     |                      ||          }|r,|                     |          }t          j        ||           d S |t	          |           k    sJ d S )Nr   )r"   r#   r$   r%   rZ   )r   rO   r   r'   r(   s        r   (test_apply_map_evaluate_lambdas_the_samer    so       f 55F , $$T**
vx00000]++++++++r   c                    t          j        t                    5  |                     d           }d d d            n# 1 swxY w Y   t	          |t
                    r t          |          t          |           k    sJ t          j        t                    5  |                     t                    }d d d            n# 1 swxY w Y   t	          |t
                    r t          |          t          |           k    sJ d S )Nc                      t          |           S r   )r   r    s    r   r!   z+test_agg_evaluate_lambdas.<locals>.<lambda>  s    T!WW r   )r$   rS   rT   ri   r\   r   lenr   )r   r'   s     r   test_agg_evaluate_lambdasr    s\    
	#M	2	2 6 6""#4#4556 6 6 6 6 6 6 6 6 6 6 6 6 6 6ff%%K#f++]9K9K*K*K*K*K		#M	2	2 ) )""4(() ) ) ) ) ) ) ) ) ) ) ) ) ) )ff%%K#f++]9K9K*K*K*K*K*K*Ks!   =AAB??CCop_nameri   r"   c                    d}|dk    rt           nd }t          j        ||          5   t          | |          d           }d d d            n# 1 swxY w Y   t	          | | dz  d          }t          j        ||           t          j        t           |          5  |                     d           }d d d            n# 1 swxY w Y   t          j        ||           d S )Nzcannot aggregateri   rg   c                 2    t          | | dz  gddg          S Nr9   r   x^2r3   r   r    s    r   r!   z)test_with_nested_series.<locals>.<lambda>  s    faAYsEl;;; r   r9   )r   r"  c                 2    t          | | dz  gddg          S r!  r$  r    s    r   r!   z)test_with_nested_series.<locals>.<lambda>  s    vq!Q$iU|/T/T/T r   )rT   r$   rS   getattrr   r   ri   )rB   r  rl   warningr'   r(   s         r   test_with_nested_seriesr(    s    C&%//mmTG		#G3	7	7	7 
 
2'22;;
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 

 7IJJKKH&(+++		#M	=	=	= V V $$%T%TUUV V V V V V V V V V V V V V V&(+++++s#   AAACC	Cc                     |                                  }|                     ddddd dd dd	          }t          j        ||           d S )
Ncountmeanstdr  c                 ,    |                      d          S )Ng      ?quantiler    s    r   r!   z)test_replicate_describe.<locals>.<lambda>      QZZ-- r   medianc                 ,    |                      d          S )Ng      ?r.  r    s    r   r!   z)test_replicate_describe.<locals>.<lambda>  r0  r   r  )r*  r+  r,  r  z25%z50%z75%r  )describer"   r$   r%   )r   r(   r'   s      r   test_replicate_describer4    sk    %%''H  ----		
 		
 F 68,,,,,r   c                     |                      ddg          }t          |                                 |                                 gddg| j                  }t          j        ||           d S )Nsumr+  r0   )ri   r   r6  r+  r1   r$   r%   )r   r'   r(   s      r   test_reducer7    su    v//F					m00223	  H
 68,,,,,r   z	how, kwdsr   c                 T   t          g d          } t          ||           d	i |}|j        }||k    sJ  t          ||           g dfi |}t          dddd          }t          j        ||            t          ||           ddddfi |}t          j        ||           d S )
N)r8   r9   Nsize)r9  r*  r+        @       @g      ?r*  r+  )r9  )r   r&  r9  r$   r%   )howkwdsrC   r'   r(   s        r   test_non_callable_aggregatesr>    s     	|||A WQ__,,t,,FvHX WQ__666??$??FsS#>>??H68,,,WQ__fwOOXXSWXXF68,,,,,r   c                     t          dgdz            }|                    dd d g|           }t          g dg d	          }t          j        ||           d S )
Nrt   r   r6  c                 *    |                                  S r   r6  r    s    r   r!   z3test_series_apply_no_suffix_index.<locals>.<lambda>  s    quuww r   c                 *    |                                  S r   rA  r    s    r   r!   z3test_series_apply_no_suffix_index.<locals>.<lambda>  s    !%%'' r   r   )   rC  rC  )r6  <lambda>rD  r#  )r   r"   r$   r%   )r   rC   r'   r(   s       r   !test_series_apply_no_suffix_indexrE    sm    sQwAWWe..0A0AB6WRRFlll*I*I*IJJJH68,,,,,r   zdti,expl    ,b/ r#  r   r   r      nperawarec                     |r|                      d          j        }n| j        }t          |                              d           }t	          j        ||           d S )NUTCc                 $    t          ddg          S )Nr8   r9   r$  r    s    r   r!   zCtest_apply_series_on_date_time_index_aware_series.<locals>.<lambda>  s    61a&>> r   )r   r3   r   r"   r$   r   )dtir?   rI  r3   r'   s        r   1test_apply_series_on_date_time_index_aware_seriesrN    s_    "  &&,	E]]  !9!9::F&#&&&&&r   zby_row, expected)Fr8   c                     t          j        d                              d          }t          |j                                      d |           }t          j        ||           d S )NrF  rG  rK  c                     dS rH   r5   r    s    r   r!   zCtest_apply_scalar_on_date_time_index_aware_series.<locals>.<lambda>  s    ! r   r   )r$   makeTimeSeriesr   r   r3   r"   assert_equal)r   r(   r   r'   s       r   1test_apply_scalar_on_date_time_index_aware_seriesrS    sa     B'''33E::FFL!!''F'CCFOFH%%%%%r   c                    ddg}t          j        |          }t          |                              t           j        |           }t	          j        t          |          |           dt          j        t           j        t           j        g}t          j        |          }t          |          }|                    t           j        |           }t	          j        t          |          |           d S )Nz00:00:01z00:00:02r   )	r{   to_timedeltar   r"   r$   r%   r<   rN   NaT)r   list_of_valid_stringsr_   rf   list_of_stringsr&   s         r   test_apply_to_timedeltarY    s    '4
-..A$%%++BOF+KKA6!99a(((!262626:O
((A

!
!C		"/&	11A6!99a(((((r   z
ops, namesr6  r+  zhow, kwargsc                 l    t           fdt          ||          D                       }d|_        |dk    rt          nd }dd                    |           d}t          j        ||          5   t           |          |fi |}d d d            n# 1 swxY w Y   t          j        ||           d S )Nc                 .    i | ]\  }}| |          S r5   r5   .0r1   r   r   s      r   
<dictcomp>z/test_apply_listlike_reducer.<locals>.<dictcomp>4  s)    OOO84tRR..OOOr   r   ri   zusing Series.[r   ]rg   )	r   zipr1   rT   r  r$   rS   r&  r%   )	r   opsnamesr<  rj   r(   warnrl   r'   s	   `        r   test_apply_listlike_reducerrd  %  s    OOOOs5#OOOPPHHM5LL==dD
-388E??
-
-
-C		#D	4	4	4 < <,,,S;;F;;< < < < < < < < < < < < < < <68,,,,,s   0BBBra  r   r   c                 P    t           fd|                                D                       } j        |_        |dk    rt          nd }d}t	          j        ||          5   t           |          |fi |}d d d            n# 1 swxY w Y   t	          j        ||           d S )Nc                 .    i | ]\  }}| |          S r5   r5   r\  s      r   r^  z/test_apply_dictlike_reducer.<locals>.<dictcomp>L  s)    KKK84tRR..KKKr   ri   zusing Series.[sum|mean]rg   )r   itemsr1   rT   r$   rS   r&  r%   )	r   ra  r<  rj   r   r(   rc  rl   r'   s	   `        r   test_apply_dictlike_reducerrh  =  s     KKKKsyy{{KKKLLH!&HM5LL==dD
#C		#D	4	4	4 < <,,,S;;F;;< < < < < < < < < < < < < < <68,,,,,s   "BB
B
r=   r   c                     t          j        d          5  t           fd|D             d          }||_                             ||          }t          j        ||           d d d            d S # 1 swxY w Y   d S )Nr+   r,   c                 &    g | ]} |          S r5   r5   )r]  r   r   s     r   
<listcomp>z3test_apply_listlike_transformer.<locals>.<listcomp>a  s#    ;;;22m,,;;;r   r8   r   r   )r<   r>   r   r   r"   r$   r   )r   ra  rb  r   r(   r'   s   `     r   test_apply_listlike_transformerrl  U  s     
	"	"	" 0 0;;;;s;;;!DDD $$S$88
fh///	0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0s   AA55A9<A9zops, expectedc                     | S r   r5   r    s    r   r!   r!   j  s    A r   rD  r7   c                 *    |                                  S r   rA  r    s    r   r!   r!   k  s    AEEGG r   r  c                     t          g d          }|                    | |          }t          j        ||           d S Nr7   r   r   r"   r$   rR  )ra  r(   r   r&   r'   s        r   test_apply_listlike_lambdarr  g  sB     

CYYs6Y**FOFH%%%%%r   c                 .    t          j        d          5  t           fd|                                D                       } j        |_                             ||          }t          j        ||           d d d            d S # 1 swxY w Y   d S )Nr+   r,   c                 .    i | ]\  }}| |          S r5   r5   r\  s      r   r^  z3test_apply_dictlike_transformer.<locals>.<dictcomp>  s)    OOOxtR4M!2!2OOOr   r   )r<   r>   r   rg  r1   r"   r$   r%   )r   ra  r   r(   r'   s   `    r   test_apply_dictlike_transformerru  u  s     
	"	"	" 1 1OOOO399;;OOOPP%*$$S$88
vx000	1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1s   A&B

BBc                     | S r   r5   r    s    r   r!   r!     s    A r   r   c                 *    |                                  S r   rA  r    s    r   r!   r!     s     r   c                     t          g d          }|                    | |          }t          j        ||           d S rp  rq  )ra  r   r(   r&   r'   s        r   test_apply_dictlike_lambdary    sB     

CYYs6Y**FOFH%%%%%r   c           	         t          dt          d          it          t          d          d                    }|j                            d           }t          dt
          j        t
          j        gddt
          j        gg dgt          t          d          d          t          t          d          d          	          }t          j        ||           d S )
Nr   r   r0   c           	          t          t          | dz             t          t          | dz             d                    S )Nr8   yr0   )r   r   r   r    s    r   r!   z0test_apply_retains_column_name.<locals>.<lambda>  s2    &q1uuU1q5\\PS7T7T7T"U"U r                 ?)r}  r~  r;  r|  )r   r3   )	r   r   r   r   r"   r<   rN   r$   r   )r   dfr'   r(   s       r   test_apply_retains_column_namer    s    	Cq?E%(($=$=$=	>	>BTZZUUVVF
rvrv	c26 2OOODeAhhS)))E!HH3'''  H
 &(+++++r   c                      t          ddt          gg d          } |                     t                    }t          t          t
          t          gg d          }t          j        ||           d S )Nr   string)r_   rf   ra   r#  )r   floatr"   r   r   rZ   r$   r%   r  s      r   test_apply_typer    sd    8U#???;;;AWWT]]FsC&ooo>>>H68,,,,,r   c                      t          g dg dg          } |                     d           }t          ddgddgdd	gt          j        d
gd          }t          j        ||           d S )Nr7   )rt   r   r  r   c                      t          |           S r   r$  r    s    r   r!   z6test_series_apply_unpack_nested_data.<locals>.<lambda>  s     r   r~  g      @r;  g      @r:  g      @r   )r   r8   r9   r   )r   r"   r   r<   rN   r$   r   )r&   r'   r(   s      r   $test_series_apply_unpack_nested_datar    sv    
)))\\\*
+
+CYY**++Fc3ZS#JC:26ST+VVWWH&(+++++r   )Gnumpyr<   r}   pandasr{   r   r   r   r   r   r   pandas._testing_testingr$   pandas.tests.apply.commonr	   fixturer   r)   rE   rI   r  parametrizerU   r^   rm   ru   r   r   r   r   rN   r   r   r   r   r
  r  r  rZ   r  r  r(  r4  r7  r>  rE  DatetimeIndexrepeatrQ  rN  onesrS  rY  r6  r+  arrayrd  rh  r=   r   rl  rr  r?   ru  from_arraysr   ry  r  r  r  r5   r   r   <module>r     s	                                 > > > > > > x()))  *)- - - " " "8- - - 4-88F F 98F' ' ' "a[2Qx#fb"%5sAh7LM - -	 - 1 1 1&- - -$"% "% "%J  :" " "4 UE26$:UE26<R#STT- - UT- & & &
- 
- 
-#H #H #HL 788 7  7 98 7F> > >0
- 
- 
- #'7'7!899	, 	, :9	,
L 
L 
L UG$455, , 65,$- - -$- - - R[7Xx01Gh=N3OP - -	 -&- - -  FAq6!1!11k2B!C!CDDDIibi!Q!!444GDDD	

 B2&&&Iibi!Q"1555WEEE	
	  4-00' ' 10 ' (FF7272;;g$F$F$FGT & & &) ) ) 
&E7
&"'	UFO,	26(		eW%	2627#	$	$ufo6	  R[7Xx01Gh=N3OP - -	  - 		bff27##RV}RV"'**++	  R[7Xx01Gh=N3OP - -	  - 
'VH
&"'	Z01	27)		vh'	2627#	$	$z6&:;	 0 0 0 
+		:yyy"9::;

	ffaS===> & & & 		bggBF##RW~RW26**++	 1 1 1  ++F999$:J$:SEAIuuQxx;P$Q$QRRR	
   	!661#cU#;#;#;<	 	& &	 	&	, 	, 	,- - -, , , , ,r   