
    bMh#+                     ,   d dl mZ d dlZd dlZd dlZd dlmZ d dlm	Z	m
Z
 d dlmZ d dlmZmZ ej                            dg d          ej                            d ej        g i d	
           ej        dgi d
           ej        g ddid
           ej        g ddid
           ej        ddgddid
          g          ej                            dddg          d                                     Zej                            dg d          d             Zej                            dg d          ej                            dddg          d                         Zej                            dg d          ej                            dddg          d                         Zej                            d e ej         e
ej                   d!d"ej        fd#ej        fd$d%d&ej        fd'd(ej        fd)ej        fd*ej        fg
           ej         e
ej        dd+d,g          g d-           ej         e
d.                                          g d/                              d0             Zej                            d e ej         e
ej                   d1 e
g ej                   fd2 e
g ej                   fg           ej         e
ej        dd+d,g          d1 e
ej        dd+d3g          fd2 e
ej        dd,d3g          fg           ej         e
d.                                          d2 e
g d4          fg                              d5             Zej                            d6 e ej         e	            d7 e
d8           fd" e
d8           fd# e
d8           fd9 e
e           fd: e
e           fd& e
d8           fd; e
d8           fd( e
d8           fd) e
d8           fd* e
d8           fg
           ej         e	ej        dgdd+gg          d7 e
d<d,g          fd" e
d<d+g          fd# e
d<dg          fd9 e
ddg          fd: e
ddg          fd& e
dd=g          fd; e
d<d+g          fd( e
ej        d>g          fd) e
ej        d?g          fd* e
dd=g          fg
                              d@             Zej                            d6 e ej         e	            d1 e	            fd2 e	            fg           ej         e	ej        dgdd+gg          d1 e	ej        dgdd+gg          fd2 e	ej        dgdd,gg          fg                              dA             Z ej                            de          dB             Z!ej                            de          dC             Z"ej                            dDg dE          dF             Z#dS )G    )chainN)	is_number)	DataFrameSeries)frame_transform_kernelsseries_transform_kernelsfunc)summeanminmaxstdz	args,kwdsno_args_or_kwds)id   axis_from_argsaxisaxis_from_kwdsnumeric_onlyToptional_kwdsargs_and_kwdshowaggapplyc                 4   t          |          dk    r?|dk    r9|                     t          j                            t
          d                      t          ||          |g|R i |} t          ||          |i |}t          j        ||           d S )Nr   r   z>agg/apply signature mismatch - agg passes 2nd argument to funcraisesreason)	lenapplymarkerpytestmarkxfail	TypeErrorgetattrtmassert_series_equal)requestfloat_framer	   argskwdsr   resultexpecteds           [/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pandas/tests/apply/test_str.pytest_apply_with_string_funcsr/      s     4yy1}}K #   	
 	
 	
 'W[#&&t;d;;;d;;F)w{D))48488H68,,,,,    argc                 p    |                      |          } t          | |                      }||k    sJ d S )N)r   r%   )datetime_seriesr1   r,   r-   s       r.   test_with_string_argsr4   .   sC    ""3''F,w,,..HXr0   op)r   medianr   varc                    t          ddgddgd          } t          ||          |           }| dv rddini }t           t          t          |           |fdd	i||j        
          }t          j        ||           d S )Nr            )ab)r   r7   ddofr   r   )index)r   r%   r   npcolumnsr&   r'   )r5   r   r)   r,   kwargsr-   s         r.   test_apply_np_reducerrC   5   s     1a&1v6677K&W[#&&r**F.00fa[[bFB66!6v66k>Q  H 68,,,,,r0   )absceilcoscumsumexplogsqrtsquare	transformc                 (   d| j         d<   d }|dv rt          }t          j        |d          5   t	          | |          |          } t	          t
          |          |           }d d d            n# 1 swxY w Y   t          j        ||           d S )Ng      )r   r   )rI   rJ   F)check_stacklevel)ilocRuntimeWarningr&   assert_produces_warningr%   r@   assert_frame_equal)r)   r5   r   warnr,   r-   s         r.   test_apply_np_transformerrT   C   s     "KTD	_		#D5	A	A	A 0 0 +c**2.."72r??;//	0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
 &(+++++s   8A22A69A6zseries, func, expected)dtype)r
   r   r   r   allT)anyFr   )prodr   r   r7   r6   r9   r:   )
)r
      )r   r:   )r   r   rV   rX   T)r   r9   )rY   rZ   )r   r   )r7   r   )r6   r9   za b c))r
   abc)r   c)r   r<   rV   r[   c                 ,   t          |t                    rd nt          }t          j        |d          5  |                     |          }d d d            n# 1 swxY w Y   t          |          rt          j        ||d          sJ d S ||k    sJ d S )Nis currently using Series.*matchT)	equal_nan)	
isinstancestrFutureWarningr&   rQ   r   r   r@   iscloseseriesr	   r-   rS   r,   s        r.   test_agg_cython_table_seriesri   Y   s    b dC((;44mD		#D0M	N	N	N " "D!!" " " " " " " " " " " " " " " "z&(d;;;;;;;;!!!!!!   AAAcumprodrG   rZ   )r<   abr\   c                     t          |t                    rd nt          }t          j        |d          5  |                     |          }d d d            n# 1 swxY w Y   t          j        ||           d S )Nr_   r`   rc   rd   re   r&   rQ   r   r'   rg   s        r.   &test_agg_cython_table_transform_seriesro      s    4 dC((;44mD		#D0M	N	N	N " "D!!" " " " " " " " " " " " " " "68,,,,,rj   zdf, func, expectedr
   float64rW   rX   rY   g      ?g      ?g۞?g      ?c                     t          |t                    rd nt          }t          j        |d          5  |                     ||          }d d d            n# 1 swxY w Y   t          j        ||           d S )Nis currently using DataFrame.*r`   r   rn   dfr	   r-   r   rS   r,   s         r.   test_agg_cython_table_framerv      s    N dC((;44mD		#D0P	Q	Q	Q ) )4(() ) ) ) ) ) ) ) ) ) ) ) ) ) ) 68,,,,,s   AA Ac                 (   |dv r|                     d          }t          |t                    rd nt          }t	          j        |d          5  |                     ||          }d d d            n# 1 swxY w Y   t	          j        ||           d S )N)rA   r   rp   rr   r`   rs   )astyperc   rd   re   r&   rQ   r   rR   rt   s         r.   %test_agg_cython_table_transform_framery      s    & ~??9--dC((;44mD		#D0P	Q	Q	Q ) )4(() ) ) ) ) ) ) ) ) ) ) ) ) ) ) &(+++++s   A22A69A6c                    |dk    r9|                      t          j                            t          d                     |dk    rdgng }t          j        |j        d                   }|dk    rt          nd }d}t          j
        ||          5   |                    |          j        |g|R  }d d d            n# 1 swxY w Y    |j        |dg|R  }t          j        ||           d S )	Nngroupngroup not valid for NDFramer   fillna        r   z"SeriesGroupBy.fillna is deprecatedr`   )r    r!   r"   r#   
ValueErrorr@   onesshapere   r&   rQ   groupbyrL   r'   )	r(   string_seriesr5   r*   r   rS   msgr-   r,   s	            r.   $test_transform_groupby_kernel_seriesr      sY    
X~~KZ8VWW	
 	
 	
 (NNC55D7=&q)**D(NN==D
.C		#D	4	4	4 D D8=((..8CdCCCD D D D D D D D D D D D D D D$]$R2T222F68,,,,,s   "B??CCc                 (   |dk    r9|                      t          j                            t          d                     |dk    rdgng }|dv r"t          j        |j        d                   }d}n!t          j        |j        d	                   }d
}t          j	        t          |          5  |                    ||          }d d d            n# 1 swxY w Y   |dk    rt          nd }d}	t          j	        ||	          5   |j        |g|R  }
d d d            n# 1 swxY w Y    |j        ||g|R  }t          j        ||
           d|j        vsJ |d                                         |d<   t!          |j        j                  d	k    sJ |dv r t          j        |j        d                   }nt          j        |j        d	                   }t          j	        t          |          5  |                    ||          }d d d            n# 1 swxY w Y   |dk    rt          nd }d}	t          j	        ||	          5   |j        |g|R  }d d d            n# 1 swxY w Y    |j        ||g|R  }t          j        ||           d S )Nr{   r|   r   r}   r~   )r   r?   r   z5The 'axis' keyword in DataFrame.groupby is deprecatedr   z+DataFrame.groupby with axis=1 is deprecatedr`   rs   z%DataFrameGroupBy.fillna is deprecatedEA)r    r!   r"   r#   r   r@   r   r   r&   rQ   re   r   rL   rR   rA   copyr   _mgrarrays)r(   r   r)   r5   r*   r   r   gbrS   op_msgr-   r,   gb2	expected2result2s                  r.   #test_transform_groupby_kernel_framer     s   	X~~KZ8VWW	
 	
 	
 (NNC55D|w{(+,,Ew{(+,,;		#M	=	=	= 2 2  D 112 2 2 2 2 2 2 2 2 2 2 2 2 2 2 (NN==D4F		#D	7	7	7 + +2<*T***+ + + + + + + + + + + + + + + #["2t3d333F&(+++ k)))))"3',,..K{&''!++++|w{(+,,w{(+,,		#M	=	=	= 3 3!!$T!223 3 3 3 3 3 3 3 3 3 3 3 3 3 3(NN==D4F		#D	7	7	7 - -!CM",t,,,	- - - - - - - - - - - - - - -#k#B4t444G'9-----sH   -CCCDD"%D"2HHHI##I'*I'method)rD   shift
pct_changerG   rankc                     t          dddgi          }|                    |           } t          j        |           |          }t	          j        ||           d S )Nr   r9   )r   rL   operatormethodcallerr&   rR   )r   ru   r,   r-   s       r.   test_transform_method_namer   @  s]     
C"a>	"	"B\\&!!F,x$V,,R00H&(+++++r0   )$	itertoolsr   r   numpyr@   r!   pandas.core.dtypes.commonr   pandasr   r   pandas._testing_testingr&   pandas.tests.apply.commonr   r   r"   parametrizeparamr/   r4   rC   rT   get_cython_table_paramsrp   nansplitri   ro   boolrv   ry   r   r   r    r0   r.   <module>r      s               / / / / / /                     !E!E!EFFR 1222aS"!1222R&!)9:::R.$/ODDDaY 6?KKK	 	  011- - 21	 	 GF-  D D DEE  FE ???@@ 011	- 	- 21 A@	- 
J
J
J  g 677, , 87 ,$ 	E""F$$$ 26"	
 	
 	#"FBFAq!$%%  	
 	
 	#"F7==??##  		
 		
?) ), ,Z
" 
"[, ,Z
" 	E""F$$$FF2RZ888966"BJ7778	
 	
 	#"FBFAq!$%%FFBFAq!#455666261a"3445	
 	
 	#"F7==??##x8J8J8J1K1K&L%M	
 	
  ,- -- ,- 	E""IKKY///0Y///0Y///0T***+T***+i0001i0001Y///0Y///066	2223	
 	
 	#"I{QF+,,Qx(()Qx(()Qx(()d|,,-d|,,-C))*a))*1223}--.661c(++,	
 	
! " "F- -G" "F- 	E""IKK9iikk2Xyy{{4KL	
 	
 	#"I{QF+,,II{QF&;<<=99rvqkAq6%:;;<	
 	
	  , , , 788- - 98-" 677+. +. 87+.\ #S#S#STT, , UT, , ,r0   