
    Pi 3                         d dl mZ d dlZd dlZd dlZd dlZd dlmZ d dl	m
Z
 d dlm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dS )	    )deepcopyN)using_string_dtype)option_context)HAS_PYARROW)	DataFrameSeries
date_rangetimedelta_rangec            
          e Zd Zd Zd Zd Zd Zd Zd Ze	j
                             e            oed          d	             Zd
 Zd Zd Zd Zd Zd Zd Zd Ze	j
                            d e             edg           edg           edg i          g          d             Zd Zd Zd Zd Zd Zd Zd Z d Z!e	j
                            dg d           d!             Z"d" Z#d# Z$d$S )%TestDataFrameMiscc                     |d         }|j         dk    sJ |                    d          }|j         dk    sJ |j        d d df         }|j         dk    sJ |j        d d          }|j         dk    sJ d S )NAB)namepoploc)selffloat_framess2s       o/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/pandas/tests/frame/test_api.pytest_getitem_pop_assign_namez.TestDataFrameMisc.test_getitem_pop_assign_name   s    v}}}}OOC  v}}}}OAAAsF#v}}}}U111Xw#~~~~~~    c                    |}|                     d          dk    sJ |                     d          dk    sJ |                     d          dk    sJ |                     d          dk    sJ |                     d          dk    sJ |                    d          dk    sJ |                    d          dk    sJ |                    d          dk    sJ |                    d          dk    sJ |                    d          dk    sJ |                    d          |j        u sJ |                    d          |j        u sJ t          j        t          d          5  |                     d           d d d            n# 1 swxY w Y   t          j        t          d	          5  |                    d
           d d d            n# 1 swxY w Y   t          j        t          d          5  |                    d            d d d            n# 1 swxY w Y   t          j        t          d          5  |                     d            d d d            d S # 1 swxY w Y   d S )Nr      indexrowscolumnszNo axis namedmatch   zNo axis.*foofoozNo axis.*None)_get_axis_number_get_axis_name	_get_axisr   r   pytestraises
ValueError)r   r   fs      r   test_get_axiszTestDataFrameMisc.test_get_axis%   s   !!!$$))))!!!$$))))!!'**a////!!&))Q....!!),,1111""g----""i////((G3333''72222	**i7777{{1~~(((({{1~~****]:_=== 	" 	"q!!!	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" ]:^<<< 	$ 	$U###	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ ]:_=== 	# 	#T"""	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# ]:_=== 	% 	%t$$$	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	%sH   (F

FF0GGG8HH!H I##I'*I'c                     t          j        t          d          5  |j        |v  d d d            d S # 1 swxY w Y   d S )Nzunhashable type: 'Index'r   )r&   r'   	TypeErrorr   )r   r   s     r   test_column_contains_raisesz-TestDataFrameMisc.test_column_contains_raisesB   s    ]9,FGGG 	/ 	/;..	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/s   
377c                    t          t          d          t          d          gt          d                    }t          d          D ]}|t          |          v sJ t          |                    d          t
                    sJ t          t          d          t          d          gt          j                            t          t          dd                                        }t          d          D ]}|t          |          v sJ t          d          D ]}|t          |          vsJ t          |                    d          t                     sJ d S )NabcdefghABCDr   r   EFGH)
r   listdir
isinstance__getitem__r   pd
MultiIndexfrom_tupleszip)r   dfkeys      r   test_tab_completionz%TestDataFrameMisc.test_tab_completionF   sI   Vd6ll3T&\\JJJ<< 	" 	"C#b''>>>>>"..--v66666 &\\4<<(M--d3vv3F3F.G.GHH
 
 
 << 	" 	"C#b''>>>>><< 	& 	&Cc"gg%%%%%"..--y9999999r   c                 >   d t          d          D             }t          d          t          d          g}t          ||          }dt          |          v sJ dt          |          vsJ t          dd          5  t          ||          }dt          |          v sJ d	t          |          vsJ 	 d d d            n# 1 swxY w Y   t          dd           5  t          ||          }d
t          |          v sJ 	 d d d            d S # 1 swxY w Y   d S )Nc                 2    g | ]}d t          |          z   S )a)str).0is     r   
<listcomp>z@TestDataFrameMisc.test_display_max_dir_items.<locals>.<listcomp>[   s"    444A3Q<444r   i  r2   a99a100zdisplay.max_dir_itemsi,  a299a300a419)ranger   r5   r   )r   r   valuesr<   s       r   test_display_max_dir_itemsz,TestDataFrameMisc.test_display_max_dir_itemsY   s   44s444**eCjj)vw/// BSWW$$$$3S99 	) 	)67333BSWW$$$$R(((((	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	)
 3T:: 	% 	%67333BSWW$$$$$	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	%s$   ?8CCC%DDDc                 P   t                      }t          dg          }d}t          j        t          |          5  t	          |           d d d            n# 1 swxY w Y   t          j        t          |          5  t	          |           d d d            d S # 1 swxY w Y   d S )Nr   zunhashable type: 'DataFrame'r   )r   r&   r'   r,   hash)r   empty_framer<   msgs       r   test_not_hashablez#TestDataFrameMisc.test_not_hashablel   s   kks^^,]9C000 	 	HHH	 	 	 	 	 	 	 	 	 	 	 	 	 	 	]9C000 	 		 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s#   AAA>BB"Bzsurrogates not allowed)reasonc                 x    d}t          |g i          }|t          |          vsJ |j        d         |k    sJ d S )Nu   r   )r   r5   r   )r   colnamer<   s      r   +test_column_name_contains_unicode_surrogatez=TestDataFrameMisc.test_column_name_contains_unicode_surrogatev   sN    
 }%%c"gg%%%%z!}''''''r   c                 6   t          t          j                            d                              d                    }t          t          j                            d                              d                    }d|j        _        |j        j        J d S )Nr!   )r      r"   )r   nprandomdefault_rngstandard_normalr   r   r   df1df2s      r   test_new_empty_indexz&TestDataFrameMisc.test_new_empty_index   sw    	--a00@@HHII	--a00@@HHII	y~%%%%%r   c                    |                     d          }||j        u sJ |                     d          }||j        u sJ d}t          j        t
          |          5  |                     d           d d d            d S # 1 swxY w Y   d S )Nr   r   zAxis must be 0 or 1 \(got 2\)r   r!   )_get_agg_axisr   r   r&   r'   r(   )r   r   colsidxrQ   s        r   test_get_agg_axisz#TestDataFrameMisc.test_get_agg_axis   s    ((++{*****''**k'''''.]:S111 	) 	)%%a(((	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	)s   BBBc                     t                      }|j        sJ |j        rJ |j        rJ t          g dg ddt          j        d                    }|d= |j        rJ d S )N)g      ?g       @g      @rA   bcr   r   rX   r   r   )r   emptyrY   arange)r   r   float_string_framerP   r<   s        r   
test_emptyzTestDataFrameMisc.test_empty   s    kk    $$$$%++++ ___???CC29UV<<XXXsG8|r   c                     t          |          t          |j                  k    sJ |ddg         j        }|                    ddg          j        }t	          j        ||           d S )Nr   r   r2   )lenr   rL   reindextmassert_almost_equal)r   r   arrexpecteds       r   test_lenzTestDataFrameMisc.test_len   so    ;3{'8#9#99999 3*%,&&Sz&::A
sH-----r   c                    |}|                     d          }|                     d          }t          j        ||           |                     d          }|                     d          }t          j        ||           d S )Nr   )axisr   r   r   )sumrs   assert_series_equal)r   r   r)   rv   results        r   test_axis_aliasesz#TestDataFrameMisc.test_axis_aliases   s}     55a5==G$$
vx00055a5==I&&
vx00000r   c                     t          j        t          j                  sJ t          j        t          j                  sJ d S N)pydocgetdocr   r   r   )r   s    r   test_class_axisz!TestDataFrameMisc.test_class_axis   s;     |IO,,,,,|I-.......r   c                 b    |j         }|                                D ]\  }}|j        |k    sJ d S r   )_seriesitemsr   )r   rn   serieskvs        r   test_series_put_namesz'TestDataFrameMisc.test_series_put_names   s@    #+LLNN 	 	DAq6Q;;;;;	 	r   c                     t          g d          }|j        rJ t          dgdg          }|j        rJ t          ddgddg                                          }|j        sJ |j        j        sJ d S )N)r   r!   rX   r   )r   r   rA   rh   ri   d)r   rl   dropnaTr   r<   s     r   test_empty_nonzeroz$TestDataFrameMisc.test_empty_nonzero   s    yyy!!8|aS1#...8|c3Z#s<<<CCEExxtzzr   r<   r   rk   r2   c                 4    |j         sJ |j        j         sJ d S r   )rl   r   r   s     r   test_empty_likez!TestDataFrameMisc.test_empty_like   s$     xxtzzr   c                    t          t          dd          t          dd          d          }|j        }|j                                        }t          t          j        d          did          }t          j
        ||           d S )	N20130101
   )periodsz1 dayrj   objectcount)r   )r   r	   r
   r   dtypesvalue_countsr   rY   dtypers   r{   )r   r<   tr|   rv   s        r   test_with_datetimelikesz)TestDataFrameMisc.test_with_datetimelikes   s    
B777$Wb999 
 
 D&&((28H--r2AAA
vx00000r   c                 f    t          |          }d|j        d<   |                    |          rJ d S )Nr   )r   r   )r   r   equals)r   r   cps      r   test_deepcopyzTestDataFrameMisc.test_deepcopy   s:    k""v%%b)))))))r   c                    t          g dg dg dd          }d }d }d } ||                                |           d } ||                    d	          |           d
 } ||                                |           d } ||                                |           d } ||                                |           d } ||                                |           d } ||                                |           d } ||                                |           |                                d         }d } ||                    d	          d         |           d } ||                                |           d } ||                                |           d } ||                                |           d S )N)r"   barbazqux)r   r   r   r   )r   r!   rX      rg   c                 $     ||           }|J d S r    baser)   r|   s      r   _check_nonez?TestDataFrameMisc.test_inplace_return_self.<locals>._check_none   s    QtWWF>>>>>r   c                 (     ||           }|| u sJ d S r   r   r   s      r   _check_returnzATestDataFrameMisc.test_inplace_return_self.<locals>._check_return   s     QtWWFT>>>>>>r   c                 0    |                      dd          S )NrA   Tinplace)	set_indexxs    r   <lambda>z<TestDataFrameMisc.test_inplace_return_self.<locals>.<lambda>   s    akk#tk44 r   c                 .    |                      d          S NTr   reset_indexr   s    r   r   z<TestDataFrameMisc.test_inplace_return_self.<locals>.<lambda>   s    ammDm11 r   rA   c                 .    |                      d          S r   )drop_duplicatesr   s    r   r   z<TestDataFrameMisc.test_inplace_return_self.<locals>.<lambda>   s    a'''55 r   c                 0    |                      dd          S )Nrh   Tr   )sort_valuesr   s    r   r   z<TestDataFrameMisc.test_inplace_return_self.<locals>.<lambda>  s    ammCm66 r   c                 .    |                      d          S r   )
sort_indexr   s    r   r   z<TestDataFrameMisc.test_inplace_return_self.<locals>.<lambda>  s    all4l00 r   c                 0    |                      dd          S Nr   Tr   fillnar   s    r   r   z<TestDataFrameMisc.test_inplace_return_self.<locals>.<lambda>      ahhq$h// r   c                 2    |                      ddd          S Nr   r   Tr   replacer   s    r   r   z<TestDataFrameMisc.test_inplace_return_self.<locals>.<lambda>      aii1di33 r   c                 4    |                      ddid          S Nr   r"   Tr   renamer   s    r   r   z<TestDataFrameMisc.test_inplace_return_self.<locals>.<lambda>      ahh5z4h88 r   ri   c                 0    |                      dd          S )NT)r   dropr   r   s    r   r   z<TestDataFrameMisc.test_inplace_return_self.<locals>.<lambda>  s    ammDtm<< r   c                 0    |                      dd          S r   r   r   s    r   r   z<TestDataFrameMisc.test_inplace_return_self.<locals>.<lambda>  r   r   c                 2    |                      ddd          S r   r   r   s    r   r   z<TestDataFrameMisc.test_inplace_return_self.<locals>.<lambda>"  r   r   c                 4    |                      ddid          S r   r   r   s    r   r   z<TestDataFrameMisc.test_inplace_return_self.<locals>.<lambda>&  r   r   )r   copyr   )r   datar   r   r)   r   s         r   test_inplace_return_selfz*TestDataFrameMisc.test_inplace_return_self   s#    ...\\\UU
 
	" 	" 	"	" 	" 	" 54DIIKK### 21DNN3''+++ 65DIIKK### 76DIIKK### 10DIIKK### 0/diikk1%%% 43diikk1%%% 98DIIKK### IIKK =<DNN3'',a000 0/affhh""" 43affhh""" 98AFFHHa     r   c                 x   t          j        dd           ddlm} |t          u rd}nd}|                    |           t          j        d d	          5   |d
          5  t          |j	        
                    dd                     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 )NIPythonz6.0.0)
minversionr   )provisionalcompleterz/from pandas import DataFrame; obj = DataFrame()z5from pandas import Series; obj = Series(dtype=object)F)raise_on_extra_warningsignorezobj.r   )r&   importorskipIPython.core.completerr   r   run_cellrs   assert_produces_warningr4   	Completercompletions)r   ipframe_or_seriesr   codes        r   test_tab_complete_warningz+TestDataFrameMisc.test_tab_complete_warning)  sU   I'::::??????i''DDDJD
D 'eLLL 	: 	:%%h// : :R\--fa88999: : : : : : : : : : : : : : :	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	:s6   B/")BB/B	B/B	B//B36B3c                     t          dddgi          }|j        i k    sJ d|j        d<   |                    t                    }|j        ddik    sJ d S )Nr   r!   rX   r   versionr2   r   attrsr   rB   r   r<   r|   s      r   
test_attrszTestDataFrameMisc.test_attrs:  sb    aV}%%x2~~~~3''|	1~------r   c                     t          dddgi          }|j        i k    sJ ddh|j        d<   |                    t                    }|j        |j        k    sJ |j        d         |j        d         usJ d S )Nr   r!   rX   spamhamtagsr2   r   r   s      r   test_attrs_is_deepcopyz(TestDataFrameMisc.test_attrs_is_deepcopyB  s    aV}%%x2~~~~"E?3''|rx''''|F#28F+;;;;;;;r   c                    t          dddgi          }ddd|_        t          dddgi          }|j                                        |_        t          ddd	gi          }|j                                        |_        t          j        |||g          j        |j        k    sJ d
di|_        t          j        |||g          j        i k    sJ d S )Nr   r!   rX   r   rA   rh   r            ri   )r   r   r   r8   concat)r   r^   r_   df3s       r   test_attrs_concatz#TestDataFrameMisc.test_attrs_concatK  s    q!f&&!$$	q!f&&INN$$	q!f&&INN$$	y#sC))/39<<<<!H	y#sC))/2555555r   c                 J   t          ddgddgd          }ddd|_        t          ddgddgd	          }|j                                        |_        t          j        ||          j        |j        k    sJ d
di|_        t          j        ||          j        i k    sJ d S )NrA   rh   r   r!   )r=   val1r   rX   r   )r=   val2ri   )r   r   r   r8   merger]   s      r   test_attrs_mergez"TestDataFrameMisc.test_attrs_mergeX  s    c
QF;;<<!$$	c
QF;;<<INN$$	xS!!'394444!H	xS!!'2------r   allows_duplicate_labels)TFNc                 D   t          dddgi          }d}|t          u r
|d         }d}|                    |          }||j        j        du sJ n|j        j        |u sJ ||usJ |j        j        du sJ |t          u r"t          j        |j        |j                  sJ n-t          j        |d         j        |d         j                  sJ d|j        |<   |j        |         dk    sJ |                    |          }d|j        |<   |j        |         dk    sJ d S )	Nr   r   r!   )r   r   r   )r   Tr   )	r   r   	set_flagsflagsr   rY   may_share_memoryrL   iloc)r   r   r   objr=   r|   s         r   test_set_flagsz TestDataFrameMisc.test_set_flagsc  sa    q!f&&f$$c(CC7NOO"*<74?????<7;RRRRR &     y0D8888 f$$&sz6=AAAAAA&s3xs8JKKKKKCx}!!!! 7NOOCx}!!!!!!r   c                    t                      }d}t          j        t          |          5  |                    t          j        d                              ddd                     d d d            d S # 1 swxY w Y   d S )Nz<'DataFrame' object has no attribute '_constructor_expanddim'r      rX   )r   r&   r'   AttributeError_constructor_expanddimrY   rm   reshape)r   r<   rQ   s      r   test_constructor_expanddimz,TestDataFrameMisc.test_constructor_expanddim  s     [[L]>555 	F 	F%%bimm&;&;Aq!&D&DEEE	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	Fs   =A66A:=A:c                 J    t                      }t          j        |           d S r   )r   inspect
getmembersr   s     r   test_inspect_getmembersz)TestDataFrameMisc.test_inspect_getmembers  s"    [[2r   N)%__name__
__module____qualname__r   r*   r-   r>   rM   rR   r&   markxfailr   r   rV   r`   re   ro   rw   r}   r   r   r   parametrizer   r   r   r   r   r   r   r   r   r   r  r
  r  r   r   r   r   r      sz         % % %:/ / /: : :&% % %&   [,5M   ( ( (& & &	) 	) 	)
 
 
. . .
1 
1 
1/ / /  
   [IKKIQC   Iqc"""Iq"g		
   1 1 1* * *
B! B! B!H: : :". . .< < <6 6 6	. 	. 	. [68K8K8KLL%" %" ML%"NF F F    r   r   )r   r   r  r   numpyrY   r&   pandas._configr   pandas._config.configr   pandas.compatr   pandasr8   r   r   r	   r
   pandas._testing_testingrs   r   r   r   r   <module>r     s                - - - - - - 0 0 0 0 0 0 % % % % % %                     A A A A A A A A A Ar   