
    d=+                        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
mZmZmZ d dlmZ ej                            dddg          d             Zd	 Zd
 Zd Zd Zej                            dddg          d             Zd Zd Zej                            dg d          ej                            ddddiidddgiig          d                         Zej                            ddddgiddgddgdg          d             Zd  Zej                            dd!d"g          d#             Zej                            dg d          ej                            dddiddgig          d$                         Zd% Z ej                            d&d'd(dd)d*gffd+g          d,             Z!d- Z"d. Z#ej                            d/ ej$         e
d)d*gd*d)gg          d0e%gg                    d1             Z&ej                            d2 e ej$         ed3'                                          de%fd4e%fd5e%fd6e%fd7e%fd0e%fg                              d8             Z(d9 Z)d: Z*ej                            dd; d< d= g          d>             Z+d? Z,ej                            d@dAdgdBfej-        dddCfg          dD             Z.ej                            dddgddAgg          dE             Z/ej                            dddgdAdgg          dF             Z0ej                            dGdH dI dJ dK g          dL             Z1dS )M    )chainN)SpecificationError)Categorical	DataFrameSeries
date_rangenotnaresult_typefoo   c                     |}d}t          j        t          |          5  |                    d d|            d d d            d S # 1 swxY w Y   d S )NzUinvalid value for result_type, must be one of {None, 'reduce', 'broadcast', 'expand'}matchc                 
    g dS )Nr          xs    _/var/www/html/t/fyr/venv311/lib/python3.11/site-packages/pandas/tests/apply/test_invalid_arg.py<lambda>z(test_result_type_error.<locals>.<lambda>%   s
    999     r   axisr
   pytestraises
ValueErrorapply)r
   int_frame_const_coldfmsgs       r   test_result_type_errorr$      s     
B	2  
z	-	-	- G G
$$1+FFFG G G G G G G G G G G G G G G G G Gs   AAAc                      t          g dg dg dgg d          } d}t          j        t          |          5  |                     d d	           d d d            d S # 1 swxY w Y   d S )
Nr   )         )      	   )ar,   c)indexz)No axis named 2 for object type DataFramer   c                     | S Nr   r   s    r   r   z/test_apply_invalid_axis_value.<locals>.<lambda>,   s    1 r   r   r   r   r   r   r    r"   r#   s     r   test_apply_invalid_axis_valuer3   (   s    	IIIyyy)))4OOO	L	L	LB
5C	z	-	-	- ! !
a   ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !s   AA#&A#c                     t          j        t          d          5  |                     d d           d d d            d S # 1 swxY w Y   d S )Nzna_action must be .*Got 'abc'r   c                 :    t          t          |                     S r0   )lenstrr   s    r   r   z1test_applymap_invalid_na_action.<locals>.<lambda>2   s    s3q66{{ r   abc	na_action)r   r   r   applymap)float_frames    r   test_applymap_invalid_na_actionr=   /   s    	z)H	I	I	I E E22eDDDE E E E E E E E E E E E E E E E E Es   AA	Ac                      t          ddgddgd          } d}t          j        t          |          5  |                                  d d d            d S # 1 swxY w Y   d S )Nr   r   r   ABzMust provider   )r   r   r   	TypeErroraggr2   s     r   test_agg_raisesrD   5   s    	!Qq!f--	.	.B
C	y	,	,	,  
                 s   AAAc                      t          g d          } d}t          j        t          |          5  |                     d d           d d d            d S # 1 swxY w Y   d S )Nr   z)na_action must either be 'ignore' or Noner   c                     | S r0   r   r   s    r   r   z8test_map_with_invalid_na_action_raises.<locals>.<lambda>C        r   ____r9   r   r   r   r   map)sr#   s     r   &test_map_with_invalid_na_action_raisesrL   >   s    yyyA
5C	z	-	-	- - -	kkV,,,- - - - - - - - - - - - - - - - - -s   AAAinput_na_actionrH   Tc                     t          g d          }d|  d}t          j        t          |          5  |                    ddi|            d d d            d S # 1 swxY w Y   d S )Nr   z+na_action must either be 'ignore' or None, z was passedr   r   r   r9   rI   )rM   rK   r#   s      r   2test_map_arg_is_dict_with_invalid_na_action_raisesrO   F   s     	yyyA
T
T
T
TC	z	-	-	- 1 1	q!f0001 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1s   AA!Ac                  H   t          t          d          t          d          d          } t          | dt          d                    }t          j        t
          t          j                  5  |                    d	 d
           d d d            d S # 1 swxY w Y   d S )NABBABCDDCBAT)
categoriesorderedXXabcdefg)namer.   r   c                     | S r0   r   r   s    r   r   z0test_map_categorical_na_action.<locals>.<lambda>S   rG   r   ignorer9   )	r   listr   r   r   NotImplementedErrortmEMPTY_STRING_PATTERNrJ   valuesrK   s     r   test_map_categorical_na_actionr`   O   s    iT&\\4PPPFvDY888A	*"2I	J	J	J / /	kkX.../ / / / / / / / / / / / / / / / / /s   1BBBc                     t          ddd                              d          } t          | d          }t          j        t
          t          j                  5  |                    d	 d
           d d d            d S # 1 swxY w Y   d S )Nz
2011-01-01z
2011-01-02H)freqz
Asia/TokyorU   )rW   r   c                     | S r0   r   r   s    r   r   z/test_map_datetimetz_na_action.<locals>.<lambda>Z   rG   r   rY   r9   )	r   tz_localizer   r   r   r[   r\   r]   rJ   r^   s     r   test_map_datetimetz_na_actionrf   V   s    l===II,WWFvD!!!A	*"2I	J	J	J / /	kkX.../ / / / / / / / / / / / / / / / / /s   BB	Bmethod)r    rC   	transformfuncr@   rA   sumc                      | ddgi          }d}t          j        t          |          5   t          ||          |           d d d            d S # 1 swxY w Y   d S )Nr@   r   nested renamer is not supportedr   )r   r   r   getattr)frame_or_seriesrg   ri   objr   s        r   test_nested_renamerrp   ]   s     /3*
%
%C-E	)	7	7	7 # #VT"""# # # # # # # # # # # # # # # # # #s   AAArenamerminmaxmean)r   barc                     t          t          d          dd          }d}t          j        t          |          5  |                    |            d d d            d S # 1 swxY w Y   d S )Nr(   int64series)dtyperW   rl   r   )r   ranger   r   r   rC   )rq   rK   r#   s      r   test_series_nested_renamerr{   g   s    
 	uQxxwX666A
+C	)	5	5	5  	g                 s   A  A$'A$c                  0   t          t          j                            dd          g dt	          dd                    } d}t          j        t          |          5  | j        	                    d	d
dgi           d d d            d S # 1 swxY w Y   d S )N
   r   )r@   rA   Cz1/1/2000)periods)columnsr.   rl   r   r   rj   rt   )
r   nprandomrandnr   r   r   r   r@   rC   )tsdfr#   s     r   test_apply_dict_deprr   r   s    
	AR000  D
 ,C	)	5	5	5 - -

EE6?+,,,- - - - - - - - - - - - - - - - - -s   BBBrC   rh   c                     t          t          d          dd          }d}t          j        t          |          5   t          ||           ddiddid           d d d            d S # 1 swxY w Y   d S )	Nr'   r?   rl   r   r   rr   ru   rs   )r   rz   r   r   r   rm   )rg   r"   r#   s      r   test_dict_nested_renaming_deprr   }   s    	q**	+	+B -C	)	5	5	5 H HF5%.u~FFGGGH H H H H H H H H H H H H H H H H Hs   !A++A/2A/c                     t          ddgi          }t          j        d          }t          j        t
          |          5   t          ||           |           d d d            d S # 1 swxY w Y   d S )Nr@   r   zColumn(s) ['B'] do not existr   )r   reescaper   r   KeyErrorrm   )rg   ri   ro   r   s       r   test_missing_columnr      s     S1#J

CI455E	xu	-	-	- # #VT"""# # # # # # # # # # # # # # # # # #s   A))A-0A-c                      t          ddgi          } d}t          j        t          |          5  |                     t
          t          t
          d           d d d            d S # 1 swxY w Y   d S )Nr,   1z#Column\(s\) \[1, 'b'\] do not existr   )r,   r   b)r   r   r   r   rh   intr7   r2   s     r   'test_transform_mixed_column_name_dtypesr      s    	C#<	 	 B
0C	xs	+	+	+ 3 3
33S112223 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3s   )A&&A*-A*z	how, args)
pct_changer   	nsmallestr,   r   )tailr   c                     t          ddgddgd          }d|  d}t          j        t          |          5  |                    | d|	           d d d            d S # 1 swxY w Y   d S )
Nr   r   r   r&   )r,   r   z
Operation z does not support axis=1r   )r   argsr1   )howr   r"   r#   s       r   test_apply_str_axis_1_raisesr      s    
 
!Qq!f--	.	.B
4s
4
4
4C	z	-	-	- ) )
14((() ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )s   AA"%A"c                      d} t          j        t          |           5  t          dg                              dd           d d d            d S # 1 swxY w Y   d S )Nz&No axis named 1 for object type Seriesr   r   rj   r   )r   r   r   r   rh   )r#   s    r   test_transform_axis_1_raisesr      s    
2C	z	-	-	- - -se!,,,- - - - - - - - - - - - - - - - - -s   &AAAc            
         t          g dg dg dt          j                            d          t          j                            d          t          j                            d          d          } t          j        | j        d<   d }d }d	}t          j        t          |
          5  | 	                    |d           d d d            d S # 1 swxY w Y   d S )N)r   r   r   r   ru   ru   ru   ru   r   r   r   )oner   r   twor   r   r   r   r   r   r   )dullr   shinyr   r   r   r   r   r   r   r      )r@   rA   r~   DEF)r&   r~   c                 ^    | d                              d          r| d         dk    rd| d<   | S Nr~   shinr@   r   r)   r   )
startswithrows    r   rh   z.test_apply_modify_traceback.<locals>.transform   s8    s8v&& 	3s8u+<+<CH
r   c                     t          | d                   r,| d                             d          r| d         dk    rd| d<   | S r   )r	   r   r   s    r   
transform2z/test_apply_modify_traceback.<locals>.transform2   sI    S?? 	s3x226:: 	s3x5?P?PCH
r   z,'float' object has no attribute 'startswith'r   r   r   )
r   r   r   r   nanlocr   r   AttributeErrorr    )datarh   r   r#   s       r   test_apply_modify_tracebackr      sC          $$$$$$U+	
 +	
- -D^ vDHV  
  
 9C	~S	1	1	1 & &

91
%%%& & & & & & & & & & & & & & & & & &s   +CCCzdf, func, expectedcumprodc                     d}t          j        ||          5  |                     ||           d d d            d S # 1 swxY w Y   d S )Nz0can't multiply sequence by non-int of type 'str'r   r   r   r   rC   )r"   ri   expectedr   r#   s        r   "test_agg_cython_table_raises_framer      s     =C	xs	+	+	+    
t$                                   s   >AAzseries, func, expectedza b cprodstdvarmedianc                     d}t          j        ||          5  |                     |           d d d            d S # 1 swxY w Y   d S )Nz?[Cc]ould not convert|can't multiply sequence by non-int of typer   r   )rx   ri   r   r#   s       r   #test_agg_cython_table_raises_seriesr      s    $ MC	xs	+	+	+  

4                 s   <A A c                      t          dd gi          } t          j        d          }t          j        t
          |          5  |                     dd i           d d d            d S # 1 swxY w Y   d S )Nr,   zint() argument must be a stringr   c                 6    t          | j        d                   S Nr   r   ilocr   s    r   r   z'test_agg_none_to_type.<locals>.<lambda>  s    s16!9~~ r   )r   r   r   r   r   rB   rC   r2   s     r   test_agg_none_to_typer     s    	C$=	!	!B
)5
6
6C	y	,	,	, 0 0
--.///0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0s   A((A,/A,c                      t          dd gi          } d}t          j        t          |          5  |                     dd i           d d d            d S # 1 swxY w Y   d S )Nr,   zargument must be ar   c                 6    t          | j        d                   S r   r   r   s    r   r   z-test_transform_none_to_type.<locals>.<lambda>  s    S^^ r   )r   r   r   rB   rh   r2   s     r   test_transform_none_to_typer     s    	C$=	!	!B
C	y	,	,	, 6 6
c3345556 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6s   AAAc                 V    t          j        ddg                              dd          S )Nr   r   )r   arrayreshaper   s    r   r   r   $  s$    "(Aq6""**2q11 r   c                 
    ddgS Nr   r   r   r   s    r   r   r   %  s
    1a& r   c                 $    t          ddg          S r   )r   r   s    r   r   r   &  s    &!Q.. r   c                     | }d}t          j        t          |          5  |                    |dd           d d d            d S # 1 swxY w Y   d S )Nz2too many dims to broadcast|cannot broadcast resultr   r   	broadcastr   r   )r!   ri   r"   r#   s       r   test_apply_broadcast_errorr   !  s     
B ?C	z	-	-	- 8 8
A;7778 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8s   AA
A
c                     d}t          j        t          |          5  t          j        d          5  |                    ddg|            d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )Nz3cannot combine transform and aggregation operationsr   rY   allrs   sqrtr   r   r   r   r   errstaterC   )r   r<   r#   s      r   test_transform_and_agg_err_aggr   2  s   
?C	z	-	-	- 8 8[X&&& 	8 	8OOUFO$O777	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	88 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8s4   A2AA2A	A2!A	"A22A69A6z	func, msgr   z(cannot combine transform and aggregationz2cannot perform both aggregation and transformationc                     t          j        t          |          5  t          j        d          5  |                     |           d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )Nr   rY   r   r   )string_seriesri   r#   s      r   !test_transform_and_agg_err_seriesr   :  s     
z	-	-	- $ $[X&&& 	$ 	$d###	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$$ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $s4   A,AA,A	A,A	A,,A03A0c                     d}t          j        t          |          5  |                    ||            d d d            d S # 1 swxY w Y   d S )NFunction did not transformr   r   )r   r   r   rh   )r   r<   ri   r#   s       r   test_transform_wont_agg_framer   K  s     'C	z	-	-	- / /d.../ / / / / / / / / / / / / / / / / /s   AA
Ac                 (   d}|d         dk    rt           nd }d}t          j        t          |          5  t	          j        ||d          5  |                     |           d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )Nr   r   r   z!invalid value encountered in sqrtr   F)r   check_stacklevel)RuntimeWarningr   r   r   r\   assert_produces_warningrh   )r   ri   r#   warnwarn_msgs        r   test_transform_wont_agg_seriesr   T  s    'C!!W..>>DD2H	z	-	-	- * *'HuUUU 	* 	*##D)))	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	** * * * * * * * * * * * * * * * * *s5   BA/#B/A3	3B6A3	7BBB
op_wrapperc                     | S r0   r   r   s    r   r   r   b  s    Q r   c                     | gS r0   r   r   s    r   r   r   b  s    1# r   c                 
    d| iS Nr@   r   r   s    r   r   r   b  s
    #q r   c                     d| giS r   r   r   s    r   r   r   b  s    cTUSVZ r   c                     ||           }t          dg di          }t          j        ||          }d}t          j        t
          |          5  |                    |           d d d            d S # 1 swxY w Y   d S )Nr@   r   r   r   )r   r\   get_objr   r   r   rh   )all_reductionsrn   r   opro   r#   s         r   test_transform_reducer_raisesr   a  s    
 
N	#	#B
S)))$
%
%C
*S/
*
*C
&C	z	-	-	-  b                 s   A44A8;A8)2	itertoolsr   r   numpyr   r   pandas.errorsr   pandasr   r   r   r   r	   pandas._testing_testingr\   markparametrizer$   r3   r=   rD   rL   rO   r`   rf   rp   r{   r   r   r   r   r   r   r   get_cython_table_paramsrB   r   splitr   r   r   r   r   r   r   r   r   r   r   r   r   <module>r      s         				      , , , , , ,                    
33	G 	G 43	G! ! !E E E  - - - *VTN;;1 1 <;1/ / // / / #@#@#@AA3e"5cE7^7L!MNN# # ON BA# eU^ueneV_MMN  	 - - - E;#788H H 98H #@#@#@AA3,ug!?@@# # A@ BA#3 3 3 ${Qc
O&DkR ) ) )- - ->& >& >&B B	C:Sz*++y).D-E        	E""F7==??####	"	"9%I&
	
 
	
    !  0 0 06 6 6 
11   8 8 88 8 8 
%DEGE**@	
	 	$ $	 	$ 5%.5&/!BCC/ / DC/ 5%.65/!BCC	* 	* DC	* ;;/A/ACWCWX 	 	 	 	 	r   