
    dѹ             	          d Z ddlmZ ddlmZmZmZmZ ddlZddlm	Z	 ddl
ZddlZddlmZ ddlmc mZ ddlZddlmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z& ddl'm(Z) ddl*m+Z+m,Z, dd	l-m.Z. dd
l/m0Z0 ej1        2                    dej3        ej3        dgdej3        ej3        gg dgej3        dgdej3        gddggg          d             Z4 G d d          Z5 G d d          Z6 G d d          Z7 G d d          Z8 G d d          Z9 G d d          Z: G d d          Z; G d  d!          Z< G d" d#          Z= G d$ d%          Z> G d& d'          Z?ej1        2                    d(g d)d*d+gdd,gfg d-d*d+gdd,gfg d-d*d.gdd/gfg          d0             Z@d1 ZAd2 ZBd3 ZCd4 ZDd5 ZEd6 ZFd7 ZGd8 ZHd9 ZId: ZJd; ZKej1        2                    d<d= ejL        d=           ejM        d=          g          d>             ZNej1        2                    d? e"d@          dAf e"dBdCD          dEfg          dF             ZOdG ZPdH ZQ G dI dJ          ZRdS )Kz$ test label based indexing with loc     )
namedtuple)datedatetimetime	timedeltaN)gettz)IndexingError)CategoricalCategoricalDtypeCategoricalIndex	DataFrameDatetimeIndexIndex
IndexSlice
MultiIndexPeriodPeriodIndexSeriesSparseDtype	Timedelta	Timestamp
date_rangetimedelta_rangeto_datetimeto_timedelta)is_bool_dtype	is_scalar)_one_ellipsis_message)"check_indexing_smoketest_or_raisesz series, new_series, expected_serba)FTTFTc                    t          d| i          }||j        d d df<   t          d|i          }t          j        |                                |           t          j        |                                |            d S NA)r   loctmassert_frame_equalisnanotna)series
new_seriesexpected_serdfexpecteds        Z/var/www/html/t/fyr/venv311/lib/python3.11/site-packages/pandas/tests/indexing/test_loc.pytest_not_change_nan_locr0   0   sx     
C=	!	!BBF111c6N#|,--H"''))X..."((**xi00000    c                   8   e Zd Zej                            dddg          d             Zej                            dddg          d             Zej                            ddg dd	gdd
gd	gdg dd	gddgd	gddgdgdd
gdgg          ej                            dddg          d                         Zej                            dg dg dgg dg dgg          ej                            dddg          d                         Z	ej                            dg ddgd	gg dg ddgg dg ddgg ddgdgg          ej                            dddg          d                         Z
ej                            dddg          ej                            dddg          d                          Zd! Zej                            dddg          d"             Zej                            d# edd$          g d%d	eg ed&d'          dgdeg ed(d)          d*gdeg ed(d)          d*gdeg ed(d+d(          d*gdegg          ej                            dddg          d,                         Zd- Zd. Zej                            d/ edgg ed0g          1          ed	d	d0f          edgd02          f edg ed0g          3          d0dgf edgg ed0g          3          d0 edgd02          fg          d4             Zd	S )5TestLockindr*   framec                 f    |                     | d          }t          |ddt                     d S )N_labelsr%      failsgetfixturevaluer   KeyErrorselfr4   requestobjs       r/   test_loc_getitem_intzTestLoc.test_loc_getitem_intA   s=     %%&6&6&677*3qIIIIIIr1   c                 f    |                     | d          }t          |ddt                     d S )N_emptyr%   cr9   r;   r>   s       r/   test_loc_getitem_labelzTestLoc.test_loc_getitem_labelG   s:     %%ooo66*3s(KKKKKKr1   zkey, typs, axesf)intsuintslabelsmixedtsNfloats   )rH   rI   rK   rJ   rL   r   c                 v    |D ]5}|                     | d|           }t          |d||t                     6d S N_r%   axesr:   r;   r?   keytypsrS   r4   r@   typrA   s           r/   #test_loc_getitem_label_out_of_rangez+TestLoc.test_loc_getitem_label_out_of_rangeM   sa      	 	C))T//C//::C.UCd(    	 	r1   z	key, typsr      r8   )rH   rI   rM   )rZ         @r$   c                 t    |D ]4}|                     | d|           }t          |d|t                     5d S )NrQ   r%   r9   r;   )r?   rU   rV   r4   r@   rW   rA   s          r/   test_loc_getitem_label_listz#TestLoc.test_loc_getitem_label_lista   sX      	P 	PC))T//C//::C.sE3hOOOOO	P 	Pr1   empty)r   r8   
   )         rZ   ))rZ   r`   )rZ      )r8      multic                 v    |D ]5}|                     | d|           }t          |d||t                     6d S rP   r;   rT   s           r/   (test_loc_getitem_label_list_with_missingz0TestLoc.test_loc_getitem_label_list_with_missingo   sa      	 	C))T//C//::C.UCd(    	 	r1   rV   rH   rI   c                 p    |                     | d|           }t          |dg ddt                     d S )NrQ   r%   )rN      (   rZ   rR   r;   )r?   rV   r4   r@   rA   s        r/   !test_loc_getitem_label_list_failsz)TestLoc.test_loc_getitem_label_list_fails   sU     %%&6&6&6&677*1H	
 	
 	
 	
 	
 	
r1   c                     d S N r?   s    r/   !test_loc_getitem_label_array_likez)TestLoc.test_loc_getitem_label_array_like   s	     	r1   c                 n    |                     | d          }g d}t          |d|t                     d S )NrD   TFTFr%   r9   )r<   r   
IndexError)r?   r4   r@   rA   r    s        r/   test_loc_getitem_boolzTestLoc.test_loc_getitem_bool   sC    %%ooo66&&&*3q
KKKKKKr1   zslc, typs, axes, failsr`   )rJ   rK   r^   rL   rM   2013010220130104r8      rK   rc   c                 l    |D ]0}|                     | d|           }t          |d|||           1d S rP   )r<   r   )	r?   slcrV   rS   r:   r4   r@   rW   rA   s	            r/   test_loc_getitem_label_slicez$TestLoc.test_loc_getitem_label_slice   se    ,  	 	C))T//C//::C.    	 	r1   c                     t          ddgddgddggddgg d          }t          j        d          |j        d	<   t          ddgd
dgddggddgg d          }t	          j        ||           d S )NrN   r!      col1col2)r_   rZ   rZ   columnsindexr8   )rZ   r}   r   rZ   )r   nparanger%   r&   r'   r?   r-   r.   s      r/    test_setitem_from_duplicate_axisz(TestLoc.test_setitem_from_duplicate_axis   s    #Yc
S#J/V$**
 
 

 IaLLy#YC1c(+ff5EZZZ
 
 
 	b(+++++r1   c           	         t          g ddt          j        dgt          d          t          j        t          d          gd          }t          dgt          d          gd	          }|j        |j        |d
                                         d
dgf<   t          g dg dt          d          t          d          t          d          gd          }t          j
        ||           d S )NrZ   r8   r`   String 1String 2z2019-06-11 11:00:00z2019-06-11 12:00:00)channelr$   B)dataString 3r$   r   r$   r   )r   r   r   )r   r   NaNr   pdNaTvaluesr%   r(   r&   r'   )r?   r-   df2r.   s       r/   test_column_types_consistentz$TestLoc.test_column_types_consistent   s   $99 "&*5344F344 

 

 

 "|95J+K+K*LMM
 
 
 .1Zr#w||~~Sz)*$99999344344344 

 

 

 	b(+++++r1   zobj, key, expFr   namer   c                     |j         |         }t          |t          t          f          rt	          j        ||           d S ||k    sJ d S rm   )r%   
isinstancer   r   r&   assert_equal)r?   rA   rU   express        r/   #test_loc_getitem_single_boolean_argz+TestLoc.test_loc_getitem_single_boolean_arg   sO     gclcIv.// 	OC%%%%%#::::::r1   )__name__
__module____qualname__pytestmarkparametrizerB   rF   rX   r]   rg   rk   rp   rt   slice	TypeErrorr=   rz   r   r   r   r   r   r   r   rn   r1   r/   r3   r3   @   s       [Vh%899J J :9J
 [Vh%899L L :9L
 [<<<dC8*d#+++T2(T"$O(Q	

 
 [Vh%899  :9
 
 [YY3334]]7778	
  [Vh%899P P :9 P [YY	4(ZZ444a8YY333Q7%%%y!4	
	 	 [Vh%899  :9	 	 [Vfg%677[Vh%899
 
 :9 87
  
 [Vh%899L L :9L [  a<<<	 U:z**TFAyAU1a[[7)Q	2U1a[[7)Q1U1a^^gY95	
  [Vh%899  :9   , , ,, , ,> [ 	A3%w888111e8$s'''
 VQCuueW~~...s;YuEE5'NN333UFFA3U<S<S<ST	
     r1   r3   c                   N   e Zd Zd Zej                            dd ed          ddffd ed          ddffd	 ed          dd
ffd ed           ed          dffd ed          ddffd ed          d ed          ffd ed          d
dffg          d             Zd Z	d Z
d Zd Zd Zd Zd Zej                            dddgg dg          d             Zd  Zd! Zd" Zd# Zd$ Zd% Zd& Zej        d'             Zej                            d(d) ej        d)ej        *           ej        g d+ej        *          g          d,             Zd- Zd. Zd/ Z d0 Z!d1 Z"ej                            d2g d3          d4             Z#d5 Z$d6 Z%d7 Z&d8 Z'd9 Z(d: Z)d; Z*d< Z+d= Z,ej                            d>d?g e-d@d?d@           ej        d?g          g          ej                            dAdBg ej        dBg          g          dC                         Z.ej                            dDd)dEgg dFfdG e/g dHdIdJej0        ej0        gg dHgg dFK          fdLdMdNgfdGdOg e/dLdEej0        ej0        gg dPdQdRej0        ej0        ggg dFK          fdLg dSf ej        g dTej        *           e/dLdEej0        gg dTdQdRej0        ggg dSK          f e-dLdId@          g dUfg dTg dVg e/dLdEej0        ej0        gg dWg dXgg dFK          f e-dLdId@          g dYf ej        g dTg dVgej        *           e/dLdEej0        ej0        gg dZg d[gg dFK          f e-d@d@d@          d?dMgf e/dGdOgd\d]gd^d_ggd?dMgK           e/g d`g dag dbgg dSK          fg          dc             Z1dd Z2de Z3df Z4dg Z5dh Z6ej        j7        ej                            didjdkgdldmgg          dn                         Z8do Z9dp Z:dq Z;dr Z<ds Z=dt Z>du Z?dv Z@dw ZAdx ZBdy ZCdz ZDd{ ZEd| ZFd} ZGej                            d~g d          ej                            dej        ejH        eIg          eJjK        d                                     ZLd ZMeJjK        d             ZNd ZOej                            d>ddg          d             ZPej                            deQej        eReSg          d             ZTd ZUej                            dd eRdLg          fd eRdEg          fg          d             ZVd ZWej                            dd)g df e-dJdO          g dfdIdQgg dfg          d             ZXd ZYd ZZd Z[ej                            dddgg          d             Z\d Z]ej                            dd?d?gd? e-d@          fg          d             Z^d Z_d Z`d Zad Zbd Zcej                            dddg          d             Zdd Zed Zfd Zgd Zhd Zid@S )TestLocBaseIndependentc                     t          t          dd                    }|j        t          j        dg          d         d          }|j        dd          }t          j        ||           d S )N20212022r   z2021/6/1r      )r   r   r%   r   arrayilocr&   r'   r?   r-   resultr.   s       r/   test_loc_npstrz%TestLocBaseIndependent.test_loc_npstr   sg    Z77888*..q13347344=
fh/////r1   zmsg, keyz'Period\('2019', 'A-DEC'\), 'foo', 'bar'  foobarz&Period\('2019', 'A-DEC'\), 'y1', 'bar'y1z&Period\('2019', 'A-DEC'\), 'foo', 'z1'z1z;Period\('2018', 'A-DEC'\), Period\('2016', 'A-DEC'\), 'bar'    z&Period\('2018', 'A-DEC'\), 'foo', 'y1'z;Period\('2017', 'A-DEC'\), 'foo', Period\('2015', 'A-DEC'\)    z&Period\('2017', 'A-DEC'\), 'z1', 'bar'c           	      x   t          t          d          ddgt          d          t          d          dgt          d          dt          d	          gg d
g dd                              g d          }t          j        t
          |          5  |j        |          ddd           dS # 1 swxY w Y   dS )a(  
        parse_datetime_string_with_reso return parameter if type not matched.
        PeriodIndex.get_loc takes returned value from parse_datetime_string_with_reso
        as a tuple.
        If first argument is Period and a tuple has 3 items,
        process go on not raise exception
        r   x1x2r   r   r   r   r   r   r   r_   rN   ri   )r$   r   CV1V2r$   r   r   matchN)r   r   	set_indexr   raisesr=   r%   )r?   msgrU   r-   s       r/   ;test_contains_raise_error_if_period_index_is_in_multi_indexzRTestLocBaseIndependent.test_contains_raise_error_if_period_index_is_in_multi_index  s   6 TllD$/TllF4LL$7TllD&,,7ii"ll 
 
 )OOO
$
$ 	 ]83/// 	 	F3KK	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   B//B36B3c                     t          ddgi          }t          j        t          d          5  |j        d d df          d d d            d S # 1 swxY w Y   d S )Nr!   rZ   u   אr   )r   r   r   r=   r%   r?   r-   s     r/   $test_loc_getitem_missing_unicode_keyz;TestLocBaseIndependent.test_loc_getitem_missing_unicode_key(  s    aSz""]88444 	  	 F111h;	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	 s   AAAc                    t          t          j                            d          d t	          d          D                       }|j        d         }|j        d d df         j        d         }t          j        ||           d S )N)rN   rd   c                 $    g | ]}d |dz           S )ABCDErd   rn   .0xs     r/   
<listcomp>z@TestLocBaseIndependent.test_loc_getitem_dups.<locals>.<listcomp>1  s     4W4W4WWQU^4W4W4Wr1   rN   r   )r$   r   r   r$   )r   r   randomrandom_sampleranger%   r&   assert_series_equalr?   r-   r.   r   s       r/   test_loc_getitem_dupsz,TestLocBaseIndependent.test_loc_getitem_dups-  s     I##G,,4W4WUSUYY4W4W4W
 
 
 6&>1!#&
vx00000r1   c           	      *   t          ddddt          d          ggg ddg          }t          ddddt          d          gg dd          }|j        d	         }t	          j        ||           |j        d         }t	          j        ||           d S )
NrZ   r8   r   r   20130101)r!   r!   r!   r!   r!   r   r   r   r   )r   r   r   r   r&   r   r%   r   s       r/   test_loc_getitem_dups2z-TestLocBaseIndependent.test_loc_getitem_dups27  s     E5)J"7"789---#
 
 

 5%:!6!67+++
 
 
 
vx000
vx00000r1   c           	         t          t          d          t          d          t          j        dd          dz  dz   t          j        dd          dz  dz   d	                              d
          }dddgf}|                                }|j        |xx         dz  cc<   t          j        |j        |         d|j        |         z             d}|                                }|j        |xx         dz  cc<   |j        |         d|j        |         z  k    sJ dddgf}|                                }|j        |xx         dz  cc<   t          j	        |j        |         d|j        |         z             d S )Nrtttiaaaderd   float64dtypegq=
ףp?r8   g(\տ)mer   r   bar2r   rr   r          @)r   r   t)
r   listr   r   r   copyr%   r&   r   r'   )r?   df_origindexerr-   s       r/   test_loc_setitem_dupsz,TestLocBaseIndependent.test_loc_setitem_dupsK  s   7mmG}}y)444t;a?	!9555=A	 
 
 )D// 	 FO
 \\^^
w3
rvggk'6J0JKKK
 \\^^
w3vg#G(<"<<<<< FO
 \\^^
w3
bfWosW[5I/IJJJJJr1   c                    t          g dt          g dd          d          }|d         dk    }|j        |df         dz   }||j        |df<   t          g dt          g d	d          d          }t          j        ||           t          g dg ddd
          }|d         dk    }|j        |df         }||j        |df<   t          g dg ddd
          }t          j        ||           d S )N)r   rZ   rZ   )d   r|   ,  uint32r   r!   r    r!   rZ   r    )r      i-  uint64)r   r   r%   r&   r'   )r?   df1ixnewb1r.   r   newb2s          r/   test_loc_setitem_slicez-TestLocBaseIndependent.test_loc_setitem_slicen  s0    iiif___H.U.U.UVVWWX]C 1$ C))&"I"I"IJJ
 
 	c8,,, iiiooo>>hOOOX]C  C999???CC8TTT
c8,,,,,r1   c           	      p   t          dgdgdgdgd          }g d}|j        d d |f                             d          |j        d d |f<   t          dgt          j        dgd	          t          j        dgd	          t          j        dgd	          d          }t          j        ||           d S )
Nr$   333333?        g      )idr!   r    rE   r!   r    rE   float32r   r   )r   r%   astyper   r   r&   r'   )r?   r-   colsr.   s       r/   test_loc_setitem_dtypez-TestLocBaseIndependent.test_loc_setitem_dtype  s    se3%se4&IIJJ&D/00;;qqq$w eXse9555Xse9555XtfI666	 
 
 	b(+++++r1   c                 t   t          t          d          g d          }t          j        t          d          5  |ddg          d d d            n# 1 swxY w Y   t          t          d                    }t          j        t          d          5  |ddg          d d d            d S # 1 swxY w Y   d S )	Nr`   r   r   not in indexr   r!   dr   )r   r   r   r   r=   )r?   ss     r/   $test_getitem_label_list_with_missingz;TestLocBaseIndependent.test_getitem_label_list_with_missing  s2   588???333 ]8>::: 	 	sCjMM	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 588]8>::: 	 	q!fII	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s#   AAAB--B14B1r   TFrr   c                     t          g d          }dt          |           dt          |           }t          j        t          |          5  |j        |          d d d            d S # 1 swxY w Y   d S )Nr   z Boolean index has wrong length: z instead of r   )r   lenr   r   rs   r%   )r?   r   r  r   s       r/   test_loc_getitem_bool_diff_lenz5TestLocBaseIndependent.test_loc_getitem_bool_diff_len  s     999QUQQQQQ]:S111 	 	E%LL	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   A**A.1A.c                     d S rm   rn   ro   s    r/   test_loc_getitem_int_slicez1TestLocBaseIndependent.test_loc_getitem_int_slice  s    r1   c                 2   t          t          j                            d          g dg d          }dt          j                    j         d}t          j        t          |          5  |j        dd	gdd	gf          d d d            d S # 1 swxY w Y   d S )
N)r`   r`   r   )erG   gr   r   z$\"None of \[Index\(\[1, 2\], dtype=''\)\] are in the \[index\]\"r   rZ   r8   )	r   r   r   int_r   r   r   r=   r%   r?   r-   r   s      r/   test_loc_to_failz'TestLocBaseIndependent.test_loc_to_fail  s    IV$$OOO___
 
 

"BGIIO " " " 	 ]83/// 	# 	#FAq6Aq6>""	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	#s   +BBBc                    t          t                    }d|j        d<   d|j        d<   t          j        t
          d          5  |j        d          d d d            n# 1 swxY w Y   dt          j                    j         d	}t          j        t
          |          5  |j        dd
g          d d d            n# 1 swxY w Y   d}t          j        t
          |          5  |j        dg          d d d            n# 1 swxY w Y   d|j        d<   t          j        t
          d          5  |j        dd
g          d d d            n# 1 swxY w Y   d|d<   dt          j                    j         d	}t          j        t
          |          5  |j        d
g          d d d            n# 1 swxY w Y   |d= t          j        t
          |          5  d|j        d
g<   d d d            d S # 1 swxY w Y   d S )Nr   rZ   r8   r!   z^-1$r   z&\"None of \[Index\(\[-1, -2\], dtype='r  zE\"None of \[Index\(\['4'\], dtype='object'\)\] are in the \[index\]\"4r`   r  z"\"None of \[Index\(\[-2\], dtype='r   )	r   objectr%   r   r   r=   r   r  r   r?   r  r   s      r/   test_loc_to_fail2z(TestLocBaseIndependent.test_loc_to_fail2  sx       ac
]87333 	 	E"II	 	 	 	 	 	 	 	 	 	 	 	 	 	 	"bgiio " " " 	 ]83/// 	 	E2r(OO	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 W]83/// 	 	E3%LL	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 b	]8>::: 	 	E2r(OO	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 #""'))/ " " " 	 ]83/// 	 	E2$KK	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 cF]83/// 	 	AE2$K	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	sl   AA#&A#!B==CC%D  DD0EEEF..F25F2G00G47G4c                 ~   t          dgdggddgdg          }dt          j                    j         d}t	          j        t          |	          5  |j        d
gd d f          d d d            n# 1 swxY w Y   t	          j        t          |	          5  |j        d
g          d d d            d S # 1 swxY w Y   d S )Nr!   r    rZ   r8   valuer  z!\"None of \[Index\(\[3\], dtype='r  r   r`   )r   r   r  r   r   r   r=   r%   r  s      r/   test_loc_to_fail3z(TestLocBaseIndependent.test_loc_to_fail3  sR    u~aVgYGGG" " " " 	 ]83/// 	 	FA36NN	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ]83/// 	 	FA3KK	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s$   A00A47A4B22B69B6c                    t          g d          }|j        dg          dt          j                    j         d}t          j        t          t          j	        |                    5  |j        dg          d d d            n# 1 swxY w Y   t          j        t          d          5  |j        ddg          d d d            d S # 1 swxY w Y   d S )Nr   r8   z"None of [Index([3], dtype='z')] are in the [index]r   r`   r  )
r   r%   r   r  r   r   r   r=   reescaper  s      r/   test_loc_getitem_list_with_failz6TestLocBaseIndependent.test_loc_getitem_list_with_fail  sC    999	qc

UbgiioUUU]829S>>::: 	 	E1#JJ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ]8>::: 	 	E1a&MM	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s$   )BBB*CCCc                    t          t          j                            d          g d          }|j                            d           }|j        t          j        |                   }|j        |         }t          j        ||           |j        |j	                 }t          j        ||           |j        t          j        |d                   }t          j        ||           d S )N)rd   r_   size)alpha_0alpha_1alpha_2beta_0beta_1r   c                 
    d| v S )Nalpharn   r   s    r/   <lambda>z7TestLocBaseIndependent.test_loc_index.<locals>.<lambda>	  s
    gl r1   booleanr   )r   r   r   r   mapr%   r   r&   r'   r   r   )r?   r-   maskr.   r   s        r/   test_loc_indexz%TestLocBaseIndependent.test_loc_index   s     I'**GGG
 
 

 x||22336"(4..)
fh///$
fh///Y7778
fh/////r1   c                 &   t          t          j                            dd          g dg d          }|j        d d ddf         j        ddd d f         }|j        ddgk                                    sJ |j        ddgk                                    sJ t          t          d          gd	gd
          j        d         }t          t          d          d	gddgd          }t          j        ||           |j        t          k    sJ d S )Nrc   r$   r   r   Dr   r$   r   r   r8   r   rZ   r   r!   r    r   )r   r   r   randr%   r   r   allr   r   r   r&   r   r   r  r   s       r/   test_loc_generalz'TestLocBaseIndependent.test_loc_general  s,   INN1a  (((&&&
 
 
 3s7
#(1aaa03*,1133333c
*//11111 )J"7"7!8sCCDDI!L9Z00!4S#JQOOO
vx000|v%%%%%%r1   c                     t          t          dd          t          t          d          t          j                  d          S )N
2000-01-01	2000-01-5rd   r   r   val)r   r   r   r   r   int64ro   s    r/   frame_for_consistencyz,TestLocBaseIndependent.frame_for_consistency'  sC    "<==eAhhbh777 
 
 	
r1   r<  r   r   )r   r   r   r   r   c                 2   t          t          dt          d          t          j                  t          t          d          t          j                  d          }|                                }||j        d d df<   t          j        ||           d S )Nr   rd   r   r   r   r;  r   	r   r   r   r   r=  r   r%   r&   r'   )r?   r>  r<  r.   r-   s        r/   test_loc_setitem_consistencyz3TestLocBaseIndependent.test_loc_setitem_consistency0  s     qaAAAeAhhbh777 
 
 #''))qqq&y
b(+++++r1   c                    t          t          dt          d                    t          t          d          t          j                  d          }|                                }d|j        d d df<   t          j        ||           d S )Nr   rd   r   r   r;  r   rA  r?   r>  r.   r-   s       r/   (test_loc_setitem_consistency_dt64_to_strz?TestLocBaseIndependent.test_loc_setitem_consistency_dt64_to_strA  s     uE!HH555eAhhbh777 
 
 #''))!qqq&y
b(+++++r1   c                    t          t          dt          d                    t          t          d          t          j                  d          }|                                }d|j        d d df<   t          j        ||           d S )N      ?rd   r   r   r;  r   rA  rD  s       r/   *test_loc_setitem_consistency_dt64_to_floatzATestLocBaseIndependent.test_loc_setitem_consistency_dt64_to_floatO  s     s%((333eAhhbh777 
 
 #''))qqq&y
b(+++++r1   c                     t          dt          t          d          g          i          }d|j        d d df<   t          dt          dg          i          }t	          j        ||           d S )Nr   20180101string)r   r   r   r%   r&   r'   r   s      r/   'test_loc_setitem_consistency_single_rowz>TestLocBaseIndependent.test_loc_setitem_consistency_single_row\  sr     	*(=(='> ? ?@AA$qqq&yffhZ&8&89::
b(+++++r1   c                    t          ddg          }t          ddg          }t          j        d           5  d|j        d d df<   d d d            n# 1 swxY w Y   t          j        ||           t          ddg          }d|d<   |d                             t          j                  |d<   t          j        ||           d S )Nr   yr   rZ   )r   r&   assert_produces_warningr%   r'   r   r   r=  r?   r.   r-   s      r/   "test_loc_setitem_consistency_emptyz9TestLocBaseIndependent.test_loc_setitem_consistency_emptyd  s    c3Z000Sz***'-- 	 	BF111c6N	 	 	 	 	 	 	 	 	 	 	 	 	 	 	
b(+++ Sz***3 ,,RX66
b(+++++s   AAAc                    dgdz  g dg dg}t          j        |g d          }g dg dg}t          j        |d	d
g          }ddddt          j        gg dddddt          j        gg dg}t	          |||          }t          |j        d d df                   |j        d d df<   t          |j        d d df                   |j        d d df<   |                    d          }|j        d d df         |j        d d df         z
  |j        d d df<   |j        d d df         t          d          z  |j        d d df<   t          g d|j
        d          }t          j        |d         |           d S )NRegion_1rc   )Site_1rT  Site_2rU  )l   BP[ l   _Z l   q=.Z l   <.Z )RegionSiteRespondentIDnames)
Respondentr[  r[  OtherCatr\  )	Something	StartDateEndDatezYes/NoSomethingElseLevel_0Level_1r$   z5/25/2015 10:59z5/25/2015 11:22Yes)r$   z5/21/2015 9:40z5/21/2015 9:52rc  rc  z5/20/2015 8:27z5/20/2015 8:41)r$   z5/20/2015 8:33z5/20/2015 9:09rc  Nor  )r[  r^  )r[  r_  F)r   )r[  Durationl    Xp7 )g      7@      (@g      ,@g      B@r   )r   from_arraysr   nanr   r   r%   infer_objectsr   r   r   r&   r   )r?   levelsmiclevelsr   r   r-   r.   s           r/   -test_loc_setitem_consistency_slice_column_lenzDTestLocBaseIndependent.test_loc_setitem_consistency_slice_column_lent  s    L1444<<<

 #F2T2T2TUUU ONNLLL
 %gi5KLLL #%6rvFCCC"$4eRVDBBB	
 vR6661<F1111122
 2
qqq--. 0;F111//00
 0
qqq++, 5)) F111//0fQQQ3345 	qqq,,- 13AA))1
n%%1&qqq,,- $$$BH;U
 
 
 	r"<=xHHHHHr1   unit)YMr4  hmr  msusc                    t          dt          j        d          t          j        d          gi          }|j        d d df         j                            d| d          |j        d d |f<   |j        d d df         j                            d| d          |d<   t          |j        d d df         |          }t          j        |j        d d |f         |           d S )N	timestampz2017-02-11 12:41:29z1991-11-07 04:22:37zdatetime64[]r.   r   )	r   r   
datetime64r%   r   r   r   r&   r   )r?   rn  r-   r.   s       r/   test_loc_assign_non_ns_datetimez6TestLocBaseIndependent.test_loc_assign_non_ns_datetime  s     M"788M"788
 
 &K07>>?TT?T?T?TUUqqq$w;/6==>SD>S>S>STT:"&J/d;;;
rvaaag99999r1   c                    t          j        dg di          }t          |d         dd          |d<   |j        d d df         |j        d d df<   |j        dd	gdf         |j        dd	gdf<   t          g d
g dg dg dgg d          }ddg}||                             t                    ||<   t          j        ||           d S )Nr   )   CO!g   s~!g    4	8   A{?rs  T)rn  cachedate_dt
date_dt_cpr8   r`   )r{  2017-01-24 13:26:12.711r  )r|  2017-01-24 13:52:05.110r  )r}  2018-10-22 13:44:05.888r  )r~  2018-10-23 08:08:41.025r  )r   r  r  r   )r   	from_dictr   r%   applyr&   r'   )r?   r-   r.   r   s       r/   test_loc_modify_datetimez/TestLocBaseIndependent.test_loc_modify_datetime  s    QQQR
 
 $BvJTFFF9"$&I"6qqq,')vq!fi.?'@1v|#$UUUUUUUUUUUU	 655
 
 
 l+$W-33K@@
b(+++++r1   c                    t          g ddgt                    }t          j        g dd          |j        g ddf<   t          g dg dt          	          }t          d|i          }t          j        ||           d S )
Nr`   rd   rc   r$   r   r   r   r   r=  r   rc   r`   rd   r8   r`   rZ   r@  )r   floatr   r   r%   r   r&   r'   r?   r-   serr.   s       r/   #test_loc_setitem_frame_with_reindexz:TestLocBaseIndependent.test_loc_setitem_frame_with_reindex  s    YYYUCCC!#)))7!C!C!Cyyy#~ YYYiiiu===c3Z((
b(+++++r1   c                 @   t          g dddgt                    }d|d<   t          j        g dd          |j        g d	df<   t          g d
g dd          }t          d|                    t                    i          }d|d<   t          j        ||           d S )Nr  r$   r   r  rK  r   r=  r   r  r  r@  )	r   r  r   r   r%   r   r   r&   r'   r  s       r/   )test_loc_setitem_frame_with_reindex_mixedz@TestLocBaseIndependent.test_loc_setitem_frame_with_reindex_mixed  s    YYYc
%HHH3!#)))7!C!C!Cyyy#~YYYiiiw??? c3::e#4#4566 
b(+++++r1   c                    t          g dddgt                    }d|d<   t          j        g dd          |j        t          dd	d
          df<   t          g dddg d          }t          j        ||           d S )Nr   r$   r   r  rK  r=  r   r`   r   r  )r[   r   rG  r   r   )r   r  r   r   r%   r   r&   r'   r   s      r/   *test_loc_setitem_frame_with_inverted_slicezATestLocBaseIndependent.test_loc_setitem_frame_with_inverted_slice  s    YYYc
%HHH3')x			'I'I'IuQ2#$ ???BB)))TTT
b(+++++r1   c                 |   d t          d          D             }t          j        dd          }d t          d          D             }t          j        dd          }t          t	          |                              |                    }t          |          }t          j        |d<   ||j        |df<   t          j        |d	<   ||j        |d	f<   t          ||t          j
        
          }t          ||          }t          ||d                              |          }	t          j        ||	           d S )Nc                 2    g | ]}d t          |          z   S @strr   is     r/   r   zGTestLocBaseIndependent.test_loc_setitem_empty_frame.<locals>.<listcomp>  "    000!s1vv000r1   rd   r=  r   c                 2    g | ]}d t          |          z   S r  r  r  s     r/   r   zGTestLocBaseIndependent.test_loc_setitem_empty_frame.<locals>.<listcomp>  r  r1   rc   r   r$   r   r@  r   )r   r   r   r   setunionr   rh  r%   r   r   reindexr&   r'   )
r?   keys1val1keys2val2r   r-   seraserbr.   s
             r/   test_loc_setitem_empty_framez3TestLocBaseIndependent.test_loc_setitem_empty_frame  s,   00uQxx000y'***00uQxx000y'***SZZ%%e,,--U###&3!ucz&3!ucz d%rz:::d%(((4d3344<<5<II
b(+++++r1   c                    t          t          j                            dd          t	          d          t	          d                    }|j        d         }d|j        d<   |j        d         }|dk    sJ |j        d         }|dk    sJ d|j        d d d	d
f<   |j        d d d	d
f         }|j        d d dd f         }t          j        ||           d S )Nrc   abcdABCDr  r   r   rZ   )r!   r$   r   r   r4  )	r   r   r   randnr   r   r%   r&   r'   r   s       r/   test_loc_setitem_framez-TestLocBaseIndependent.test_loc_setitem_frame	  s    ryq!,,DLL$v,,WWWx!{{{{{{{{qqq#c'z6!!!SW*%ABB
fh/////r1   c                     t          g dt          j        d          }|j        |j        |j        |j        k    df<   t          g dt          j        d          }t          j        ||           d S )Nr   r   r   )r   r   rh  r$   r%   r   r&   r'   r   s      r/   /test_loc_setitem_frame_nan_int_coercion_invalidzFTestLocBaseIndependent.test_loc_setitem_frame_nan_int_coercion_invalid  sn     YYYRV4455#%4rtbd{C 99926::;;
b(+++++r1   c                 `   t          ddgddgddgd          }|j        dddgf         }t          ddgt          ddgt          	          t          d
          }t          j        ||           t          ddgddgddgd          }ddg|j        dddgf<   t          j        ||           d S )NrZ   r8   r`   rc   r!   r    )rZ   r8   r!   r   r   r   r   r   rd   ra   )r   r%   r   r   r  r&   r   r'   r   s       r/   #test_loc_setitem_frame_mixed_labelsz:TestLocBaseIndependent.test_loc_setitem_frame_mixed_labels"  s     Aq6q!fC:>>??Aq6	"F%Af555V!
 
 
 	vx000!QQF#sDDEEFq1a&y
b(+++++r1   c           	      Z   t          g dt          t          d          t          j                  d          }|j        dd         }|j        dd         |_        ||j        dd<   t          g dt          g d	t          j                  d          }t          j        ||           t          t          d
d          t          t          d          t          j                  d          }t          t          d          t          d          t          d          t          d          t          d          gt          g dt          j                  d          }|j        dd         }|j        dd         |_        ||j        dd<   t          j        ||           d S )Nr   r   bazr`   r   r   rZ   r8   r   )r   r  r  )rZ   r8   r8   r9  r:  rd   r;  200001012000010220000103)r   rZ   r   rZ   r8   rc   )r   r   r   r   r=  r%   r   r&   r'   r   r   )r?   r-   rhsr.   s       r/    test_loc_setitem_frame_multiplesz7TestLocBaseIndependent.test_loc_setitem_frame_multiples1  s   '''fU1XXRX.N.N.NOO
 
 fQqSkHQqSM	qs'''fYYYbh.O.O.OPP
 
 	b(+++ "<==eAhhbh777 
 
  j))j))j))j))j)) oooRX>>>	 	
 
 fQqSkHQqSM	qs
b(+++++r1   r   r$   Nr  Zc                     t          ddgddggddg          }||j        d|f<   |j        d	         }t          |          r|d
k    sJ d S )NrZ   r8   r`   rc   r$   r   r   r   )r   r$   r  )r   r%   r   )r?   r   r  r-   r   s        r/   "test_loc_setitem_with_scalar_indexz9TestLocBaseIndependent.test_loc_setitem_with_scalar_indexV  s`     AA'#s<<<"q'z  2Vs]]]]]]r1   zindex,box,expectedr8   r3  rb   )rb   rb   rb   rb   r`   rc   r   rZ   r   r4  rw   )r`   rc   rb   rw   rd   ra   r   rb   rw   	   )r   r   r4  r_         )r`   rb   rw   r  )rd   r_   r  r  )r   r$   r4  )rw   rc   rb   r  )r  ra   r_   r  r  r_   r  r  )rb   r8   rw   )r  rc   r_   )r  ra   r  c                 |    t          ddgddgddggddg	          }||j        |<   t          j        ||           d S )
NrZ   r8   r`   rc   rd   ra   r$   r   r   r   r%   r&   r'   )r?   r   boxr.   r-   s        r/    test_loc_setitem_missing_columnsz7TestLocBaseIndependent.test_loc_setitem_missing_columnse  sR    j AAA/#sDDDu
b(+++++r1   c                 .   t          dt          d                              d          t          j        gi          }|j        }|j        dg         }t          j        |j        |           |j        dg         }t          j        |j        |           d S )Nr   r   UTCr   rZ   )	r   r   tz_localizer   r   dtypesr   r&   r   r   s       r/   test_loc_coercionz(TestLocBaseIndependent.test_loc_coercion  s    :!6!6!B!B5!I!I26 RSTT9!
v}h777!
v}h77777r1   c           	         t          dt          ddd          t          ddd          gi          }|j        }|j        dg         }t	          j        |j        |           |j        dg         }t	          j        |j        |           d S )Nr     rZ   i  r8   r   )r   r   r  r   r&   r   r   s       r/   test_loc_coercion2z)TestLocBaseIndependent.test_loc_coercion2  s    $1!5!5xa7K7K LMNN9!
v}h777!
v}h77777r1   c                     t          ddgd gdz  z   i          }|j        }|j        dd         }t          j        |j        |           |j        dd          }t          j        |j        |           d S )Ntextz
some wordsr  r   r8   r`   )r   r  r   r&   r   r   s       r/   test_loc_coercion3z)TestLocBaseIndependent.test_loc_coercion3  sv    $! ;<==91
v}h777
v}h77777r1   c                 X   t          d                              d          t          d                              d          g}t          |ddg          }t          t                    }|d          ||          d<   |d	          ||          d<   t	          j        ||           d S )
N*   r  i  r   r   r   r   r   rZ   )r   r  r   r  r&   r   )r?   
indexer_slvalsr.   r  s        r/   test_setitem_new_key_tzz.TestLocBaseIndependent.test_setitem_new_key_tz  s     OO''..((//
 $uen5556"""!%a

3!%a

3
sH-----r1   c                 n   t          g dg ddg d          }d}t          j        t          |          5  |j        dd           d d d            n# 1 swxY w Y   d	}t          j        t          |          5  |j        d
d           d d d            n# 1 swxY w Y   d}t          j        t          |          5  |j        dd          d d d            n# 1 swxY w Y   t          g dg ddg d                              d
          }|j        dd          }t          g dg ddg d          }t          j        ||           |j        d
d          }t          j        ||           |j        dd         }t          g dg ddg d          }t          j        ||           d S )NrZ   r8   r`   rc   rd   ra   )r`   rc   rd   ra   rb   rw   r   )r   rZ   r   rZ   r8   r`   r   z5'Cannot get left slice bound for non-unique label: 1'r   rZ   z5'Cannot get left slice bound for non-unique label: 0'r   r8   axis)r8   rc   rd   ra   )rc   ra   rb   rw   )rZ   rZ   r8   r`   )r8   rc   rd   )rc   ra   rb   )rZ   rZ   r8   )r   r   r   r=   r%   
sort_indexr&   r'   )r?   r-   r   r   r.   s        r/   test_loc_non_uniquez*TestLocBaseIndependent.test_loc_non_unique  s    $$$+=+=+=>>FXFXFX
 
 
 F]83/// 	 	F122JJ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	E]83/// 	 	F122JJ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	E]83/// 	 	F1Q3KK	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 $$$+=+=+=>>FXFXFX
 
 

*!*

 	 <<<lllCC<<<XXX
fh///
fb)))!999999==YYYOOO
fh/////s5   AAA<BBB CC #C z
length, l2  r   i 順 c                 
   t          d          }t          j        t          t          j                            |t          |                    t	          j        |          |          t          t	          j	        |t          |          f          dg|z  |          g          }|j
        j        du sJ t	          j        |          }|j        |         }t          j        |                    dg          t          t	          j	        t          |          t          |          f          dgt          |          z  |          |                    |dd                    g          }t          j        ||           d S )NABCDEFGr  r   FrZ   )r   r   concatr   r   r   r  r  r   onesr   	is_uniquer%   taker&   r'   )r?   lengthl2r   r-   r0  r   r.   s           r/    test_loc_non_unique_memory_errorz7TestLocBaseIndependent.test_loc_non_unique_memory_error  sZ    y//YIOOFCLL99)F++#  
 "'2s7||"455aS2XwWWW	
 	
 x!U****y}}9GSYYG566#D		/#  
 QRR!!

 

 	fh/////r1   c                     t          ddgddgg          }d|j        _        |j        ddg         j        j        }|dk    sJ |j        ddg         j        j        }|dk    sJ d S )NrZ   
index_namer   )r   r   r   r   r%   r?   r-   r   s      r/   test_loc_namez$TestLocBaseIndependent.test_loc_name  sw    AA'(($!Q&+%%%%A%*%%%%%%r1   c                 x   t          j        dd          }t          j        |j        d d g f         |j        d d d df         dd           t          j        |j        g d d f         |j        d dd d f         dd           t          j        |j        g          |j        d dd d f         dd           d S )Nrd   r8   r   T)check_index_typecheck_column_type)r&   makeCustomDataframer'   r%   r   r   s     r/   !test_loc_empty_list_indexer_is_okz8TestLocBaseIndependent.test_loc_empty_list_indexer_is_ok  s    #Aq))
F111b5M27111bqb5>DTX	
 	
 	
 	
 	F2qqq5M272A2qqq5>DTX	
 	
 	
 	
 	F2JAAAQU	
 	
 	
 	
 	
 	
r1   c                 n   t          dg di          }|j        d d          }||usJ |d d          |usJ |j        d d d d f         |usJ t          j        |d         j        |d         j                  sJ g d|j        d d df<   |r#|d         g dk                                    sJ n |d         dk                                    sJ t          t          j                            dd                    }|r|d         |j        d d df         usJ n|d         |j        d d df         u sJ t          g d          }|j        d d          }||usJ |d d          |usJ g d|d d	<   |r!t          |d d	         g dk              sJ d S t          |d d	         g dk              sJ d S )
Nr!   r   )rc   rc   rc   rc   r_   r   r  r  r`   )	r   r%   r   shares_memory_valuesr6  r   r  r   )r?   using_copy_on_writeoriginal_df	sliced_dfr-   original_seriessliced_seriess          r/   &test_identity_slice_returns_new_objectz=TestLocBaseIndependent.test_identity_slice_returns_new_object-  sA     iii 011OAAA&	++++111~[0000qqq!!!t$K7777 C 0 8)C.:PQQQQQ #,))3 	/cNiii/44666666cNa',,..... ryr1--.. 	)a5qqq!t,,,,,a5BF111a4L(((( !!3!3!344'+AAA.O3333qqq!8888'ii 	7}RaR(III56666666}RaR(III56666666r1   c                    |s:t           j                            d          }|j                            |           t          t          t          d          t          d                    ddg          }|                                }|j	        d d df         }|dz  }t          j        ||           |                                }|j	        |j        df         }|dz  }t          j        ||           d S )Nz!accidental fix reverted - GH37497)reasonr`   r!   r    r   r8   )r   r   xfailnode
add_markerr   zipr   r   r%   r&   r'   r   )r?   r@   r  r   r   rN  qzs           r/   test_loc_copy_vs_viewz,TestLocBaseIndependent.test_loc_copy_vs_viewT  s     # 	*;$$,O$PPDL##D)))c%((E!HH--SzBBBFFHHE!!!S&M	Q
a###FFHHE!'3,	Q
a#####r1   c                 h   t          j        d          j        }t          ddg|dz
  |g          }|j        |dz
           }|j        d         }||k    sJ |j        |dz
  g         }|j        dg         }t          j        ||           |j        |dz
  |g         }t          j        ||           d S )Nr   rZ   r8   r   r   )r   iinfomaxr   r%   r   r&   r   )r?   umaxr  r   r.   s        r/   test_loc_uint64z&TestLocBaseIndependent.test_loc_uint64h  s     x!!%aVD1Hd#3444"8A;!!!!$($8QC=
vx000$(D)*
vs+++++r1   c                 l   t          j        d          j        }t          ddg|dz
  |g          }t	          j        t          d          5  |j        d          d d d            n# 1 swxY w Y   t	          j        t          d          5  |j        dg          d d d            d S # 1 swxY w Y   d S )Nr   rZ   r8   r   z-1r   r  )r   r  r  r   r   r   r=   r%   )r?   r  r  s      r/   !test_loc_uint64_disallow_negativez8TestLocBaseIndependent.test_loc_uint64_disallow_negativey  s0   x!!%aVD1Hd#3444]84000 	 	GBKK	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ]84000 	 	GRDMM	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s$   A''A+.A+B))B-0B-c                     g d}t          |d gt          |          z  d          }t          ddg          }||j        d d df<   t          j        ||           d S Nr   r   rN  r   rN  r   )r   r  r%   r&   r'   r?   r   r.   r-   s       r/   *test_loc_setitem_empty_append_expands_rowszATestLocBaseIndependent.test_loc_setitem_empty_append_expands_rows  sq     yy4tfs4yy.@AABB Sz***qqq#v
b(+++++r1   c                    g d}t          |d gt          |          z  d          }t          ddg          }|d                             t          j                  |d<   ||j        d d df<   t          j        ||           d S r  )r   r  r   r   r=  r%   r&   r'   r  s       r/   6test_loc_setitem_empty_append_expands_rows_mixed_dtypezMTestLocBaseIndependent.test_loc_setitem_empty_append_expands_rows_mixed_dtype  s     yy4tfs4yy.@AABBSz***S'..**3qqq#v
b(+++++r1   c                     t          dgt          j        gd          }t          ddgt                    }|j        d         |j        d<   t          j        ||           d S )NrG  r  r   rN  r   r   )r   r   )r   r   rh  r  r%   r&   r'   rP  s      r/   *test_loc_setitem_empty_append_single_valuezATestLocBaseIndependent.test_loc_setitem_empty_append_single_value  s^    C5x8899Sz777!f-v
b(+++++r1   c                    ddg}t          ddg          }|j                            t          j                  |_        dt          j                    j         d}t          j        t          |          5  ||j
        d	dgdf<   d d d            n# 1 swxY w Y   d
                    g d          }t          j        t          |          5  ||j
        d	ddf<   d d d            d S # 1 swxY w Y   d S )NrZ   r8   r   rN  r   z"None of \[Index\(\[0, 1\], dtype='z'\)\] are in the \[index\]r   r   |)z?cannot copy sequence with size 2 to array axis with dimension 0zCcould not broadcast input array from shape \(2,\) into shape \(0,\)z@Must have equal len keys and value when setting with an iterable)r   r   r   r   r=  r  r   r   r   r=   r%   join
ValueError)r?   r   r-   r   s       r/   $test_loc_setitem_empty_append_raisesz;TestLocBaseIndependent.test_loc_setitem_empty_append_raises  s    1vSz***8??28,,$"'))/ $ $ $ 	 ]83/// 	' 	'"&BFAq63;	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' hh  
 
 ]:S111 	$ 	$#BF1Q38	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$s$   7BBBC++C/2C/c                     t          ddgddgg          }|j        t          j        d                   }t	          ddgd          }t          j        ||           d S )NrZ   r8   r`   rc   r   r   )r   r%   r   r   r   r&   r   )r?   r-   r   r  s       r/   test_indexing_zerodim_np_arrayz5TestLocBaseIndependent.test_indexing_zerodim_np_array  s_    AA'(($Aq6"""
vq)))))r1   c                 v    t          ddg          }|j        t          j        d                   }|dk    sJ d S )NrZ   r8   r   )r   r%   r   r   )r?   r  r   s      r/   %test_series_indexing_zerodim_np_arrayz<TestLocBaseIndependent.test_series_indexing_zerodim_np_array  s6    Aq6NNrx{{#{{{{{{r1   c                     g dd gdz  z   }t          |t          dd                    }t          t          dd          t          j                  }g d|j        ddd	<   t          j        ||           d S )
Nr  rc   i  i  r   r@  )ra   rd   rc   r`   r8   rZ   r   r  )r   r   r   r   r%   r&   r   )r?   r   r.   r   s       r/   test_loc_reverse_assignmentz2TestLocBaseIndependent.test_loc_reverse_assignment  s    !!!TFQJ.$eD$&7&7888eD$//rzBBB#5#5#5
4R< 
vx00000r1   c                 ,   t           j                            d           d t          d          D             }t	          |dg          }t	          |dgt
                    }t          j        ||           d |D             |j        |j	        df<   t	          |dgt                                        t
                    }t          j        ||           d |D             |d<   t	          |dgt                    }t          j        ||           d S )	N   c                 j    g | ]0}t          t          j                                        d z            1S )g-q=)r  r   r   )r   rQ   s     r/   r   z^TestLocBaseIndependent.test_loc_setitem_str_to_small_float_conversion_type.<locals>.<listcomp>  s3    FFFC	((**U233FFFr1   rd   r$   r   r  c                 ,    g | ]}t          |          S rn   r  r   s     r/   r   z^TestLocBaseIndependent.test_loc_setitem_str_to_small_float_conversion_type.<locals>.<listcomp>  s    (D(D(Daq(D(D(Dr1   c                 ,    g | ]}t          |          S rn   r%  r   s     r/   r   z^TestLocBaseIndependent.test_loc_setitem_str_to_small_float_conversion_type.<locals>.<listcomp>  s    222AuQxx222r1   )r   r   seedr   r   r  r&   r'   r%   r   r  r   )r?   col_datar   r.   s       r/   3test_loc_setitem_str_to_small_float_conversion_typezJTestLocBaseIndependent.test_loc_setitem_str_to_small_float_conversion_type  s   
	rFFU1XXFFF8cU333XuFCCC
fh/// )E(D8(D(D(D
6<$%XuEBBBII&QQ
fh/// 32222sXuEBBB
fh/////r1   c                    t          ddd          }|j        dk    |j        dk    z  }t          t          j                            t          |          d          |          }t          j	        ||          }|j
        t          dd                   }|j
        |         }t          j        ||           |j
        d	d          }|j
        t          dd                   }|d
d          }|j                            d           |_        |j                            d           |_        t          j        ||           d S )N1/1/2000z1/5/20005minfreqr  ri   r`   r   z1/4/2000r  )r   hourminuter   r   r   r  r  r&   get_objr%   r   r   r   
_with_freq)	r?   frame_or_seriesrngr0  rA   r   r   chunkr.   s	            r/   test_loc_getitem_time_objectz3TestLocBaseIndependent.test_loc_getitem_time_object  s   Zf===A#*"23	C!44C@@@jo..a%gdm
$$$
$42;;'"##; |..t44!22488
)))))r1   
spmatrix_t)
coo_matrix
csc_matrix
csr_matrixr   c                    dd l }t          |j        |          }d\  }} |t          j        |||          |          }t
          j                            |          }t          d|          }|j        |         j	        }	|
                                |         }
t          j        |	|
           |j        |         j        j	        }	t          j        |t          |d                    }
t          j        |	|
           d S )Nr   )rd   rb   r   r8   )
fill_value)scipy.sparsegetattrsparser   eyer   from_spmatrixr   r%   r   toarrayr&   assert_numpy_array_equalr  fullr   )r?   r7  r   scipyrowsr   spmatrixr-   itr_idxr   r.   s              r/   $test_loc_getitem_range_from_spmatrixz;TestLocBaseIndependent.test_loc_getitem_range_from_spmatrix  s     	U\:66

 
d:bfT4u===UKKK++H55 4..'##%%g.
#FH555 '.74Uq!A!A!ABB
#FH55555r1   c           	          t          dt          j        ddgt          d                    i          }|j        ddg         }t          j        ||           d S )Nr$   r   r=  r   rZ   )r   r   r   r   r%   r&   r'   r  s      r/   ,test_loc_getitem_listlike_all_retains_sparsezCTestLocBaseIndependent.test_loc_getitem_listlike_all_retains_sparse  sW    RXq!fK4H4HIIIJKKA
fb)))))r1   c                    ddl m} t          j                             |d                    }|j        t          d                   }t          g dg dgt          dd          	          }t          j	        ||           |j        t          d                   j        t          d
                   }t          g dgt          dd          	          }t          j	        ||           d S )Nr   )r@  rd   r8   rG  r   r   r   r   )r   rG  r   r   r   r   r   r   rZ   )
r=  r@  r   r?  rA  r%   r   r   r&   r'   )r?   r@  r-   r   r.   s        r/   test_loc_getitem_sparse_framez4TestLocBaseIndependent.test_loc_getitem_sparse_frame  s     	%$$$$$++CCFF33a!&&&(A(A(ABi--
 
 
 	fh///a!%eAhh/&&&'{9c/J/J
 
 
 	fh/////r1   c                    t          g dt          dd                    }|j        t          d                   }t          ddgt          dd                    }t	          j        ||           |j        t          d                   j        t          d                   }t          ddgt          dd                    }t	          j        ||           d S )NrM  r   r   r   r8   rG  r`   )r   r   r%   r   r&   r   )r?   r  r   r.   s       r/   test_loc_getitem_sparse_seriesz5TestLocBaseIndependent.test_loc_getitem_sparse_series+  s    ,,,K	34O4OPPPuQxx3*K	3,G,GHHH
vx000uQxx$U1XX.3*K	3,G,GHHH
vx00000r1   r%   r   c                     t          g dg dgt          t                              }t          ||          d         }t	          g dt          t                    d          }t          j        ||           d S )N)rG  r         ?)r   r   r   r   r   )r   r   )r   r   r  r>  r   r&   r   )r?   r   r-   r   r.   s        r/   !test_getitem_single_row_sparse_dfz8TestLocBaseIndependent.test_getitem_single_row_sparse_df7  sx     9UASASTTTW%%a(///U1C1C!LLL
vx00000r1   key_typec                      |g d          }|j         d d |f         }|j         d d g df         }t          j        ||           d S )Nr   )r%   r&   r'   )r?   float_framerT  idxr   r.   s         r/   test_loc_getitem_iterablez0TestLocBaseIndependent.test_loc_getitem_iterable?  s[    h''C(?111ooo#56
fh/////r1   c                    t          t          j                            d                    }t	          ddd          |_        |j        t          d          d d d f         }|j        dd d d f         }t          j	        ||           d S )Nr_   rc   r#  0sr_   r  startperiodsr.  )
r   r   r   normalr   r   r%   r   r&   r'   r   s       r/   #test_loc_getitem_timedelta_0secondsz:TestLocBaseIndependent.test_loc_getitem_timedelta_0secondsF  s    ry''W'5566"rDDD6)D//++QQQ./qqq!
fh/////r1   val,expected                c                     t          ddgddg          }|j        |         }||_        t          j        ||           d S )NrZ   r8   rb  rc  r   )r   r%   r   r&   r   )r?   r<  r.   r-   r   s        r/   test_loc_getitem_uint64_scalarz5TestLocBaseIndependent.test_loc_getitem_uint64_scalarN  sJ    
 1vi%7888
vx00000r1   c                     |}t          g dt          g d|                    }|                                }d|j        d<   d|j        d<   t          j        ||           d S )Nr   )r         ?rZ   r   r   zoorZ   r8   )r   r   r   r%   r   r&   r   )r?   float_numpy_dtyper   r  r.   s        r/   +test_loc_setitem_int_label_with_float_indexzBTestLocBaseIndependent.test_loc_setitem_int_label_with_float_indexY  sk    !___E+++U,K,K,KLLL88::
 a
sH-----r1   zindexer, expected)
rN   rZ   r8   r`   rc   rd   ra   rb   rw   r  )
r   rZ   r8   r`   rN   rN   rN   rN   rw   r  )
r   rZ   r8   rN   rc   rN   ra   rb   rw   r  c                    t          t          d          d          }t          dt          d          id|          }d|j        |j        |         df<   t          ||dgd          }t          j        ||           d S )	Nr_   r  rn  r   r=  r   r   rN   r  )r   r   r   r%   r   r&   r'   )r?   r   r.   tdir-   s        r/   /test_loc_setitem_listlike_with_timedelta64indexzFTestLocBaseIndependent.test_loc_setitem_listlike_with_timedelta64indexd  s     5993///U2YY'wcBBB)+rx #%&E	
 
 
 	h+++++r1   c                 8   t          g dt          d          d          }t          g dt          d          d          }t          ddgddg          |j        d	d
df<   t          ddgddg          |j        d
ddf<   t	          j        ||           d S )N)rZ   rZ   rZ   rZ   rZ   aaaaar   )rZ   r    r    rZ   rZ   aabbar    r!   
categoriesrZ   r8   r`   )r   r   r
   r%   r&   r'   )r?   r-   r   s      r/   8test_loc_setitem_categorical_values_partial_column_slicezOTestLocBaseIndependent.test_loc_setitem_categorical_values_partial_column_slice~  s     ___4==AABB111WFFGG&SzsCjIIIqsCx&SzsCjIIIqsCx
b#&&&&&r1   c                 r   t          dgdgd          }t          |d         g d          }||j        d d df<   |d         }t          ||j        d                              t                    }t          j        ||           ||d<   t          j        |d         t          |d                     d S )	Nr!   r   )AlphaNumericrw  r   rs  r   r   )	r   r
   r%   r   r   r   r  r&   r   )r?   r-   rt  r   r.   s        r/   'test_loc_setitem_single_row_categoricalz>TestLocBaseIndependent.test_loc_setitem_single_row_categorical  s    #A37788 GIII
 (qqq'zG*BH7CCCJJ6RR
vx000 !7
r'{F:G,L,L,LMMMMMr1   c                    t          dt          d          gdz  i          }t          j        d          |j        dddf<   t          d          |j        d         k    sJ t          d          |j        d         k    sJ t          d	d
d
          |j        d<   t          d                                          |j        d         k    sJ d S )NrE   z
2010-10-01r`   z
2008-08-08r   rZ   )r   rE   )rZ   rE   i  rd   )r8   rE   z
2005-05-05)r   r   r   rx  r%   r   r   s     r/   "test_loc_setitem_datetime_coercionz9TestLocBaseIndependent.test_loc_setitem_datetime_coercion  s    i556:;<<=66qsCx&&"&.8888&&"&.8888dAq))v&&++--??????r1   idxervarc                     |}t          ddd|          }t          d|dg          }t          |dgt          j                  }||j        d d |f<   t          j        ||           d S )	Nz
2015-07-12r`   H)r]  r^  r.  tzr   r}  r  r  )r   r   r   r   r%   r&   r'   )r?   r|  tz_naive_fixturer  rW  r.   r   s          r/   !test_loc_setitem_datetimeindex_tzz8TestLocBaseIndependent.test_loc_setitem_datetimeindex_tz  s|     |QSRHHHSeW=== ugRZHHH'
111e8
fh/////r1   c                 l   t          ddd          }t          t          j                            t          |          d          |          }t          ddd          }t          t          d	dd          t          d
dd                    }g d}g d}|                                }d|j	        |<   |j	        |         }|j	        |                                         }	d|	j	        d d <   |r|	
                    t                    }	t          j        ||	           |                                }d|j	        |<   |j        |         |j	        |<   t          j        ||           |                                }d|j	        |<   |j	        |         }|j	        |                                         }	d|	j	        d d <   |r|	
                    t                    }	t          j        ||	           |                                }d|j	        |<   |j        |         |j	        |<   t          j        ||           d S )Nz
2012-01-01z
2012-01-0530minr-  rd   r   r  r   r"     )   H   x      )         J   K   L   z   {   |            )r   r   r   r   r  r  r   r   r   r%   r   r  r&   r'   r   )
r?   using_array_managerr   r-   akeybkeyaindsbindsr   r.   s
             r/   test_loc_setitem_time_keyz0TestLocBaseIndependent.test_loc_setitem_time_key  s   <GDDDrys5zz155UCCCB1~~T"a^^T"a^^44"""FFF
4D!6$<$$&&QQQ 	.u--H
fh///
475>
4
fb)))
4D!6$<$$&&QQQ 	.u--H
fh///
475>
4
fb)))))r1   rU   c                    t          j        g d          }t          g dg dg|          }|                                }t	          j        dd          |j        d d |f<   t          g dg d	g|          }t          j        ||           |	                    d
          }t	          j        dd          |j        d d |f<   |	                    d
          }t          j        ||           d S )N))r$   rc   )r   3)r$   2r   rc   rd   ra   r   )r8   r8   r=  r   )r   r8   r   )r   rd   r   rZ   r  )
r   from_tuplesr   r   r   zerosr%   r&   r'   r  )r?   rU   rk  r-   rA   r.   s         r/   ,test_loc_setitem_unsorted_multiindex_columnszCTestLocBaseIndependent.test_loc_setitem_unsorted_multiindex_columns  s     #$F$F$FGG			999-r:::ggii(69993iii3R@@@
c8,,,]]]""&888qqq#v&&A&..
b(+++++r1   c                     t          g d|          }d|j        d<   t          g d|          }t          j        ||           d S )Nr   r   rc   r   )rc   r8   r`   r   r%   r&   r   )r?   any_int_numpy_dtyper*   r.   s       r/   test_loc_setitem_uint_dropz1TestLocBaseIndependent.test_loc_setitem_uint_drop  sV     			)<===
1)))+>???
vx00000r1   c                 ^   t          dt          j        dd          gz            }t          j        dd          |j        g d<   t          dt          j        dd          gz            }t	          t          j        dd                    |j        g d<   t          j        ||           d S )Nr_   rr  rN   r   )r   r   timedelta64r%   r   r&   r   )r?   r  r.   s      r/   test_loc_setitem_td64_non_nanoz5TestLocBaseIndependent.test_loc_setitem_td64_non_nano  s    R2>"c223344^B44			"r3 7 78899"+BN2s,C,C"D"DYYY
sH-----r1   c                    t           j                            dd          }t          t	          d                    }d                    ddg          }t          j        t          |          5  ||j	        t	          d          <   d d d            n# 1 swxY w Y   d}t          j        t          |          5  ||j	        d d <   d d d            d S # 1 swxY w Y   d S )Nr8   r  z,shape mismatch: value array of shape \(2,2\)z0cannot reshape array of size 4 into shape \(2,\)r   zEcould not broadcast input array from shape \(2,2\) into shape \(2,?\))
r   r   r  r   r   r  r   r   r  r%   )r?   r   r  r   s       r/    test_loc_setitem_2d_to_1d_raisesz7TestLocBaseIndependent.test_loc_setitem_2d_to_1d_raises  sV   yq!$$U1XXhh?C
 
 ]:S111 	% 	% $CGE!HH	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% W]:S111 	 	CGAAAJ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s$   /BBB;CCCc                     t          j        dd          }t          g dg dg dg|g d          }d	}|j        d
         }t	          j        ||           d S )Nr   r`   )r]  r^  r   r  r  r   r  rZ   )rg  r$   )r   interval_ranger   r%   r&   assert_almost_equal)r?   r   r-   r.   r   s        r/   test_loc_getitem_interval_indexz6TestLocBaseIndependent.test_loc_getitem_interval_index  su    !1555YY			999-UOOO
 
 
 !
vx00000r1   c                 
   t          j        ddd          }t          g dg dg dg|g d	          }t          j        dd
dd          }t          ddg|d          }|j        d         }t          j        ||           d S )Nr   r`   both)r]  r^  closedr   r  r  r   r  r8   rZ   )r]  r^  r.  r  rc   r$   r   rZ   r$   )r   r  r   r   r%   r&   r   )r?   r   r-   	index_expr.   r   s         r/    test_loc_getitem_interval_index2z7TestLocBaseIndependent.test_loc_getitem_interval_index2  s    !1VDDDYY			999-UOOO
 
 
 %AqqPPP	1a&	<<<
vx00000r1   tplrZ   rZ   r8   c                     t          ddgdd          }t          |          }|j        |g         }t          |gdd          }t          |          }t          j        ||           d S )Nr  r  r$   Fr   tupleize_colsr   )r   r   r%   r&   r'   )r?   r  rW  r-   r   r.   s         r/   +test_loc_getitem_index_single_double_tupleszBTestLocBaseIndependent.test_loc_getitem_index_single_double_tuples  s     6N
 
 

 S!!!SE59993'''
fh/////r1   c                     t          dddg          } |dd          } |dd          }t          ||gdd	
          }t          ddg|ddg          }|j         |dd                   d         }|dk    sJ d S )N	IndexTyper!   r    r   r   r  bofcomposite_indexFr  r  )r`   rc   r$   r   r  rZ   )r   r   r   r%   )r?   r  idx1idx2r   r-   r   s          r/   !test_loc_getitem_index_namedtuplez8TestLocBaseIndependent.test_loc_getitem_index_namedtuple)  s    {S#J77	y&&y&&tTl):%PPP'usCjIII		%//05{{{{{{r1   c                 |   t          t          j                            dd          g dg d          }d|d<   t          j        |j        |j        d d d         df<   t          j        t          j        dt          j        dt          j        gt          	          }t          j
        |d         j        |           d S )
Nrd   r`   )r!   r    rE   r  r  r  r  quxr  r8   r   )r   r   r   r  rh  r%   r   r   r  r&   r  r   r   s      r/   $test_loc_setitem_single_column_mixedz;TestLocBaseIndependent.test_loc_setitem_single_column_mixed3  s    IOOAq!!+++)))
 
 

 5	')vrx!}e#$8RVUBFE26B&QQQ
r%y/:::::r1   c                 f   t          t          j                            dd          t	          d                    }t          j        |d<   d|j        d<   |j        }t          t          j	        d          gdz  t          j	        d	          gz   g d
          }t          j        ||           d S )Nri   r`   ABCr   eventr   )r_   r  r   r  )r$   r   r   r  r   )r   r   r   r5  tuplerh  r%   r  r   r   r&   r   r   s       r/   test_loc_setitem_cast2z-TestLocBaseIndependent.test_loc_setitem_cast2>  s     ry~~b!,,eEllCCCf7#{Xi  !A%(););(<<***
 
 
 	vx00000r1   c                 b   t          dt          j        dt          j                  i          }d|j        d<   |j        j        t          j        t          j                  k    sJ t          j        d          |_        |j        j        t          j        t          j                  k    sJ d S )Nonera   r   )rZ   r  rb   )r   r   r   int8r%   r  r  r   r   s     r/   test_loc_setitem_cast3z-TestLocBaseIndependent.test_loc_setitem_cast3K  s    ry"':::;<<xy} 1 11111y} 1 1111111r1   c                      |t          d          g d          }g d}|j        dk    rdgdgdgg}||j        t          d	          <    |g d
|j                  }t	          j        ||           d S )Nrd   )r`   rc   rZ   r   r8   r   )r  r_   r  r8   r  r_   r  r`   )r   rZ   r_   r  r  )r   ndimr%   r   r&   r   )r?   r3  rA   r   r.   s        r/   test_loc_setitem_range_keyz1TestLocBaseIndependent.test_loc_setitem_range_keyS  s    oeAhhooo>>>8q==cB4"&F"a"?#4#4#4CIFFF
X&&&&&r1   )jr   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r	  r  r  r  r  r!  r1  r7  fixturer>  r   r   r=  rB  rE  rH  rL  rQ  rm  ry  r  r  r  r  r  r  r  r  r  r   r  r   rh  r  r  r  r  r  r  arm_slowr  r  r  r  r  r	  r  r  r  r  r  r  r  r   r)  r6  r   complextdskip_if_no_scipyrI  rK  rN  rP  rS  iterr   r   rX  r`  re  rj  ro  ru  ry  r{  r  r  r  r  r  r  r  r  r  r  r  r  r  r  rn   r1   r/   r   r      s	       0 0 0 [7&&,,u9UV6tU8ST6ud8STNvvd||U3 7ud8STNuffTll3 7tU8ST	
 $ % $*     
1 1 11 1 1(!K !K !KF- - -*, , ,&	 	 	 [We}6P6P6P&QRR  SR  # # #% % %N     0 0 0*& & &$ ^
 
 ^
 [	
HBHQbh'''///)R)R)RS , ,	 ,, , ,, , ,, , ,, , , /I /I /Ib [V%O%O%OPP: : QP:", , ,4	, 	, 	,
, 
, 
,, , ,, , ,.0 0 0", , ,, , ,#, #, #,J [SE55sD11828SE??C  [Wuhbhuoo&>??	3 	3 @? 	3 [ Q---.	!\\Aq"&"&#9<<<H000   S#JA	BFBF+\\\Aq"&"&;QR000   OOO$"(333	BF^YYYArv?   q!T""OOO4LLL)	BFBF+\\\???K000   q!T""OOO4)))\\\2"(CCC	BFBF+\\\???K000   tT4((3*5	Aq6Ar7RH5SzJJJ	YY


KKK8///  Q/	
2 2f, ,g2 2f,	8 	8 	8	8 	8 	8	8 	8 	8. . . 0  0  0D [[\S#J8H+IJJ 0  0 KJ  0D& & &
 
 
%7 %7 %7N$ $ $(, , ,"  	, 	, 	,	, 	, 	,, , ,$ $ $.* * *  1 1 10 0 0(* * *( [\+U+U+UVV[WrxW&EFF6 6  GF WV6.* * *
 0 0 0$
1 
1 
1 [Y881 1 981 [Z$&%)HII0 0 JI00 0 0 [)VVQC[[1E661#;;3GH 1 1 1	. 	. 	. [ ///0U1a[[<<<=V5556	
	 	, ,	 	, ' ' 'N N N"@ @ @ [Wuug&677	0 	0 87	0$* $* $*L [US3%#uuT{{1C$DEE, , FE,1 1 1. . .  "	1 	1 	1
1 
1 
1 [UT6N330 0 430  	; 	; 	;1 1 12 2 2' ' ' ' 'r1   r   c                       e Zd Z ej        ej        ej        g          d             Zej        d             Z	d Z
d Zd ZdS )TestLocWithEllipsis)paramsc                     |j         S rm   )param)r?   r@   s     r/   r   zTestLocWithEllipsis.indexerb  s     }r1   c                 D    |}|t           ur|                                }|S rm   )r   to_frame)r?   series_with_simple_indexr3  rA   s       r/   rA   zTestLocWithEllipsis.objg  s$    &&((,,..C
r1   c                 R     ||          d         }t          j        ||           d S )N.)r&   r   )r?   rA   r   r   s       r/   test_loc_iloc_getitem_ellipsisz2TestLocWithEllipsis.test_loc_iloc_getitem_ellipsisn  s,    c"
$$$$$r1   c                    |}|t           j        u st          |          dk    rdn|j        d         }|t           j        u rt          |j                  rd S |t           j        u rdt          |j        t                    rJd}t          j	        t          |          5   ||          d|gf         }d d d            n# 1 swxY w Y   nNt          |          dk    r; ||          d|gf         } ||          |g         }t          j        ||           |t           j        u rdn|j        }|                                }	 ||	          d|gf         } ||	          d d |gf         }t          j        ||           d S )Nr   z2MultiIndex does not support indexing with Ellipsisr   .)r&   r   r  r   r%   r   r   r   r   r   NotImplementedErrorr   r   r  r'   )
r?   r  r   rA   rU   r   r   r.   key2r-   s
             r/   &test_loc_iloc_getitem_leading_ellipsesz:TestLocWithEllipsis.test_loc_iloc_getitem_leading_ellipsesr  s   &rw&&#c((a--aacilbfsy!9!9 FbfCIz!B!BFC2#>>> 2 2 cC5j12 2 2 2 2 2 2 2 2 2 2 2 2 2 2 XX]]WS\\#u*-Fws||SE*H"68444rw&&qqCH\\^^S4&[)72;;qqq4&y)
fh/////s   B==CCc                    |t           j        u st          |          dk    rdn|j        d         }t	          j        t          t                    5   ||          d          d d d            n# 1 swxY w Y   t	          j        t          t                    5   ||          d|gdf          d d d            n# 1 swxY w Y   t	          j        t          t                    5   ||          dd|f          d d d            n# 1 swxY w Y   t	          j        t          d          5   ||          |ddf          d d d            d S # 1 swxY w Y   d S )Nr   r   )...Too many indexers)r&   r   r  r   r   r   r	   r   )r?   rA   r   rU   s       r/   0test_loc_iloc_getitem_ellipses_only_one_ellipsiszDTestLocWithEllipsis.test_loc_iloc_getitem_ellipses_only_one_ellipsis  sL   rw&&#c((a--aacil]=0EFFF 	# 	#GCLL""	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# ]=0EFFF 	* 	*GCLLseS))	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* ]=0EFFF 	( 	(GCLLc3''	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	(
 ]=0CDDD 	( 	(GCLLc3''	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	(sH   A//A36A3B<<C C 'DDD.EEEN)r   r   r   r   r  r&   r%   r   r   rA   r  r  r  rn   r1   r/   r  r  a  s        V^BFBG,---  .- ^  ^% % %0 0 00( ( ( ( (r1   r  c                   f   e Zd Zej                            dddgg dg dgfddgg dg dgfddgddgfg dg dgfddgddgfg dg d	gfddgddgfg dg d	gfddgddgfg dg dgfd
dgddgfg dg dgfg          ej                            dddg          d                         Zd Zd Zd Z	d Z
d Zd Zd Zd Zd Zd Zej                            dej        ej        dej        f          d             Zd Zej                            dd d!g          d"             Zd# Zd$ ZdS )%TestLocWithMultiIndexzkeys, expectedr    r!   )r    r    r!   r!   )rZ   r8   rZ   r8   )r!   r!   r    r    rZ   r8   )r8   rZ   r8   rZ   rE   )rE   r!   r!   )rZ   r8   rZ   dimr   r   c                 t   |g dg dgi}t          t          j        d                              dd          fi |}t	          j        |          }|dk    r-|j        |d d f         }t          j        |j	        |           d S |dk    r-|j        d d |f         }t          j        |j
        |           d S d S )N)rE   r!   r!   r    r    )rZ   rZ   r8   rZ   r8      rd   r   r   )r   r   r   reshaper   rg  r%   r&   assert_index_equalr   r   )r?   r  keysr.   kwargsr-   	exp_indexr   s           r/   'test_loc_getitem_multilevel_index_orderz=TestLocWithMultiIndex.test_loc_getitem_multilevel_index_order  s      111???CDry}},,Q22==f==*844	'>>&qqq/C!#)Y77777I&D/C!#+y99999 r1   c                    |}|j         d         }|d         j         d         }|j        j        |j        j        dd          k    sJ |j        j        |j        j        dd          k    sJ |j         d         }|d         j         d         }|j        j        |j        j        d         k    sJ |j        j        |j        j        d         k    sJ d S )N  r$   rZ   )r  r8   r8   )r%   r   rZ  r   )r?   /multiindex_year_month_day_dataframe_random_dataymdr   result2s        r/   test_loc_preserve_namesz-TestLocWithMultiIndex.test_loc_preserve_names  s    =c(,t$|!SY_QRR%88888}"cioabb&99999!c(,w'| CIOA$66666}!SY_Q%7777777r1   c                    t          j        dgddgg          }t          d|          }|j        g          }|d d         }t	          j        ||           |j        |j        dd                  }t	          j        ||           d S )Nr   rZ   r   )r   from_productr   r%   r&   r   r   )r?   rk  r  r   r.   res2s         r/   .test_loc_getitem_multiindex_nonunique_len_zerozDTestLocWithMultiIndex.test_loc_getitem_multiindex_nonunique_len_zero  s    $qcAq6]33Qb!!!gbkrr7
sH---wsx!}%
tX.....r1   c                    t          d gt          j        dgdgg                    }|j        d         }|J t          j        dgddgg          }t          d gt          |          z  t          |          }|j        d         }|J t          dgt          |          z  t          |          }|j        d         }|dk    sJ d S )	NLevel1Level2)r   r  Level2_aLevel2_brm  )r   r  rZ   )r   r   rg  r%   r  r  r  )r?   r  r   midxs       r/   0test_loc_getitem_access_none_value_in_multiindexzFTestLocWithMultiIndex.test_loc_getitem_access_none_value_in_multiindex  s     dVZ3hZ(4LMMNN-.~~~&
Z4L'MNNdVc$ii'vTBBB/0~~~aS3t99_F$???/0{{{{{{r1   c                     t          j        t          g dg d          ddg          }t          g d|          }d|j        d	d
<   t          g d|          }t          j        ||           d S )N)r   r   r  r  r   r   r  r  )r  twor  r  r  r  r  r  firstsecondrY  )rZ   rZ   rZ   rZ   rZ   rZ   rZ   rZ   r   r   )r  r  )r   r  )rZ   rZ   r   r   r   r   rZ   rZ   )r   r  r  r   r%   r&   r   )r?   r   r   r.   s       r/   !test_loc_setitem_multiindex_slicez7TestLocWithMultiIndex.test_loc_setitem_multiindex_slice  s     &HHHHHH  H%
 
 
 000>>>47
>.01:::%HHH
vx00000r1   c                     t          ddd          }t          t          d          |          }|j        t	          ddd          t	          ddd                   }t          j        ||           d S )Nr9  10minr  r.  r^  il  rZ   i4  )r   r   r   r%   r   r&   r   )r?   timesr  r   s       r/   7test_loc_getitem_slice_datetime_objs_with_datetimeindexzMTestLocWithMultiIndex.test_loc_getitem_slice_datetime_objs_with_datetimeindex  sm    <gvFFFU6]]E**$1--q!0D0DDE
vs+++++r1   c                    t          t          d          t          d          dt          dd                    }|j        ddgddgf         }t          d	d
gd	d
gdt	          ddg                    }t          j        ||           d S )Nr_   r   z
2010-01-01z
2010-01-10r   z
2010-01-05r!   r    r   rc   )r   r   r   r%   r   r&   r'   r   s       r/   3test_loc_getitem_datetime_string_with_datetimeindexzITestLocWithMultiIndex.test_loc_getitem_datetime_string_with_datetimeindex  s    ))%)),,\<88
 
 
 |4sCj@Aa&1v&&| <==
 
 
 	fh/////r1   c           	      Z   t          j        g dddg          }t          ddgddgd	d
gddgddgddgg|ddg          }|                    d          }t          ddgddgddggddg|                    g d                    }|j        d         }t          j        ||           d S )N)r   r   r  bahbamr  r  r  r$   r   rY  rG  rZ   r   r8   r[   r`         @rc         @rd         @ra   r   r4  r  r   )level)r   rZ   rc   r   r  )r   r  r   r  r  r%   r&   r'   )r?   rk  r-   r.   r   s        r/   3test_loc_getitem_sorted_index_level_with_duplicateszITestLocWithMultiIndex.test_loc_getitem_sorted_index_level_with_duplicates  s    #   *

 

 

 aaaaaa #J
 
 
 ]]]##1XQx#q*S#JbggiiiFXFX
 
 
 '
fh/////r1   c                     t          g dd          }d|j        d<   t          g dd          }t          j        ||           d S )Nr   categoryr   r   r`   )r!   r    rE   r   r  r  r?   r   r.   s      r/   1test_additional_element_to_categorical_series_loczGTestLocWithMultiIndex.test_additional_element_to_categorical_series_loc*  sU    z:::
1,,,H===
vx00000r1   c                     t          g dd          }d|j        d<   t          g dd          }t          j        ||           d S )Nr   r  r   r!   r`   r!   r    rE   r!   r  r  s      r/   'test_additional_categorical_element_locz=TestLocWithMultiIndex.test_additional_categorical_element_loc1  sU    z:::
1...jAAA
vx00000r1   c           	         t          g dt          t          g d|                              }t          j        |j        d<   t          dddt          j        gt          t          g d|                              }t          j        ||           t          j        |j        d<   t          dt          j        dt          j        gt          t          g d|                              }t          j        ||           d S )Nr   r   r`   rZ   r8   )r   r   r   r   rh  r%   r&   r   )r?   any_numeric_ea_dtypesrsr.   s       r/   &test_loc_set_nan_in_categorical_seriesz<TestLocWithMultiIndex.test_loc_set_nan_in_categorical_series8  s   II"5:N#O#O#OPP
 
 

 V
1bf"5:N#O#O#OPP
 
 
 	sH---V
26""5:N#O#O#OPP
 
 
 	sH-----r1   naNc                     t          g dd          }||j        d<   t          g dd          }||j        d<   t          j        ||           t          ddd|gd          }t          j        ||           d S )	Nr   r  r   r`   r!  r!   r    rE   r  )r?   r'  srs_enlargesrs_setintor.   s        r/   ,test_loc_consistency_series_enlarge_set_intozBTestLocWithMultiIndex.test_loc_consistency_series_enlarge_set_intoM  s     ___J???111DDD
{K8883S"-Z@@@
{H55555r1   c           
         t          t          j        ddd          t          t	          ddg          t          d          gdgdz  dgdz  z   t          d          gd	d
g                    }t	          ddgddgdd	d          }|j        j        d         }t          j	        ||           |j
        dg         j        j        d         }t          j	        ||           d S )Nr8      r!   r    r_   r   rd   rZ   Index1Index2)rj  codesrZ  )r   r   Fr  )rt  orderedr   r   )r   r   r   r   r   r   r   rj  r&   r  r%   r   s       r/   5test_loc_getitem_preserves_index_level_category_dtypezKTestLocWithMultiIndex.test_loc_getitem_preserves_index_level_category_dtypeZ  s    1b!$$(#s44eBii@sQw!q(%))4*  
 
 
 $#JSz
 
 
 #
fh///$+A.
fh/////r1   lt_valueri   r_   c                    t          dg dit          d          g dg          }t          j        t          d          5  |j        |d         |k     d d f         j        dgd d f          d d d            d S # 1 swxY w Y   d S )	Nr!   )r     "   -   aabbr   rZ   r8   r`   r   z\['b'\] not in indexr   r    )r   r   r   r   r=   r%   )r?   r3  r-   s      r/   >test_loc_multiindex_levels_contain_values_not_in_index_anymorezTTestLocWithMultiIndex.test_loc_multiindex_levels_contain_values_not_in_index_anymores  s     ---.tF||\\\6RSSS]8+BCCC 	8 	8F2c7X%qqq()-seQQQh77	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8s   ,A;;A?A?c                 :   t          j        t           j        t           j        g          }ddg}t          j        ||g          }t          ddg|          }|j        d d df         }t          dgt           j        g          }t          j        ||           d S )Nr   r  r   rZ   r   )	r   r   rh  r   rg  r   r%   r&   r   )r?   lev1lev2rk  r  r   r.   s          r/   'test_loc_multiindex_null_slice_na_levelz=TestLocWithMultiIndex.test_loc_multiindex_null_slice_na_levelz  s    x())u~#T4L11aV2&&&E" 1#bfX...
vx00000r1   c                 P   t          j        t          d          t          d          ddggg d          }t          t	          d          |          }|j        d	d d d d f         }|j                            d
          d d         }t          j	        |j        |           d S )NabxyrZ   r8   )r@  rA  numrY  rw   r   r!   r   rc   )
r   r  r   r   r   r%   r   	droplevelr&   r  )r?   rk  r  
loc_resultr.   s        r/   test_loc_drops_levelz*TestLocWithMultiIndex.test_loc_drops_level  s     $$ZZdaV,4G4G4G
 
 
 U1XXR(((WS!!!QQQY'
9&&q))"1"-
j.99999r1   )r   r   r   r   r   r   r  r  r  r  r
  r  r  r  r  r"  r&  r   rh  r   NAr   r+  r2  r:  r>  rE  rn   r1   r/   r  r    s       [3Z...=>3Z...=>Cj1a&!$8$8$8,,,#GHCj1a&!$8$8$8,,,#GHCj1a&!$8$8$8,,,#GHCj1a&!$8$8$8,,,#GHCj1a&!OOOYYY#?@	
  [UWi$899: : :9 :8 8 8/ / /  "1 1 1$, , ,0 0 0 0  0  0D1 1 11 1 1. . .* [TBFBE4#@AA
6 
6 BA
60 0 02 [Z"b228 8 328
1 
1 
1
: 
: 
: 
: 
:r1   r  c                   Z   e Zd Zej        j        d             Zd Zd Zd Z	d Z
ej                            dd d d	 d
 gg d          d             Zd Zd Zd Zd Zej                            d          d             Zej                            dg d          d             ZdS )TestLocSetitemWithExpansionc                     t          dt          d          id          }t          |          dz   |j        t          |          <   t          dt          d          id          }t	          j        ||           d S )Nr   i@B r=  r   rZ   iAB )r   r   r  r%   r&   r'   r  s      r/   /test_loc_setitem_with_expansion_large_dataframezKTestLocSetitemWithExpansion.test_loc_setitem_with_expansion_large_dataframe  su     Cu.g>>>"%f++/
3v;;c5#3#34GDDD
fh/////r1   c                     t          t                    }d|j        d<   t          j        |t          dgdg                     d|j        d<   t          j        |t          ddgddg                     d S )Nr   rZ   r   r`   r   r  r%   r&   r   r?   r  s     r/   test_loc_setitem_empty_seriesz9TestLocSetitemWithExpansion.test_loc_setitem_empty_series  s|     6"""

sFA3qc$:$:$:;;;

sFAq6!Q$@$@$@AAAAAr1   c                     t          t                    }d|j        d<   t          j        |t          dgdg                     d|j        d<   t          j        |t          ddgddg                     d S )Nr   rG  rZ   r   r[   r`   rL  rM  s     r/   #test_loc_setitem_empty_series_floatz?TestLocSetitemWithExpansion.test_loc_setitem_empty_series_float  s|     6"""

sFC5$<$<$<===

sFC:aV$D$D$DEEEEEr1   c                 X   t          t                    }d|j        d<   t          j        |t          dgdg                     d|j        d<   t          j        |t          ddgddg                     d|j        d<   t          j        |t          g dg d	                     d S )
Nr   rZ   r   r   r`   r   rc   )rZ   r`   rc   )r   r   r`   rL  rM  s     r/   %test_loc_setitem_empty_series_str_idxzATestLocSetitemWithExpansion.test_loc_setitem_empty_series_str_idx  s     6"""
sFA3ug$>$>$>???
sFAq6%$H$H$HIII

sF999<M<M<M$N$N$NOOOOOr1   c                    t          dddt          d                    fdt          d          D             }t          dg|d         g	          }|D ]}d|j        |<   t          d|	          }t          j        ||           d S )
Nr   r  rZ   
US/Pacific)tzinfoc                 <    g | ]}t          |d z            z   S )r  )seconds)r   )r   r  bases     r/   r   zUTestLocSetitemWithExpansion.test_loc_setitem_incremental_with_dst.<locals>.<listcomp>  s-    EEEayS1111EEEr1      r   r   )r   r   r   r   r%   r&   r   )r?   idxsr   rL   r.   rX  s        @r/   %test_loc_setitem_incremental_with_dstzATestLocSetitemWithExpansion.test_loc_setitem_incremental_with_dst  s    b!E,,?,?@@@EEEE599EEEDG9--- 	 	BFJrNN!4(((
vx00000r1   convc                     | S rm   rn   r,  s    r/   r-  z$TestLocSetitemWithExpansion.<lambda>  s    a r1   c                 *    |                                  S rm   )to_datetime64r,  s    r/   r-  z$TestLocSetitemWithExpansion.<lambda>      aoo'' r1   c                 *    |                                  S rm   )to_pydatetimer,  s    r/   r-  z$TestLocSetitemWithExpansion.<lambda>  r`  r1   c                 *    t          j        |           S rm   )r   rx  r,  s    r/   r-  z$TestLocSetitemWithExpansion.<lambda>  s    bmA&& r1   )r?   r_  rb  znp.datetime64)idsc                 
   t          d          }t          d          }t                      }d|j         ||          df<   d|j         ||          df<   t          dddgi||g          }t          j        ||           d S )	Nz20130101 09:00:00z20130101 10:00:00r   r  r|   g      Y@g      i@r   )r   r   r%   r&   r'   )r?   r\  dt1dt2r-   r.   s         r/   #test_loc_setitem_datetime_keys_castz?TestLocSetitemWithExpansion.test_loc_setitem_datetime_keys_cast  s     +,,+,,[[#&ttCyy% #&ttCyy% eeU^4S#JGGG
b(+++++r1   c                     t          ddgi          }t          dg|          |j        d d df<   t          dgt          dg|          d          }t          j        ||           d S )Nr$   rZ   r    )r1  r   r   )r   r
   r%   r&   r'   )r?   r1  r   r.   s       r/   1test_loc_setitem_categorical_column_retains_dtypezMTestLocSetitemWithExpansion.test_loc_setitem_categorical_column_retains_dtype  sw    C!:&&(#@@@
111c6A3[#-P-P-PQQRR
fh/////r1   c                    t          dd          }t          dd          }t          dd          }t          ||dd          }||vsJ t          |d	g
          }d|j        |d	f<   t          t          j        gt          |          z  dgz   |                    t          |g                    d	gt                    }t          j        ||           d S )Nz2017-10-29 00:00:00+0200zEurope/Madridr  z2017-10-29 03:00:00+0100z2016-10-10 03:00:00leftr  )	inclusiver.  r  r  r  r  )r   r   r   r%   r   rh  r  appendr   r  r&   r'   )r?   r]  endrL   rW  r   r.   s          r/   0test_loc_setitem_with_expansion_and_existing_dstzLTestLocSetitemWithExpansion.test_loc_setitem_with_expansion_and_existing_dst  s    4III2GGG,AAAvC@@@}}}}wi888"$
2w;VHs3xx2$&**]B40011I	
 
 
 	fh/////r1   c                    t          t          ddg          dg          }ddg|d<   |                    d          j                            d          |_        ||j        dk                                 d          j                            d	          }|                                }||j	        |j        dk    df<   t          |d
                             d          |j	        d         gd          }t          j        |j        |           |j	        |j        dk    df         t          d          z   }||j	        |j        dk    df<   t          j        |j	        |j        dk    df         |           d S )Nz2015-03-30 20:12:32z2015-03-12 00:11:11r   )r   r   newoldnew_colr  rT  r   )rZ   r   r   1s)r   r   r   r   r  r   ru  
tz_convertr   r%   r   r&   r   r   )r?   r-   vr   r.   s        r/   test_setitem_with_expansionz7TestLocSetitemWithExpansion.test_setitem_with_expansion  sa   35JKLLH
 
 
 9,,v&&,88??rzU"#--f55;FF|TT ggii01u$f,-1Q4??51126)3DEFSSS
sx222F2:&./)D//A./rzU"F*+
rvbjE&96&ABAFFFFFr1   c                     t                      }d|j        d<   d|j        d<   d|j        dt          j        f<   |j        }t          ddt          j        gt          j                  }t          j        ||           d S )NrZ   r  r8   )rZ   rZ   r`   r   r   )	r   r%   r   infr   r   r   r&   r  r   s       r/   0test_loc_setitem_with_expansion_inf_upcast_emptyzLTestLocSetitemWithExpansion.test_loc_setitem_with_expansion_inf_upcast_empty
  so    [[ttq"&y!Qrz:::
fh/////r1   z"ignore:indexing past lexsort depthc                 x   t          |          sd S |                    d          }t          |          }t          j        |                              t          j                  }t          ||dg          }d}||vsJ |                    t          |          |          }t          |t                    r|d         d         |k    sJ n|d         |k    sJ t          j        |dz                                 t          j
                  }t          ||dg          }|                                }	||	j        |df<   t          j        |	|           |                                d         }
||
j        |<   |d                             t          j                  }t          j        |
|           |                                }	||	j        |df<   t          t!          |          t          j        gz   t          j        g|z  t%          |          gz   d|          }t          j        |	|           d S )	Nr8   r   r  kapowr  rZ   r   rZ   r   )r  repeatr   r   r   r=  r   insertr   r   r   r   r%   r&   r'   r   r   rh  r  )r?   r   NarrorigrU   r  exp_datar.   r-   r  s              r/   /test_loc_setitem_with_expansion_nonunique_indexzKTestLocSetitemWithExpansion.test_loc_setitem_with_expansion_nonunique_index  s    5zz 	FQJJill!!"(++EA3777 % LLUS11	eZ(( 	(R=#s*****R=C''''9QU##**2:66XYDDD YY[[sAv
b(+++ iikk!nA;%%bh//
sH--- YY[[sAvS		RVH$"&Aq
)BCC
 
 
 	b(+++++r1   r   )Int32Int64UInt32UInt64Float32Float64c                 D   t          g d|          }t          d|i          }t          |j                  }||j        |j        df<   t	          j        ||           t          |j                  }|j        |j        |j        df<   t	          j        ||           d S )Nr9  r   r   r   )r   r   r   r%   r&   r'   r  )r?   r   r  r-   r   s        r/   6test_loc_setitem_with_expansion_preserves_nullable_intzRTestLocSetitemWithExpansion.test_loc_setitem_with_expansion_preserves_nullable_intC  s    
 \\\///}%%***'*
28V#$
fb)))***'*{
28V#$
fb)))))r1   N)r   r   r   r   r   slowrJ  rN  rP  rR  r[  r   rh  rj  rq  ry  r|  filterwarningsr  r  rn   r1   r/   rH  rH    s       [0 0 0B B BF F F
P 
P 
P1 1 1 [K''''&&		
 HGG  	 		, 	,	 		,0 0 00 0 0$G G G,	0 	0 	0 [ DEE+, +, FE+,Z [MMM * * * * *r1   rH  c                   &    e Zd Zd Zd Zd Zd ZdS )TestLocCallablec                 n   t          g dt          d          g dd          }|j        d          }t          j        ||j        |j        dk                        |j        d d d f         }t          j        ||j        |j        dk    d d f                    |j        d d	 f         }t          j        ||j        |j        dk    g d
f                    |j        d d f         }t          j        ||j        |j        dk    df                    |j        d d f         }t          j        ||j        |j        dk    ddgf                    |j        d d f         }t          j        ||j        |j        dk    ddgf                    |j        d d f         }||j        d         k    sJ d S )NrZ   r8   r`   rc   r8  r   c                     | j         dk    S Nr8   r$   r,  s    r/   r-  zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>\      qsQw r1   r8   c                     | j         dk    S )Nr    )r   r,  s    r/   r-  zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>_  s    qscz r1   r    c                     | j         dk    S r  r  r,  s    r/   r-  zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>b  r  r1   c                     | j         dk    S Nr   r   r,  s    r/   r-  zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>b  s    !)s2B r1   )FTFc                     | j         dk    S r  r  r,  s    r/   r-  zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>e  r  r1   c                     dS r  rn   r,  s    r/   r-  zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>e  s    # r1   r   c                     | j         dk    S r  r  r,  s    r/   r-  zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>h  r  r1   c                 
    ddgS Nr$   r   rn   r,  s    r/   r-  zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>h  s
    3* r1   r$   c                     | j         dk    S r  r  r,  s    r/   r-  zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>k  s    qsax r1   c                 
    ddgS r  rn   r,  s    r/   r-  zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>k  s
    C: r1   c                     dS )NrZ   rn   r,  s    r/   r-  zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>o  s    q r1   c                     dS r#   rn   r,  s    r/   r-  zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>o  s    C r1   r  )r   r   r%   r&   r'   r$   r   r   r?   r-   r   s      r/   test_frame_loc_getitem_callablez/TestLocCallable.test_frame_loc_getitem_callableV  s   \\\V<<<PPQQ f&&'
c26"$(#3444f))111,-
c26"$#+qqq.#9:::f&&(B(BBC
c26"$(4H4H4H*H#IJJJf&&56
sBF24!8S=$9:::f&&(<(<<=
c26"$(S#J*>#?@@@f'')=)==>
c26"$!)c3Z*?#@AAA f[[--/0bfVn$$$$$$r1   c                    t          g dt          d          g dd          }|j        d ddgf         }t          j        ||j        |j        dk    ddgf                    |j        ddgd	 f         }t          j        ||j        ddgddgf                    |j        dd
 f         }t          j        ||j        dddgf                    d S )Nr  r8  r   c                     | j         dk    S r  r  r,  s    r/   r-  zITestLocCallable.test_frame_loc_getitem_callable_mixture.<locals>.<lambda>v  r  r1   r$   r   r8   r`   c                 
    ddgS r  rn   r,  s    r/   r-  zITestLocCallable.test_frame_loc_getitem_callable_mixture.<locals>.<lambda>y  s
    Sz r1   c                 
    ddgS r  rn   r,  s    r/   r-  zITestLocCallable.test_frame_loc_getitem_callable_mixture.<locals>.<lambda>|  s
    3* r1   )r   r   r%   r&   r'   r$   r   r  s      r/   'test_frame_loc_getitem_callable_mixturez7TestLocCallable.test_frame_loc_getitem_callable_mixturer  s    \\\V<<<PPQQf&&c
23
c26"$(S#J*>#?@@@faV1112
c261a&3**<#=>>>fQ,,,-
sBF1sCj=$9:::::r1   c                    t          g dt          d          dt          d                    }|j        d          }t          j        ||j        ddg                    |j        d	 d d f         }t          j        ||j        ddgd d f                    |j        d
 d f         }t          j        ||j        ddgdf                    |j        d d f         }t          j        ||j        ddgdgf                    |j        ddgd f         }t          j        ||j        ddgdf                    |j        ddgd f         }t          j        ||j        ddgdgf                    |j        d df         }t          j        ||j        ddgdf                    |j        d dgf         }t          j        ||j        ddgdgf                    d S )Nr  r8  Xro  r  r   c                 
    ddgS Nr$   r   rn   r,  s    r/   r-  zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>  
    Sz r1   r$   r   c                 
    ddgS r  rn   r,  s    r/   r-  zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>  r  r1   c                 
    ddgS r  rn   r,  s    r/   r-  zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>  r  r1   c                     dS Nr  rn   r,  s    r/   r-  zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>  s    S r1   r  c                 
    ddgS r  rn   r,  s    r/   r-  zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>  r  r1   c                     dgS r  rn   r,  s    r/   r-  zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>  s    cU r1   c                     dS r  rn   r,  s    r/   r-  zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>  s    3 r1   c                     dgS r  rn   r,  s    r/   r-  zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>  s    C5 r1   c                 
    ddgS r  rn   r,  s    r/   r-  zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>  r  r1   c                 
    ddgS r  rn   r,  s    r/   r-  zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>  r  r1   )r   r   r%   r&   r'   r   r  s      r/   &test_frame_loc_getitem_callable_labelsz6TestLocCallable.test_frame_loc_getitem_callable_labels  s    \\\V==T&\\RRR f))*
c263*#5666f))111,-
c263*aaa-#8999f))==89
sBFC:s?$;<<<f))??:;
c263*se*;#<=== fc3Z./
sBFC:s?$;<<<fc3Z01
c263*se*;#<===f))3./
sBFC:s?$;<<<f))C501
c263*se*;#<=====r1   c                 R   t          g dt          d          dt          d                    }|                                }d|j        d <   |                                }d|j        dd	g<   t	          j        ||           |                                }d
|j        d d d f<   |                                }d
|j        dd	gd d f<   t	          j        ||           |                                }d|j        d d f<   |                                }d|j        dd	gdf<   t	          j        ||           |                                }ddg|j        d d f<   |                                }ddg|j        dd	gdgf<   t	          j        ||           |                                }t          j        ddg          |j        dd	gd f<   |                                }t          j        ddg          |j        dd	gdf<   t	          j        ||           |                                }d|j        dd	gd f<   |                                }d|j        dd	gdgf<   t	          j        ||           |                                }d|j        d df<   |                                }d|j        dd	gdf<   t	          j        ||           |                                }d|j        d dgf<   |                                }d|j        dd	gdgf<   t	          j        ||           d S )Nr  r8  r  r  r   ic                 
    ddgS r  rn   r,  s    r/   r-  zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>  
    3* r1   r$   r   rN   c                 
    ddgS r  rn   r,  s    r/   r-  zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>  r  r1   r  c                 
    ddgS r  rn   r,  s    r/   r-  zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>  r  r1   c                     dS r  rn   r,  s    r/   r-  zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>  s     r1   r  rd   r_   c                 
    ddgS r  rn   r,  s    r/   r-  zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>  r  r1   c                     dgS r  rn   r,  s    r/   r-  zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>  s     r1   r  c                     dS r  rn   r,  s    r/   r-  zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>  s    c r1   c                     dgS r  rn   r,  s    r/   r-  zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>  s    se r1   c                 
    ddgS r  rn   r,  s    r/   r-  zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>  r  r1   c                 
    ddgS r  rn   r,  s    r/   r-  zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>  r  r1   )r   r   r   r%   r&   r'   r   r   )r?   r-   r   r   s       r/   test_frame_loc_setitem_callablez/TestLocCallable.test_frame_loc_setitem_callable  s   \\\V==T&\\RRR ggii(+$$%ggii!c

c3'''ggii+-$$aaa'(ggii!#c
AAA
c3'''ggii79$$mm34ggii#%c
C 
c3'''ggii:;R$$oo56ggii&'Wc
SE!"
c3''' ggii-/Xr2h-?-?c
MM)*ggii#%8RH#5#5c
C 
c3'''ggii/1c
OO+,ggii%'c
SE!"
c3'''ggii-/$$c)*ggii#%c
C 
c3'''ggii/1$$se+,ggii%'c
SE!"
c3'''''r1   N)r   r   r   r  r  r  r  rn   r1   r/   r  r  U  sP        % % %8; ; ;> > ><4( 4( 4( 4( 4(r1   r  c                   r    e Zd Zd Zd Zd Zd Zej        	                    dddg          d             Z
dS )	TestPartialStringSlicingc                     t          g dg ddt          g d                    }t          ddgdd	gdt          d
dg                    }|j        d         }t          j        ||           d S )Nr   r   )r}   r~   )
2020-08-01z
2020-07-02
2020-08-05r   r!   rE   rZ   r`   r  r  z2020-08)r   r   r%   r&   r'   r   s       r/   5test_loc_getitem_partial_string_slicing_datetimeindexzNTestPartialStringSlicing.test_loc_getitem_partial_string_slicing_datetimeindex  s    $__iii88HHHII
 
 
 3Z!Q00|\:;;
 
 
 	"
fh/////r1   c                     t          j        ddd          }|                                }|j        d d         }|j        d d         }t          j        ||           d S )N
2017-01-01
2018-01-01rp  r]  rp  r.  z2017-12r  )r   period_range	to_seriesr%   r   r&   r   )r?   pir  r   r.   s        r/   8test_loc_getitem_partial_string_slicing_with_periodindexzQTestPartialStringSlicing.test_loc_getitem_partial_string_slicing_with_periodindex  s]    _<\LLLllnn)$8CRC=
vx00000r1   c                     t          ddd          }|                                }|j        d d         }|j        d d         }t	          j        ||           d S )N1 day2 days1Hr  z1 daysr  )r   r  r%   r   r&   r   )r?   r   r  r   r.   s        r/   ;test_loc_getitem_partial_string_slicing_with_timedeltaindexzTTestPartialStringSlicing.test_loc_getitem_partial_string_slicing_with_timedeltaindex  s[    7tDDDllnn(#8CRC=
vx00000r1   c                     t          dt          d          it          t          d          d                    }|j        d         }|j        d         }t          j        ||           d S )Nr   r`   daysrl  r   r   0 days)r   r   r   r   r%   r&   r   )r?   r-   r.   sliceds       r/   #test_loc_getitem_str_timedeltaindexz<TestPartialStringSlicing.test_loc_getitem_str_timedeltaindex  sa    U1XXl588&.Q.Q.QRRR71:!
vx00000r1   indexer_endN2020-01-02 23:59:59.999999999c                     |dgdz  t          t          d          t          d          t          d          t          d          t          d          g|          	          } |dgd
z  t          t          d          t          d          g|          	          }t          d|          }||         }t          j        ||           |j        |         }t          j        ||           d S )NrZ   rd   z
2019-12-30z
2020-01-01z
2019-12-25r  z
2019-12-19rl  r   r8   )r   r   r   r&   r   r%   )r?   tz_aware_fixturer  r3  rA   r.   r   r   s           r/   /test_loc_getitem_partial_slice_non_monotonicityzHTestPartialStringSlicing.test_loc_getitem_partial_slice_non_monotonicity  s   
 oC!Gl++l++l++=>>l++ $	 	 	
 
 
 #?C!Gl++=>> $  	
 	
 	
 k22W
)))!
)))))r1   )r   r   r   r  r  r  r  r   r   r   r  rn   r1   r/   r  r    s        0 0 01 1 11 1 11 1 1 []T3R,STT!* !* UT!* !* !*r1   r  c                   ^   e Zd Zd Zd Zej                            d ej	        ddd           e
dd	d
          g          d             Zd Zd Zej                            d ej        dd          d edd          g ej        dd           ej        dd           edd          gd ej        dd           edd          gg          d             Zej                            dddg          d             Zej                            dddg          d              Zd! ZdS )"TestLabelSlicingc           	         t          t          j        dd          d dD                       }t          t          j        dd          d d	D                       }||fD ]}|j        t	          d
ddd          d          }t          j        ||           |j        d t	          d
ddd                   }t          j        ||           |j        t	          d
ddd          t	          d
ddd                   }t          j        ||           |j        t	          d
ddd          d          }|j        dd          }t          j        ||           |j        dd          }t          j        ||           d S )Nr  r   r   c           	      4    g | ]}t          d d|dd          S   rZ   r_   r   r   r  s     r/   r   zMTestLabelSlicing.test_loc_getitem_slicing_datetimes_frame.<locals>.<listcomp>%	  s(    FFFA8D!QB//FFFr1   r  r   r  c           	      4    g | ]}t          d d|dd          S r  r  r  s     r/   r   zMTestLabelSlicing.test_loc_getitem_slicing_datetimes_frame.<locals>.<listcomp>+	  s(    IIIA8D!QB//IIIr1   )rZ   r8   r8   r`   rc   r  rZ   r_   rc   r  z20010101 11)r   r   r   r%   r   r&   r'   r   )r?   	df_uniquedf_dupsr-   r   r.   s         r/   (test_loc_getitem_slicing_datetimes_framez9TestLabelSlicing.test_loc_getitem_slicing_datetimes_frame	  s    Ic+++FFFFF
 
 
	 Ic+++IIIII
 
 

 g& 	4 	4BVHT1a44667F!&"---V6htQ26667F!&"---VHT1a44xaB7O7OOPF!&"---VHT1a44667Fwqrr{H!&(333VMNN+F!&(3333	4 	4r1   c                 8   t          dddd          }t          g d|          }t          dd	          }t          d
d	          }|j        ||         }t          ddg|dd                   }t	          j        ||           ||         }d}||k    sJ d S )Nz2017-10-29 01:30:00zEurope/Berlinrd   z30 min)r  r^  r.  )r   rZ   r8   r`   rc   r   z2017-10-29 02:30:00+02:00rl  z2017-10-29 02:00:00+01:00r8   r`   rc   )r   r   r   r%   r&   r   )r?   rW  series2t_1t_2r   r.   s          r/   'test_loc_getitem_label_slice_across_dstz8TestLabelSlicing.test_loc_getitem_label_slice_across_dst<	  s    !oqx
 
 
 4443HHH3HHHSW%1a&AaC111
vx000!!!!!!r1   r   r  r  rp  r  r  r  r  c                     |                                 }|j        d |d                  }|j        d d         }t          j        ||           d S )Nr  r  )r  r%   r   r&   r   )r?   r   r  r   r.   s        r/   -test_loc_getitem_label_slice_period_timedeltaz>TestLabelSlicing.test_loc_getitem_label_slice_period_timedeltaM	  sO     oo59%8CRC=
vx00000r1   c                 D   g d}t          t          j                            dd          |          }|j        dd         }t          |          dk    sJ |j        dd         }t          |          dk    sJ |j        dd         }t          |          dk    sJ d S )	N)gx"p|@g\Va|@g|@r`   r8   r   g3333c|@g    |@g3333|@g|@)r   r   r   r5  r%   r  )r?   r   r-   s1s       r/   %test_loc_getitem_slice_floats_inexactz6TestLabelSlicing.test_loc_getitem_slice_floats_inexact[	  s    :::ry~~a++5999VGGO$2ww!||||VGGO$2ww!||||VGGO$2ww!||||||r1   c                    |}t          t          j                            d          t          j        dd|                    }t          |j        dd                    dk    sJ t          |j        dd                    dk    sJ t          j        dd|          }d	|d
<   ||_        t          |j        dd                    dk    sJ t          |j        dd                    dk    sJ d S )Nr_   rN   r   r   rf  rw   g      )@rb   gffffff(@r8   )r   r   r   r5  r   r  r%   r   )r?   ri  r   r  rW  s        r/   'test_loc_getitem_float_slice_floatindexz8TestLabelSlicing.test_loc_getitem_float_slice_floatindexh	  s    !RY^^B''ryRu/M/M/MNNN37455>""a''''37455>""a''''iBe,,,A	37455>""a''''37455>""a''''''r1   zstart,stop, expected_slicer   nsNr  rZ   r4  ra   rb   rc   rd   c                     t          t          d          t          dd                    }|j        t	          ||                   }|j        |         }t          j        ||           d S )Nr  r  z10 days)r   r   r   r%   r   r   r&   r   )r?   r]  stopexpected_slicer  r   r.   s          r/   $test_loc_getitem_slice_label_td64objz5TestLabelSlicing.test_loc_getitem_slice_label_td64obju	  s^     U2YY) D DEEud++,8N+
vx00000r1   r]  20182020c                      |g dt          d          t          d          t          d          g          }t          j        t          d          5  |j        |d          d d d            d S # 1 swxY w Y   d S )	Nr   201620192017r   z,Value based partial slicing on non-monotonicr   r   )r   r   r   r=   r%   )r?   r3  r]  rA   s       r/   )test_loc_getitem_slice_unordered_dt_indexz:TestLabelSlicing.test_loc_getitem_slice_unordered_dt_index	  s    oIIV$$i&7&769J9JK
 
 
 ]J
 
 
 	" 	" GE&L!!	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	"s   A22A69A6r  rR  c                      |t          d          |dddg          }|j        |d         } |t          d          |dddg          }t          j        ||           d S )Nrc   r  r8   thirdr   )r   r%   r&   r   )r?   r3  r  rA   r   r.   s         r/   1test_loc_getitem_slice_labels_int_in_object_indexzBTestLabelSlicing.test_loc_getitem_slice_labels_int_in_object_index	  sr     oeAhhugq'.JKKKw'"?588E7Aw3OPPP
)))))r1   c                     t          dddddg          }t          ddggdgt          ddgt                              }t          j        |j        d d dd f         |           d S )	NrZ   r8   r`   )testrZ   r8   r   r   r   )r   r   r   )r   r   r  r&   r'   r%   r   s      r/   *test_loc_getitem_slice_columns_mixed_dtypez;TestLabelSlicing.test_loc_getitem_slice_columns_mixed_dtype	  s    aA..qc:::a&!eQF&.I.I.I
 
 
 	bfQQQUmX66666r1   )r   r   r   r  r  r   r   r   r   r  r   r  r  r  r   r  r   r  r  r  r  rn   r1   r/   r  r  	  s       4 4 4:" " "" [BO,LsKKKO'xdCCC	
 1 1 1  ( ( ( [$R^At$$dEE!RLL9R^As##^R^As%;%;UU1a[[I>2>!S))55A;;7	
 1 1 1 [Wvv&677" " 87" [Wq#h//* * 0/*7 7 7 7 7r1   r  c                       e Zd Zej                            dddg          d             Zej                            dddg          d             Zd ZdS )TestLocBooleanLabelsAndSlices
bool_valueTFc                     | d}|j         dk    rP ||d          }t          j        t          |          5  |j        |          d d d            d S # 1 swxY w Y   d S d S )Nz7: boolean label can not be used without a boolean indexr.  r  r@  r   )inferred_typer   r   r=   r%   )r?   r   r3  r  messagerA   s         r/   'test_loc_bool_incompatible_index_raiseszETestLocBooleanLabelsAndSlices.test_loc_bool_incompatible_index_raises	  s    
  XXX)++!/X>>>Cxw777 $ $
##$ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ,+s   AAAc                 \     |t          ddgd          d          }|j        |          d S )NTFr.  r   r  r@  )r   r%   )r?   r3  r  rA   s       r/   test_loc_bool_should_not_raisez<TestLocBooleanLabelsAndSlices.test_loc_bool_should_not_raise	  sC    ouY777x
 
 
 	
r1   c                     d} ||d          }t          j        t          |          5  |j        dd          d d d            d S # 1 swxY w Y   d S )NzEslice\(True, False, None\): boolean values can not be used in a slicer  r@  r   TF)r   r   r   r%   )r?   r   r3  r  rA   s        r/   test_loc_bool_slice_raisesz8TestLocBooleanLabelsAndSlices.test_loc_bool_slice_raises	  s     U 	 oE:::]9G444 	  	 GDJ	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	 s   AAAN)	r   r   r   r   r   r   r  r  r  rn   r1   r/   r  r  	  s        [\D%=99$ $ :9$ [\D%=99  :9         r1   r  c                       e Zd Zd Zej                            dddg          d             Zd Zd Z	e
j        d             Zd	 Zd
 Zd ZdS )TestLocBooleanMaskc           	         t          dt          d          i          }t          t          d          d          |_        |d         dk    |d         dk    |d         dk     g}g dg dg dg}t	          ||          D ]j\  }}|                                }d|j        |df<   t          |t          t          d          d          dgd	
          }t          j        ||           kd S )Nr   r_   r  rl  r`   )
r   rZ   r8   r`   r_   r_   r_   r_   r_   r_   )
r   rZ   r8   r_   rc   rd   ra   rb   rw   r  )
r_   r_   r_   r`   rc   rd   ra   rb   rw   r  r=  r  )	r   r   r   r   r  r   r%   r&   r'   )r?   r-   
conditionsexpected_datacondr   r   r.   s           r/   )test_loc_setitem_bool_mask_timedeltaindexz<TestLocBooleanMask.test_loc_setitem_bool_mask_timedeltaindex	  s   U2YY'((b		444gk2c7a<C1=
000+++---

 j-88 
	4 
	4JD$WWYYF$&FJtSy! "5993777	  H !(F3333
	4 
	4r1   r  Nr  c                    t          j        g d          }t          dd|          }t          dt          j        d          i|                              d          }|                                }|j        |d d f         |j        |d d f<   t          j	        ||           |                                }|j        |         |j        |<   t          j	        ||           d S )Nrr   20010101rc   r^  r  r!   r   r   )
r   r   r   r   r   r   r   r%   r&   r'   )r?   r  r0  rW  r-   r   s         r/   +test_loc_setitem_mask_with_datetimeindex_tzz>TestLocBooleanMask.test_loc_setitem_mask_with_datetimeindex_tz	  s     x22233Q2666RYq\\*#666==iHH fT111Wo
47
fb)))6$<
4
fb)))))r1   c           	         t          t          j        d                              dd          t	          d          t          ddd                    }|                                }|j        d	         gt          j	        t          j	        gz   |d
<   |j
        dk     }|j        |         j        |j        |d
f<   t          j        ||           d S )Nr  r`   r8   ABr+  r  )r^  r.  r   r   r   rZ   )r   r   r   r  r   r   r   r   r   r   r$   r%   r&   r'   )r?   r-   r.   r0  s       r/   2test_loc_setitem_mask_and_label_with_datetimeindexzETestLocBooleanMask.test_loc_setitem_mask_and_label_with_datetimeindex	  s     IcNN""1a((JJZ>>>
 
 

 7799!*+rvrv.>>taxF4L.tSy
b(+++++r1   c                 |   t          d          }t          d          }t          dt          ||g          i          }|                                }t          |g          }|d         j        d         j        }||j        ddg<   |d         j        d         j        }||k    sJ t          j        ||           d S )Nr   l   ,GsO1colrZ   TF)	r   r   r   r   r   _valuer%   r&   r'   )r?   td1td2r-   df_copyr  r.   r   s           r/   'test_loc_setitem_mask_td64_series_valuez:TestLocBooleanMask.test_loc_setitem_mask_td64_series_value	  s    ll)**vsCj11233''))cUmme9>!$+ #e}E")6!!!!
b'*****r1   c                 
   |                                 }|d         dk    }d|j        |df<   |j                                         }d||j        df<   t          ||j        |j                  }t          j        ||           d S )Nr$   r   r   rZ   r  )r   r%   r   r   r   r   r&   r'   )r?   rV  r.   r0  r   s        r/   #test_loc_setitem_boolean_and_columnz6TestLocBooleanMask.test_loc_setitem_boolean_and_column
  s    ##%%3!#%&c	"%%''!"t{A~V8>8CSTTT
k844444r1   c                     t          g dg dd          }t          dg dig d          |j        g ddgf<   t          g d	g dd          }t          j        ||           t          g dg dd          }t	          g d
g d          |j        g ddgf<   t          j        ||           t          g dg dd          }t	          g d
g d          |j        g ddf<   t          j        ||           t          g dg dd          }|                                }|d         }t	          g d
g d          |j        g d<   |rt          j        ||           d S t          j        ||           d S )Nr   r  r   r!   r   )r8   rZ   r   r   )FFT)rZ   r8   r_   r  )r   r%   r&   r'   r   r   )r?   r  r-   r.   r   r  s         r/   )test_loc_setitem_ndframe_values_alignmentz<TestLocBooleanMask.test_loc_setitem_ndframe_values_alignment
  s   YYYYYY7788.7,,,yyy/
 /
 /
###cU*+ :::III>>??
b(+++ YYYYYY7788.4\\\.S.S.S###cU*+
b(+++ YYYYYY7788,2<<<yyy,Q,Q,Q###S()
b(+++YYYYYY7788''))g(.|||999(M(M(M$$$% 	0!"g.....!"h/////r1   c                     t          g g dt                    }|                                }|d         |j        t	          j        g t          j                  dgf<   t          j        ||           d S )Nr   r   r!   	r   r  r   r%   r   r   bool_r&   r'   r   s      r/    test_loc_indexer_empty_broadcastz3TestLocBooleanMask.test_loc_indexer_empty_broadcast,
  sj    Rb))888779968grx"(+++cU23
b(+++++r1   c                     t          dgdgdt                    }|                                }|d         |j        t	          j        dgt          j                  dgf<   t          j        ||           d S )Nr   rN  r   r   r    Fr!   r7  r   s      r/   $test_loc_indexer_all_false_broadcastz7TestLocBooleanMask.test_loc_indexer_all_false_broadcast3
  sp    cU#//v>>>7799;=c7rxrx0003%78
b(+++++r1   )r   r   r   r#  r   r   r   r'  r*  r1  r  skip_array_manager_invalid_testr3  r5  r9  r;  rn   r1   r/   r  r  	  s        4 4 4, [TD%=11* * 21* , , ,+ + + '	5 	5 ('	50 0 0:, , ,, , , , ,r1   r  c                       e Zd Zej                            dd ej        eg          d             Z	d Z
d Zej                            dddg          d	             Zd
 ZdS )TestLocListliker  c                     | S rm   rn   r,  s    r/   r-  zTestLocListlike.<lambda><
  s    q r1   c                    t          ddt          j        g          }t          t	          d          |          }|j         ||                   }t          j        ||           | ||                   }t          j        ||           |                                j         ||                   }t          j	        ||                                           |d d         }|dd          }d}t          j        t          |          5  |j         ||                    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 d d            d S # 1 swxY w Y   d S )	Nr$   r   r`   r   r  rZ   r  r   )r   r   rh  r   r   r%   r&   r   r  r'   r   r   r=   )r?   r  cir  r   ser2ci2r   s           r/   8test_loc_getitem_list_of_labels_categoricalindex_with_nazHTestLocListlike.test_loc_getitem_list_of_labels_categoricalindex_with_na<
  si    sC011U1XXR(((R!
vs+++SSWW
vs+++#CCGG,
fcllnn5553B3xf]83/// 	 	HSSXX	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ]83/// 	 	SNN	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ]83/// 	* 	*MMOOC))	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	*s6   D//D36D3E33E7:E7)GGGc                     t          j        g dd          }t          g dt          ddd                    }t	          j        t          d	
          5  |j        |          d d d            d S # 1 swxY w Y   d S )N)
2001-01-04z
2001-01-02rF  z
2001-01-14rx  r   )r8   rd   rw   r  z
2001-01-01r4  rc   r  r  r   )r   r   r   r   r   r   r=   r%   )r?   rU   r  s      r/   1test_loc_getitem_series_label_list_missing_valueszATestLocListlike.test_loc_getitem_series_label_list_missing_valuesX
  s    hDDDL
 
 
 ]]]J|#q$Q$Q$QRR]8>::: 	 	GCLL	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   A11A58A5c                 "   t          t          j        ddg          t          j        ddg                    }t          j        t
          d          5  |j        t          j        ddg                    d d d            d S # 1 swxY w Y   d S )Nl   PF
AHl   UBeNl   P2$$nr   r   r  r   l   NZ4FG)r   r   r   r   r   r=   r%   rM  s     r/   9test_loc_getitem_series_label_list_missing_integer_valueszITestLocListlike.test_loc_getitem_series_label_list_missing_integer_valuesa
  s    (,.?@AA-/ABCC
 
 
 ]8>::: 	E 	EGBH.0ABCCDD	E 	E 	E 	E 	E 	E 	E 	E 	E 	E 	E 	E 	E 	E 	E 	E 	E 	Es   "BBB	to_periodTFc                    t          dddd          }|r|                    d          }t          ddg|d	          }t          d          t          d          g}|rd
 |D             }|j        |         }t          ddg|d	          }|s|j                            d           |_        t          j        ||d           t          d          t          d          t          d          g}|rd |D             }t          g dt          |d|j
                  d	          }|j        |         }t          j        ||d           t          d          t          d          t          d          g}|rd |D             }t          j        t          d          5  |j        |          d d d            d S # 1 swxY w Y   d S )N
2011-01-01z
2011-01-02r4  rW  )r.  r   皙?皙?r  r   c                 8    g | ]}|                     d           S r4  rK  r   s     r/   r   zRTestLocListlike.test_loc_getitem_listlike_of_datetimelike_keys.<locals>.<listcomp>u
  $    333AKK$$333r1   T)r  c                 8    g | ]}|                     d           S rQ  rR  r   s     r/   r   zRTestLocListlike.test_loc_getitem_listlike_of_datetimelike_keys.<locals>.<listcomp>
  rS  r1   )rO  rO  rN  )r   r   
2011-01-03c                 8    g | ]}|                     d           S rQ  rR  r   s     r/   r   zRTestLocListlike.test_loc_getitem_listlike_of_datetimelike_keys.<locals>.<listcomp>
  rS  r1   r  r   )r   rK  r   r   r%   r   r2  r&   r   r   r   r   r   r=   )r?   rK  rW  r  r  r   r   s          r/   .test_loc_getitem_listlike_of_datetimelike_keysz>TestLocListlike.test_loc_getitem_listlike_of_datetimelike_keysj
  sB    |#EJJJ 	%--$$Cc3Zs555,''<)@)@A 	433d333Dc3Zs555 	3	,,T22CI
vsTBBBB l##l##l##

  	433d333DOO5E#K#K#KRU
 
 
 
vsTBBBB l##l##l##

  	433d333D]8>::: 	 	GDMM	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s    F;;F?F?c                     t          ddgddgddggg ddd	g
          }|j        d d         }d|j        _        |j        t          ddgd                   }t          j        ||           d S )NrZ   r8   rc   rd   rb   rw   )cobraviper
sidewinder	max_speedshieldr  r   rY  rZ  r   )r   r   r   r   r%   r   r&   r'   r   s       r/   test_loc_named_indexz$TestLocListlike.test_loc_named_index
  s    VaVaV$222 (+
 
 

 72A2;#w0u===>
fh/////r1   N)r   r   r   r   r   r   r   asarrayr   rD  rG  rJ  rW  r^  rn   r1   r/   r>  r>  ;
  s        [U[["*d$CDD* * ED*6  E E E [[4-88' ' 98'R
0 
0 
0 
0 
0r1   r>  z%columns, column_key, expected_columns)  r  i  r`  r  rZ   )r`  r  Allra  r8   c                     t          t          j                            dd          | t	          d                    }|j        d d |f         }|j        g d|f         }t          j        ||d           d S )Nr`   r  r   r   T)r  )	r   r   r   r5  r   r   r%   r&   r'   )r   
column_keyexpected_columnsr-   r.   r   s         r/   *test_loc_getitem_label_list_integer_labelsre  
  sw     
29>>!Q''U	L	L	LBwqqq**+HVOOOZ/0F&(dCCCCCCr1   c                     t           j                            dd          } t          |           }t           j        |j        d d df<   t          j        | t          j        t           j        gdz                                dd          f          }t          |g d          }t          j
        ||           t          |           }t           j        |j        d d df<   t          j
        ||           d S )Nrw   rc   rg  rZ   )r   rG  r   r[   rg  r   )r   r   r  r   rh  r%   hstackr   r  r&   r'   )	rand_datar   r!  r.   s       r/   test_loc_setitem_float_intindexri  
  s    	1%%Iy!!FFJqqq#vIy"(BF8a<*@*@*H*HA*N*NOPPM0I0I0IJJJH&(+++y!!FFJqqq#v&(+++++r1   c                     d dD             } t          t          j        d          t          d          t	          j        |                     }|                    d          dd	         }t          t          j        d
          t          d          t	          j        g d                    }t          j        ||           d S )Nc                      g | ]}d D ]}||fS ))rb   rw   r  r_   rn   )r   yrrr  s      r/   r   z)test_loc_axis_1_slice.<locals>.<listcomp>
  s)    BBBMBBqRGBBBBr1   )  r   )r_   rw   
ABCDEFGHIJr  rZ   r  rm  r  r   rw   rZ  )ro  )rm  r_   )r   rb   rp  )	r   r   r  r  r   r  r%   r&   r'   )r   r-   r   r.   s       r/   test_loc_axis_1_slicerq  
  s    BBlBBBD	
L!!&t,,
 
 
B
 VVV^^Ii/0F
L!!&'T'T'TUU  H
 &(+++++r1   c            
      (   t          dt          d          t          j        t          d          t          d          g                    } |                                 }|j        ddgf         |j        ddgf<   t          j        ||            d S )Nr!   r8   r  r   r  )r   r   r   r  r   r%   r&   r'   )r.   r   s     r/   !test_loc_set_dataframe_multiindexrs  
  s    588Z%<eAhha=Q%R%R  H ]]__F$jVH5FJq6({&(+++++r1   c                      t          t          d          t          ddgt                              } | j        d         }|dk    sJ d S )Nr8   rZ   r   r   r   )r   r   r   r  r%   )r  r   s     r/   test_loc_mixed_int_floatru  
  sD    
q5!S888
9
9CWQZFQ;;;;;;r1   c                      t          t          d          g d          } t          j        t          d          5  d| j        d d<   d d d            d S # 1 swxY w Y   d S )Nrc   r3  r   $Slicing a positional slice with .locr   r8   r`   )r   r   r   r   r   r%   )r  s    r/   %test_loc_with_positional_slice_raisesrx  
  s    
q!5!5!5
6
6
6C	y(N	O	O	O                   s   AAAc                     t          dd          } t          t          j                            d          |           }|d         }d}||fD ]}t	          j        t          |          5  |j        d	d          d d d            n# 1 swxY w Y   t	          j        t          d
          5  d	|j        d	d<   d d d            n# 1 swxY w Y   t	          j        t          |          5  |j        d	dd	f          d d d            n# 1 swxY w Y   t	          j        t          d
          5  d|j        d	dd	f<   d d d            d S # 1 swxY w Y   d S )Nz
2016-01-01r`   r^  )r`   r8   r   r   zOcannot do slice indexing on DatetimeIndex with these indexers \[1\] of type intr   rZ   rw  r8   )r   r   r   r   r   r   r   r%   )dtir-   r  r   rA   s        r/   #test_loc_slice_disallows_positionalr|  
  sb   
\1
-
-
-C	29##F++3	7	7	7B
Q%C	& 
 Cy  ]9C000 	 	GAaCLL	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ]9,RSSS 	 	CGAaCL	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 
y	,	,	,  
qsAv               
y(N	O	O	O  qsAv                 sH   +BB	B	-CC
	C
	-DDD1EEEc            	         t          t          j                            dd          g dt	          ddd                    } | j        g d                                         } | j        }t          j	        |j
                  }d	}t          j        t          |
          5  | j        |          d d d            n# 1 swxY w Y   t          j        t          |
          5  | d         j        |          d d d            d S # 1 swxY w Y   d S )Nrd   r`   r   2012r  r  r   )r   r8   r8   r`   z/None of \[TimedeltaIndex.* are in the \[index\]r   r!   )r   r   r   r  r   r   r   r   r   TimedeltaIndexasi8r   r   r=   r%   )r-   r{  rn  r   s       r/   'test_loc_datetimelike_mismatched_dtypesr    s    

	1c1555
 
 
B 
		#	#	%	%B
(C

CH
%
%C
<C	xs	+	+	+  
s               
xs	+	+	+  
3C                 s$   !B;;B?B?!DD	Dc                  J   t          j        ddd          } t          t          j                            dd          |           }t          j        ||j        |                     t          j        ||j        t          |                               t          j        ||j        t          |                               t          j        |j
        dd	         |j        | dd	                             t          j        ||j        t          |                               d S )
Nz2002-01z2003-12rp  r-  r  r_   r   r   rd   )r   r  r   r   r   r  r&   r'   r%   r   r   )rW  r-   s     r/   "test_loc_with_period_index_indexerr    s    
/)YS
9
9
9C	29??2r**#	6	6	6B"bfSk***"bfT#YY/000"bfT#YY/000"'!A#,s1Q3x(8999"bfT#YY/00000r1   c                  R   t           j                            dd          } t          dd          }g d}t	          | ||          }t           j        |j        |j        d         df<   t           j        | d         d	d
<   t	          | ||          }t          j	        ||           d S )Nrw   ra   r+  rz  )r$   r   r   r4  EFr  rZ   r   r   r8   )
r   r   r  r   r   rh  r%   r   r&   r'   )r  rW  r   r   r   s        r/   %test_loc_setitem_multiindex_timestampr  (  s    9??1a  D
Z
+
+
+C)))D
DT
2
2
2C(*CGCIaL*$%6DGAaCL
DT
2
2
2C#s#####r1   c                     g d} ddg}ddg}t          j        | ||gg d          }t          dt          d	          |
          }|j        d d | d         |d         |d         ff         }|j        d d d df         }t          j        ||           |                    | d         |d         |d         fg dd          }t          j        ||           |j        d         }|j        d d         }	|                    | d         |d         |d         fg dd          }
t          j	        |
|	           |j        | d         |d         |d         f         }|dk    sJ d S )Nr   r  )rZ   r   r   rZ   )r   rN  r  rY  ra   rd   r  rY   )r  r  )
r   r  r   r   r%   r   r&   r'   xsr   )r<  r=  lev3r   r-   r   r.   altr  	expected2alt2r  s               r/   'test_loc_getitem_multiindex_tuple_levelr  4  s|   ??DFDq6D"D$#5___MMMD	1E!HHd	3	3	3B VAAAQa$q'223F wqqq"1"u~H&(+++
%%a$q'47+9991%
E
EC#x((( '!*C!I6647DGT!W-YYYQ6GGD4+++gd1gtAwQ/0Ga<<<<<<r1   c            
         t          t          j        g dg dddt          j        t          j        gg          j        g dd          } |                     d          }|j        j        dk    sJ |j        d         }t          dd	g|j
        dd
          }t          j        ||           |j                            t                    |_        |j        d         }t          j        ||           d S )Nr  )rd   ra   rb   rw   rZ   r8   r   r  )r   r   r   rE   rd   r  )r   r   r   rh  Tr   r   r   r%   r   r   r&   r   r   r  )r-   r   r   r.   s       r/   /test_loc_getitem_nullable_index_with_duplicatesr  R  s    	X|||\\\Aq"&"&3IJKKM
 
 
B
 ,,s

C9?g%%%%
'!*Cq!fCKwQGGGH3))) 	  ((CI
'!*C3)))))r1   r  r   c                     t          g ddgd          }| |j        d<   t          g ddgd          }t          j        ||           d S )Nr  r}   uint8r  )r8   r}   )rZ   r8   r   rc   uint16r  )r  r-   r.   s      r/   test_loc_setitem_uint8_upcastr  f  s]     
<<<&	A	A	ABBF9&JJJH"h'''''r1   zfill_val,exp_dtypez
2022-01-06zdatetime64[ns]z
2022-01-07
US/Easternrl  zdatetime64[ns, US/Eastern]c                 &   ddd|                                  g}t          || j        |          }t          g ddg|          }d|j        d	<   |                    d
           t          ||          }t          j        |j        |d           d S )Nz
2022-01-02z
2022-01-03z
2022-01-04)r  r   )r_   r  r  r  r!   r   r"  )
2022-01-08r!   r  r   T)exact)	r   r   r  r   r%   ro  r&   r  r   )fill_val	exp_dtyper   r   r-   expected_indexs         r/   0test_loc_setitem_using_datetimelike_str_as_indexr  q  s     ,hmmooFD$8;i@@@E	###cU%	@	@	@B "BFKK"4y999N"(N$??????r1   c                      t          t          d          g          } d| j        d d df<   t          dgdgdgdgd          }t          j        | |           d S )Nabcrd   r}   r!   r    rE   )r   rZ   r8   r}   )r   r   r%   r&   r'   )r-   r.   s     r/   test_loc_set_int_dtyper    se    	DKK=	!	!BBF111f9cUu#DDEEH"h'''''r1   c                      t          g ddd          } t          g dg dg dg dg| g d	
          }|                    ddgd          d         }|j        | d         ddf         dk    sJ d S )N)z20181101 1100z20181101 1200z20181102 1300z20181102 1400r   r   )r   r.  )r$   r   rG  )r$   r   r   )r  Qr[   )Wr  r  )ONETWOVALUESr  r  r  T)ro  r  r   r$   rG  )r   r   r   r%   )p_index	mi_seriess     r/   test_loc_periodindex_3_levelsr    s    LLL  G
 	///???OOOL(((  I
 ##UEN4#@@JI='!*c3/0C777777r1   c                   .   e Zd Zej                            dddg          d             Zd Zd Zd Z	d Z
d	 Zd
 Zd Zd Zd Zej                            dej        ej        eeg          ej                            dg d          d                         Zej                            dedddf         d ed          fg          d             Zd Zej                            dddg          d             Zej        d             Zd Zd ZdS )TestLocSeriesra  )rb  r`   )rc  rc   c                 P    t          ddd          }|j        |         |k    sJ d S )Nr`   rc   )rb  rc  )r   r%   )r?   r<  r.   r  s       r/   r	  zTestLocSeries.test_loc_uint64  s6     1--..ws|x''''''r1   c                 Z   |j         g d         }t          j        |j        |         |                    |                     t          j        |j        dd d         |dd d                    |j         ddg         \  }}|j        ||         }|                    ||          }t          j        ||           ||                                k    }t          j        |j        |         ||                    |j        |         ||         k    sJ |j        |         ||         k    sJ d S )Nr`   rc   rb   rd   r8      )r   r&   r   r%   r  r   truncatemedian)	r?   string_seriesdatetime_seriesindsd1d2r   r.   r0  s	            r/   test_loc_getitemzTestLocSeries.test_loc_getitem  s4   "999-
}068M8Md8S8STTT
}1!$Q$7qt!t9LMMM !&2w/B $RU+"++B33
vx000 }33555
}06d8KLLL "2&/"*====="2&/"*=======r1   c                 X   |j         ddg         \  }}|d d d         g d         }d}t          j        t          |          5  |j        ||          d d d            n# 1 swxY w Y   t          j        t          |          5  d|j        ||<   d d d            d S # 1 swxY w Y   d S )Nrd   r  r8   )rZ   r8   r   z"Timestamp\('2000-01-10 00:00:00'\)r   r   )r   r   r   r=   r%   )r?   r  r  r  ts2r   s         r/   test_loc_getitem_not_monotonicz,TestLocSeries.test_loc_getitem_not_monotonic  s6    &2w/Bccc"999-3]83/// 	 	GBrENN	 	 	 	 	 	 	 	 	 	 	 	 	 	 	]83/// 	 	CGBrEN	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s$   AA#&A#BB#&B#c           
         t          t          j                            d          t	          t          ddd                              }|                                }d|j        dd<   |j        dd         dk                                    sJ |                                }d|j        dd<   |j        dd         dk    j	                                        sJ |j        dd	         }|j
        dd         }|                    g d
          }t          j        ||           t          j        ||           |j        t	          t          d                    t	          t          ddd                    z            }t          j        t           d          5  |j
        dd          d d d            n# 1 swxY w Y   t          j        t           d          5  d|j
        dd<   d d d            d S # 1 swxY w Y   d S )Nr_   r   rN   r8   r   rc   r`   r  ra   )rc   ra   rw   r_   rd   r  r  z^3$r   )r   r   r   r  r   r   r   r   r6  r   r%   r  r&   r   r   r   r=   )r?   r  cpr   r  r.   s2s          r/   0test_loc_getitem_setitem_integer_slice_keyerrorsz>TestLocSeries.test_loc_getitem_setitem_integer_slice_keyerrors  sL   RY__R((U1b!__0E0EFFF XXZZ"""''))))) XXZZ"""*..00000!A#'!B$-;;}}}--
vx000
w111 Xd588nntE!QOO'<'<<=]86222 	 	F1R4LL	 	 	 	 	 	 	 	 	 	 	 	 	 	 	]86222 	 	BF1R4L	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s$   F::F>F> G::G>G>c                     t          |j        d d                   }|j        |         }t          j        ||d d                    d S )Nr_   )r  r   r%   r&   r   )r?   r  rW  r   s       r/   test_loc_getitem_iteratorz'TestLocSeries.test_loc_getitem_iterator  sJ    =&ss+,,"3'
v}SbS'9:::::r1   c                     ||                                 k    }|                                }d|j        |<   |}d||<   t          j        ||           d S )Nr   )r  r   r%   r&   r   )r?   r  r0  r   r.   s        r/   test_loc_setitem_booleanz&TestLocSeries.test_loc_setitem_boolean  s\    }33555##%%
4 
vx00000r1   c                     t          |j        g d                   }d|j        |<   d}t          j        t
          |          5  d|j        |dgz   <   d d d            d S # 1 swxY w Y   d S )N)rd   rw   r  rd   z\['foo'\] not in indexr   r   )r   r   r%   r   r   r=   )r?   r  r  r   s       r/   test_loc_setitem_cornerz%TestLocSeries.test_loc_setitem_corner  s    M'


344"#$']83/// 	2 	201MdeWn-	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2s   A  A$'A$c                    |j         g d         }|                                }|                                }d||<   d|j        |<   t          j        ||           |                                }|                                }d||d         |d         <   d|j        |d         |d         <   t          j        ||           d S )N)rd   r_   r  r   r8   )r   r   r%   r&   r   )r?   r  indicesr  r   s        r/   test_basic_setitem_with_labelsz,TestLocSeries.test_basic_setitem_with_labels  s    !'4!!##""$$7
r3'''!!##""$$&'71:
"#+,
WQZ'(
r3'''''r1   c           
         t          t          j                            d          t	          t          ddd                              }g d}t          j        g d          }|                                }|                                }d||<   d|j        |<   t          j
        ||           |                                }|                                }d||<   d|j        |<   t          j
        ||           g d}t          j        g d          }d}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 S # 1 swxY w Y   d S )
Nr_   r   rN   r8   r   )r   rc   ra   r   rc   rd   ra   z\[5\] not in indexr   )r   r   r   r  r   r   r   r   r%   r&   r   r   r   r=   	Exception)	r?   r  r  arr_indsr  r   inds_notfoundarr_inds_notfoundr   s	            r/   !test_loc_setitem_listlike_of_intsz/TestLocSeries.test_loc_setitem_listlike_of_ints  s   RY__R((U1b!__0E0EFFFyy8III&&XXZZhhjjD	
r3'''XXZZhhjjH
r3'''$H\\\22#]83/// 	# 	#!"C	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	#]9C000 	' 	'%&C!"	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	's$   4EE
E
,E??FFc                    t          t          ddd          g d          }|                                }t          dd          }||j        d	<   |j        d	         }||k    sJ |                                }||j        d
<   |j        d
         }||k    sJ |                                }||d	<   |d	         }||k    sJ d S )NrM  r`   r  r&  r   r   rU  rl  r!   r   )r   r   r   r   r%   r   )r?   r  r  r.   r   s        r/   test_loc_setitem_dt64tz_valuesz,TestLocSeries.test_loc_setitem_dt64tz_values  s    |Q<@@@!//
 
 
 XXZZ\l;;;s!!!!XXZZ
!!!!XXZZ3C!!!!!!r1   array_fnr$  r  c                     |dg|z            }t          |ddddgt          d          t                    }t          dt          d          t                    }||j        d<   t	          j        ||           t          dt          d          t                    }||j        d<   t	          j        ||           d S )Nr   abcder@  r!   )r   r   r  r%   r&   r   r   )r?   r$  r  r  r.   r  s         r/   #test_loc_iloc_setitem_with_listlikez1TestLocSeries.test_loc_iloc_setitem_with_listlike1  s     hsTz""31a+4==OOOQd7mm6:::
sH---Qd7mm6:::
sH-----r1   r   r$   Nc                 d   t          t          j        g d          g d          }d}t          j        t
          |          5  |j        |d d f          d d d            n# 1 swxY w Y   t          j        t
          |          5  d|j        |d d f<   d d d            d S # 1 swxY w Y   d S )N))r$   0)r$   1)r   r  )   r-  r5  rI  r  r   rZ   )r   r   r  r   r   r	   r%   )r?   r   r  r   s       r/   +test_loc_series_getitem_too_many_dimensionsz9TestLocSeries.test_loc_series_getitem_too_many_dimensionsC  sI    ()M)M)MNN
 
 
 "]=444 	  	 GGQQQJ	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  ]=444 	$ 	$"#CGGQQQJ	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$s$   A##A'*A'	B%%B),B)c                    |j         g d         }|                                }d|j        |<   |                                }d|g d<   t          j        ||           d|j        dd<   d|dd<   t          j        ||           |j         ddg         \  }}d|j        ||<   d|dd<   t          j        ||           d|j        |<   d|j        |<   ||         dk    sJ ||         dk    sJ d S )Nr  rd   r_   r  ra   rY  rc   )r   r   r%   r&   r   r   )r?   r  r  r   r.   r  r  s          r/   test_loc_setitemzTestLocSeries.test_loc_setitemQ  s'   "999-##%%
4 %%''
vx000AbD2
vx000 $aW-B
2b52
vx000 !"" !"R A%%%%R A%%%%%%r1   r   r  rK  c                     t          ddgddgd|          }ddd|j        d	d d f<   t          ddgddgd|          }t          j        ||           d S )
Nr  defghijklr   r   newAnewBr   r  )r?   r   r-   r.   s       r/   test_loc_assign_dict_to_rowz)TestLocSeries.test_loc_assign_dict_to_rowk  s}     eU^5%.AAOOO#&11q!!!tFE?&%IIQVWWW
b(+++++r1   c                    t          ddg          }t          dd          dd|j        d	<   t          dd          dd|j        d	<   t          t          dd          dggddgd	g
          }t          j        ||           d S )Nr   r  r   ra   r  rl  r   )r   r  rZ   r   )r   r   r%   r&   r'   r  s      r/   ,test_loc_setitem_dict_timedelta_multiple_setz:TestLocSeries.test_loc_setitem_dict_timedelta_multiple_setu  s     FG#4555!*13!7!7!7%HH
1!*13!7!7!7%HH
1$$$e,-7HQRPS
 
 
 	fh/////r1   c                     t          ddgdg          }ddg|j        dddgf<   t          t          t          j        t          j        gd	
          dt          j        gdt          j        gdddg          }t          j        ||           d S )NrZ   r8   r!   r  ra   rb   r    rE   r  r   r   r   )r   r%   r   r   rh  r&   r'   r   s      r/   3test_loc_set_multiple_items_in_multiple_new_columnszATestLocSeries.test_loc_set_multiple_items_in_multiple_new_columns  s    aVcU333!"Aq3*}RVRV,H===[[ 
 a&
 
 
 	b(+++++r1   c                     t          j        ddd          }t          t          d          |          }|j        d         dk    sJ d S )N2000rN   r   r\  r   z
2000-01-14r  )r   r  r   r   r%   )r?   r   r*   s      r/    test_getitem_loc_str_periodindexz.TestLocSeries.test_getitem_loc_str_periodindex  sN    fbsCCCb		///z,'1,,,,,,r1   ) r   r   r   r   r   r   r	  r  r  r  r  r  r  r  r  r  r   r   r   r   r  r  r   r   r  r  r  r  r<  r  r  r  rn   r1   r/   r  r    s       [^nj-IJJ( ( KJ(
> > >&	 	 	  6; ; ;
1 1 12 2 2( ( (' ' '4" " ", [Z"(BHdE)JKK[V\\\22. . 32 LK.  [YCF);c55;;=O(PQQ$ $ RQ$& & &4 [Wx&:;;, , <;, '0 0 ('0, , , - - - - -r1   r  )S__doc__collectionsr   r   r   r   r   r  dateutil.tzr   numpyr   r   pandas.errorsr	   pandas.util._test_decoratorsutil_test_decoratorsr  pandasr   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   pandas._testing_testingr&   pandas.api.typesr   r   pandas.core.indexingr   pandas.tests.indexing.commonr   r   r   rh  r0   r3   r   r  r  rH  r  r  r  r  r  r>  re  ri  rq  rs  ru  rx  r|  r  r  r  r  r  r  int16r  r  r  r  r  rn   r1   r/   <module>r     s   * * " " " " " "            
			            ' ' ' ' ' ' ) ) ) ) ) ) ) ) )                                           (              7 6 6 6 6 6 K K K K K K &
&"&#	bfbf 57J7J7JK
&#bft}5 1 1 1u u u u u u u upf' f' f' f' f' f' f' f'R+9( 9( 9( 9( 9( 9( 9( 9(xs: s: s: s: s: s: s: s:l* * * * * * * *D|( |( |( |( |( |( |( |(~G* G* G* G* G* G* G* G*T7 7 7 7 7 7 7 7D               :{, {, {, {, {, {, {, {,|c0 c0 c0 c0 c0 c0 c0 c0L +			dD\Aq62			tTlQF3			tUmaV4 D D D, , ,, , ,", , ,      8  ,1 1 1	$ 	$ 	$  <* * *( 3		#"FGG( ( HG( 	<	 	 "23	<L	1	1	13OP 	@ 	@ 	@( ( (8 8 8 w- w- w- w- w- w- w- w- w- w-r1   