
    bMh                         d dl mZ d dlmZ d dlZd dlZd dlZd dlm	Z	m
Z
mZmZ d dlmZ  G d d          Z G d d          ZdS )	    )deepcopy)methodcallerN)	DataFrame
MultiIndexSeries
date_rangec                       e Zd Zej                            dddg          d             Zej                            dddg          d             Zd Zd Z	d Z
d	 Zd
 Zd ZdS )TestDataFramefunc_set_axis_namerename_axisc                    t          ddgddgg          } t          |d          |          }|j        j        J |j        j        dk    sJ  t          |dd          |          }|j        j        J |j        j        dk    sJ d S )N            foocolsaxis)r   r   indexnamecolumns)selfr   dfresults       _/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pandas/tests/generic/test_frame.pytest_set_axis_namez TestDataFrame.test_set_axis_name   s    AA'((*dE**2..x}$$$| E))))3dF333B77z&&&~"f,,,,,,    c           
         t          t          j        d          t          j        d t          d          D                       t          j        d t          d          D                                 }ddg} t          ||          |          }|j        j        |k    sJ |j	        j        d d gk    sJ  t          ||d	
          |          }|j	        j        ddgk    sJ |j        j        d d gk    sJ d S )N)r   r   c                     g | ]}d |fS )A .0xs     r   
<listcomp>z7TestDataFrame.test_set_axis_name_mi.<locals>.<listcomp>"   s    )H)H)Hq3()H)H)Hr   aBcc                     g | ]}d |fS )Cr#   r$   s     r   r'   z7TestDataFrame.test_set_axis_name_mi.<locals>.<listcomp>#   s    +J+J+JS!H+J+J+Jr   xyz)r   r   L1L2r   r   )
r   npemptyr   from_tupleslistr   r   namesr   )r   r   r   level_namesr   s        r   test_set_axis_name_miz#TestDataFrame.test_set_axis_name_mi   s   HV()H)HDKK)H)H)HII*+J+Jd5kk+J+J+JKK
 
 
 Tl0dK0044|![0000~#d|33338dKa888<<~#d|3333|!dD\111111r   c                    d}t          dgg          }t          dgg          }t          j        t          |          5  |                                sJ 	 d d d            n# 1 swxY w Y   t          j        t          |          5  |                                rJ 	 d d d            n# 1 swxY w Y   t          ddgg          }d}t          j        t          |          5  t	          |           d d d            n# 1 swxY w Y   t          j        t          |          5  t          j        t          |          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 )NzPDataFrame.bool is now deprecated and will be removed in future version of pandasTFmatchz+The truth value of a DataFrame is ambiguous)r   tmassert_produces_warningFutureWarningboolpytestraises
ValueError)r   msg_warnr   df1msg_errs        r   test_nonzero_single_elementz)TestDataFrame.test_nonzero_single_element0   s   * 	 x  %	""'XFFF 	 	7799	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 'XFFF 	" 	"xxzz!!!!	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" '((?]:W555 	 	HHH	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 'XFFF 	 	z999  			              	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	sl    A$$A(+A(
B..B25B2(DDD*E?E'E?'E+	+E?.E+	/E??FFc                 n   t          g dg dt          j                            d                              d          t          j                            d                              d          d          }|                    d                                          }t          j        ||           d S )N)r   barr   rD   r   rD   r   r   )onerE   twothreerF   rF   rE   rG   r      )r"   Br*   Dr"   )	r   r.   randomdefault_rngstandard_normalgroupbysumr8   assert_metadata_equivalentr   r   r   s      r   'test_metadata_propagation_indiv_groupbyz5TestDataFrame.test_metadata_propagation_indiv_groupbyG   s    MMMQQQY**1--==a@@Y**1--==a@@	 
 
 C$$&&
%b&11111r   c                     t          t          j                            d                              d          t          ddd                    }|                    d          }t          j        ||           d S )	Nr   )  r   20130101rT   s)periodsfreq)r   1min)	r   r.   rK   rL   rM   r   resampler8   rP   rQ   s      r   (test_metadata_propagation_indiv_resamplez6TestDataFrame.test_metadata_propagation_indiv_resampleT   su    I!!!$$44Y??ZC@@@
 
 
 V$$
%b&11111r   c                 j   dd}|                                 5 }|                    t          ddg           |                    t          d|           t          t          j                            d                              ddd          d	d
g          }t          t          j                            d                              ddd          ddg          }dgt          _        d|_        d|_        |	                    |d	gdgd          }|j        dk    sJ t          t          j                            d                              ddd          t          d                    }d|_        t          j        ||g          }|j        dk    sJ 	 d d d            d S # 1 swxY w Y   d S )Nc           
         | j         D ]͊|dk    rQ|j        |j        }}t          |d          dz   t          |d          z   }t                              | |           Y|dk    rCd                    fd|j        D                       }t                              | |           t                              | t          |d                     | S )Nmerge |concat+c                 R    g | ]#}t          |d           t          |          $S N)getattr)r%   or   s     r   r'   zSTestDataFrame.test_metadata_propagation_indiv.<locals>.finalize.<locals>.<listcomp>i   s5    XXXaDRVAWAWXD))XXXr   )	_metadataleftrightre   object__setattr__joinobjs)r   othermethodkwargsrh   ri   valuer   s          @r   finalizez?TestDataFrame.test_metadata_propagation_indiv.<locals>.finalizea   s     M MW$$"'*ek%D#D$33c9GE4QS<T<TTE&&tT59999x''HHXXXX5:XXX E &&tT59999&&tT75$3K3KLLLLKr   rg   filename__finalize__r   r   r   )r   r   abr   cdz
fname1.csvz
fname2.csvinner)left_onright_onhowzfname1.csv|fname2.csvabr   zfoo+foord   )contextsetattrr   r.   rK   rL   integersrg   rs   r^   r1   pdra   )r   monkeypatchrr   mr@   df2r   s          r   test_metadata_propagation_indivz-TestDataFrame.test_metadata_propagation_indiv]   s   	 	 	 	    "" 	0aIIizl;;;IIi:::	%%a((11!Q??#s  C 	%%a((11!Q??#s  C $.,I'CL'CLYYsSESEwYOOF?&===== 	%%a((11!Q??d  C !CLYSz**F?i/////3	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0s   FF((F,/F,c                     t          dg di          }d|_        g d|d<   d|_        |j        dk    sJ t          j        |d         t	          g dd                     d S )Nr&   r   r   r   r   )r   r      y   )r   )r   r   r8   assert_series_equalr   )r   r   s     r   test_set_attributez TestDataFrame.test_set_attribute   sr     YYY'(())3tqyyyy
r#wyyys(C(C(CDDDDDr   c                 t    t          g g dg          }t          |          }t          j        ||           d S )Nr"   )datar   r   )r   r   r8   assert_frame_equal)r   empty_frameempty_frame_copys      r   test_deepcopy_emptyz!TestDataFrame.test_deepcopy_empty   sB      RrC5AAA#K00
.<<<<<r   N)__name__
__module____qualname__r<   markparametrizer   r4   rB   rR   r[   r   r   r   r#   r   r   r
   r
      s        [V&6%FGG	- 	- HG	- [V&6%FGG2 2 HG2"  .2 2 22 2 2-0 -0 -0^
E 
E 
E= = = = =r   r
   c                   h    e Zd Zej                            dddg ddg          d             Zd ZdS )	TestDataFrame2rq   r   Truer   g      @c                 n   t          g dg dd          }d}t          j        t          |          5  |                                                    dddd|	           d d d            n# 1 swxY w Y   t          j        t          |          5  |                                                    d
d|           d d d            n# 1 swxY w Y   t          j        t          |          5  |                                                    d|           d d d            n# 1 swxY w Y   t          j        t          |          5  |                                                    dd|           d d d            n# 1 swxY w Y   t          j        t          |          5  |                                	                    |           d d d            n# 1 swxY w Y   t          j        t          |          5  |                                
                    |j        dk    |           d d d            n# 1 swxY w Y   t          j        t          |          5  |                                                    |j        dk    |           d d d            d S # 1 swxY w Y   d S )Nr   )r   r   r   )ru   rv   z8For argument "inplace" expected type bool, received typer6   r&   r   r   )mapperr   inplaceru   )r   r   r   )rq   r      )
to_replacerq   r   r   r   )condr   )r   r<   r=   r>   copyr   dropfillnareplaceinterpolate_whereru   mask)r   rq   r   msgs       r   test_validate_bool_argsz&TestDataFrame2.test_validate_bool_args   s@   YYYYYY7788H]:S111 	V 	VGGII!!s)=)=Au!UUU	V 	V 	V 	V 	V 	V 	V 	V 	V 	V 	V 	V 	V 	V 	V ]:S111 	7 	7GGIINN3QN666	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 ]:S111 	5 	5GGII1e444	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 ]:S111 	D 	DGGII!UCCC	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D ]:S111 	1 	1GGII!!%!000	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 ]:S111 	; 	;GGII"$(E:::	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; ]:S111 	9 	9GGIINNq%N888	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9s}   .A..A25A2+CCC1*D''D+.D++FFF*)GG#&G#3III*3J**J.1J.c                    t          t          j                            d                              d          ddg          }t          j        dddddt          j        g          }|d                                         }t          j        |d<   d}t          j
        t          |	          5  |                    dd
d           d d d            n# 1 swxY w Y   t          j
        t          |	          5  |                    d
dgd           d d d            n# 1 swxY w Y   t          j
        t          |	          5  |                    dd           d d d            n# 1 swxY w Y   t          j
        t          |	          5  |                    dd           d d d            d S # 1 swxY w Y   d S )Nr   )r   r   jimjoerw   r   r   zunexpected keywordr6   r   T)r   in_placer   )r   )r   r.   rK   rL   rM   r   Categoricalnanr   r<   r=   	TypeErrorr   reindexr   )r   r   catsr   s        r   test_unexpected_keywordz&TestDataFrame2.test_unexpected_keyword   s   I!!!$$44V<<uen
 
 
 ^Q1aBF344Y^^1"]9C000 	2 	2GGEDG111	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 ]9C000 	- 	-JJ1vtJ,,,	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- ]9C000 	' 	'IIaI&&&	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' ]9C000 	( 	(IIa$I'''	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	(sH   .CCC9DD#&D#E))E-0E-F44F8;F8N)r   r   r   r<   r   r   r   r   r#   r   r   r   r      s]        [Wq&)))S&ABB9 9 CB92( ( ( ( (r   r   )r   r   operatorr   numpyr.   r<   pandasr   r   r   r   r   pandas._testing_testingr8   r
   r   r#   r   r   <module>r      s          ! ! ! ! ! !                          M= M= M= M= M= M= M= M=b/( /( /( /( /( /( /( /( /( /(r   