
    4ib                        S SK JrJ r   S SKrS SKrS SKJr  S SKrS SKJ	r	J
r
JrJrJr  S SKJr  S SKJr  S rS rS r\R,                  R/                  S	\	" / S
Q/ SQS.5      / SQ4\	" / SQ/ SQS.5      S S/4\	" SS/05      S/4\	" / SQ\" S5      S.5      SS/4\	" / SQ/ SQS.5      / SQ4\	" \" S5      / SQ/ SQS.5      / SQ4\	" / SQ/ SQ// SQS9SS/4// SQS 9S! 5       rS" rS# rS$ r\R,                  R/                  S%S& S' S( S) /5      S* 5       rS+ rS, r S- r!S. r"S/ r#S0 r$S1 r%S2 r&S3 r'S4 r(S5 r)S6 r*\R,                  R/                  S7S8S9/5      S: 5       r+S; r,S< r-S= r.S> r/S? r0\R,                  R/                  S@S8S9/5      SA 5       r1SB r2SC r3SD r4SE r5SF r6SG r7SH r8SI r9SJ r:SK r;\R,                  R/                  SL/ SMQ/ SNQSO.SS/S S//SPS S/0// SQQ/ SNQSO.SS/SSR//SPSSR/0//5      SS 5       r<ST r=\R,                  R/                  SUSVSW/5      SX 5       r>SY r?\R,                  R/                  SZ\ R                  " 5       \ R                  " 5       R                  5       \ R                  " 5       R                  5       /5      S[ 5       rBS\ rC\R,                  R/                  S]S9S8/5      S^ 5       rDS_ rE\R,                  R/                  S`\R                  " \" Sa5      5      \R                  " S SR5      \R                  " SbSRScSd9\R                  " / SeQ5      /5      Sf 5       rJ\R,                  R/                  SgSh S S/SSR//4Si S S1SSR1/4Sj SkSl/4Sm S SSk.SSRSk./4Sn S S 0SS0/S S0SSR0//4/5      So 5       rKSp rL\R,                  R/                  SqSr Ss /5      St 5       rMSu rN\R,                  R/                  SvSw Sx /5      \R,                  R/                  S7S8S9/5      Sy 5       5       rOSz rPS{ rQS| rRS} rSS~ rT\R,                  R/                  SS9\	" / SQ/ SQ/\
" / SQ\US9S9/S8\" SS/\R                  " SS/SS/S9S9//5      S 5       rVS rWS rXS rYS rZS r[S r\\R,                  R/                  S/ SQ/ SQ/5      S 5       r]\R,                  R/                  S/ SQ/ SQ// SQ/ SQ// SQ/ SQ//5      S 5       r^\R,                  R/                  SS8/0 4/ SS804/5      S 5       r_\R,                  R/                  SSS/5      S 5       r`\R,                  R/                  SSVS 4SVS 4SSSS/5      S 5       raS rb\R,                  R/                  S\cS4\dS4\eSR4/5      S 5       rfS rgS rhS rig)    )datedatetimeN)Pandas4Warning)	DataFrameIndex
MultiIndexSeriesbdate_range)get_groupby_method_argsc                  |  ^ [        S[        [        S5      5      S-  S/S9R                  5       n / mU4S jnU R	                  S5      R                  U5        [        SS/S-  0[        R                  " SSS5      S9nUR                  R                  [        5      Ul        [        R                  " TS   U5        g )	N   
   r   )indexcolumnsc                 (   > TR                  U 5        g N)append)groupgroupss    a/var/www/html/dynamic-report/venv/lib/python3.13/site-packages/pandas/tests/groupby/test_apply.pystoreFtest_apply_func_that_appends_group_to_list_without_copy.<locals>.store   s    e    r   d   r   )r   listrangereset_indexgroupbyapplypd
RangeIndexr   astypeobjecttmassert_frame_equal)dfr   expected_valuer   s      @r   7test_apply_func_that_appends_group_to_list_without_copyr)      s     
1DrOb01#	>	J	J	LBF JJwe$A38}BMM!S"4MNN+33::6BN&)^4r   c                 \   / SQn[        S/ SQ0[        [        R                  " U5      SS9S9nUR	                  UR
                  R                  5      R                  5       nUR	                  UR
                  R                  5      R                  S 5      n[        R                  " XC5        g )Nz2011-05-16 00:00z2011-05-16 01:00z2011-05-16 02:00z2011-05-16 03:00z2011-05-17 02:00z2011-05-17 03:00z2011-05-17 04:00z2011-05-17 05:00z2011-05-18 02:00z2011-05-18 03:00z2011-05-18 04:00z2011-05-18 05:00value	/?ݓ?Q?j?r.   r/   r0   r1   r.   r/   r0   r1   	date_timenamer   c                 "    U R                  5       $ r   idxmaxxs    r   <lambda>'test_apply_index_date.<locals>.<lambda>K   s
    qxxzr   )r   r   r!   to_datetimer   r   r   r7   r    r%   r&   )using_infer_stringtsr'   expectedresults        r   test_apply_index_daterA   '   s    
B 
 	
  BNN2&[9#
B& zz"((--(//1HZZ&,,-ABF&+r   c                     / SQn [        U  Vs/ s H  oR                  5       PM     snSS/S9n/ SQUS'   [        / SQSS9n[        / S	QUS
9nUR	                  S5      R                  S 5      n[        R                  " XT5        g s  snf )Nr+   r   timer   r-   r,   )z
2011-05-16z
2011-05-17z
2011-05-18r3   )z00:0002:00rE   r   c                 4    U S   U S   R                  5          $ )NrC   r,   r6   r8   s    r   r:   .test_apply_index_date_object.<locals>.<lambda>q   s    &	!G*:K:K:M0Nr   )r   splitr   r	   r   r    r%   assert_series_equal)r>   rowr'   exp_idxr?   r@   s         r   test_apply_index_date_objectrL   O   s    
B 
2.2CIIK2.8H	IBBwK >VLG1AHZZ%%&NOF6,% /s   Bzdf, group_names)r   r   r         )arO   rO   bcrO   rP   r   rM   rN   r   r   r   r   )r   r   r   r   r   rO   )r   r   r   rM   rM   r   r   rM      rM   r   rM   rN   r   rM   rN   )            rU   	   )rO   two
aaabbbcccc)
rN   rW   rN   rY   rX   rM   r   r[   rX   rW   )
rW   r   rM   rM   rM   rZ   rU   rY   rM   rU   )rO   BCrO   rP   rQ   )rM   rM   rN   rD   )GH2936zGH7739 & GH10519GH10519GH2656GH12155GH20084GH21417)idsc                    ^ / mU4S jnU4S jnU4S jnU4S jnU4S jnX#XEU4 H0  nTS S 2	 U R                  S5      R                  U5        TU:X  a  M0   e   g )Nc                 Z   > TR                  U R                  5        U R                  5       $ r   )r   r4   copyr   namess    r   f_copy/test_group_apply_once_per_group.<locals>.f_copy   s    UZZ zz|r   c                 >   > TR                  U R                  5        U $ r   r   r4   rk   s    r   f_nocopy1test_group_apply_once_per_group.<locals>.f_nocopy   s    UZZ r   c                 <   > TR                  U R                  5        gNr   rp   rk   s    r   f_scalar1test_group_apply_once_per_group.<locals>.f_scalar   s    UZZ r   c                 <   > TR                  U R                  5        g r   rp   rk   s    r   f_none/test_group_apply_once_per_group.<locals>.f_none   s    UZZ r   c                 Z   > TR                  U R                  5        [        S/S/S.5      $ )Nr   rR   )r   r4   r   rk   s    r   f_constant_df6test_group_apply_once_per_group.<locals>.f_constant_df   s'    UZZ s!-..r   rO   )r   r    )	r'   group_namesrm   rq   ru   rx   r{   funcrl   s	           @r   test_group_apply_once_per_groupr   u   sc    N E


!/
 8]C!H


3d####	 Dr   c                     Sn[        / SQ/ SQS./ SQS9nUR                  SSS9R                  S	 5        U R                  5       R                  R                  S
5      nX1:X  d   eg )NrM   )r   r   r   r   r   r   r   r   )02468101214)group_by_columntest_columnr   r   F
group_keysc                     [        S5      $ )Nfunction_called)printr'   s    r   r:   2test_group_apply_once_per_group2.<locals>.<lambda>   s
    5*+r   r   )r   r   r    
readouterroutcount)capsysr?   r'   r@   s       r    test_group_apply_once_per_group2r      sr     H	7F	
 :
B JJ UJ399+  $$**+<=Fr   c                      [        / SQ[        S5      S.5      n S nS nU R                  SSS9R                  U5      nU R                  SSS9R                  U5      n[        R
                  " X45        g )	N)r   r   r   rN   )ArP   c                     U $ r    r   s    r   slow,test_apply_fast_slow_identical.<locals>.slow   s    r   c                 "    U R                  5       $ r   rj   r   s    r   fast,test_apply_fast_slow_identical.<locals>.fast   s    zz|r   r   Fr   )r   r   r   r    r%   r&   )r'   r   r   fast_dfslow_dfs        r   test_apply_fast_slow_identicalr      sk     
q2	3B jjj/55d;Gjjj/55d;G'+r   c                      [        / SQ/ SQS.5      R                  S5      n U R                  S/SS9R                  S 5      nU R                  S/SS9R                  S	 5      n[        R
                  " X5        g )
N)AliceBobCarl)      r   )r4   ager4   r   Fr   c                     U $ r   r   r   s    r   r:   6test_apply_fast_slow_identical_index.<locals>.<lambda>   s    RWr   c                 "    U R                  5       $ r   r   r   s    r   r:   r      s
    ejjlr   )r   	set_indexr   r    r%   r&   )r'   grp_by_same_valuegrp_by_copys      r   $test_apply_fast_slow_identical_indexr      s|    	,	


 i  

E7u
=CCDWX**eW*7=="K +9r   r~   c                     U $ r   r   r8   s    r   r:   r:      s    !r   c                     U S S  $ r   r   r8   s    r   r:   r:      s    !A$r   c                      U R                  SS9$ )NFdeepr   r8   s    r   r:   r:      s    !&&e&$r   c                      U R                  SS9$ )NTr   r   r8   s    r   r:   r:      s    !&&d&#r   c                     [        / SQ/ SQ/ SQS.5      nUR                  SSS9R                  U 5      n[        R                  " X!SS	/   5        g )
Nr   rM   rM   rM   r   rM   rN   rW   )rX   rY   rZ   rU   )grO   rP   r   Fr   rO   rP   r   r   r    r%   r&   )r~   r'   r@   s      r   5test_groupby_apply_identity_maybecopy_index_identicalr      sH     
L|L	MBZZZ.44T:F&c3Z.1r   c                     [        [        R                  R                  S5      R	                  S5      / SQS.5      n U R                  S SS9nU n[        R                  " X5        [        S/ S	Q05      n U R                  S
-  U S'   U R                  S5      R                  5       R                  5       nU R                  SSS9R                  5       n[        R                  " X45        g )NrM   rY   oner\   r\   threer   r\   foo1foo2c                     U $ r   r   r8   s    r   r:   -test_apply_with_mixed_dtype.<locals>.<lambda>  s    r   r   axisc1)r   rM   rY   rY   rU          @c2Fas_index)r   nprandomdefault_rngstandard_normalr    r%   r&   r   r   meanr   )r'   r@   r?   result1result2s        r   test_apply_with_mixed_dtyper     s    	II))!,<<Q?@	

B XXkX*FH&+ 
D/*	+Buus{BtHjj##%113Gjjj.335G'+r   c                    [        / SQ/ SQ[        S5      S.5      nUR                  SU S9n[        / SQ/ SQ/ S	QS./ S	QS
9nUR                  S5      n[        R
                  " XC5        U (       a  / SQn[        R                  " USS /S9nO[        / SQ5      n[        [        S5      / SQS.US
9nUR                  S 5      n[        R
                  " XC5        g )N)rP   rP   rO   rQ   rO   rP   )r   rM   r   r   rN   r   rY   )item_iduser_idrC   r   r   )rP   rP   rO   rO   )r   rM   r   rN   )r   r   rM   rW   r   rM   )r   r   r   rM   )rM   r   )rN   rW   rl   )r   rM   r   rW   baba)r   rC   c                 $    U R                  S5      $ NrM   headr8   s    r   r:   -test_groupby_as_index_apply.<locals>.<lambda>D  s    q	r   )r   r   r   r   r%   r&   r   from_tuplesr   r   r    )r   r'   gbr?   r@   tpr   s          r   test_groupby_as_index_applyr      s    	5)!H	

B 
I	1B+# 	

 H WWQZF&+ -&&r)T1BCl#F| 	
 H XX)*F&+r   c                      [        [        S5      5      n [        SS/SS/SS/SS/SS//U S9nUR                  S	S
S
S9R	                  S 5      R
                  n[        R                  " X 5        g )Nabcder   rM   rN   rW   rX   rY   r   r   F)r   r   c                     U $ r   r   r8   s    r   r:   1test_groupby_as_index_apply_str.<locals>.<lambda>K  s    !r   )r   r   r   r   r    r   r%   assert_index_equal)indr'   ress      r   test_groupby_as_index_apply_strr   H  sn    
W
C	QFQFQFQFQF;3	GB
**Q5*
9
?
?
L
R
RC##r   c                 J   U R                  SS/5      nS nS nS nUR                  U5      nUR                  R                  S:X  d   eUR                  U5      nUR                  R                  S:X  d   eUR                  U5      nUR                  R                  S:X  d   eg )Nr   r^   c                 H    U R                  5       nSUR                  l        U$ Nstat)describer   r4   r   r@   s     r   desc.test_apply_concat_preserve_names.<locals>.descR  s    !"r   c                 d    U R                  5       nSUR                  l        US [        U 5       nU$ r   )r   r   r4   lenr   s     r   desc2/test_apply_concat_preserve_names.<locals>.desc2W  s/    !"#e*%r   c                 ~    U R                  5       nS[        U 5      S 3UR                  l        US [        U 5       nU$ )Nstat_d)r   r   r   r4   r   s     r   desc3/test_apply_concat_preserve_names.<locals>.desc3^  s>    ! $CJq>2#e*%r   )r   r^   r   )r   r^   N)r   r    r   rl   )three_groupgroupedr   r   r   r@   r   result3s           r    test_apply_concat_preserve_namesr  O  s    !!3*-G
 ]]4 F<<!3333mmE"G=="4444mmE"G=="2222r   c                  x   S n [        SSS9n[        [        R                  R	                  S5      R                  S5      US9nUR                  S SS	9nUR                  U 5      n[        U[        5      (       d   e[        US
5      (       a   e[        R                  " UR                  UR                  5        g )Nc                     [         R                  " SS9   [         R                  " U 5      nS S S 5        [        X U R	                  5       -
  WS.5      $ ! , (       d  f       N-= f)Nignore)invalid)r,   demeanedlogged)r   errstatelogr   r   )piecer	  s     r   f%test_apply_series_to_frame.<locals>.fs  sI    [[*VVE]F +)=P
 	
 +*s   A
A!z1/1/2000r   periodsrM   r   c                     U R                   $ r   monthr8   s    r   r:   ,test_apply_series_to_frame.<locals>.<lambda>}      177r   Fr   r4   )r
   r	   r   r   r   r   r   r    
isinstancer   hasattrr%   r   r   )r  drr>   r  r@   s        r   test_apply_series_to_framer  r  s    
 
Z	,B			%%a(88<B	GBjj*uj=G]]1Ffi((((vv&&&&&,,1r   c                     U R                  SS/5      S   R                  [        5      nUR                  R                  S S S:X  d   eg )Nr   r^   r_   rM   r   r^   )r   r    r   r   rl   r'   r@   s     r    test_apply_series_yield_constantr    sC    ZZc
#C(..s3F<<bq!Z///r   c                 >   U R                  SS/5      R                  [        5      n[        U[        5      (       d   eUR
                  b   eU R                  SS/5      SS/   R                  [        5      n[        U[        5      (       d   eUR
                  b   eg )Nr   r^   r_   D)r   r    r   r  r	   r4   r  s     r   test_apply_frame_yield_constantr     s    ZZc
#))#.Fff%%%%;;ZZc
#S#J/55c:Fff%%%%;;r   c                 &   U R                  SS/5      nUR                  [        5      nUR                  5       S   n[        R
                  " UR                  UR                  5        [        R                  " UR                  UR                  5        g )Nr   r^   r_   )	r   r    r   r   r%   r   r   assert_numpy_array_equalvaluesr'   r  r@   r?   s       r   test_apply_frame_to_seriesr%    sb    jj#s$G]]3F}}s#H&,,7x?r   c                 r   U R                  SS/SS9nUR                  [        5      nUR                  5       R	                  S[
        R                  0S9R                  SS9n[        R                  " UR                  UR                  5        [        R                  " UR                  UR                  5        g )Nr   r^   Fr   r_   rD   r  )r   r    r   r   renamer   nandropr%   r   r   r"  r#  r$  s       r   )test_apply_frame_not_as_index_column_namer*    s    jj#sej4G]]3F}}%%sBFFm%<AA#ANH&,,7x?r   c                    ^ S n U4S jn[        [        R                  R                  S5      R	                  SSS5      [        R                  R                  S5      R	                  SSS5      [        R                  R                  S5      R                  S5      S.5      mTR                  S5      R                  U 5      nTR                  S5      S	   R                  U5      n[        R                  " X#S
S9  UR                  S	:X  d   eg )Nc                 |    U R                  S5      S   R                  5       R                  5       R                  S S $ )Nr^   r_   rM   )r   sumsort_valuesilocr   s    r   trans-test_apply_frame_concat_series.<locals>.trans  s5    }}S!#&**,88:??CCr   c                    > U R                  TR                  U R                  5      S   5      nUR                  5       R	                  5       R
                  S S $ )Nr^   rM   )r   reindexr   r-  r.  r/  )r   r  r'   s     r   trans2.test_apply_frame_concat_series.<locals>.trans2  sE    --

5;; 7 <={{}((*//33r   rM   r   rX   i  r   r^   r_   r   r_   F)check_names)r   r   r   r   integersr   r   r    r%   rI   r4   )r0  r4  r@   expr'   s       @r   test_apply_frame_concat_seriesr:    s    D4 
&&q)221a>&&q)221a>&&q)99$?	

B ZZ_""5)F
**S/#

$
$V
,C6E:;;#r   c                     U R                  S SS9nUR                  S 5      nUR                  S 5      n[        R                  " X#5        g )Nc                     U R                   $ r   r  r8   s    r   r:   &test_apply_transform.<locals>.<lambda>  r  r   Fr   c                     U S-  $ r   r   r8   s    r   r:   r=    s    QUr   c                     U S-  $ r   r   r8   s    r   r:   r=    s    1q5r   )r   r    	transformr%   rI   )r>   r  r@   r?   s       r   test_apply_transformrA    sA    jj*uj=G]]?+F  1H6,r   c                     U R                  S S /5      nS nUR                  U5      nU H/  u  pE[        R                  " UR                  U   U" U5      5        M1     g )Nc                     U R                   $ r   yearr8   s    r   r:   ,test_apply_multikey_corner.<locals>.<lambda>  s    r   c                     U R                   $ r   r  r8   s    r   r:   rF    s    177r   c                 *    U R                  S5      SS  $ )Nr   r.  r   s    r   r  %test_apply_multikey_corner.<locals>.f  s      %bc**r   )r   r    r%   r&   loc)tsframer  r  r@   keyr   s         r   test_apply_multikey_cornerrO    sT    oo/1BCDG+ ]]1F

fjjoqx8 r   r   TFc                 2   [        / SQ[        S5      S.5      nUR                  SU S9R                  S 5      nUS/   R	                  / SQ5      nU (       a*  [
        R                  " / S	QUR                  /SS /S
9Ul        [        R                  " X#5        g )N)	r   r   r   rM   rM   rM   rN   rN   rN   r[   )rN  r,   rN  r   c                      U R                   S S $ r   r/  r8   s    r   r:   'test_apply_chunk_view.<locals>.<lambda>  s    affRajr   r,   )r   r   rN   rW   rY   rZ   )r   r   rM   rM   rN   rN   r   )
r   r   r   r    taker   from_arraysr   r%   r&   )r   r'   r@   r?   s       r   test_apply_chunk_viewrV    s     
6qJ	KBZZ*Z5;;<PQF7)}!!"45H#//0
 &+r   c            	          [        / SQ/ SQ[        SSS5      S.5      n U R                  SS/5      nUR                  S 5        g )	N)
r   r   r   r   r   r   rM   rM   rM   rM   )
r   r   r   r   r   r   r   r   r   r   r[   )r4   name2r,   r4   rY  c                 "    U R                  SSS9$ )Nr,   TinplacerJ  r8   s    r   r:   4test_apply_no_name_column_conflict.<locals>.<lambda>  s    AMM'4M@r   )r   r   r   r    )r'   r  s     r   "test_apply_no_name_column_conflictr^    sE    	231b"%	

B jj&'*+GMM@Ar   c                  4   [        / SQ[        R                  " / SQS5      [        R                  " SS5      S.5      n S nU R	                  SS	S
9R                  U5      nU SS/   n[        R                  " / SQS5      US'   [        R                  " X#5        g )N      ?ra  ra  r   r   r   r`   rM   ra        @r   rQ   vc                 ~    U S   nXR                  5       -
  UR                  5       UR                  5       -
  -  U S'   U $ Nrd  v2minmaxr   rd  s     r   r  #test_apply_typecast_fail.<locals>.f  7    #J557{quuw'89dr   r   Fr   rQ   rd          g      ?r   rg  )r   r   tilearanger   r    r%   r&   )r'   r  r@   r?   s       r   test_apply_typecast_failrr    s    	/!,3$	

B
 ZZZ.44Q7F3*~HWW]A.HTN&+r   c                  j   [         R                  " / SQ/ SQ/5      n [        / SQ[        R                  " / SQS5      [        R
                  " SS5      S.U S	9nS
 nUR                  SSS9R                  U5      nUSS/   n[        R                  " / SQS5      US'   [        R                  " X45        g )N)r   r   r   r   r   r   rV   r`  r`   rM   ra  rb  rc  r   c                 ~    U S   nXR                  5       -
  UR                  5       UR                  5       -
  -  U S'   U $ rf  rh  rk  s     r   r  %test_apply_multiindex_fail.<locals>.f  rm  r   r   Fr   rQ   rd  rn  rg  )
r   rU  r   r   rp  rq  r   r    r%   r&   )r   r'   r  r@   r?   s        r   test_apply_multiindex_failrv    s    ""$68J#KLE	/!,3$	

 
B
 ZZZ.44Q7F3*~HWW]A.HTN&+r   c                 |    U R                  S SS9R                  S 5      nU S-  n[        R                  " X5        g )Nc                     U R                   $ r   rD  r8   s    r   r:   #test_apply_corner.<locals>.<lambda>  s    qvvr   Fr   c                     U S-  $ r   r   r8   s    r   r:   ry    s    QRUVQVr   rM   )r   r    r%   r&   )rM  r@   r?   s      r   test_apply_cornerr{    s7    __-%_@FFWF{H&+r   c                      [        / SQ/ SQ/ SQS.5      n S nS nU R                  S5      R                  U5      nU R                  S5      R                  U5      n[        R                  " XC5        g )N)r   r      i,  )rO   rP   rQ   rQ   r   )id_fieldcategoryr,   c                 j    U R                   S   S:X  a  U R                  5       $ X R                  S:H     $ Nr   r   rQ   )shaperj   r  r8   s    r   filt1&test_apply_without_copy.<locals>.filt1+  s.    771:?668OZZ3&''r   c                 N    U R                   S   S:X  a  U $ X R                  S:H     $ r  )r  r  r8   s    r   filt2&test_apply_without_copy.<locals>.filt21  s(    771:?HZZ3&''r   r~  r   )datar  r  r?   r@   s        r   test_apply_without_copyr    sh     ,,!	
D(( ||J'--e4H\\*%++E2F&+r   test_seriesc                 T   [        SS/SS/SS//SS// SQS9nU (       aM  UR                  S5      S   nUR                  SS	S
9R                  S 5      nUn[        R
                  " X45        g UR                  SS	S9R                  S 5      nUS/   n[        R                  " X45        g )Nr9   poXY)r   rM   rM   r   r   r   F)levelr   c                     U $ r   r   r8   s    r   r:   <test_apply_with_duplicated_non_sorted_axis.<locals>.<lambda>D  s    r   r   c                     U $ r   r   r8   s    r   r:   r  H      1r   )r   r   r   r    r%   rI   r&   )r  r'   serr@   r?   s        r   *test_apply_with_duplicated_non_sorted_axisr  <  s     

sc3Z#s,sCj	
B ll3$17==kJ
v0CE288Ese9
f/r   c                      / SQn / SQn[        SS/S-  U S.US9n[        XSS	9nS
 nUR                  SSS9R                  R	                  U5      n[
        R                  " X55        g )Nr   r   r   rM   rM   Group1Group2rM   r   r,   r   r,   r   r4   c                     U R                  [        R                  " U R                  R	                  5       U R                  R                  5       S-   5      5      $ Nr   )r3  r   rq  r   ri  rj  r8   s    r   reindex_helper1test_apply_reindex_values.<locals>.reindex_helperW  s5    yy177;;=!''++-!2CDEEr   r   Fr   )r   r	   r   r,   r    r%   rI   )r#  indicesr'   r?   r  r@   s         r   test_apply_reindex_valuesr  M  sn    
 FG	h1A5Gw	WBf':HF ZZEZ288>>~NF8,r   c                  B   Sn [         R                  R                  S5      R                  SSU S9n[	        U[         R                  R                  S5      R                  U 5      / SQU S-  -  S.5      nUR                  S	S
S9nS nUR                  U5      nSU;   d   eg )Nr   rM   r   r   size)foobarbazquxrO   rX   )rN  value1value2rN  Fr   c                     U S   S-  U S'   U $ )Nr  rM   value3r   r   s    r   r  "test_apply_corner_cases.<locals>.fn  s    kAo(r   r  )r   r   r   r8  r   r   r   r    )Nlabelsr'   r  r  r@   s         r   test_apply_corner_casesr  _  s     	AYY""1%..q#A.>F	ii++A.>>qA716B	

B jj5j1G ]]1Fvr   c                  >   [        SS/S/S-  SS/S.5      n U R                  S/5      R                  S 5      n[        R                  " U R
                  5      U l        U R                  S/5      R                  S	 5      n[        R                  " US
   US
   5        g )Nr   rM   z
2017-03-02r  inf)NumberDateStrr  c                      U R                   S   $ rt   rR  r8   s    r   r:   ;test_apply_numeric_coercion_when_datetime.<locals>.<lambda>  s    affQir   c                      U R                   S   $ rt   rR  r8   s    r   r:   r    s    AFF1Ir   r  )r   r   r    r!   r<   r  r%   rI   )r'   r?   r@   s      r   )test_apply_numeric_coercion_when_datetimer  v  s     
q6L>A#5uenM
B zz8*%++,?@HnnRWW%BGZZ
#))*=>F6%=(5/:r   c                     [        / SQ/ SQ[        R                  " S5      /S-  S.5      n S nU R                  S5      R	                  U5      S   nU R
                  nU R                  Ul        [        R                  " X#5        g )	N)r   r      )r  3r   z12:31:22rN   )r   r^   Tc                 (    U R                   S   S/   $ )Nr   r^   rR  r  s    r   get_B@test_apply_numeric_coercion_when_datetime_getitem.<locals>.get_B  s    vvay#r   r   r^   )
r   r!   	Timestampr   r    r^   r   r   r%   rI   )r'   r  r@   r?   s       r   1test_apply_numeric_coercion_when_datetime_getitemr    so    	!2",,z:R9SVW9WX
B  ZZ_""5)#.FttHTTHN6,r   c                  x   S n [        / SQ/ SQ/ SQ/ SQS.5      nUR                  5       n[        R                  " UR                  5      Ul        UR                  S5      R                  U 5      R                  nUR                  S5      R                  U 5      R                  n[        R                  " X45        g )Nc                    [        / SQ[        S9nS[        U R                  5      ;   a4  [	        X R                  S:H     R
                  R                  S   5      US'   S[        U R                  5      ;   ah  [	        X R                  S:H     R
                  R                  S   5      US'   [	        X R                  S:H     R                  R                  S   5      US'   U$ )	N)p1p2useTime)r   dtypestep1r   r  step2r  r  )r	   r$   r   StatestrMachiner#  oTime)toolr   s     r   predictionsGtest_apply_numeric_coercion_when_datetime_with_nat.<locals>.predictions  s    2&Ad4::&&Dw!67??FFqIJCId4::&&Dw!67??FFqIJCI jjG&;!<!B!B!I!I!!LMC	N
r   )r^   r^   r   r   )r  r  r  r  ) z2016-09-19 05:24:33r  z2016-09-19 23:59:04)2336L36Rr  )Keyr  r  r  r  )
r   rj   r!   r<   r  r   r    r  r%   rI   )r  df1df2r?   r@   s        r   2test_apply_numeric_coercion_when_datetime_with_natr    s     '9K2		
C ((*Csyy)CI{{5!''477H[[%%k255F8,r   c                     [        / SQ[        R                  " S5      /S-  S.5      n U R                  U R                  -
  U S'   U R	                  S5      R                  S 5      n[        / SQ[        R                  " SS	5      /S-  [        R                  " S5      /S-  S
.5      R                  S5      n[        R                  " X5        g )Nr6  z2017-02-01 00:00:00rN   )clientidr   time_delta_zeror  c                 ~    [        U R                  R                  5       U R                  R                  5       S.5      $ )N)clientid_ager   )r	   r  ri  r   )ddfs    r   r:   ?test_apply_aggregating_timedelta_and_datetime.<locals>.<lambda>  s-    F 00446@P@P@RS
r   r   r  )r  r  r   )
r   r   
datetime64r   r   r    timedelta64r   r%   r&   r'   r@   r?   s      r   -test_apply_aggregating_timedelta_and_datetimer    s     
''<=>B	

B KK"++5BZZ
#))	
F
 '^^As34q8]]#89:Q>	
 i
  &+r   c                     SS/SS/SS/SS/SS//n [        U S	S
/[        R                  " SS5      S9nUR                  S	5      R	                  5       n[        / SQ/ SQS.5      nUR                  S	SS9  [        R                  " X#5        g )Nr   r   r^   r   r  r_   (   2   NameValuez
2020-09-01z
2020-09-05r  r6  )r   r  Z   )r  r  Tr[  )r   r!   
date_ranger   r-  r   r%   r&   )r  r'   r@   r?   s       r    test_apply_groupby_datetimeindexr    s     "IRy3)c2Yb	BD	vw'r}}\</X
B ZZ##%F/LIJHvt,&+r   c                  
   [        S[        S5       V s/ s H  n [        R                  " 5       PM     sn S.5      nS nS nUR	                  S/S9R                  U5      n[        SS	0S/S
9nSUR                  l        UR	                  S/S9R                  U5      n[        [        R                  " SSS5      S	S.S/S
9nSUR                  l        [        R                  " XE5        [        R                  " Xg5        g s  sn f )Nr   r   rR   c                     [        SS05      $ )NrQ   rM   r	   batchs    r   func_with_no_date.test_time_field_bug.<locals>.func_with_no_date  s    sAhr   c                 4    [        [        SSS5      SS.5      $ )N  r   rM   rP   rQ   )r	   r   r  s    r   func_with_date+test_time_field_bug.<locals>.func_with_date  s    HT1a0q9::r   rO   byrQ   rM   r   r  r  )r   r   r   nowr   r    r   r4   r!   r  r%   r&   )nnr'   r  r  dfg_no_conversiondfg_no_conversion_expecteddfg_conversiondfg_conversion_expecteds           r   test_time_field_bugr    s     
59!E9R(,,.9!EF	GB ; 

se
,223DE!*C8A3!?,/$$)ZZC5Z)//?N'll4A&Q/s *-!!&+H.B' "Fs   D 
c                     ^ [        / SQ/ SQ/ SQ/ SQS.5      n U R                  SS/5      n U R                  SS/SS	9nS
 mUR                  U4S j5        g )N)rO   rO   rO   rP   rP   rP   rO   rO   rO   rP   rP   rP   )rQ   rQ   r   r   r   erQ   rQ   r   r   r   r  )g?rM   rN   rW   rX   rY   rM   rW   rY   rU   r   rM   )gffffff@rU   r[   r         rU   rZ   rY   rX   rW   rN   )group1group2weightr,   r	  r
  T)r  sortc                 T    [         R                  " X-  5      R                  S5      nU$ )NrN   )r   arrayrepeat)r,   r  r   s      r   noddy7test_gb_apply_list_of_unequal_len_arrays.<locals>.noddy  s"    hhu~&--a0
r   c                 >   > T" U R                   U R                  5      $ r   )r,   r  )r9   r  s    r   r:   :test_gb_apply_list_of_unequal_len_arrays.<locals>.<lambda>  s    uQWWahh7r   )r   r   r   r    )r'   
df_groupedr  s     @r   (test_gb_apply_list_of_unequal_len_arraysr    s`    	RR<>		

B 
x*	+B8X"6TBJ 78r   c                      [        / SQ/ SQS.5      n S nU R                  S5      R                  U5      n[        S/SS9n[        R                  " X#5        g )	NrT   )rU   rZ   rW   rX   )r   random_varsc                     g r   r   r8   s    r   	test_func.test_groupby_apply_all_none.<locals>.test_func  s    r   r   r  int64)r   r  r   )test_dfr  r@   r?   s       r   test_groupby_apply_all_noner    sO     <MNG __X&,,Y7F-@H&+r   zin_data, out_idx, out_data)r   r   r   rM   )r   r   rM   rN   )r   varsr  r   rN   c                     [        U 5      nS nUR                  S5      R                  U5      n[        R                  " USS /S9n[        X&S9n[
        R                  " XW5        g )Nc                 L    U R                   S   S:  a  g U R                  SS/   $ )Nr   rM   rX  )r  r/  r8   s    r   r  0test_groupby_apply_none_first.<locals>.test_func1  s&    771:>vvq"gr   r   r   r   )r   r   r    r   rU  r%   r&   )in_dataout_idxout_datatest_df1r  r   index1	expected1s           r   test_groupby_apply_none_firstr(    s_    " !H
 x(..y9G##GHd3CDF(1I'-r   c            	         [        SS/SS/S.5      n U R                  S5      nUR                  S 5      n[        S/S[        R
                  " SS/S//SS /S	9R                  S5      S
9n[        R                  " X#5        g )Nr   r   filledempty)r,   r   r   c                 *    X R                   S:g     S   $ )Nr   r,   )r,   r   s    r   r:   7test_groupby_apply_return_empty_chunk.<locals>.<lambda>@  s    kkQ.>(?(Hr   r,   r   )r4   r   )	r   r   r    r	   r   from_productr)  r%   rI   )r'   r   r@   r?   s       r   %test_groupby_apply_return_empty_chunkr/  <  s    	aVx.AB	CBZZ F\\HIF	
%%x 1#&wo

$w-H 6,r   methr    r@  c                     [        SR                  5       / SQ/ SQS.5      nUR                  SSS9n[        X 5      " S 5      n[        / S	Q/ S
QS.5      n[        R
                  " X45        g )Nza a brS   rW   rY   rX   r6  r   Fr   c                 &    X R                  5       -  $ r   r-  r8   s    r   r:   -test_apply_with_mixed_types.<locals>.<lambda>Q  s    EEGr   )gUUUUUU?gUUUUUU?r   )皙?g333333?ra  r^   r_   )r   rH   r   getattrr%   r&   )r0  r'   r   r@   r?   s        r   test_apply_with_mixed_typesr9  K  s[     
yyI	JB


35
)AQ34F4?KLH&+r   c                      [        SSS/0[        SS/5      S9n U R                  S5      R                  S 5      n[	        [        S/5      [        S/5      /[        SS/SS9S9n[
        R                  " X5        g )NrO   r   rM   r   c                     U R                   $ r   r   r  s    r   r:   *test_func_returns_object.<locals>.<lambda>Y  s    QWWr   r3   )r   r   r   r    r	   r%   rI   r  s      r   test_func_returns_objectr=  V  sm    	C!Q=q!f	6BZZ_""#45FuaSz5!:.eQF6MNH6,r   group_column_dtlikec           	          [        S/U /S.5      nUR                  S5      R                  S 5      n[        S/[        S/SSS9S/S	9n[        R
                  " X#5        g )
Nr  rR   rO   c                     [        S/S/S9$ )Nspam*   r   r  r8   s    r   r:   +test_apply_datetime_issue.<locals>.<lambda>j  s    VVHRD-Ir   rA  r  r  r4   rB  rD   r   r   r    r   r%   r&   )r>  r'   r@   r?   s       r   test_apply_datetime_issuerF  _  s_     
%(;'<=	>BZZ_""#IJF&5%C#HSURVWH&+r   c            
         [        [        R                  " S5      [        R                  " S5      [        R                  " S5      [        R                  " S5      [        R                  " S5      S.SSSSSS.SSSSSS.S.5      n S nU R                  S5      R	                  U5      S	   n[        S/[        R                  " S
/SS9S	S9n[        R                  " X#5        g )Nz2015-02-24 00:00:00)r   r   rM   rN   rW   zsome UA stringzanother UA string17661101)day	userAgentuserIdc           	          [        U R                  5        VVs0 s H"  u  pXR                  5       R                  S   _M$     snn5      $ s  snnf rt   )r	   itemsvalue_countsr   )r'   rQ   ss      r   most_common_valuesEtest_apply_series_return_dataframe_groups.<locals>.most_common_values  s<    
K
q..*0033
KLLKs   )A

rI  rK  z
2015-02-24r3   r  )	r   r!   r  r   r    r	   DatetimeIndexr%   rI   )tdfrP  r@   r?   s       r   )test_apply_series_return_dataframe_groupsrT  p  s    
 << 56<< 56<< 56<< 56<< 56 $##&# 	
C4M [[%%&89(CF	B,,l^%HxH 6,r   r  c           
         SS/S-  nU (       a6  [         R                  " U/ SQS9n[         R                  " / SQ/ SQSS9n/ SQnO[        SS/SS	9nS
S/n[	        X3S.US9n[	        [
        R                  " S5      U[        [        S5      5      [        [        S5      5      S.5      R                  SS/5      nUR                  SSS9R                  S 5      n[        R                  " Xd5        UR                  R                  SS/:X  d   eg )Nr   rM   rX   rS   )
categoriesr^   )rV  r4   )r      r   r3   r   rW  )r_   r  r   r   )r   r^   r_   r  r   F)observedc                 "    U R                  5       $ r   r4  r8   s    r   r:   -test_apply_multi_level_name.<locals>.<lambda>  s
    QUUWr   )r!   CategoricalCategoricalIndexr   r   r   rq  r   r   r   r   r    r%   r&   r   rl   )r  rP   expected_indexexpected_valuesr?   r'   r@   s          r   test_apply_multi_level_namer_    s     
A
ANN13,,Y9SVW%1vC0r(4NH 
iim!$uRy/U2YP
ic
  ZZeZ,223DEF&+88>>c3Z'''r   c           
      V   [         R                  " [        R                  " SSS5      SSSS4[        R                  " SSS5      SSS	S
4[        R                  " SSS5      SSSS4[        R                  " SSS5      SSSS4// SQS9nUR	                  S5      R                  S 5      R                  nU (       a"  [        R                  " [        R                  S9O[        n[        [        R                  " S5      U[        R                  U// SQS9n[        R                  " X$5        g )Ni  r   reddarkr   r  greenstormyrM   9i  bluebrightrN   r   i  calmrW   potato)observationcolormood	intensityscorerD   rk  c                      U R                   S   $ rt   rR  r  s    r   r:   ;test_groupby_apply_datetime_result_dtypes.<locals>.<lambda>  s    166!9r   )na_valuezdatetime64[us])rj  rl  rm  rn  r   )r   from_recordsr!   r  r   r    dtypesStringDtyper   r(  r$   r	   r  r  r%   rI   )r=   r  r@   r  r?   s        r   )test_groupby_apply_datetime_result_dtypesru    s    !!\\$1%ufa=\\$1%w!SA\\$1%vxDA\\$1%vvq(C		
 GD \\'"(()<=DDF/ABNNBFF+vE	"	#UBHHe<;H 6,r   r   abc2020r  )r  freq))rO   r   )rO   r   )rP   r   c                     [        / SQ/ SQS.U S9nUR                  SSS9R                  S 5      n[        R                  " X!S	/   5        g )
Nr   r   rM   )r   r   r   r  r   r   Fr   c                     U $ r   r   r8   s    r   r:   8test_apply_index_has_complex_internals.<locals>.<lambda>  r  r   r,   r   )r   r'   r@   s      r   &test_apply_index_has_complex_internalsr}    sF     
Y;5	IBZZEZ288EF&gY-0r   zfunction, expected_valuesc                 6    U R                   R                  5       $ r   )r   to_listr8   s    r   r:   r:     s    177??$r   c                 H    [        U R                  R                  5       5      $ r   )setr   r  r8   s    r   r:   r:     s    3qww()r   c                 H    [        U R                  R                  5       5      $ r   )tupler   r  r8   s    r   r:   r:     s    5*+r   )r   r   rM   rN   c                 Z    [        [        U R                  R                  5       5      5      $ r   )dict	enumerater   r  r8   s    r   r:   r:     s    d9QWW__%678r   c                     [        U R                  R                  5       5       VVs/ s H  u  pX0PM
     snn$ s  snnf r   )r  r   r  )r9   nis      r   r:   r:     s,    Iaggoo6G,HI,H&1v,HIIs   :c                     [        / SQS/S9nUR                  S5      R                  U 5      n[        U[	        SS/SS9S9n[
        R                  " X45        g )N)r   r   r^   r^   r   rD   r   r^   r3   r   r   r   r    r	   r   r%   rI   )functionr^  r'   r@   r?   s        r   1test_apply_function_returns_non_pandas_non_scalarr    sQ    $ 
'(	<BZZ!''1FoUC:H-MNH6,r   c                     S n [        / SQSSS[        R                  /S.5      nUR                  S5      R	                  U 5      n[        SS	/S
/[        R                  //[        / SQSS9S9n[        R                  " X#5        g )Nc                 <    U S   R                   R                  5       $ )Nr^   )r#  flattenr   s    r   fct4test_apply_function_returns_numpy_array.<locals>.fct  s    Sz  ((**r   )rO   rO   rP   noner   rM   rN   r  r   ra  r         @)rO   rP   r  r3   r   )	r   r   r(  r   r    r	   r   r%   rI   )r  r'   r@   r?   s       r   'test_apply_function_returns_numpy_arrayr    sx    + 
01a7HI	JBZZ_""3'F
scURVVH%U3EC-PH 6,r   r  c                     U R                   $ r   r   grs    r   r:   r:     s    r   c                 &    U R                   S-   S-
  $ r  r   r  s    r   r:   r:     s    bhhQRlUVFVr   c                     [        / SQS/S9nUR                  S5      R                  U 5      n[        [	        / SQ5      [	        / SQ5      [	        SS/5      /[	        / SQSS	9S
9n[
        R                  " X#5        g )N)
r   rM   rM   rM   r   rM   rN   r   rN   r   idrD   )r   rW   rZ   r[   )r   rM   rN   rX   rY   rU   rS   r3   r   r  )r  r'   r@   r?   s       r    test_apply_function_index_returnr    sl     
1D6	BBZZ##H-F	|	eL15!Q=AID)H 6,r   c                      [        / SQ/ SQS.5      n U R                  SSS9R                  S 5      n[        / SQ/ S	QS.5      n[        R                  " X5        g )
Nr   )r   rM   rW   rW   rX   rY   r   r   Fr   c                 "    U R                  5       $ r   )r   r8   s    r   r:   Atest_apply_function_with_indexing_return_column.<locals>.<lambda>  s
    r   )r   r   r\   )r        @r  r   r  s      r   /test_apply_function_with_indexing_return_columnr    s\    	@&	

B ZZZ/556HIF+#	
H &+r   udfc                 "    U R                  5       $ r   r   r8   s    r   r:   r:     s
    qvvxr   c                 B    U R                  5       R                  S 5      $ )Nc                     U S-   $ r  r   )ys    r   r:   <lambda>.<locals>.<lambda>  s    QUr   )rj   r'  r8   s    r   r:   r:     s    1668???#Cr   c                    [        SS/SS/S.5      nUR                  SU S9R                  U5      nUR                  R                  UR                  U S9R                  U5      nU (       a9  UR
                  R                  S:X  d   eUR
                  R                  S:X  d   eg UR
                  R                  S:X  d   eUR
                  R                  S:X  d   eg )NrO   rP   r   rM   r  r   r   )r   r   r    r^   r   r   nlevels)r   r  r'   	df_resultseries_results        r   test_apply_result_typer    s     
#s1a&1	2B

3:
6<<SAIDDLL*L=CCCHM&&!+++""**a///&&!+++""**a///r   c                      [        / SQ/ SQS.5      n U R                  SSS9R                  S 5      nU R                  SSS9R                  S 5      n[        R                  " X5        g )	N)rM   r   rM   rS   r  r   Fr   c                     U $ r   r   r8   s    r   r:   4test_result_order_group_keys_false.<locals>.<lambda>.  s    qr   c                 "    U R                  5       $ r   r   r8   s    r   r:   r  /  s
    r   r   r  s      r   "test_result_order_group_keys_falser  *  s\     
3	4BZZZ.44[AFzz#%z0667IJH&+r   c                     S/S-  S/S-  -   S/S-  -   n [         R                  " U 5      n[         R                  " U SS9n[        [        [	        S5      5      S-  [	        S5      US	.5      n[        [        [	        S5      5      S-  [	        S5      US	.5      nUR                  S
SS9R                  S 5      nUR                  S
SS9R                  S 5      n[        R                  " XV5        g )Nz
2001-01-01rM   z
2001-01-02z
2001-01-03UTC)tzrN   rY   )r9   r  tr9   Fr   c                 *    U S/   R                  5       $ Nr  r   r   s    r   r:   1test_apply_with_timezones_aware.<locals>.<lambda>;      "cU)..BRr   c                 *    U S/   R                  5       $ r  r   r   s    r   r:   r  <  r  r   )	r!   rR  r   r   r   r   r    r%   r&   )datesindex_no_tzindex_tzr  r  r   r   s          r   test_apply_with_timezones_awarer  3  s    NQ,!!33|nq6HHE""5)K%0H
$uQx.1,58+N
OC
$uQx.1,58(K
LCkk#%k0667RSGkk#%k0667RSG'+r   c                 $   [        / SQ/ SQ/ SQS.5      n[        SS/SS/S	.[        S
S/SS9S9nUR                  SS9nUR                  [        R
                  SS9n[        R                  " XB5        UR                  SS9n[        X5      nU S:X  a	  [        nSnOS nSn[        R                  " XgS9   [        X05      " U6 nS S S 5        UR                  [        R
                  SS9n[        R                  " XB5        g ! , (       d  f       NC= f)N)c   r  r  X   r  r  )r   rM   rN   rW   rX   rY   )r   r   r  r  r  <   r`      rY      r  r  r  r  rO   r3   r   r  r   r   corrwithz'DataFrameGroupBy.corrwith is deprecatedr  match)r   r   r   r    r   r-  r%   r&   r   r   assert_produces_warningr8  )	reduction_funcr'   r?   grpr@   argswarnmsg_s	            r   ;test_apply_is_unchanged_when_other_methods_are_called_firstr  A  s    
)#)	

B 1gS"I&RH3'H ***
CYYrvvAY&F&+ ***
C">6D#7		#	#D	4C($/ 
5YYrvvAY&F&+ 
5	4s   5D
Dc                     [        / SQ[        SSS5      [        SSS5      [        SSS5      [        SSS5      // SQS.[        / SQS	S
9S9n U R                  SS/5      nUR	                  S 5      nU R
                  / SQ   nUR                  5       n[        R                  " U/ SQ   5      Ul	        UR                  / SQS9n[        R                  " X#5        UR                  R                  S    H  n[        U5      [        L a  M   e   g )N)rO   rO   rO   rP   i  r   r   rM   r   r6  )r   e   f   g   idxr3   r   r   r^   c                 $    U R                  S5      $ r  r   r8   s    r   r:   Rtest_apply_with_date_in_multiindex_does_not_convert_to_timestamp.<locals>.<lambda>w  s    r   )r   rM   rN   )r   r^   r  rD   )r   r   r   r   r    r/  r   r   
from_framer   r)  r%   r&   levelstype)r'   r  r@   r?   vals        r   @test_apply_with_date_in_multiindex_does_not_convert_to_timestampr  e  s     
%T1b!T1b!T1b!T1b!	 		
 (u5
B **c3Z
 CYY*+Fwwy!H##%H**84E+FGHN}}%6}7H&+||""1%CyD    &r   c                 D   [        / SQS[        R                  [        R                  SS/S.[        S5      S9nUR	                  SU SS	9R                  S
 5      nU (       a  UR                  5       S/   OUS/   R                  / SQ   n[        R                  " X#5        g )Nr   rM   rN   rW   rX   rO   rP   )colr   xxyxzr   r   F)dropnar   c                     U $ r   r   r8   s    r   r:   5test_apply_dropna_with_indexed_same.<locals>.<lambda>  s    RSr   r  )r   rN   r   rM   rW   )
r   r   r(  r   r   r    r  r/  r%   r&   )r  r'   r@   r?   s       r   #test_apply_dropna_with_indexed_samer    s     
"26626634	
 7m
B ZZ5ZAGGTF'-ryy{E7#2ug;3C3CO3TH&+r   zas_index, expected)r   r   r   )rM   rM   r   )rO   rP   Nr  r   r   )rM   rM   rP   r   r   c                     [        / SQ/ SQ/ SQS.5      nUR                  SS/U S9R                  S 5      n[        R                  " X15        g )Nr  )r   r   r   r   r`   rO   rP   r   c                     gr  r   r8   s    r   r:   5test_apply_as_index_constant_lambda.<locals>.<lambda>  s    qr   )r   r   r    r%   assert_equal)r   r?   r'   r@   s       r   #test_apply_as_index_constant_lambdar    sB    & 
L|L	MBZZc
XZ6<<[IFOOF%r   c                     [        / SQ/ SQ/ SQS.[        S5      S9n U R                  S5      R                  S 5      n[	        [        S	S
5      [
        R                  " / SQSS /S9SS9n[        R                  " X5        g )Nr  )rY   rZ   rU   r[   r   )r   r   r   rM   rM   r6  rX   r   r_   c                 6    U R                   R                  5       $ r   )r   
sort_indexr8   s    r   r:   (test_sort_index_groups.<locals>.<lambda>  s    QSS^^-=r   r   rY   )r   r  r   r  )rM   rW   r   r   r  )	r   r   r   r    r	   r   r   r%   rI   r  s      r   test_sort_index_groupsr    sw    	O/JAh
B ZZ_""#=>Fa$$4S$K
 H 6,r   c                  8   [        [        R                  " SSSS9[        S5      [	        S5      S.5      n U R                  U R                  U R                  R                  R                  /SS9R                  S	 5      n[        R                  " XS
S/   5        g )Nz
2010-01-0112hrX   )rx  r  r   )r   valsletFr   c                      U R                   SS  $ rt   rR  r8   s    r   r:   ;test_positional_slice_groups_datetimelike.<locals>.<lambda>  s    affQRjr   r   r  )r   r!   r  r   r   r   r  r   dtr    r%   r&   )r?   r@   s     r   )test_positional_slice_groups_datetimeliker    s    MM,UAF!H=	
H 	x}}'',,-%  e !  &FF+;"<=r   c                      [        / SQ/ SQ/ SQS.5      n U R                  S5      nUSS/   R                  S 5      n[        S	S
/SS
/S.[        SS/SS9S9n[        R
                  " X#5        g )N)rO   rO   rP   rS   r2  r6  r   r^   r_   c                 j    U R                  [        5      R                  5       U R                  5       -
  $ r   )r#   floatrj  ri  r8   s    r   r:   7test_groupby_apply_shape_cache_safety.<locals>.<lambda>  s     AHHUO,?,?,AAEEG,Kr   ra  ro  r   r7  rO   rP   r3   r   rE  )r'   r   r@   r?   s       r   %test_groupby_apply_shape_cache_safetyr    sp    	yyI	JB	CBc
^!!"KLFCjSz*%c
2MH &+r   c                     [         R                  " / SQ/ SQ/ SQS.5      n U R                  S5      SS/   nUR                  S 5      n[        R
                  " / S	Q/ S
Q/SS /S9n[        / SQUSS9n[        R                  " X$5        g )N)rO   rP   rO   rP   )aaacr   ad)r  r  r  r   )rO   b1b2rO   r  r  c                 >    U R                  5       R                  5       $ r   )unstackrN  r8   s    r   r:   3test_groupby_apply_to_series_name.<locals>.<lambda>  s    !9!9!;r   )rO   rO   rP   rP   rP   )r  r   r   r  r  )arraysrl   )rN   r   rM   r   r   r   r  )	r   	from_dictr   r    r   rU  r	   r%   rI   )r'   r  r@   expected_idxr?   s        r   !test_groupby_apply_to_series_namer
    s    			%**	

B **S/4,
'CYY;<F)))+IJDkL o\HH6,r   c                     [        / SQ/ SQSS[        R                  [        R                  /S.5      nUR                  SU S9nUR	                  S 5      nUR	                  S	 5      n[
        R                  " X45        g )
Nr  )r   r   rM   rX   r   rM   )r  r  zr  )r  c                 &    U R                  SS5      $ )Nr   r  )nlargest)grp_dfs    r   r:   test_apply_na.<locals>.<lambda>  s    3(?r   c                 @    U R                  SSS9R                  S5      $ )Nr  F)	ascendingr   )r.  r   r8   s    r   r:   r    s    Q]]3%]%H%M%Ma%Pr   )r   r   r(  r   r    r%   r&   )r  r'   dfgrpr@   r?   s        r   test_apply_nar    sg    	<q!RVVRVV6LM
B JJuVJ,E[[?@F{{PQH&+r   c            	      \   [        / SQ/ SQ[        R                  " / SQSS9S.5      R                  SS/5      R	                  S	 5      n [        [        R                  " S
SS9/[        R                  " SSS9//S/[
        R                  " SS/SS/S9S9n[        R                  " X5        g )Nr  )r  r  r  r  r   rO  )unitr`   rO   rP   c                      U R                   S   $ NrX  rR  r   s    r   r:   8test_apply_empty_string_nan_coerce_bug.<locals>.<lambda>   s    "''"+r   rM   rW   rQ   )r   r  )rM   r  r   r  )	r   r!   r<   r   r    r   r   r%   r&   )r@   r?   s     r   &test_apply_empty_string_nan_coerce_bugr    s     	!%^^Ls;	
 
#s		%	&  
..
%	&)D(EF$$gw%7SzJH
 &+r   index_values)ra  r   r  c                     [        / SQ/ SQS.[        U 5      S9n[        S/ SQ0[        / SQSS	9S9nUR                  S5      R                  S
 5      n[        R
                  " X5        g )N)r  a2a3rS   rR   r   b_mean)r   r  ra  )r  r  r  rO   r3   c                 <    [        U S   R                  5       /S/S9$ )NrP   r  r   )r	   r   r   s    r   r:   0test_apply_index_key_error_bug.<locals>.<lambda>  s    62c7<<>*8*=r   )r   r   r   r    r%   r&   )r  r@   r?   s      r   test_apply_index_key_error_bugr"  
  st     #	
 L!F o	
 &S1	H ^^C &&=F &+r   zarg,idx)皙?333333?皙?)r#  r%  r$  )r   rW   rN   )r#  r6  r%  c                     [        X S.US9nUR                  SSS9R                  S 5      nUS/   n[        R                  " X45        g )N)r  r  r   r  Fr   c                     U $ r   r   r8   s    r   r:   5test_apply_nonmonotonic_float_index.<locals>.<lambda>L  s    r   r  r   )argr  r'   r@   r?   s        r   #test_apply_nonmonotonic_float_indexr*     sJ    V 
3+3	7BZZ%Z066{CF5'{H&+r   zargs, kwargsnumeric_onlyc                     U R                  S5      nUR                  " S/UQ70 UD6nUR                  SS9n[        R                  " XE5        g )Nr   r-  T)r+  )r   r    r-  r%   r&   )r'   r  kwargsr   r@   r?   s         r   test_apply_str_with_argsr.  Q  sG     
CBXXe-d-f-Fvv4v(H&+r   r4   	some_namec                     [        SS/U S9nUR                  SS/SS9R                  S 5      n[        SS/U S9n[        R                  " X#5        g )Nr   rM   r3   rO   Fr   c                     U $ r   r   r8   s    r   r:   1test_result_name_when_one_group.<locals>.<lambda>^  s    qr   )r	   r   r    r%   rI   )r4   r  r@   r?   s       r   test_result_name_when_one_groupr3  Z  sS     !Qd
#C[[#s[6<<[IFq!f4(H6,r   z
method, opc                      U R                   S   $ r  )r#  r   s    r   r:   r:   g  s    RYYr]r   c                 &    U S   R                   S   $ )NrP   r   rR  r5  s    r   r:   r:   h  s    RW\\!_r   )aggskew)r7  kurt)r7  prod)r7  r-  c                     [        / / S.5      nUR                  SSS9nUR                  n[        X@5      " U5      n[	        / SS[        / SSS9S9n[        R                  " XV5        g )	NrR   rO   Tr   rP   float64rD  )r4   r  r   )r   r   rP   r8  r	   r   r%   rI   )methodopempty_dfr   r   r@   r?   s          r   test_empty_dfr@  d  sl     r+,H			#$		/BDDEU#B'F
IU2YS-QH 6,r   c                      [        / SQ/ SQS.5      n U R                  S5      n[        R                  " [        SS9   UR                  S SS	9  S S S 5        g ! , (       d  f       g = f)
Nrz  rN   rW   rX   rR   rO   z(include_groups=True is no longer allowedr  c                 "    U R                  5       $ r   r4  r8   s    r   r:   %test_include_groups.<locals>.<lambda>  s
    1557r   T)include_groups)r   r   pytestraises
ValueErrorr    )r'   r   s     r   test_include_groupsrI  }  sK    	3	4B	CB	z)S	T
"48 
U	T	Ts   A
A&zfunc, valuec                     [        / SQ/ SQ/ SQS.5      nUR                  S5      nUR                  U 5      n[        X/[	        SS/SS9S9n[
        R                  " XE5        g )	Nrz  rB  )r   r   rM   r   r   rM   r3   r   r  )r~   r,   r'   r   r@   r?   s         r   test_builtins_applyrK    sV     
yY9=	>B	ABXXd^FunE1a&q,ABH6,r   c            	          [        / SQ[        [        R                  " S5      SS9[        R
                  " SSS9S.5      n S nU R                  S	5      R                  5       S
/   nU R                  S	5      R                  U5      S
/   n[        R                  " X25        S nU R                  S	5      R                  U5      S
/   nUR                  5       n[        R                  UR                  S'   [        R                  " X55        S nU R                  S	5      R                  U5      S
/   nUR                  5       n[        R                  UR                  S'   [        R                  " X55        S nU R                  S	5      R                  U5      S/   nU R                  S	5      R                  5       S/   n[        R                  UR                  S'   [        R                  " X55        S nU R                  S	5      R                  U5      nU R                  S	5      R                  5       S   R                  5       n[        R                  UR                  S'   S Ul        [        R                   " X55        g )N)TigerrM  rM  LambrN  PonyrO  rZ   r  r  20130101r  r6  c                      U R                   S   $ rt   rR  r  s    r   f_0*test_inconsistent_return_type.<locals>.f_0  s    xx{r   r   r^   c                 B    U R                   S:X  a  g U R                  S   $ )NrM  r   r4   r/  rR  s    r   f_1*test_inconsistent_return_type.<locals>.f_1  s    88wxx{r   rM  c                 B    U R                   S:X  a  g U R                  S   $ NrO  r   rV  rR  s    r   f_2*test_inconsistent_return_type.<locals>.f_2      88vxx{r   rO  c                 B    U R                   S:X  a  g U R                  S   $ rZ  rV  rR  s    r   f_3*test_inconsistent_return_type.<locals>.f_3  r]  r   r_   c                 \    U R                   S:X  a  g U R                  S   R                  S   $ )NrO  r   r_   )r4   r/  rL  rR  s    r   f_4*test_inconsistent_return_type.<locals>.f_4  s(    88vxx{s##r   )r   r	   r   rq  r!   r  r   firstr    r%   r&   rj   r(  rL  NaTr4   rI   )	r'   rS  r?   r@   rW  r  r[  r_  rb  s	            r   test_inconsistent_return_typerf    s    
L		!G4z15	

B zz#$$&u-HZZ_""3'.F&+
 ZZ_""3'.FAVVAEE'N&$
 ZZ_""3'.FAFFAEE&M&$
 ZZ_""3'.F


3&AFFAEE&M&$$
 ZZ_""3'F


3$))+AFFAEE&MAF6%r   c            	         [        S/S-  S/S-  -   S/S-  S/S-  -   S/S-  -   S	/S-  -   S/S-  -   S/S-  -   S/S-  -   [        R                  R                  S5      R	                  S
SS9S.5      n S n[        [        S5      [        S5      / SQS.5      R                  SS/5      S   nU R                  S5      R                  U5      n[        R                  " X25        g )NrO   rU   rP   rY   rQ   rM   r   r  r  r      r  )cat1cat2r  c                     U R                  5       n U R                  R                  SS9U S'   U R                  S5      S   R	                  5       $ )Nri  )r=  rankrj  )rj   r  rl  r   ri  r8   s    r   r  (test_nonreducer_nonstransform.<locals>.f  sB    FFHEEJJeJ,&	yy (,,..r   aaaabbbcdefcde)r  r   g      @ra  r   r  ra  )ri  rj  rl  ri  rj  rl  )r   r   r   r   r8  r   r   r   r    r%   rI   )r'   r  r?   r@   s       r   test_nonreducer_nonstransformrp    s    
EAI	)EAIeaieai eai eai	
 eai eai 99((+44Sr4B
	

B/
 OO7	
 i !&*H ZZ%%a(F6,r   c                    ^ [         R                  R                  SS9n [        U R	                  SSSS9/ SQS.5      n0 mU4S	 jnUR                  S
5      R                  U5        UR                  SS/S/4   nUR                  SS/S/4   n[        R                  " TS   U5        [        R                  " TS   U5        g )NrB  )seedr   r  )rW   r  )r   rM   r   rM   r  c                 >   > U R                  5       T[        T5      '   g r   )rj   r   )r9   r   s    r   addstore/test_groupby_apply_store_copy.<locals>.addstore  s    FFHc%jr   r^   r   rM   r   rN   )
r   r   r   r   normalr   r    r/  r%   r&   )rngr'   rt  expected_out_0expected_out_1r   s        @r   test_groupby_apply_store_copyrz    s    
))

R

(C	B.	

B E% JJsO(#WWaVaS[)NWWaVaS[)N%(N3%(N3r   )jr   r   numpyr   rF  pandas.errorsr   pandasr!   r   r   r   r	   r
   pandas._testing_testingr%   pandas.tests.groupbyr   r)   rA   rL   markparametrizer   r   r   r   r   r   r   r   r   r   r  r  r  r   r%  r*  r:  rA  rO  rV  r^  rr  rv  r{  r  r  r  r  r  r  r  r  r  r  r  r  r(  r/  r9  r=  todayrC   rF  rT  r_  ru  r\  interval_rangeperiod_ranger   r}  r  r  r  r  r  r  r  r  r  r  r$   r  r  r  r  r
  r  r  r"  r*  r.  r3  r@  rI  rj  ri  r-  rK  rf  rp  rz  r   r   r   <module>r     sV  
   (    85 %,P#-L 	/HI	JIV	L9	:QFC	C!:	$	1aA	BQFK	+4FG	H)Tl+77 		
 
Iy)?	CaVL!$	)  <)$=<)$X.,$:  
$#	22,(%,P$ 3F2&0
@@,-9 e}5, 6,B,,,.,,: u60 70 -$.; --4,6,"C894
,   $\:VaVaV	
 $\:VaVaV	
..- ';!78, 9,- ^^x~~',,.0@0E0E0GH
,	
,#-L eT]3( 4(,-( 
DK(
!Q
4=>	11 	$1v1v&67	)QFQF+;<	+ff-=>8q\qQ<(	

 J!fq!fAA/0	
 -! -- &9;V%WX- Y-,$ 	CD e}50 6	
0 ,,!,H!<,  I&6Ff0U	
 Aj44ff5EcSVZX	
"&#"&-">	,-(,,* )_)EF, G,* 
	

	

	
3%(R,S(R, D62,nd=S8T)UV, W, +t!45- 6- 	*+	,-
-
-9 #qC8c1X(FG- H-;&|-D4r   