
    Owg#+                        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"                  j%                  dg d      ej"                  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"                  j%                  dddg      d                      Zej"                  j%                  dg d      d        Zej"                  j%                  dg d      ej"                  j%                  dddg      d               Zej"                  j%                  dg d      ej"                  j%                  dddg      d               Zej"                  j%                  d e ej0                   e
ej2                         d!d"ej4                  fd#ej4                  fd$d%d&ej4                  fd'd(ej4                  fd)ej4                  fd*ej4                  fg
       ej0                   e
ej4                  dd+d,g      g d-       ej0                   e
d.j7                               g d/                  d0        Zej"                  j%                  d e ej0                   e
ej2                         d1 e
g ej2                         fd2 e
g ej2                         fg       ej0                   e
ej4                  dd+d,g      d1 e
ej4                  dd+d3g      fd2 e
ej4                  dd,d3g      fg       ej0                   e
d.j7                               d2 e
g d4      fg                  d5        Zej"                  j%                  d6 e ej0                   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j0                   e	ej4                  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j4                  d>g      fd) e
ej4                  d?g      fd* e
dd=g      fg
                  d@        Zej"                  j%                  d6 e ej0                   e	       d1 e	       fd2 e	       fg       ej0                   e	ej4                  dgdd+gg      d1 e	ej4                  dgdd+gg      fd2 e	ej4                  dgdd,gg      fg                  dA        Z ej"                  j%                  de      dB        Z!ej"                  j%                  de      dC        Z"ej"                  j%                  dDg dE      dF        Z#y)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                    t        |      dkD  r9|dk(  r4| j                  t        j                  j	                  t
        d              t        ||      |g|i |} t        ||      |i |}t        j                  ||       y )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           R/var/www/horilla/myenv/lib/python3.12/site-packages/pandas/tests/apply/test_str.pytest_apply_with_string_funcsr/      s     4y1}KK #  	
 'W[#&t;d;d;F)w{D)4848H68,    argc                 V    | j                  |      } t        | |             }||k(  sJ y )N)r   r%   )datetime_seriesr1   r,   r-   s       r.   test_with_string_argsr4   .   s1    ""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                  ||       y )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7K&W[#&r*F.0fa[bFB6!6v6k>Q>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        t        j                         y # 1 sw Y    xY w)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 0 +c*2."72r?;/	0
 &(+0 0s   )A;;B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  | j                  |      }d d d        t        |      rt        j                  |d      sJ y |k(  sJ y # 1 sw Y   7xY w)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   su    b dC(4mD		#	#D0M	N "D!"zz&(d;;;!!!" "s   A88BcumprodrG   rZ   )r<   abr\   c                     t        |t              rd nt        }t        j                  |d      5  | j                  |      }d d d        t        j                  |       y # 1 sw Y    xY w)Nr_   r`   rc   rd   re   r&   rQ   r   r'   rg   s        r.   &test_agg_cython_table_transform_seriesrn      sX    4 dC(4mD		#	#D0M	N "D!"68," "s   A!!A*zdf, func, expectedr
   float64rW   rX   rY   g      ?g      ?g۞?g      ?c                     t        |t              rd nt        }t        j                  |d      5  | j                  ||      }d d d        t        j                  |       y # 1 sw Y    xY w)Nis currently using DataFrame.*r`   r   rm   dfr	   r-   r   rS   r,   s         r.   test_agg_cython_table_frameru      s_    N dC(4mD		#	#D0P	Q )4() 68,) )s   A##A,c                    |dv r|j                  d      }t        |t              rd nt        }t	        j
                  |d      5  | j                  ||      }d d d        t	        j                  |       y # 1 sw Y    xY w)N)rA   r   ro   rq   r`   rr   )astyperc   rd   re   r&   rQ   r   rR   rs   s         r.   %test_agg_cython_table_transform_framerx      st    & ~??9-dC(4mD		#	#D0P	Q )4() &(+) )s   A88Bc                    |dk(  r4| j                  t        j                  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                  |      j                  |g| }d d d         |j                  |dg| }t        j                  |       y # 1 sw Y   4xY w)	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      s     
X~KKZ8VW	
 (NC5D77=&&q)*D(N=D
.C		#	#D	4 D8=((.88CdCD$]$$R2T2F68,D Ds   #C""C+c                 :   |dk(  r4| j                  t        j                  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  |j                  ||      }d d d        |dk(  rt        nd }d}	t        j                  ||	      5   j                  |g| }
d d d         |j                  ||g| }t        j                  |
       d|j                  vsJ |d   j                         |d<   t!        |j"                  j$                        d	kD  sJ |dv r#t        j                  |j                  d         }n"t        j                  |j                  d	         }t        j                  t        |      5  |j                  ||      }d d d        |dk(  rt        nd }d}	t        j                  ||	      5   j                  |g| }d d d         |j                  ||g| }t        j                  |       y # 1 sw Y   xY w# 1 sw Y   xxY w# 1 sw Y   xY w# 1 sw Y   ZxY w)Nrz   r{   r   r|   r}   )r   r?   r   z5The 'axis' keyword in DataFrame.groupby is deprecatedr   z+DataFrame.groupby with axis=1 is deprecatedr`   rr   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     sm   	X~KKZ8VW	
 (NC5D|ww{((+,Eww{((+,;		#	#M	= 2  D 12 (N=D4F		#	#D	7 +2<<*T*+ #[""2t3d3F&(+ k)))))"3',,.K{&&'!+++|ww{((+,ww{((+,		#	#M	= 3!!$T!23(N=D4F		#	#D	7 -!CMM",t,	-#k##B4t4G'9-72 2
+ +3 3- -s0   ,I+.I8"J$J+I58JJJmethod)rD   shift
pct_changerG   rankc                     t        dddgi      }|j                  |       } t        j                  |       |      }t	        j
                  ||       y )Nr   r9   )r   rL   operatormethodcallerr&   rR   )r   rt   r,   r-   s       r.   test_transform_method_namer   @  sK     
C"a>	"B\\&!F,x$$V,R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_paramsro   nansplitri   rn   boolru   rx   r   r   r    r0   r.   <module>r      s       /  !EFR 12aS"!12R&!)9:R.$/ODaY 6?K	  01- 2	 G-  DE F ?@ 01	- 2 A	- 
J g 67, 8,$ 	"""$ 266"	
 	#""BFFAq!$%	
 	#""7==?#		
?),Z
"[,Z
" 	"""$F2RZZ896"BJJ78	
 	#""BFFAq!$%FBFFAq!#45662661a"345	
 	#""7==?#x8J1K&L%M	
,--,- 	"""KY/0Y/0Y/0T*+T*+i01i01Y/0Y/06	23	
 	#""{QF+,Qx()Qx()Qx()d|,-d|,-C)*a)*123}-.61c(+,	
!"F-G"F- 	"""K9ik2Xy{4KL	
 	#""{QF+,I{QF&;<=9rvvqkAq6%:;<	
	,, 78- 9-" 67+. 8+.\ #ST, U,r0   