403Webshell
Server IP : 209.209.40.120  /  Your IP : 216.73.217.112
Web Server : Microsoft-IIS/10.0
System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586
User : NEWWWW$ ( 0)
PHP Version : 8.3.30
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  C:/Python312/Lib/site-packages/pandas/tests/indexing/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/Python312/Lib/site-packages/pandas/tests/indexing/__pycache__/test_loc.cpython-312.pyc
�

0	�g:��	�4�dZddlmZddlmZmZmZmZddlZddlm	Z	ddl
ZddlZddl
mZddlmZddlmZdd	lmZddlmcmZddlZdd
lmZmZmZmZm 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-ddl.m/Z0ddl1m2Z2ddl3m4Z4dd
l5m6Z6ejnjqdejrejrdgdejrejrggd�gejrdgdejrgddggg�d��Z:Gd�d�Z;Gd�d�Z<Gd�d�Z=Gd�d�Z>Gd�d�Z?Gd�d �Z@Gd!�d"�ZAGd#�d$�ZBGd%�d&�ZCGd'�d(�ZDGd)�d*�ZEejnjqd+gd,�d-d.gdd/gfgd0�d-d.gdd/gfgd0�d-d1gdd2gfg�d3��ZFd4�ZGd5�ZHd6�ZId7�ZJd8�ZKd9�ZLd:�ZMd;�ZNd<�ZOd=�ZPd>�ZQejnjqd?d@ej�d@�ej�d@�g�dA��ZTejnjqdBe)dC�dDfe)dEdF�G�dHfg�dI��ZUdJ�ZVejnj�dK�ejnj�dL�dM���ZXdN�ZYGdO�dP�ZZy)Qz$ test label based indexing with loc �)�
namedtuple)�date�datetime�time�	timedeltaN)�gettz)�using_pyarrow_string_dtype��index)�np_version_gt2)�
IndexingError)�Categorical�CategoricalDtype�CategoricalIndex�	DataFrame�
DatetimeIndex�Index�
IndexSlice�
MultiIndex�Period�PeriodIndex�Series�SparseDtype�	Timedelta�	Timestamp�
date_range�timedelta_range�to_datetime�to_timedelta)�	is_scalar)�_one_ellipsis_message)�"check_indexing_smoketest_or_raisesz series, new_series, expected_ser�b�a)FTTFTc���td|i�}||jdd�df<td|i�}tj|j	�|�tj|j�|�y�N�A)r�loc�tm�assert_frame_equal�isna�notna)�series�
new_series�expected_ser�df�expecteds     �@C:\Python312\Lib\site-packages\pandas/tests/indexing/test_loc.py�test_not_change_nan_locr31s`��
�C��=�	!�B��B�F�F�1�c�6�N��#�|�,�-�H����"�'�'�)�X�.����"�(�(�*�x�i�0�c��eZdZd�Zej
j
dddg�d��Zej
j
dddg�d��Zej
j
ddgd	�d
gddgd
gdgd
�d
gddgd
gddgdgddgdgg�ej
j
dddg�d���Z	ej
j
dgd�gd�ggd�gd�gg�ej
j
dddg�d���Z
ej
j
dgd�dgd
ggd�gd�dggd�gd�dggd�dgdgg�ej
j
dddg�d���Zej
j
ddd g�ej
j
dddg�d!���Zd"�Z
ej
j
dddg�d#��Zej
j
d$edd%�gd&�d
eged'd(�dgdeged)d*�d+gdeged)d*�d+gdeged)d,d)�d+gdegg�ej
j
dddg�d-���Zd.�Zd/�Zej
j
d0edgged1g��2�ed
d
�d1fedgd1�3�fedged1g��4�d1dgfedgged1g��4�d1edgd1�3�fg�d5��Zy
)6�TestLocc�H�tgd�dgd��}|jd�J�y)N)�1�2Nr$�str��columns�dtype)�r$)rr(��selfr0s  r2�"test_none_values_on_string_columnsz*TestLoc.test_none_values_on_string_columnsBs'��
�'�#��e�
D���v�v�f�~�%�%�%r4�kindr-�framec�R�|j|�d��}t|ddt��y)N�_labelsr(r>��fails��getfixturevaluer"�KeyError�r@rB�request�objs    r2�test_loc_getitem_intzTestLoc.test_loc_getitem_intHs)���%�%���g�&6�7��*�3��q��Ir4c�R�|j|�d��}t|ddt��y)N�_emptyr(�crFrHrKs    r2�test_loc_getitem_labelzTestLoc.test_loc_getitem_labelNs(���%�%���f�o�6��*�3��s�(�Kr4zkey, typs, axes�f)�ints�uints�labels�mixed�tsN�floats�)rTrUrWrVrXrc�f�|D],}|j|�d|���}t|d||t���.y�N�_r(��axesrGrH�r@�key�typsr_rBrL�typrMs        r2�#test_loc_getitem_label_out_of_rangez+TestLoc.test_loc_getitem_label_out_of_rangeTs@���	�C��)�)�T�F�!�C�5�/�:�C�.��U�C�d�(�
�	r4z	key, typs�r�r>)rTrUrY)rf�@r'c�d�|D]+}|j|�d|���}t|d|t���-y)Nr]r(rFrH)r@rarbrBrLrcrMs       r2�test_loc_getitem_label_listz#TestLoc.test_loc_getitem_label_lisths=���	P�C��)�)�T�F�!�C�5�/�:�C�.�s�E�3�h�O�	Pr4�empty)rr>�
)���rf))rfrl)rf�)r>��multic�f�|D],}|j|�d|���}t|d||t���.yr\rHr`s        r2�(test_loc_getitem_label_list_with_missingz0TestLoc.test_loc_getitem_label_list_with_missingvs@���	�C��)�)�T�F�!�C�5�/�:�C�.��U�C�d�(�
�	r4rbrTrUc�\�|j|�d|���}t|dgd�dt��y)Nr]r()rZ��(rfr^rH)r@rbrBrLrMs     r2�!test_loc_getitem_label_list_failsz)TestLoc.test_loc_getitem_label_list_fails�s2���%�%���a��v�&6�7��*����1�H�	
r4c��y�N��r@s r2�!test_loc_getitem_label_array_likez)TestLoc.test_loc_getitem_label_array_like�s��	
r4c�Z�|j|�d��}gd�}t|d|t��y)NrP�TFTFr(rF)rIr"�
IndexError)r@rBrLrMr#s     r2�test_loc_getitem_boolzTestLoc.test_loc_getitem_bool�s+���%�%���f�o�6��&��*�3��q�
�Kr4zslc, typs, axes, failsrl)rVrWrjrXrY�20130102�20130104r>�rWroc�^�|D](}|j|�d|���}t|d|||���*yr\)rIr")	r@�slcrbr_rGrBrLrcrMs	         r2�test_loc_getitem_label_slicez$TestLoc.test_loc_getitem_label_slice�sD��,�	�C��)�)�T�F�!�C�5�/�:�C�.������
�	r4c���tddgddgddggddggd���}tjd�|jd	<tddgd
dgddggddggd���}t	j
||�y)NrZr$���col1�col2)rkrfrf�r<rr>)rfr�rrf)r�np�aranger(r)r*�r@r0r1s   r2� test_setitem_from_duplicate_axisz(TestLoc.test_setitem_from_duplicate_axis�s���
��#�Y��c�
�S�#�J�/��V�$��
��
�I�I�a�L����y����#�Y��C��1�c�(�+�f�f�5E�Z�
��	���b�(�+r4c	��tgd�dtjdgtd�tj
td�gd���}tdgtd�gd	���}|j|j|d
j�d
dgf<tgd�gd�td�td�td�gd���}tj||�y)
N�rfr>rl�String 1�String 2z2019-06-11 11:00:00z2019-06-11 12:00:00)�channelr'�B)�data�String 3�r'r�r'r�)r�r�r�)rr��nanr�pd�NaT�valuesr(r+r)r*)r@r0�df2r1s    r2�test_column_types_consistentz$TestLoc.test_column_types_consistent�s���
�$� �"�&�&�*�5��3�4��F�F��3�4���

���"�|�9�5J�+K�*L�M�
��.1�Z�Z����r�#�w�|�|�~��S�z�)�*��$�9��3�4��3�4��3�4���

��	���b�(�+r4z
obj, key, expF�r<��namer
c��|j|}t|ttf�rt	j
||�y||k(sJ�yry)r(�
isinstancerrr)�assert_equal)r@rMra�exp�ress     r2�#test_loc_getitem_single_boolean_argz+TestLoc.test_loc_getitem_single_boolean_arg�s:���g�g�c�l���c�I�v�.�/��O�O�C��%��#�:��:r4)�__name__�
__module__�__qualname__rA�pytest�mark�parametrizerNrRrdrirsrwr|r��slice�	TypeErrorrJr�r�r�rrrrr�rzr4r2r6r6As���&��[�[���V�h��%8�9�J�:�J�
�[�[���V�h��%8�9�L�:�L�
�[�[����
�<�d�C�
�8�*�d�#�
�+�T�2�
�(��T�"�
�$���O�
�(��Q��
	
�
��[�[���V�h��%8�9��:�
���[�[����
�3�4�
�7�8�	
���[�[���V�h��%8�9�P�:��P��[�[����
��	�4�(�
�4�a�8�
�3�Q�7�
%��y�!�4�	
�	��[�[���V�h��%8�9��:�	���[�[���V�f�g�%6�7��[�[���V�h��%8�9�
�:�8�
�
�
�[�[���V�h��%8�9�L�:�L��[�[��� ��a���<���	
��:�z�
*�T�F�A�y�A�
�1�a�[�7�)�Q�	�2�
�1�a�[�7�)�Q��1�
�1�a��^�g�Y��9�5�	
���[�[���V�h��%8�9��:�� � ,�,�>�[�[�����A�3�%���w��8��1�e�8�$���s��'�
�
�Q�C�u�e�W�~�
.���s�;�
���u�E�5�'�N�
3�U�F�A�3�U�<S�T�	
����r4r6c��eZdZd�Zej
j
dded�ddffded�ddffd	ed�dd
ffded�ed
�dffded�ddffded�ded�ffded�d
dffg�d��Zd�Z	d�Z
d�Zd�Zd�Z
d�Zd�Zej
j
dddggd�g�d��Zd �Zd!�Zd"�Zd#�Zd$�Zd%�Zd&�Zej0d'��Zej
j
d(d)ej6d)ej8�*�ej6gd+�ej8�*�g�d,��Zd-�Zd.�Zd/�Z d0�Z!d1�Z"ej
j
d2gd3��d4��Z#d5�Z$d6�Z%d7�Z&d8�Z'd9�Z(d:�Z)d;�Z*d<�Z+ej
jYd=�d>��Z-ej
j
d?d@ge.dAd@dA�ej6d@g�g�ej
j
dBdCgej6dCg�g�dD���Z/ej
j
dEd)dFggdG�fdHe0gdI�dJdKejbejbggdI�ggdG��L�fdMdNdOgfdHdPge0dMdFejbejbggdQ�dRdSejbejbgggdG��L�fdMgdT�fej6gdU�ej8�*�e0dMdFejbggdU�dRdSejbgggdT��L�fe.dMdJdA�gdV�fgdU�gdW�ge0dMdFejbejbggdX�gdY�ggdG��L�fe.dMdJdA�gdZ�fej6gdU�gdW�gej8�*�e0dMdFejbejbggd[�gd\�ggdG��L�fe.dAdAdA�d@dNgfe0dHdPgd]d^gd_d`ggd@dNg�L�e0gda�gdb�gdc�ggdT��L�fg�dd��Z2de�Z3df�Z4dg�Z5dh�Z6di�Z7ej
jpej
j
djdkdlgdmdngg�do���Z9dp�Z:dq�Z;dr�Z<ds�Z=dt�Z>du�Z?dv�Z@dw�ZAdx�ZBdy�ZCdz�ZDd{�ZEd|�ZFej
j�eH�d}�~�d��ZId��ZJej
j
d�gd���ej
j
d�ej8ej�eLg�d����ZMd��ZNd��ZOd��ZPej
j
d?d�d�g�d���ZQej
j
d�eRej6eSeTg�d���ZUd��ZVej
j
d�d�eSdMg�fd�eSdFg�fg�d���ZWd��ZXej
j
d�d)gd��fe.dKdP�gd��fdJdRggd��fg�d���ZYd��ZZd��Z[d��Z\ej
j
d�d�d�gg�d���Z]d��Z^ej
j
d�d@d@gd@e.dA�fg�d���Z_d��Z`d��Zad��Zbd��Zcd��Zdej
j
d�d�d�g�d���Zed��Zfd��Zgd��Zhd��Zid��Zjd��ZkyA)��TestLocBaseIndependentc���ttdd���}|jtjdg�dd}|j
dd}t
j||�y)N�2021�2022r
z2021/6/1r�)rrr(r��array�ilocr)r*�r@r0�resultr1s    r2�test_loc_npstrz%TestLocBaseIndependent.test_loc_npstrsS��
�Z���7�
8��������*��.�q�1�3�4���7�7�3�4�=��
���f�h�/r4zmsg, keyz'Period\('2019', 'Y-DEC'\), 'foo', 'bar'���foo�barz&Period\('2019', 'Y-DEC'\), 'y1', 'bar'�y1z&Period\('2019', 'Y-DEC'\), 'foo', 'z1'�z1z;Period\('2018', 'Y-DEC'\), Period\('2016', 'Y-DEC'\), 'bar'����z&Period\('2018', 'Y-DEC'\), 'foo', 'y1'z;Period\('2017', 'Y-DEC'\), 'foo', Period\('2015', 'Y-DEC'\)����z&Period\('2017', 'Y-DEC'\), 'z1', 'bar'c	�:�ttd�ddgtd�td�dgtd�dtd	�ggd
�gd�d��jgd
��}tjt
|��5|j|ddd�y#1swYyxYw)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��rkrZru)r'r��C�V1�V2�r'r�r���matchN)rr�	set_indexr��raisesrJr()r@�msgrar0s    r2�;test_contains_raise_error_if_period_index_is_in_multi_indexzRTestLocBaseIndependent.test_contains_raise_error_if_period_index_is_in_multi_indexs���6��T�l�D�$�/��T�l�F�4�L�$�7��T�l�D�&��,�7��"�
�
��)�O�
$�	��]�]�8�3�
/�	��F�F�3�K�	�	�	�s�8B�Bc��tddgi�}tjtd��5|jdd�dfddd�y#1swYyxYw)Nr$rfuאr�)rr�r�rJr(r?s  r2�$test_loc_getitem_missing_unicode_keyz;TestLocBaseIndependent.test_loc_getitem_missing_unicode_key/sE��
��a�S�z�
"��
�]�]�8�8�
4�	 ��F�F�1�h�;��	 �	 �	 �s�A�Ac	�D�ttjjd�jd�t	d�D�cgc]
}d|dz��c}��}|j
d}|j
dd�dfj
d	}t
j||�ycc}w)
Nr>)rZrprZ�ABCDErpr
)r'rrr')rr��random�default_rng�ranger(r)�assert_series_equal)r@�xr0r1r�s     r2�test_loc_getitem_dupsz,TestLocBaseIndependent.test_loc_getitem_dups4s�����I�I�!�!�!�$�+�+�G�4�+0��9�5�a�7�1�q�5�>�5�
���6�6�&�>������1���!�!�#�&��
���v�x�0��	6s�B
c	��tddddtd�gggd�dg��}tddddtd�ggd�d��}|jd	}t	j
||�|jd}t	j
||�y)
Nrfr>r�r��20130101�r$r$r$r$r$r��rr�r)rrrr�r)r�r(�r@r0r1r�s    r2�test_loc_getitem_dups2z-TestLocBaseIndependent.test_loc_getitem_dups2?s������E�5�)�J�"7�
8�9�-��#�
��
�
��5�%��:�!6�7�+��
��������
���v�x�0�������
���v�x�0r4c	���ttd�td�tjdd��dzdztjdd��dzdzd	��j	d
�}ddd
gf}|j�}|j|xxdzcc<tj|j|d|j|z�d}|j�}|j|xxdzcc<|j|d|j|zk(sJ�ddd
gf}|j�}|j|xxdzcc<tj|j|d|j|z�y)N�rttti�aaaderp�float64�r=gq=
ףp�?r>g�(\��տ)�mer�r��bar2r��rr�r��@)r�r��t)
r�listr�r�r��copyr(r)r�r*)r@�df_orig�indexerr0s    r2�test_loc_setitem_dupsz,TestLocBaseIndependent.test_loc_setitem_dupsSsW����7�m��G�}��y�y��)�4�t�;�a�?��	�	�!�9�5��=��A�	
�
��)�D�/�	�
�
�F�O�
���\�\�^��
���w��3���
���r�v�v�g���g�k�k�'�6J�0J�K�
���\�\�^��
���w��3����v�v�g��#����G�(<�"<�<�<�<�
�
�F�O�
���\�\�^��
���w��3���
���b�f�f�W�o�s�W�[�[��5I�/I�Jr4c�.�tgd�tgd�d��d��}|ddk(}|j|dfdz}||j|df<tgd�tgd	�d��d��}tj||�tgd�gd�d�d
��}|ddk(}|j|df}tj
td��5||j|df<ddd�tgd�gd�d�d
��}tj||�y#1swY�4xYw)
N)rrfrf)�dr��,�uint32r��r$r#r$rfr#)r���i-�uint64�item of incompatible dtyper�)rrr(r)r*�assert_produces_warning�
FutureWarning)r@�df1�ix�newb1r1r��newb2s       r2�test_loc_setitem_slicez-TestLocBaseIndependent.test_loc_setitem_slicevs
���i�f�_�H�.U�V�W��
��X��]������C�� �1�$�� �����C�����&���"I�J�
��	���c�8�,��i�o�>�h�O��
��X��]������C�� ��
�
'�
'��!=�
�	%� %�C�G�G�B��G��	%��9�?�C�8�T��
���c�8�,�	%�	%�s�D�Dc	�l�tdgdgdgdgd��}gd�}|jdd�|fjd�|jdd�|f<tdgtjdgd�	�tjdgd�	�tjdgd�	�d��}tj||�y)
Nr'�333333�?�g�)�idr$r#rQ�r$r#rQ�float32r�r�)rr(�astyper�r�r)r*)r@r0�colsr1s    r2�test_loc_setitem_dtypez-TestLocBaseIndependent.test_loc_setitem_dtype�s���
�s�e�3�%�s�e�4�&�I�
J�����&�&��D��/�0�0��;����q�$�w����e��X�X�s�e�9�5��X�X�s�e�9�5��X�X�t�f�I�6�	
�
��	���b�(�+r4c�8�ttd�gd���}tjtd��5|ddgddd�ttd��}tjtd��5|ddgddd�y#1swY�IxYw#1swYyxYw)	Nrlrr
�not in indexr�r$�dr)rr�r�r�rJ)r@�ss  r2�$test_getitem_label_list_with_missingz;TestLocBaseIndependent.test_getitem_label_list_with_missing�s����5��8�?�3���]�]�8�>�
:�	�
�s�C�j�M�	�
�5��8���
�]�]�8�>�
:�	�
�q�!�f�I�	�	�		�	��	�	�s�B�3B�B
�BrTFr~c���tgd��}dt|��dt|���}tjt|��5|j
|ddd�y#1swYyxYw)Nr�z Boolean index has wrong length: z instead of r�)r�lenr�r�rr()r@rrr�s    r2�test_loc_getitem_bool_diff_lenz5TestLocBaseIndependent.test_loc_getitem_bool_diff_len�sV��
�9���0��U���L��Q���Q��
�]�]�:�S�
1�	�
�E�E�%�L�	�	�	�s�A�A%c��yryrzr{s r2�test_loc_getitem_int_slicez1TestLocBaseIndependent.test_loc_getitem_int_slice�s��r4c�D�ttjjd�jd�gd�gd���}dtjt
��d�}t
jt|��5|jd	dgd	dgfddd�y#1swYyxYw)
Nr>�rlrlr)�erS�g�rr<z$\"None of \[Index\(\[1, 2\], dtype='�'\)\] are in the \[index\]\"r�rf)
rr�r�r�r=�intr�r�rJr(�r@r0r�s   r2�test_loc_to_failz'TestLocBaseIndependent.test_loc_to_fail�s���
��I�I�!�!�!�$�+�+�F�3�!�#�
��4�B�H�H�S�M�?�C"�
"�	��]�]�8�3�
/�	#��F�F�A�q�6�A�q�6�>�"�	#�	#�	#�s�7B�Bc�*�tt��}d|jd<d|jd<tjt
d��5|jdddd�dt
jt��d	�}tjt
|��5|jdd
gddd�d}tjt
|��5|jtdgt��ddd�d
|jd<tjt
d��5|jdd
gddd�d|d<dt
jt��d	�}tjt
|��5|jd
gddd�|d=tjt
|��5d|jd
g<ddd�y#1swY��sxYw#1swY��.xYw#1swY��xYw#1swY��xYw#1swY�sxYw#1swYyxYw)Nr�rfr>r$z^-1$r����z&\"None of \[Index\(\[-1, -2\], dtype='r���zE\"None of \[Index\(\['4'\], dtype='object'\)\] are in the \[index\]\"�4rlr
z"\"None of \[Index\(\[-2\], dtype='r)
r�objectr(r�r�rJr�r=rr�r@rr�s   r2�test_loc_to_fail2z(TestLocBaseIndependent.test_loc_to_fail2�s���
�� ������a������c�
�
�]�]�8�7�
3�	�
�E�E�"�I�	�6�b�h�h�s�m�_�E"�
"�	��]�]�8�3�
/�	�
�E�E�2�r�(�O�	�W��
�]�]�8�3�
/�	.�
�E�E�%���V�,�-�	.�����b�	�
�]�]�8�>�
:�	�
�E�E�2�r�(�O�	���#��1�"�(�(�3�-��A"�
"�	��]�]�8�3�
/�	�
�E�E�2�$�K�	�
�c�F�
�]�]�8�3�
/�	��A�E�E�2�$�K�	�	�9	�	��	�	��	.�	.��	�	��	�	��
	�	�sH�
G�G� G%�#G1�:G=�1H	�G�G"�%G.�1G:�=H�	Hc�p�tdgdggddgdg��}dtjt��d�}t	j
t|�	�5|jd
gdd�fddd�t	j
t|�	�5|jd
gddd�y#1swY�>xYw#1swYyxYw)Nr$r#rfr>�valuerz!\"None of \[Index\(\[3\], dtype='rr�rl)rr�r=rr�r�rJr(rs   r2�test_loc_to_fail3z(TestLocBaseIndependent.test_loc_to_fail3�s�������u�~�a��V�g�Y�
G��1����#���@"�
"�	��]�]�8�3�
/�	��F�F�A�3��6�N�	��]�]�8�3�
/�	��F�F�A�3�K�	�	�	�	��	�	�s�B �B,� B)�,B5c��tgd��}|jdgdtjt��d�}tjttj|���5|jdgddd�tjtd��5|jddgddd�y#1swY�?xYw#1swYyxYw)Nr�r>z"None of [Index([3], dtype='z')] are in the [index]r�rlr
)
rr(r�r=rr�r�rJ�re�escaper!s   r2�test_loc_getitem_list_with_failz6TestLocBaseIndependent.test_loc_getitem_list_with_fail�s���
�9���	���q�c�
�-�b�h�h�s�m�_�<R�S��
�]�]�8�2�9�9�S�>�
:�	�
�E�E�1�#�J�	��]�]�8�>�
:�	�
�E�E�1�a�&�M�	�	�		�	��	�	�s�)B8�C�8C�C
c��ttjjd�jd��gd���}|jjd��}|jtj|�}|j|}tj||�|j|j}tj||�|jtj|d��}tj||�y)	Nr>)rprk��size)�alpha_0�alpha_1�alpha_2�beta_0�beta_1r
c�
�d|vS)N�alpharz�r�s r2�<lambda>z7TestLocBaseIndependent.test_loc_index.<locals>.<lambda>s
��g��l�r4�booleanr�)rr�r�r�r�mapr(r�r)r*r�r�)r@r0�maskr1r�s     r2�test_loc_indexz%TestLocBaseIndependent.test_loc_index
s�����I�I�!�!�!�$�+�+��+�9�G�
��
�x�x�|�|�2�3���6�6�"�(�(�4�.�)��������
���f�h�/�������$��
���f�h�/��������Y�7�8��
���f�h�/r4c�,�ttjjd�jd�gd�gd���}|jdd�dd�fj
dd�dd�f}|jddgk(j�sJ�|jddgk(j�sJ�ttd�gd	gd
��j
d}ttd�d	gddgd�
�}tj||�|jtk(sJ�y)Nr>�roro�r'r�r��Dr�r'r�rr�rfr�r$r#r�)rr�r�r�r(r�r<�allrrrr)r�r=r r�s    r2�test_loc_generalz'TestLocBaseIndependent.test_loc_general"s���
��I�I�!�!�!�$�+�+�F�3�(�&�
������3�s�7�
�#�(�(��1��a��0�����3��*�,�1�1�3�3�3�����c�
�*�/�/�1�1�1��)�J�"7�!8��s�C�D�I�I�!�L���9�Z�0�!�4�S�#�J�Q�O��
���v�x�0��|�|�v�%�%�%r4c�v�ttdd�ttd�tj
��d��S)N�
2000-01-01�	2000-01-5rpr��r�val)rrrr�r��int64r{s r2�frame_for_consistencyz,TestLocBaseIndependent.frame_for_consistency4s0���"�<��=��e�A�h�b�h�h�7�
�
�	
r4rDrr�)rrrrrc�|�ttdtd�tj��ttd�tj��d��}|j�}t
jtd��5||jdd�df<ddd�t
j||�y#1swY� xYw)	Nrrp�rr=r�rC�incompatible dtyper�r�rrr�r�rEr�r)r�r�r(r*)r@rFrDr1r0s     r2�test_loc_setitem_consistencyz3TestLocBaseIndependent.test_loc_setitem_consistency=s�����q��a�����A��e�A�h�b�h�h�7�
�
��#�
'�
'�
)��
�
'�
'�
�=Q�
R�	$� #�B�F�F�1�f�9��	$�
���b�(�+�	$�	$�s�?B2�2B;c�^�ttdtd���ttd�tj��d��}|j�}t
jtd��5d|jdd�df<ddd�t
j||�y#1swY� xYw)	Nr�rpr
r�rCrIr�rrJ�r@rFr1r0s    r2�(test_loc_setitem_consistency_dt64_to_strz?TestLocBaseIndependent.test_loc_setitem_consistency_dt64_to_strOs�����u�E�!�H�5��e�A�h�b�h�h�7�
�
��#�
'�
'�
)��
�
'�
'�
�=Q�
R�	&� %�B�F�F�1�f�9��	&�
���b�(�+�	&�	&���0B#�#B,c�^�ttdtd���ttd�tj��d��}|j�}t
jtd��5d|jdd�df<ddd�t
j||�y#1swY� xYw)	N��?rpr
r�rCrIr�rrJrMs    r2�*test_loc_setitem_consistency_dt64_to_floatzATestLocBaseIndependent.test_loc_setitem_consistency_dt64_to_float^s�����s�%��(�3��e�A�h�b�h�h�7�
�
��#�
'�
'�
)��
�
'�
'�
�=Q�
R�	$� #�B�F�F�1�f�9��	$�
���b�(�+�	$�	$�rOc�$�tdttd�g�i�}tjt
d��5d|jdd�df<ddd�tdtdg�i�}tj||�y#1swY�7xYw)Nr�20180101rIr��string)rrrr)r�r�r(r*r�s   r2�'test_loc_setitem_consistency_single_rowz>TestLocBaseIndependent.test_loc_setitem_consistency_single_rowls~�����	�*�(=�'>� ?�@�
A��
�
'�
'�
�=Q�
R�	)� (�B�F�F�1�f�9��	)��f�f�h�Z�&8�9�:��
���b�(�+�	)�	)�s�B�Bc�~�tddg��}tddg��}tjd�5d|jdd�df<ddd�tj||�tddg��}d|d<|djtj�|d<tj||�y#1swY�nxYw)Nr��yr�rf)rr)r�r(r*rr�rE�r@r1r0s   r2�"test_loc_setitem_consistency_emptyz9TestLocBaseIndependent.test_loc_setitem_consistency_emptyus����c�3�Z�0��
��S�z�
*��
�
'�
'��
-�	��B�F�F�1�c�6�N�	�
���b�(�+���S�z�
*����3�� ��
�,�,�R�X�X�6���
�
���b�(�+�	�	�s�B3�3B<c�|�dgdzgd�gd�g}tj|gd���}gd�gd�g}tj|d	d
g��}ddd
dtjggd�ddddtjggd�g}t	|||��}t|jdd�df�|jdd�df<t|jdd�df�|jdd�df<|jd��}|jdd�df|jdd�dfz
|jdd�df<tjtd��5|jdd�dftd�z|jdd�df<ddd�tgd�|jd��}tj|d|�y#1swY�=xYw)N�Region_1ro)�Site_1r]�Site_2r^)l�BP[l_�Zlq=.Zl�<.Z)�Region�Site�RespondentID��names)�
Respondentrdrd�OtherCatre)�	Something�	StartDate�EndDatezYes/No�
SomethingElse�Level_0�Level_1r'z5/25/2015 10:59z5/25/2015 11:22�Yes)r'z5/21/2015 9:40z5/21/2015 9:52rlrlz5/20/2015 8:27z5/20/2015 8:41)r'z5/20/2015 8:33z5/20/2015 9:09rl�Nor)rdrg)rdrhF)r�)rd�DurationrIr�lX�p7)g7@�(@g,@gB@r�)r�from_arraysr�r�rrr(�
infer_objectsr)r�r�rrrr�)r@�levels�mi�clevelsrr�r0r1s        r2�-test_loc_setitem_consistency_slice_column_lenzDTestLocBaseIndependent.test_loc_setitem_consistency_slice_column_len�s����L�1��4�<�
��
�
#�
#�F�2T�
U��
O�L�
���%�%�g�i��5K�L���#�%6��r�v�v�F�C�
�"�$4�e�R�V�V�D�B�	
���v�R��
6��1<��F�F�1�1�1�2�2
����q�-�-�.�0;��F�F�1�/�/�0�0
����q�+�+�,��
�
�5�
�
)��
�F�F�1�/�/�0��f�f�Q�3�3�4�
5�	���q�,�,�-��
'�
'�
�=Q�
R�	*�46�F�F��-�-�5��.�)�5*�B�F�F�1�0�0�1�	*�
�$�B�H�H�;U�
��	���r�"<�=�x�H�	*�	*�s�1F2�2F;�unit)�Y�Mr=�h�mr�ms�usc���tdtjd�tjd�gi�}|jdd�dfjjd|�d��|jdd�|f<|jdd�dfjjd|�d��|d<t
|jdd�df|��}tj|jdd�|f|�y)N�	timestampz2017-02-11 12:41:29z1991-11-07 04:22:37zdatetime64[�]r1r�)	rr��
datetime64r(r�rrr)r�)r@rvr0r1s    r2�test_loc_assign_non_ns_datetimez6TestLocBaseIndependent.test_loc_assign_non_ns_datetime�s������M�M�"7�8��M�M�"7�8��
�
���&�&��K��0�7�7�>�>��T�F�RS�?T�U����q�$�w������;��/�6�6�=�=��D�6�QR�>S�T��:���"�&�&��J��/�d�;��
���r�v�v�a��g���9r4c��tjdgd�i�}t|ddd��|d<|jdd�df|jdd�df<|jdd	gdf|jdd	gdf<tgd
�gd�gd�gd
�ggd���}ddg}||j	t�||<tj||�y)Nr)��CO!g��s~!g�4	8��A{�?�r{T)rv�cache�date_dt�
date_dt_cpr>rl)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�)rr�r�r�)r�	from_dictrr(�applyr)r*)r@r0r1r<s    r2�test_loc_modify_datetimez/TestLocBaseIndependent.test_loc_modify_datetime�s���
�
 �
 �
�Q�R�
��$�B�v�J�T��F��9�
�"$�&�&��I��"6����q�,���')�v�v�q�!�f�i�.?�'@�����1�v�|�#�$��U�U�U�U�	
�6�
���l�+��$�W�-�3�3�K�@����
���b�(�+r4c���tgd�dgt��}tjgd�d��|jgd�df<tgd�gd�t�	�}td|i�}t
j||�y)
N�rlrpror'�rr<r=r�rEr��rorlrp�r>rlrfrH)r�floatr�r�r(rr)r*�r@r0�serr1s    r2�#test_loc_setitem_frame_with_reindexz:TestLocBaseIndependent.test_loc_setitem_frame_with_reindex�s]��
�Y���U�
C��!#���)�7�!C����y�#�~���Y�i�u�=���c�3�Z�(��
���b�(�+r4c�(�tgd�ddgt��}d|d<tjgd�d��|jgd	�df<tgd
�gd�d��}td|j
t�i�}d|d<tj||�y)Nr�r'r�r�rUr�rEr�r�r�rH)	rr�r�r�r(rrr)r*r�s    r2�)test_loc_setitem_frame_with_reindex_mixedz@TestLocBaseIndependent.test_loc_setitem_frame_with_reindex_mixed�s{��
�Y��c�
�%�
H����3��!#���)�7�!C����y�#�~���Y�i�w�?���c�3�:�:�e�#4�5�6�� ���
�
���b�(�+r4c���tgd�ddgt��}d|d<tjgd�d��|jtdd	d
�df<tgd�dd�gd��
�}t
j||�y)Nr�r'r�r�rUrEr�rlrr)rgr�rQr�r
)rr�r�r�r(r�r)r*r�s   r2�*test_loc_setitem_frame_with_inverted_slicezATestLocBaseIndependent.test_loc_setitem_frame_with_inverted_slice�sf��
�Y��c�
�%�
H����3��')�x�x�	��'I����u�Q��2���#�$��?��B�)�T��
���b�(�+r4c���td�D�cgc]}dt|�z��}}tjdd��}td�D�cgc]}dt|�z��}}tjdd��}t	t|�j
|��}t|��}tj|d<||j|df<tj|d<||j|df<t||tj�	�}t||��}	t||	d
�tddgt����j|��}
tj ||
�ycc}wcc}w)Nrp�@rEr�ror
r'r�rHr�r�)r�r:r�r�r��set�unionrr�r(rr�rr �reindexr)r*)r@�i�keys1�val1�keys2�val2rr0�sera�serbr1s           r2�test_loc_setitem_empty_framez3TestLocBaseIndependent.test_loc_setitem_empty_frames+��',�Q�x�0�!��s�1�v��0��0��y�y��'�*��',�Q�x�0�!��s�1�v��0��0��y�y��'�*���S��Z�%�%�e�,�-��
�U�
#���&�&��3��!����u�c�z���&�&��3��!����u�c�z���d�%�r�z�z�:���d�%�(����T�"�E�3��*�F�,K�
�
�'��'�
�	�	���b�(�+��+1��1s�E�	E$c���ttjjd�j	d�td�td���}|jd}d|jd<|jd}|dk(sJ�|jd}|dk(sJ�d	|jdd�d
d�f<|jdd�d
d�f}|jdd�dd�f}tj||�y)Nr>r;�abcd�ABCDr�rrrf)r$r'rr�r=)
rr�r�r��standard_normalr�r�r(r)r*r�s    r2�test_loc_setitem_framez-TestLocBaseIndependent.test_loc_setitem_frames���
��I�I�!�!�!�$�4�4�V�<��v�,���L�
������������x������!����{��{���������{��{�����q�#�c�'�z���6�6�!�S��W�*�%������A�B����
���f�h�/r4c��tgd�tjd��}|j|j|j
|jkDdf<tgd�tjd��}t
j||�y)Nr�r�r�)rr�r�r'r(r�r)r*r�s   r2�/test_loc_setitem_frame_nan_int_coercion_invalidzFTestLocBaseIndependent.test_loc_setitem_frame_nan_int_coercion_invalid2s]���Y�R�V�V�4�
5��#%�4�4����r�t�t�b�d�d�{�C�� ��9�2�6�6�:�;��
���b�(�+r4c�L�tddgddgddgd��}|jdddgf}tddgtddgt�	�td�
�}tj||�tddgddgddgd��}ddg|jdddgf<tj||�y)
Nrfr>rlror$r#)rfr>r$rr��rr=r�rprm)rr(rrr r)r�r*r�s    r2�#test_loc_setitem_frame_mixed_labelsz:TestLocBaseIndependent.test_loc_setitem_frame_mixed_labels:s����A�q�6�q�!�f�C��:�>�
?������A�q�6�	�"���
��F�%��A��f�5�V�!�
��	���v�x�0��!�Q��Q��F�#�s��D�E����F����q�1�a�&�y��
���b�(�+r4z.ignore:Setting a value on a view:FutureWarningc	��tgd�ttd�tj��d��}|j
dd}|jdd|_||j
ddtgd�tgd	�tj��d��}tj||�ttd
d�ttd�tj��d
��}ttd�td�td�td�td�gtgd�tj��d
��}|j
dd}|jdd|_||j
ddtj||�y)N�r�r��bazrlr�r�rfr>r)r�r�r�)rfr>r>rArBrprC�20000101�20000102�20000103)rrfrrfr>ro)rrr�r�rEr(rr)r*rr)r@�warn_copy_on_writer0�rhsr1s     r2� test_loc_setitem_frame_multiplesz7TestLocBaseIndependent.test_loc_setitem_frame_multiplesIsC���'�f�U�1�X�R�X�X�.N�O�
���f�f�Q�q�k���H�H�Q�q�M��	�����q����'�f�Y�b�h�h�.O�P�
��	���b�(�+��"�<��=��e�A�h�b�h�h�7�
�
����j�)��j�)��j�)��j�)��j�)���o�R�X�X�>�	
�
���f�f�Q�q�k���H�H�Q�q�M��	�����q���
���b�(�+r4r�r'Nr$�Zc��tddgddggddg��jdti�}||jd|f<|jd	}t	|�r|d
k(sJ�y)Nrfr>rlror'r�r�r)rr'r�)rrr r(r )r@r�r$r0r�s     r2�"test_loc_setitem_with_scalar_indexz9TestLocBaseIndependent.test_loc_setitem_with_scalar_indexose����A���A��'�#�s��
<�
C�
C�S�&�M�
R��"����q�'�z���������� �V�s�]�2�2�]r4zindex,box,expectedr>r<rn)rnrnrnrnrlror�rfr�r=r�)rlrornr�rprmr��rnr��	)r�r�r=�rk��)rlrnr�r�)rprkr�r�)r�r'r=)r�rornr�)r�rmrkr�r�rkr�r�)rnr>r�)r�rork)r�rmr�c�~�tddgddgddggddg�	�}||j|<tj||�y)
Nrfr>rlrorprmr'r�r��rr(r)r*)r@r�boxr1r0s     r2� test_loc_setitem_missing_columnsz7TestLocBaseIndependent.test_loc_setitem_missing_columnssE��j��A���A���A��/�#�s��
D������u�
�
���b�(�+r4c�F�tdtd�jd�tjgi�}|j
}|jdg}tj|j
|�|jdg}tj|j
|�y)Nrr��UTCrrf)	rr�tz_localizer�r��dtypesr�r)r�r�s    r2�test_loc_coercionz(TestLocBaseIndependent.test_loc_coercion�sy��
���:�!6�!B�!B�5�!I�2�6�6� R�S�
T���9�9�����!����
���v�}�}�h�7����!����
���v�}�}�h�7r4c	�&�tdtddd�tddd�gi�}|j}|jdg}t	j
|j|�|jdg}t	j
|j|�y)Nr��rfi�r>r)rrr�r�r)r�r�s    r2�test_loc_coercion2z)TestLocBaseIndependent.test_loc_coercion2�sw��
���$��1�!5�x��a��7K� L�M�
N���9�9�����!����
���v�}�}�h�7����!����
���v�}�}�h�7r4c��tddgdgdzzi�}|j}|jdd}tj|j|�|jdd}tj|j|�y)N�textz
some wordsr�rr>rl)rr�r�r)r�r�s    r2�test_loc_coercion3z)TestLocBaseIndependent.test_loc_coercion3�sm��
����$��!�� ;�<�
=���9�9������1���
���v�}�}�h�7��������
���v�}�}�h�7r4c�,�td�jd�td�jd�g}t|tddgt����}tt��}|d||�d<|d	||�d<tj||�y)
N�*r�i�r�r�r�r
rrf)rr�rrr r)r�)r@�
indexer_sl�valsr1r�s     r2�test_setitem_new_key_tzz.TestLocBaseIndependent.test_setitem_new_key_tz�s���
��O�'�'��.����(�(��/�
���$�e�U�E�N�&�&I�J���6�"��!%�a��
�3����!%�a��
�3����
���s�H�-r4c�<�tgd�gd�d�gd���}d}tjt|��5|jddddd�d	}tjt|��5|jd
dddd�d}tjt|��5|jddddd�tgd�gd�d�gd���jd
��}|jdd}tgd
�gd�d�gd���}t
j||�|jd
d}t
j||�|jdd}tgd�gd�d�gd���}t
j||�y#1swY��6xYw#1swY��xYw#1swY��xYw)N�rfr>rlrorprm)rlrorprmrnr�r�)rrfrrfr>rlr
z5'Cannot get left slice bound for non-unique label: 1'r�rfz5'Cannot get left slice bound for non-unique label: 0'rr>��axis)r>rorprm)rormrnr�)rfrfr>rl)r>rorp)rormrn)rfrfr>)rr�r�rJr(�
sort_indexr)r*)r@r0r�r�r1s     r2�test_loc_non_uniquez*TestLocBaseIndependent.test_loc_non_unique�sd���$�+=�>�FX�
��F��
�]�]�8�3�
/�	��F�F�1�2�J�	�E��
�]�]�8�3�
/�	��F�F�1�2�J�	�E��
�]�]�8�3�
/�	��F�F�1�Q�K�	��$�+=�>�FX�
�
�*�!�*�
�	���������<�l�C�<�X��
���f�h�/��������
���f�b�)�����!����9�9�=�Y�O��
���f�h�/�-	�	��	�	��	�	�s#�E8�)F�F�8F�F�Fz
length, l2�r�i��
順c���td�}tjttj
j
d�j|t|�f�t	j|�|��tt	j|t|�f�dg|z|��g�}|jjdusJ�t	j|�}|j|}tj|jdg�tt	jt|�t|�f�dgt|�z|��|j|dd�g�}tj ||�y)N�ABCDEFGr>rrFrf)r�r��concatrr�r�r�r�rr��onesr�	is_uniquer(�taker)r*)r@�length�l2r<r0r8r�r1s        r2� test_loc_non_unique_memory_errorz7TestLocBaseIndependent.test_loc_non_unique_memory_error
s.���y�/��
�Y�Y���I�I�)�)�!�,�<�<�f�c�'�l�=S�T��)�)�F�+�#��
�"�'�'�2�s�7�|�"4�5�a�S�2�X�w�W�

�	
���x�x�!�!�U�*�*�*��y�y��}���������9�9���������G�G�S��Y��G��5�6��#��D�	�/�#��
����Q�R��!�
�

��	���f�h�/r4c��tddgddgg�}d|j_|jddgjj}|dk(sJ�|jddgjj}|dk(sJ�y)Nrf�
index_namer)rrr�r�r(�r@r0r�s   r2�
test_loc_namez$TestLocBaseIndependent.test_loc_name.sz��
��A���A��'�
(��$����
����!�Q���&�&�+�+����%�%�%�����A���%�%�*�*����%�%�%r4c�T�ttjd�tt	d�D�cgc]}d|����	c}d��tt	d�D�cgc]}d|����	c}d����}tj|jdd�gf|jdd�dd�fd	d	�
�tj|jgdd�f|jdd�dd�fd	d	�
�tj|jg|jdd�dd�fd	d	�
�ycc}wcc}w)N)rpr>rpzi-r$r�r>rrT)�check_index_type�check_column_type)	rr�r�rr�r)r*r(r�)r@r�r0s   r2�!test_loc_empty_list_indexer_is_okz8TestLocBaseIndependent.test_loc_empty_list_indexer_is_ok8s���
��G�G�F�O��5��8�4�a�2�a�S��4�3�?��U�1�X�6��R��s�8�6�S�A�
��	����F�F�1�b�5�M�2�7�7�1�b�q�b�5�>�D�TX�	
�	����F�F�2�q�5�M�2�7�7�2�A�2�q�5�>�D�TX�	
�	����F�F�2�J�������A����QU�	
��5��6s�D �D%c���tdgd�i�}|jdd}||usJ�|dd|usJ�|jdd�dd�f|usJ�tj|dj|dj�sJ�tj|�5gd�|jdd�df<ddd�|r|dgd�k(j�sJ�|ddk(j�sJ�ttjjd�jd��}|s|r|d|jdd�dfusJ�|d|jdd�dfusJ�tgd��}|jdd}||usJ�|dd|usJ�tj|�5gd	�|dd
ddd�|rt|dd
gd�k(�sJ�yt|dd
gd	�k(�sJ�y#1swY��+xYw#1swY�DxYw)Nr$r�)rorororor>�rkrorr�r�rl)rr(r��
shares_memory�_valuesr)�assert_cow_warningr>r�r�r�r)r@�using_copy_on_writer��original_df�	sliced_dfr0�original_series�
sliced_seriess        r2�&test_identity_slice_returns_new_objectz=TestLocBaseIndependent.test_identity_slice_returns_new_objectKs��
 ��i� 0�1���O�O�A�&�	���+�+�+��1�~�[�0�0�0����q�!�t�$�K�7�7�7�����C� 0� 8� 8�)�C�.�:P�:P�Q�Q�Q��
"�
"�#5�
6�	0�&/�K�O�O�A�s�F�#�	0���c�N�i�/�4�4�6�6�6��c�N�a�'�,�,�.�.�.��r�y�y�,�,�Q�/�?�?��H�
I���"4��a�5����q�!�t��,�,�,��a�5�B�F�F�1�a�4�L�(�(�(�!�!3�4��'�+�+�A�.�
��O�3�3�3��q�!��8�8�8�
�
"�
"�#5�
6�	,�"+�O�B�Q��	,���}�R�a�(�I�5�6�6�6��}�R�a�(�I�5�6�6�6�3	0�	0��(	,�	,�s�G
�G�
G�G#c���|s1tjjd��}|j|�t	tt
d�t
d��ddg��}|j�}|jdd�df}|dz
}tj||�|j�}|j|jdf}|dz
}tj||�y)Nz!accidental fix reverted - GH37497��reasonrlr$r#r�r>)r�r��xfail�applymarkerr�zipr�r�r(r)r*r)r@rLr�r�r�rX�q�zs        r2�test_loc_copy_vs_viewz,TestLocBaseIndependent.test_loc_copy_vs_viewvs���#��;�;�$�$�,O�$�P�D�����%��c�%��(�E�!�H�-��S�z�B��
�F�F�H��
�E�E�!�S�&�M��	�Q���
���a��#�
�F�F�H��
�E�E�!�'�'�3�,���	�Q���
���a��#r4c��tjd�j}tddg|dz
|g��}|j|dz
}|j
d}||k(sJ�|j|dz
g}|j
dg}t
j||�|j|dz
|g}t
j||�y)Nr�rfr>r
r)r��iinfo�maxrr(r�r)r�)r@�umaxr�r�r1s     r2�test_loc_uint64z&TestLocBaseIndependent.test_loc_uint64�s����x�x��!�%�%���a��V�D�1�H�d�#3�4��������"���8�8�A�;����!�!�!����$��(��$���8�8�Q�C�=��
���v�x�0����$��(�D�)�*��
���v�s�+r4c�h�tjd�j}tddg|dz
|g��}t	j
td��5|jdddd�t	j
td��5|jdgddd�y#1swY�>xYw#1swYyxYw)Nr�rfr>r
z-1r�r)r�r	r
rr�r�rJr()r@rr�s   r2�!test_loc_uint64_disallow_negativez8TestLocBaseIndependent.test_loc_uint64_disallow_negative�s����x�x��!�%�%���a��V�D�1�H�d�#3�4��
�]�]�8�4�
0�	��G�G�B�K�	��]�]�8�4�
0�	��G�G�R�D�M�	�	�		�	��	�	�s�B�B(�B%�(B1c	��gd�}t|tjtjgt	|�zt
��d��}tddg��}||jdd�df<tj||�y�Nr�r��r�rXr�rXr�)	rr�r�r�rr r(r)r*�r@r�r1r0s    r2�*test_loc_setitem_empty_append_expands_rowszATestLocBaseIndependent.test_loc_setitem_empty_append_expands_rows�sf������R�X�X�r�v�v�h��T��&:�&�I�J�
��
��S�z�
*������q�#�v��
���b�(�+r4c	�H�gd�}t|tjtjgt	|�zt
��d��}tddg��}|dj
tj�|d<||jdd�df<tj||�yr)rr�r�r�rr rrEr(r)r*rs    r2�6test_loc_setitem_empty_append_expands_rows_mixed_dtypezMTestLocBaseIndependent.test_loc_setitem_empty_append_expands_rows_mixed_dtype�s�������R�X�X�r�v�v�h��T��&:�&�I�J�
����S�z�
*���S�'�.�.����*��3������q�#�v��
���b�(�+r4c���tdgtjgd��}tddgt��}|jd|jd<tj||�y)NrQrr�rXr;)rr�)rr�r�r�r(r)r*rYs   r2�*test_loc_setitem_empty_append_single_valuezATestLocBaseIndependent.test_loc_setitem_empty_append_single_value�sO���C�5����x�8�9��
��S�z��
7��!���f�-����v��
���b�(�+r4c���ddg}tddg��}|jjtj�|_dtj
t��d�}tjt|��5||jd	dgdf<ddd�d
}tjt|��5||jd	d�df<ddd�y#1swY�CxYw#1swYyxYw)Nrfr>r�rXr�z"None of \[Index\(\[0, 1\], dtype='z'\)\] are in the \[index\]r�r�)setting an array element with a sequence.)rrrr�rEr=rr�r�rJr(�
ValueError)r@r�r0r�s    r2�$test_loc_setitem_empty_append_raisesz;TestLocBaseIndependent.test_loc_setitem_empty_append_raises�s����1�v��
��S�z�
*���8�8�?�?�2�8�8�,���1�"�(�(�3�-��A$�
$�	��]�]�8�3�
/�	'�"&�B�F�F�A�q�6�3�;��	'�:��
�]�]�:�S�
1�	$�#�B�F�F�1�Q�3��8��	$�	$�		'�	'��	$�	$�s�9C�2C�C�C$c��tddgddgg�}|jtjd�}t	ddgd��}tj||�y)Nrfr>rlrorr�)rr(r�r�rr)r�)r@r0r�rs    r2�test_indexing_zerodim_np_arrayz5TestLocBaseIndependent.test_indexing_zerodim_np_array�sO��
��A���A��'�
(����������$���A�q�6��"��
���v�q�)r4c�p�tddg�}|jtjd�}|dk(sJ�y)Nrfr>r)rr(r�r�)r@rr�s   r2�%test_series_indexing_zerodim_np_arrayz<TestLocBaseIndependent.test_series_indexing_zerodim_np_array�s1���A�q�6�N�����r�x�x��{�#����{��{r4c���gd�dgdzz}t|tdd���}ttdd�tj��}gd�|jddd	�<tj||�y)
Nr�roi�i�r
rH)rmrprorlr>rfr�r)rr�r�r�r(r)r�)r@r�r1r�s    r2�test_loc_reverse_assignmentz2TestLocBaseIndependent.test_loc_reverse_assignment�s`��!�T�F�Q�J�.���$�e�D�$�&7�8���e�D�$�/�r�z�z�B��#5��
�
�4��R�<� �
���v�x�0r4zcan't set int into stringrc��td�D�cgc];}ttjj	d�j�dz���=}}t|dg��}t|dgt��}tj||�|D�cgc]
}t|���c}|j|jdf<t|dgt��jt�}tj||�|D�cgc]
}t|���c}|d<t|dgt��}tj||�ycc}wcc}wcc}w)Nrpr>g�-���q=r'r�r;)
r�r:r�r�r�rr r)r*r�r(rr)r@r]�col_datar�r1r�s      r2�3test_loc_setitem_str_to_small_float_conversion_typezJTestLocBaseIndependent.test_loc_setitem_str_to_small_float_conversion_type�s
��MR�RS�H�U�q�C��	�	�-�-�a�0�7�7�9�E�A�B�U��U��8�c�U�3���X��u�F�C��
���f�h�/�<D�(D�a��q��(D��
�
�6�<�<��$�%��X��u�E�B�I�I�&�Q��
���f�h�/�*2�2�A�u�Q�x�2��s���X��u�E�B��
���f�h�/��V��)E��3s�AD;�E�9Ec��tddd��}|jdk(|jdk(z}ttj
j
d�jt|�df�|�	�}tj||�}|jtdd�}|j|}tj||�|jd
d}|jtdd�}|dd}|jjd�|_|jjd�|_tj||�y)N�1/1/2000z1/5/2000�5min��freqr�rur>rlr
z1/4/2000r)r�hour�minuterr�r�r�r�rr)�get_objr(rr�r�
_with_freq)	r@�frame_or_series�rngr8rMr�r��chunkr1s	         r2�test_loc_getitem_time_objectz3TestLocBaseIndependent.test_loc_getitem_time_objects����Z�f�=�����A�
�#�*�*��"2�3����I�I�!�!�!�$�4�4�c�#�h��]�C�3�
���j�j��o�.������a���%���g�g�d�m��
�����$����
��$�����4��2�;�'���"�#�;���|�|�.�.�t�4���!���2�2�4�8���
�����)r4�
spmatrix_t)�
coo_matrix�
csc_matrix�
csr_matrixr=c��tjd�}t||�}d\}}|tj|||��|��}t
jj|�}td|�}|j|j}	|j�|}
tj|	|
�|j|jj}	tj|t!|d���}
tj|	|
�y)N�scipy.sparse)rprnr�r>r)�
fill_value)r��importorskip�getattrr��eyer�sparse�
from_spmatrixr�r(r��toarrayr)�assert_numpy_array_equalr��fullr)r@r2r=�	sp_sparse�rowsr�spmatrixr0�itr_idxr�r1s           r2�$test_loc_getitem_range_from_spmatrixz;TestLocBaseIndependent.test_loc_getitem_range_from_spmatrixs����'�'��7�	��Y�
�3�
�
�
��d��b�f�f�T�4�u�=�U�K��
�
�
�
+�
+�H�
5����4�.�������'�'���#�#�%�g�.��
�#�#�F�H�5������'�'�.�.���7�7�4��U�q�!A�B��
�#�#�F�H�5r4c	��tdtjddgtd���i�}|jddg}tj||�y)Nr'rrEr�rf)rr�r�rr(r)r*r�s   r2�,test_loc_getitem_listlike_all_retains_sparsezCTestLocBaseIndependent.test_loc_getitem_listlike_all_retains_sparse5sF��
��R�X�X�q�!�f�K��4H�I�J�
K������A����
���f�b�)r4c���tjd�}tjj	|jd��}|jtd�}tgd�gd�gtdd���}tj||�|jtd�jtd	�}tgd�gtdd���}tj||�y)
Nr7rpr>�rQrrrr)rrQrrrr�rr�rf)r�r9rr<r=r;r(r�rr)r*)r@rAr0r�r1s     r2�test_loc_getitem_sparse_framez4TestLocBaseIndependent.test_loc_getitem_sparse_frame:s����'�'��7�	�
�
�
�
+�
+�I�M�M�!�,<�
=������a��!���
&�(A�B��i��-�
��	���f�h�/�����a��!�%�%�e�A�h�/���
&�'�{�9�c�/J�
��	���f�h�/r4c�~�tgd�tdd���}|jtd�}tddgtdd���}t	j
||�|jtd�jtd�}tddgtdd���}t	j
||�y)NrIr�rr�r>rQrl)rrr(r�r)r�)r@rr�r1s    r2�test_loc_getitem_sparse_seriesz5TestLocBaseIndependent.test_loc_getitem_sparse_seriesLs����,�K�	�3�4O�P�����u�Q�x����3��*�K�	�3�,G�H��
���v�x�0����u�Q�x��$�$�U�1�X�.���3��*�K�	�3�,G�H��
���v�x�0r4r(r�c���tgd�gd�gtt���}t||�d}t	gd�tt�d��}tj||�y)N)rQr��?)rr�rr�r)r=r�)rrr�r:rr)r�)r@r�r0r�r1s     r2�!test_getitem_single_row_sparse_dfz8TestLocBaseIndependent.test_getitem_single_row_sparse_dfXsN�����9��U�AS�
T����W�%�a�(���/��U�1C�!�L��
���v�x�0r4�key_typec��|gd��}|jdd�|f}|jdd�gd�f}tj||�y)Nr�)r(r)r*)r@�float_framerP�idxr�r1s      r2�test_loc_getitem_iterablez0TestLocBaseIndependent.test_loc_getitem_iterable`sA����'������C��(���?�?�1�o�#5�6��
���f�h�/r4c�,�ttjjd�j	d���}tddd��|_|jtd�d�dd�f}|jdd�dd�f}tj||�y)Nr>r�r+�0srkr��start�periodsr))rr�r�r��normalrrr(rr)r*r�s    r2�#test_loc_getitem_timedelta_0secondsz:TestLocBaseIndependent.test_loc_getitem_timedelta_0secondsgsw��
�r�y�y�,�,�Q�/�6�6�G�6�D�
E��"��r��D����6�6�)�D�/�+�Q�.�/�������q��!��
���f�h�/r4�val,expected������c�~�tddgddg��}|j|}||_tj||�y)Nrfr>r]r^r
)rr(r�r)r�)r@rDr1r0r�s     r2�test_loc_getitem_uint64_scalarz5TestLocBaseIndependent.test_loc_getitem_uint64_scalaros=��
��1�v�i��%7�
8����������
�
���v�x�0r4c���|}tgd�tgd�|����}|j�}d|jd<d|jd<tj||�y)Nr)r��?rfr�r
�zoorfr>)rrr�r(r�r)r�)r@�float_numpy_dtyper=r�r1s     r2�+test_loc_setitem_int_label_with_float_indexzBTestLocBaseIndependent.test_loc_setitem_int_label_with_float_indexzsP��!���_�E�+�U�,K�L���8�8�:�������
� ��
�
�a��
���s�H�-r4zindexer, expected)
rZrfr>rlrorprmrnr�r�)
rrfr>rlrZrZrZrZr�r�)
rrfr>rZrorZrmrnr�r�c���ttd�d��}tdtd�id|��}d|j|j|df<t||dgd��}tj||�y)	Nrkr�rvr�rE�r=rrZr�)rr�rr(rr)r*)r@r�r1�tdir0s     r2�/test_loc_setitem_listlike_with_timedelta64indexzFTestLocBaseIndependent.test_loc_setitem_listlike_with_timedelta64index�sq���5��9�3�/��
��U�2�Y�'�w�c�
B��)+����r�x�x�� �#�%�&�����E��	
��	���h��+r4c�|�tgd�td�d��}tgd�td�d��}tjtd��5tddgd	dg�
�|jdd�d	f<tddgd	dg�
�|jdd
�df<ddd�tj||�y#1swY� xYw)N�rfrfrfrfrf�aaaaar�)rfr#r#rfrf�aabbar�r�r#r$��
categoriesrfr>rl)rr�r)r�r�rr(r*)r@r0r�s   r2�8test_loc_setitem_categorical_values_partial_column_slicezOTestLocBaseIndependent.test_loc_setitem_categorical_values_partial_column_slice�s����_�4��=�A�
B���1��W�
�F�G��
�
'�
'��!=�
�	N� +�C��:�3��*�M�B�F�F�1�Q�3��8��*�C��:�3��*�M�B�F�F�1�Q�3��8��		N�
	���b�#�&�	N�	N�s
�AB2�2B;c�T�tdgdgd��}t|dgd���}||jdd�df<|d}t||jd��j|stnd�}tj||�||d<tj|dt|d�	��y)
Nr$r)�Alpha�Numericrsrror��string[pyarrow_numpy]r�)	rrr(rrrr r)r�)r@�using_infer_stringr0rpr�r1s      r2�'test_loc_setitem_single_row_categoricalz>TestLocBaseIndependent.test_loc_setitem_single_row_categorical�s���
�#��A�3�7�
8�� ��G���I�
�(����q�'�z���G����*�B�H�H�7�C�J�J�,�F�2I�
��	���v�x�0�!��7��
���r�'�{�F�:�G�,L�Mr4c���tdtd�gdzi�}tjd�|jdd�df<td�|jdk(sJ�td�|jdk(sJ�tjtd	�
�5tddd�|jd
<ddd�td�j�|jd
k(sJ�y#1swY�5xYw)NrQz
2010-10-01rlz
2008-08-08rrf)rrQ)rfrQrIr�i�rp)r>rQz
2005-05-05)	rrr�r�r(r)r�r�rr?s  r2�"test_loc_setitem_datetime_coercionz9TestLocBaseIndependent.test_loc_setitem_datetime_coercion�s���
��i��5�6��:�;�
<���=�=��6����q��s�C�x����&�"�&�&��.�8�8�8���&�"�&�&��.�8�8�8�
�
'�
'�
�=Q�
R�	.�!�$��1�-�B�F�F�6�N�	.���&�+�+�-������?�?�?�	.�	.�s�C%�%C.�idxer�varc�>�|}tddd|��}td|dg��}t|dgtj��}t	j
|dk(rtndd	�
�5||jdd�|f<ddd�t	j||�y#1swY� xYw)Nz
2015-07-12rlry)rXrYr)�tzrr{rr�rIr�)	rrr�r�r)r�r�r(r*)r@rz�tz_naive_fixturer}rSr1r�s       r2�!test_loc_setitem_datetimeindex_tzz8TestLocBaseIndependent.test_loc_setitem_datetimeindex_tz�s������|�Q�S�R�H���S��e�W�=����u�g�R�Z�Z�H��
�
'�
'�"�e�^�M��=Q�
�	,�$,�F�J�J�q�%�x� �		,�
	���f�h�/�	,�	,�s� B�Bc�v�tddd��}ttjj	d�jt
|�df�|��}tdd	d	�}ttd
d	d	�tdd	d	��}gd�}gd
�}|j�}d	|j|<|j|}|j|j�}	d	|	jdd|r|	jt�}	tj||	�|j�}d	|j|<|j||j|<tj||�|j�}d	|j|<|j|}|j|j�}	d	|	jdd|r|	jt�}	tj||	�|j�}d	|j|<|j||j|<tj||�y)Nz
2012-01-01z
2012-01-05�30minr(r>rpr
r�r�
�)��H�x�)����J�K�L�z�{�|���)rrr�r�r�r�rrr�r�r(rr�r)r*r�)
r@�using_array_managerrr0�akey�bkey�ainds�bindsr�r1s
          r2�test_loc_setitem_time_keyz0TestLocBaseIndependent.test_loc_setitem_time_key�s����<��G�D��
��I�I�!�!�!�$�4�4�c�%�j�!�_�E�U�
���B��1�~���T�"�a��^�T�"�a��^�4��"��F���������
�
�4�����D�!���6�6�$�<�$�$�&������Q������u�-�H�
���f�h�/��������
�
�4���7�7�5�>��
�
�4��
���f�b�)��������
�
�4�����D�!���6�6�$�<�$�$�&������Q������u�-�H�
���f�h�/��������
�
�4���7�7�5�>��
�
�4��
���f�b�)r4rac���tjgd��}tgd�gd�g|��}|j�}t	j
dd��|jdd�|f<tgd�gd	�g|��}tj||�|jd
��}t	j
dd��|jdd�|f<|jd
��}tj||�y)N))r'ro)r��3)r'r9r��rorprmr��r>r>rEr�)rr>r)rrprrfr�)
r�from_tuplesrr�r��zerosr(r)r*r�)r@rarsr0rMr1s      r2�,test_loc_setitem_unsorted_multiindex_columnszCTestLocBaseIndependent.test_loc_setitem_unsorted_multiindex_columnss����
#�
#�$F�
G��
�	�9�-�r�
:���g�g�i���(�(�6��9�����3����i��3�R�@��
���c�8�,�
�]�]��]�
"�����&��8����q�#�v���&�&�A�&�.��
���b�(�+r4c��tgd�|��}d|jd<tgd�|��}tj||�y)Nr�r�ror)ror>rl�rr(r)r�)r@�any_int_numpy_dtyper-r1s    r2�test_loc_setitem_uint_dropz1TestLocBaseIndependent.test_loc_setitem_uint_drops;���	�)<�=����
�
�1�
��)�+>�?��
���v�x�0r4c�b�tdtjdd�gz�}tjdd�|jgd�<tdtjdd�gz�}t	tjdd��|jgd�<tj||�y)NrkrzrZr�)rr��timedelta64r(rr)r�)r@r�r1s   r2�test_loc_setitem_td64_non_nanoz5TestLocBaseIndependent.test_loc_setitem_td64_non_nanos����R�2�>�>�"�c�2�3�3�4���^�^�B��4����	���"����r�3� 7�8�8�9��"+�B�N�N�2�s�,C�"D����Y��
���s�H�-r4c��tjjd�jd�}t	td�d��}d}t
jt|��5||jtd�<ddd�t
jt|��5||jddddd�y#1swY�=xYw#1swYyxYw)Nr>r�r�r�rr�)
r�r�r�r�rr�r�r�rr()r@r�r�r�s    r2� test_loc_setitem_2d_to_1d_raisesz7TestLocBaseIndependent.test_loc_setitem_2d_to_1d_raisess����y�y�$�$�Q�'�7�7��?���U�1�X�Y�/��9��
�]�]�:�S�
1�	%� $�C�G�G�E�!�H��	%��]�]�:�S�
1�	��C�G�G�A�J�	�	�	%�	%��	�	�s�"B7�C�7C�Cc��tjdd��}tgd�gd�gd�g|gd���}d	}|jd
}t	j
||�y)Nrrl)rXrYr�r�r�r�rrf)rbr')r��interval_rangerr(r)�assert_almost_equal)r@rr0r1r�s     r2�test_loc_getitem_interval_indexz6TestLocBaseIndependent.test_loc_getitem_interval_index+sQ���!�!��1�5��
�
�	�9�-�U�O�
��������!��
���v�x�0r4c��tjddd��}tgd�gd�gd�g|gd��	�}tjdd
dd��}tdd
g|d��}|jd}tj||�y)Nrrl�both)rXrY�closedr�r�r�r�rr>rf)rXrYr)r�ror'r��rfr')r�r�rrr(r)r�)r@rr0�	index_expr1r�s      r2� test_loc_getitem_interval_index2z7TestLocBaseIndependent.test_loc_getitem_interval_index26su���!�!��1�V�D��
�
�	�9�-�U�O�
���%�%�A�q�q��P�	��1�a�&�	��<��������
���v�x�0r4�tpl�rf�rfr>c��tddgdd��}t|��}|j|g}t|gdd��}t|��}tj||�y)Nr�r�r'F�r��
tupleize_colsr
)rrr(r)r*)r@r�rSr0r�r1s      r2�+test_loc_getitem_index_single_double_tupleszBTestLocBaseIndependent.test_loc_getitem_index_single_double_tuplesBs`���
�6�N���
��
�S�
!����������S�E��5�9���3�'��
���f�h�/r4c���tdddg�}|dd�}|dd�}t||gdd	�
�}tddg|d
dg��}|j|dd�d
}|dk(sJ�y)N�	IndexTyper$r#r�r�r��bof�composite_indexFr�r�)rlror'r�rrf)rrrr()r@r��idx1�idx2rr0r�s       r2�!test_loc_getitem_index_namedtuplez8TestLocBaseIndependent.test_loc_getitem_index_namedtupleQsz���{�S�#�J�7�	����&�����&���t�T�l�):�%�P��
���'�u�s�C�j�
I�����	�%��/�0��5����{��{r4c���ttjjd�j	d�gd�gd���}d|d<tj
|j|jddd�df<ttj
dtj
dtj
g|stnd�	�j}tj|dj|�y)
Nr>�rprl)r$r#rQrrr�r�quxr:rur�)
rr�r�r�r�r�r(rrr r�r)r�)r@rvr0r1s    r2�$test_loc_setitem_single_column_mixedz;TestLocBaseIndependent.test_loc_setitem_single_column_mixed[s���
��I�I�!�!�!�$�4�4�V�<�+�)�
��
��5�	�')�v�v����r�x�x��!��}�e�#�$��
�V�V�U�B�F�F�E�2�6�6�2� 2�&�8O�
��&�	�	���r�%�y�/�/��:r4c���ttjjd�jd�t	d���}tj
|d<t
jtd��5d|jd	<ddd�|j}ttjd
�gdztjd�gzgd
���}t
j||�y#1swY�ixYw)Nr>)rurl�ABCr��eventr�r�r�)rkr�r�rlr )r'r�r�r�r
)rr�r�r��tupler�r)r�r�r(r�rr=r�r�s    r2�test_loc_setitem_cast2z-TestLocBaseIndependent.test_loc_setitem_cast2is����r�y�y�,�,�Q�/�6�6�w�?��u��
V���f�f��7��
�
'�
'��!=�
�	(�#(�B�F�F�;��	(������
�X�X�i�
 �!�A�%����(�);�(<�<�*�
��	���v�x�0�	(�	(�s�1C)�)C2c��tdtjdtj��i�}d|jd<|j
jtjtj�k(sJ�tjd�|_|j
jtjtj�k(sJ�y)N�onermr�)rfr�rn)rr�r��int8r(r�r�r=r?s  r2�test_loc_setitem_cast3z-TestLocBaseIndependent.test_loc_setitem_cast3ys���
��r�y�y��"�'�'�:�;�
<������x���y�y�}�}������� 1�1�1�1���������y�y�}�}������� 1�1�1�1r4c���|td�gd���}gd�}|jdk(rdgdgdgg}||jtd	�<|gd
�|j��}t	j
||�y)Nrp)rlrorfrr>r
)r�rkr�r>r�rkr�rl)rrfrkr�r�)r��ndimr(rr)r�)r@r.rMr�r1s     r2�test_loc_setitem_range_keyz1TestLocBaseIndependent.test_loc_setitem_range_key�se���e�A�h�o�>�����8�8�q�=��c�B�4�"��&�F�"�����a���"�#4�C�I�I�F��
����X�&r4c��tgd�gd�d��}tddgddg��|jdd�df<tgd�gd�d��}tj||�y)	Nrlr�r�r>rfror$)rfr>r>rfrf�rrr(r)r*r�s   r2�.test_loc_setitem_numpy_frame_categorical_valuezETestLocBaseIndependent.test_loc_setitem_numpy_frame_categorical_value�sW��
�_�3L�M�
N��&��1�v�1�a�&�A����q��s�C�x���?�9R�S�T��
���b�(�+r4)lr�r�r�r�r�r�r�rr�r�r�r�r�r�rr
rrrr"r%r)r9r?�fixturerFr�r�rErKrNrRrVrZrur�r�r�r�r�r�r�r�r��filterwarningsr�r�r�rr�r�r�r�r�r�r��arm_slowr�r�r�r�rrrrrrrrrr!rr	r$r1r��complexrErGrJrLrO�iterrrrTr[r`rerjrqrwryrr�r�r�r�r�r�r�r�r�r�r�r�r�r�rzr4r2r�r��s���0��[�[����
7�&��,��u�9U�V�
6����t�U�8S�T�
6����u�d�8S�T�N����v�d�|�U�3�
�7����u�d�8S�T�N����u�f�T�l�3�
�7����t�U�8S�T�	
��$�%�$�* �
	1�1�(!K�F-�0,�&	��[�[���W��e�}�6P�&Q�R��S��
�
#�%�N
�� 0�*&�$�^�^�
��
��[�[���
�	
�H�B�H�H�Q�b�h�h�'�����/����)R�S��,�	�,�
,�,�,�,� 0I�d�[�[���V�%O�P�:�Q�:�",�4	,�
,�,�,�20�*,�
,��[�[��� P�Q�#,�R�#,�J�[�[����S�E�5��s�D�1�8�2�8�8�S�E�?�C���[�[���W��u�h�b�h�h��u�o�&>�?�
3�@��
3��[�[�����Q��-�.���!�A�q�"�&�&�"�&�&�#9�<�H�0��
��S�#�J���A�����B�F�F�B�F�F�+�\�A�q�"�&�&�"�&�&�;Q�R�0��
��O�$������"�(�(�3����B�F�F�^�Y��A�r�v�v��?���
��q�!�T�"�O�4��L�)����B�F�F�B�F�F�+�\�?�K�0��
��q�!�T�"�O�4�����)�\�2�"�(�(�C����B�F�F�B�F�F�+�\�?�K�0��
��t�T�4�(�3��*�5��A�q�6�A�r�7�R��H�5��S�z�J���
�K�8�/��
�Q/	
�2�f,�g2�f,�	8�	8�	8�.� 0�D�[�[����[�[���\�S�#�J���8H�+I�J� 0�K�� 0�D&�
�&)7�V$�(,�"�,�,�,�$�"*��1��[�[���1�3�<W��X�0�Y�0�(*�,�[�[���\�+U�V��[�[���W�r�x�x����W�&E�F�6�G�W�6�.*�
0�$
1��[�[���Y����8�1�9�1��[�[���Z�$����&�%�)H�I�0�J�0�0��[�[����)�V�Q�C�[�1�E�6�1�#�;�3G�H��1��1�	.��[�[�����/�0�
�1�a�[�<�=���V�5�6�	
�	�,�	�,� 
'�N�&@��[�[���W�u�u�g�&6�7�
0�8�
0�&*�P�[�[���U�S�3�%�#�u�T�{�1C�$D�E�,�F�,�1�.�
�	1�
1��[�[���U�T�6�N�3�0�4�0��;�1� 2�'�,r4r�c���eZdZejejejg��d��Zejd��Z	d�Z
ejjd�d��Z
d�Zy)	�TestLocWithEllipsis)�paramsc��|jSry)�param)r@rLs  r2r�zTestLocWithEllipsis.indexer�s���}�}�r4c�:�|}|tur|j�}|Sry)r�to_frame)r@�series_with_simple_indexr.rMs    r2rMzTestLocWithEllipsis.obj�s��&���&�(��,�,�.�C��
r4c�F�||�d}tj||�y)N.)r)r�)r@rMr�r�s    r2�test_loc_iloc_getitem_ellipsisz2TestLocWithEllipsis.test_loc_iloc_getitem_ellipsis�s�����c�"��
�����$r4�3ignore:PeriodDtype\[B\] is deprecated:FutureWarningc���|}|tjust|�dk(rdn|jd}|tjur|jj
dk(ry|tjurOt
|jt�r5d}tjt|��5||�d|gf}ddd�n>t|�dk7r0||�d|gf}||�|g}tj||�|tjurdn|j}|j�}	||	�d|gf}||	�dd�|gf}tj||�y#1swY�nxYw)Nrr6z2MultiIndex does not support indexing with Ellipsisr�.)r)r�rrr(�
inferred_typer�rr�r��NotImplementedErrorr�r�r�r*)
r@r�r�rMrar�r�r1�key2r0s
          r2�&test_loc_iloc_getitem_leading_ellipsesz:TestLocWithEllipsis.test_loc_iloc_getitem_leading_ellipses�sB��&���r�w�w�&�#�c�(�a�-�a�c�i�i��l���b�f�f�����!8�!8�I�!E�
��b�f�f���C�I�I�z�!B�F�C����2�#�>�
2� ���c�C�5�j�1��
2�
2���X��]��S�\�#��u�*�-�F��s�|�S�E�*�H��"�"�6�8�4��r�w�w�&�q�C�H�H��
�\�\�^�����S�4�&�[�)���2�;�q�4�&�y�)��
���f�h�/�
2�
2�s�)E$�$E-c�j�|tjust|�dk(rdn|jd}t	j
tt��5||�dddd�t	j
tt��5||�d|gdfddd�t	j
tt��5||�dd|fddd�t	j
td��5||�|ddfddd�y#1swY��xYw#1swY�~xYw#1swY�TxYw#1swYyxYw)Nrr�)...�Too many indexers)r)r�rrr�r�r
r!)r@rMr�ras    r2�0test_loc_iloc_getitem_ellipses_only_one_ellipsiszDTestLocWithEllipsis.test_loc_iloc_getitem_ellipses_only_one_ellipsis�s���r�w�w�&�#�c�(�a�-�a�c�i�i��l��
�]�]�=�0E�
F�	#��C�L��"�	#��]�]�=�0E�
F�	*��C�L��s�e�S��)�	*��]�]�=�0E�
F�	(��C�L��c�3��'�	(�
�]�]�=�0C�
D�	(��C�L��c�3��'�	(�	(�	#�	#��	*�	*��	(�	(��
	(�	(�s0�D�D�;D�-D)�D�D�D&�)D2N)r�r�r�r�r�r)r(r�r�rMr�r�r�r�r�rzr4r2r�r��ss���V�^�^�B�F�F�B�G�G�,�-��.���^�^����%��[�[��� V�W�0�X�0�0(r4r�c
�r�eZdZejjdddggd�gd�gfddggd�gd�gfddgddgfgd�gd�gfddgddgfgd�gd	�gfddgddgfgd�gd	�gfddgddgfgd�gd�gfd
dgddgfgd�gd�gfg�ejjd
ddg�d���Zd�Zd�Zd�Z	d�Z
d�Zd�Zd�Z
d�Zd�Zd�Zejjdej$ej(dej*f�d��Zd�Zejjdd d!g�d"��Zd#�Zd$�Zy)%�TestLocWithMultiIndexzkeys, expectedr#r$)r#r#r$r$)rfr>rfr>)r$r$r#r#rfr>)r>rfr>rfrQ)rQr$r$)rfr>rf�dimrr<c��|gd�gd�gi}ttjd�jdd�fi|��}t	j
|�}|dk(r4|j|dd�f}tj|j|�y|dk(r4|jdd�|f}tj|j|�yy)N)rQr$r$r#r#)rfrfr>rfr>�rprr<)rr�r��reshaperrpr(r)�assert_index_equalrr<)r@r��keysr1�kwargsr0�	exp_indexr�s        r2�'test_loc_getitem_multilevel_index_orderz=TestLocWithMultiIndex.test_loc_getitem_multilevel_index_order�s��� �1�?�C�D��
�r�y�y��}�,�,�Q��2�
=�f�
=���*�*�8�4�	��'�>��&�&��q��/�C��!�!�#�)�)�Y�7�
�I�
��&�&��D��/�C��!�!�#�+�+�y�9�r4c��|}|jd}|djd}|jj|jjddk(sJ�|jj|jjddk(sJ�|jd}|djd}|jj|jjdk(sJ�|jj|jjdk(sJ�y)N��r'rf)r�r>r>)r(rrcr�)r@�/multiindex_year_month_day_dataframe_random_data�ymdr��result2s     r2�test_loc_preserve_namesz-TestLocWithMultiIndex.test_loc_preserve_names�s���=���������c�(�,�,�t�$���|�|�!�!�S�Y�Y�_�_�Q�R�%8�8�8�8��}�}�"�"�c�i�i�o�o�a�b�&9�9�9�9�����!���c�(�,�,�w�'���|�|� � �C�I�I�O�O�A�$6�6�6�6��}�}�!�!�S�Y�Y�_�_�Q�%7�7�7�7r4c�
�tjdgddgg�}td|��}|jg}|dd}t	j
||�|j|jdd}t	j
||�y)Nrrfr
)r�from_productrr(r)r�r�)r@rsr�r�r1�res2s      r2�.test_loc_getitem_multiindex_nonunique_len_zerozDTestLocWithMultiIndex.test_loc_getitem_multiindex_nonunique_len_zero�sx��
�
$�
$�q�c�A�q�6�]�
3���Q�b�!���g�g�b�k���r��7��
���s�H�-��w�w�s�x�x��!�}�%��
���t�X�.r4c�t�tdgtjdgdgg��}|jd}|�J�tjdgddgg�}tdgt|�zt|��}|jd}|�J�tdgt|�zt|��}|jd}|dk(sJ�y)	N�Level1�Level2)rr�Level2_a�Level2_brh)rrrf)rrrpr(r�rr )r@r�r��midxs    r2�0test_loc_getitem_access_none_value_in_multiindexzFTestLocWithMultiIndex.test_loc_getitem_access_none_value_in_multiindex	s����d�V�Z�3�3�h�Z�(��4L�M�N�����-�.���~��~��&�&��
�Z��4L�'M�N���d�V�c�$�i�'�v�T�B�����/�0���~��~��a�S�3�t�9�_�F�$�?�����/�0����{��{r4c���tjtgd�gd��ddg��}tgd�|��}d|jd	d
tgd�|��}tj||�y)N)r�r�r�r�r�r�r�r�)r��twor�r
r�r
r�r
�first�secondrb)rfrfrfrfrfrfrfrfr
r�)r�r�)r�r
)rfrfr�r�r�r�rfrf)rr�rrr(r)r�)r@rr�r1s    r2�!test_loc_setitem_multiindex_slicez7TestLocWithMultiIndex.test_loc_setitem_multiindex_slicesh���&�&��H�H�
��H�%�
���0��>��47��
�
�>�.�1��:�%�H��
���v�x�0r4c��tddd��}ttd�|�}|jt	ddd�t	ddd�}tj||�y)NrA�10minr��r)rYilrfi4)rrr�r(rr)r�)r@�timesr�r�s    r2�7test_loc_getitem_slice_datetime_objs_with_datetimeindexzMTestLocWithMultiIndex.test_loc_getitem_slice_datetime_objs_with_datetimeindex,sR���<�g�v�F���U�6�]�E�*������$��1�-���q�!�0D�E��
���v�s�+r4c���ttd�td�d�tdd���}|jddgddgf}td	d
gd	d
gd�t	ddg���}tj||�y)Nrkr�z
2010-01-01z
2010-01-10r
z
2010-01-05r$r#rro)rr�rr(rr)r*r�s    r2�3test_loc_getitem_datetime_string_with_datetimeindexzITestLocWithMultiIndex.test_loc_getitem_datetime_string_with_datetimeindex2s}��
���)�%��)�,��\�<�8�
������|�4�s�C�j�@�A����a�&��1�v�&���|� <�=�
��	���f�h�/r4c	�@�tjgd�ddg��}tddgddgd	d
gddgd
dgddgg|ddg��}|jd��}tddgddgd
dggddg|j	gd����}|j
d}t
j||�y)N)�r�r�r��bah�bamrrrr'r�rbrQrfr�r>rgrl�@ro�@rp�@rmr�r=rr)�level)rrfror�r)rr�rr�r�r(r)r*)r@rsr0r1r�s     r2�3test_loc_getitem_sorted_index_level_with_duplicateszITestLocWithMultiIndex.test_loc_getitem_sorted_index_level_with_duplicates?s���
�
#�
#�
���*�

����a���a���a���a���a���a��

���#�J�
���]�]��]�
#����1�X��Q�x�#�q��*�S�#�J�b�g�g�i�FX�
������'��
���f�h�/r4c��tgd�d��}d|jd<tgd�d��}tj||�y)Nr�categoryr�rrl)r$r#rQrr r��r@r�r1s   r2�1test_additional_element_to_categorical_series_loczGTestLocWithMultiIndex.test_additional_element_to_categorical_series_locas8����z�:����
�
�1�
��,�H�=��
���v�x�0r4c��tgd�d��}d|jd<tgd�d��}tj||�y)Nrr r�r$rl�r$r#rQr$r�r!s   r2�'test_additional_categorical_element_locz=TestLocWithMultiIndex.test_additional_categorical_element_lochs8����z�:����
�
�1�
��.�j�A��
���v�x�0r4c	�
�tgd�ttgd�|�����}tj|j
d<tdddtjgttgd�|�����}t
j||�tj|j
d<tdtjdtjgttgd�|�����}t
j||�y)Nr�r�rlrfr>)rrrr�r�r(r)r�)r@�any_numeric_ea_dtype�srsr1s    r2�&test_loc_set_nan_in_categorical_seriesz<TestLocWithMultiIndex.test_loc_set_nan_in_categorical_seriesos�����"�5��:N�#O�P�
��
�V�V�����
��
��1�b�f�f��"�5��:N�#O�P�
��	���s�H�-��V�V�����
��
�����2�6�6�"�"�5��:N�#O�P�
��	���s�H�-r4�naNc��tgd�d��}||jd<tgd�d��}||jd<tj||�tddd|gd��}tj||�y)	Nrr r�rlr$r$r#rQr�)r@r*�srs_enlarge�srs_setintor1s     r2�,test_loc_consistency_series_enlarge_set_intozBTestLocWithMultiIndex.test_loc_consistency_series_enlarge_set_into�sn���_�J�?���������1��D��������
���{�K�8��3��S�"�-�Z�@��
���{�H�5r4c
��ttjddd�tt	ddg�td�gdgdzdgdzztd�gd	d
g����}t	ddgddgd
d	d��}|jjd}tj||�|jdgjjd}tj||�y)Nr>�r$r#rkrrprf�Index1�Index2)rr�codesrc)r�rFr )rp�orderedr�r=)rr�r�rrr�rrrr)r�r(r�s    r2�5test_loc_getitem_preserves_index_level_category_dtypezKTestLocWithMultiIndex.test_loc_getitem_preserves_index_level_category_dtype�s���
����1�b�!�$��(�#�s��4�e�B�i�@��s�Q�w�!��q��(�%��)�4���*��
��$�
�#�J��S�z����
��������#��
���f�h�/�������$�$�+�+�A�.��
���f�h�/r4�lt_valuerurkc��tdgd�itd�gd�g��}tjtd��5|j
|d|kdd�fj
dgdd�fddd�y#1swYyxYw)	Nr$)r���"�-�aabb�rrfr>rlr
z\['b'\] not in indexr�r#)rr�r�r�rJr()r@r6r0s   r2�>test_loc_multiindex_levels_contain_values_not_in_index_anymorezTTestLocWithMultiIndex.test_loc_multiindex_levels_contain_values_not_in_index_anymore�sn����-�.�t�F�|�\�6R�
S��
�]�]�8�+B�
C�	8��F�F�2�c�7�X�%�q�(�)�-�-�s�e�Q�h�7�	8�	8�	8�s�,A/�/A8c�J�tjtjtjg�}ddg}tj||g�}tddg|��}|jdd�df}tdgtjg��}tj||�y)Nr�r�rrfr
)	r�r�r�rrprr(r)r�)r@�lev1�lev2rsr�r�r1s       r2�'test_loc_multiindex_null_slice_na_levelz=TestLocWithMultiIndex.test_loc_multiindex_null_slice_na_level�s����x�x�������(�)���u�~��
�
#�
#�T�4�L�
1���a��V�2�&������E��"���1�#�b�f�f�X�.��
���v�x�0r4c�8�tjtd�td�ddgggd���}tt	d�|��}|j
d	dd�dd�f}|jjd
�dd}tj|j|�y)N�ab�xyrfr>)rCrD�numrbr�r
r$rro)
rr�r�rr�r(r�	droplevelr)r�)r@rsr��
loc_resultr1s     r2�test_loc_drops_levelz*TestLocWithMultiIndex.test_loc_drops_level�s����
$�
$�
�$�Z��d��a��V�,�4G�
���U�1�X�R�(���W�W�S�!�Q�Y�'�
��9�9�&�&�q�)�"�1�-��
���j�.�.��9r4)r�r�r�r�r�r�r�r�rrr
rrrr"r%r)r�r�r��NAr�r.r5r=rArHrzr4r2r�r��s����[�[�����3�Z�.��=�>��3�Z�.��=�>��C�j�1�a�&�
!�$8�,�#G�H��C�j�1�a�&�
!�$8�,�#G�H��C�j�1�a�&�
!�$8�,�#G�H��C�j�1�a�&�
!�$8�,�#G�H��C�j�1�a�&�
!�O�Y�#?�@�	
���[�[���U�W�i�$8�9�:�:��:�8�/��"1�$,�0� 0�D1�1�.�*�[�[���T�B�F�F�B�E�E�4����#@�A�
6�B�
6�0�2�[�[���Z�"�b��2�8�3�8�
1�
:r4r�c�.�eZdZd�Zd�Zd�Zd�Zd�Zejjdd�d�d	�d
�ggd���d
��Zd�Zd�Z
d�Zd�Zejj!d�d��Zejjdgd��d��Zd�Zy)�TestLocSetitemWithExpansionc�0�d}|j�5|jtd|�tdt	|�id��}||j
|<ddd�tdt	|dz�id��}t
j|�y#1swY�;xYw)N�2�_SIZE_CUTOFFr�rEr�rf)�context�setattr�libindexrr�r(r)r*)r@�monkeypatch�size_cutoffr�r1s     r2�/test_loc_setitem_with_expansion_large_dataframezKTestLocSetitemWithExpansion.test_loc_setitem_with_expansion_large_dataframe�s�����
�
 �
 �
"�	2�����.�+�F���U�;�%7�8��H�F�&1�F�J�J�{�#�	2��c�5��q��#9�:�'�J��
���f�h�/�	2�	2�s�?B�Bc���tt��}d|jd<tj|tdgdg���d|jd<tj|tddgddg���y)Nr�rfr
rl�rr r(r)r��r@r�s  r2�test_loc_setitem_empty_seriesz9TestLocSetitemWithExpansion.test_loc_setitem_empty_series�sb���6�"�������
�
���s�F�A�3�q�c�$:�;������
�
���s�F�A�q�6�!�Q��$@�Ar4c���tt��}d|jd<tj|tdgdg���d|jd<tj|tddgddg���y)Nr�rQrfr
rgrlrVrWs  r2�#test_loc_setitem_empty_series_floatz?TestLocSetitemWithExpansion.test_loc_setitem_empty_series_float�sb���6�"�������
�
���s�F�C�5���$<�=������
�
���s�F�C��:�a��V�$D�Er4c
��tt��}d|jd<tj|tdgtdgt�����d|jd<tj|tddgtddgt�����d|jd<tj|tgd�tgd	�t�����y)
Nr�rfr�r
rlr�ro)rfrlro)r�r�rl)rr r(r)r�rrWs  r2�%test_loc_setitem_empty_series_str_idxzATestLocSetitemWithExpansion.test_loc_setitem_empty_series_str_idx�s����6�"��������
���s�F�A�3�e�U�G�6�6R�$S�T�������
������A��e�U�E�N�&�&I�J�	
������
�
�����	��/@��)O�P�	
r4c�$�tdddtd���}td�D�cgc]}|t|dz��z��}}t	d	g|d	g�
�}|D]}d|j
|<�t	d|�
�}t
j||�ycc}w)Nr�r�rf�
US/Pacific)�tzinfo�r�)�secondsrr
)rrr�rrr(r)r�)r@�baser��idxsr�rXr1s       r2�%test_loc_setitem_incremental_with_dstzATestLocSetitemWithExpansion.test_loc_setitem_incremental_with_dst�s�����b�!�E�,�,?�@��;@��9�E�a��y��S��1�1�E��E����D��G�9�-���	�B��F�J�J�r�N�	��!�4�(��
���v�x�0��Fs�B
�convc��|Sryrzr4s r2r5z$TestLocSetitemWithExpansion.<lambda>s��a�r4c�"�|j�Sry)�
to_datetime64r4s r2r5z$TestLocSetitemWithExpansion.<lambda>�
��a�o�o�'�r4c�"�|j�Sry)�
to_pydatetimer4s r2r5z$TestLocSetitemWithExpansion.<lambda>rir4c�,�tj|�Sry)r�r�r4s r2r5z$TestLocSetitemWithExpansion.<lambda>	s��b�m�m�A�&�r4)r@rhrkz
np.datetime64)�idsc��td�}td�}t�}d|j||�df<d|j||�df<tdddgi||gtdgt���	�}tj||�y)
Nz20130101 09:00:00z20130101 10:00:00r�r�r�gY@gi@r�r)rrr(rr r)r*)r@re�dt1�dt2r0r1s      r2�#test_loc_setitem_datetime_keys_castz?TestLocSetitemWithExpansion.test_loc_setitem_datetime_keys_casts����+�,���+�,��
�[��#&����t�C�y�%�� �#&����t�C�y�%�� ��
�U�E�N�#���*��5�'��0�
��
	���b�(�+r4c��tddgi�}tdg|��|jdd�df<tdgtdg|��d��}tj||�y)Nr'rfr#)r4r�r�r�)r@r4r�r1s    r2�1test_loc_setitem_categorical_column_retains_dtypezMTestLocSetitemWithExpansion.test_loc_setitem_categorical_column_retains_dtypesW���C�!��:�&��(�#���@��
�
�1�c�6���A�3�[�#���-P�Q�R��
���f�h�/r4c�~�tdd��}tdd��}tdd��}t||dd��}||vsJ�t|d	g�
�}d|j|d	f<ttj
gt
|�zdgz|jt|g��d	gt��}tj||�y)
Nz2017-10-29 00:00:00+0200z
Europe/Madrid�r}z2017-10-29 03:00:00+0100z2016-10-10 03:00:00�leftry)�	inclusiver)r$rr�r�)rrrr(r�r�r�appendrr r)r*)r@rX�endrXrSr�r1s       r2�0test_loc_setitem_with_expansion_and_existing_dstzLTestLocSetitemWithExpansion.test_loc_setitem_with_expansion_and_existing_dst#s����4��I���2��G��
�,��
A�����v�C�@����}��}���w�i�8��"$��
�
�2�w�;���
�V�V�H�s�3�x��2�$�&��*�*�]�B�4�0�1��I��	
��	���f�h�/r4c��ttddg�dg��}ddg|d<|jd�jj	d�|_||jdk(jd�jjd	�}|j�}||j|jdk(df<t|d
jd�|jdgd��}tj|j
|�|j|jdk(dftd
�z}||j|jdk(df<tj|j|jdk(df|�y)Nz2015-03-30 20:12:32z2015-03-12 00:11:11r)r�r<�new�old�new_colr�r^r)rfrr��1s)rrr�rr�rr~�
tz_convertr�r(rr)r�r)r@r0�vr�r1s     r2�test_setitem_with_expansionz7TestLocSetitemWithExpansion.test_setitem_with_expansion5sK��
��3�5J�K�L��H�
������9�
��,�,�v�&�,�,�8�8��?����r�z�z�U�"�#�-�-�f�5�;�;�F�F�|�T���g�g�i��01�������u�$�f�,�-��1�Q�4�?�?�5�1�2�6�6�)�3D�E�F�S��
���s�x�x��2��F�F�2�:�:��&��.�/�)�D�/�A��./����r�z�z�U�"�F�*�+�
���r�v�v�b�j�j�E�&9�6�&A�B�A�Fr4c�.�t�}d|jd<d|jd<d|jdtjf<|j}tddtjgtj��}tj||�y)Nrfr�r>)rfrfrlrr�)	rr(r��infr<rr�r)r�r�s    r2�0test_loc_setitem_with_expansion_inf_upcast_emptyzLTestLocSetitemWithExpansion.test_loc_setitem_with_expansion_inf_upcast_emptyKsl��
�[������t������t������q�"�&�&�y�������!�Q�����r�z�z�:��
���f�h�/r4z"ignore:indexing past lexsort depthc�>�t|�stjd�|jd�}t|�}t	j
|�j
tj�}t||dg��}d}||vsJ�|jt|�|�}t|t�r
|dd|k(sJ�|d|k(sJ�t	j
|dz�j
tj�}t||dg��}|j�}	||	j|df<tj |	|�|j�d}
||
j|<|dj
tj�}tj"|
|�|j�}	||	j|df<tt%|�tj&gztj&g|zt)|�gzd�|�	�}tj |	|�y)
NzNot relevant for empty Indexr>rr�kapowrrf�rrfr
)rr��skip�repeatr�r�rrEr�insertr�rr�r�r(r)r*r�r�r�r�)r@r�N�arr�origrar��exp_datar1r0r�s           r2�/test_loc_setitem_with_expansion_nonunique_indexzKTestLocSetitemWithExpansion.test_loc_setitem_with_expansion_nonunique_indexVs����5�z��K�K�6�7����Q�����J���i�i��l�!�!�"�(�(�+����E�A�3�7�����%�����L�L��U��S�1�	��e�Z�(��R�=��#�s�*�*�*��R�=�C�'�'�'��9�9�Q��U�#�*�*�2�:�:�6���X�Y���D���Y�Y�[������s�A�v��
���b�(�+��i�i�k�!�n���������A�;�%�%�b�h�h�/��
���s�H�-��Y�Y�[������s�A�v����S�	�R�V�V�H�$�"�&�&��A���q��
�)B�C��
��	���b�(�+r4r=)�Int32�Int64�UInt32�UInt64�Float32�Float64c�t�tgd�|��}td|i�}t|j��}||j|jdf<t	j
||d��t|j��}|j|j|jdf<t	j
||d��y)Nr<r�r�r
F�r�)rrrr(r)r*r�)r@r=r�r0r�s     r2�6test_loc_setitem_with_expansion_preserves_nullable_intzRTestLocSetitemWithExpansion.test_loc_setitem_with_expansion_preserves_nullable_int�s���
�\��/��
���}�
%������*��'*��
�
�2�8�8�V�#�$�
���f�b�E�B�����*��'*�{�{��
�
�2�8�8�V�#�$�
���f�b�E�Br4c��tdtd�i�}tddd��}||jgd�df<|j	ttjtjg|j�	��}ttd�|d
��}|jd|jk(sJ�tj||�y)Nr'rp�
2016-01-01rlr^�rYr}rer�r�r�)rr�rr(rxrr�r�r=r�r)r*)r@r0rD�bexr1s     r2�#test_loc_setitem_ea_not_full_columnz?TestLocSetitemWithExpansion.test_loc_setitem_ea_not_full_column�s���
��U�1�X��
'����q�\�B��!$����y�#�~���j�j��������'7�s�y�y�I�J���5��8�#�6�7�����s�#�s�y�y�0�0�0�
���b�(�+r4N)r�r�r�rTrXrZr\rdr�r�r�rqrsrzr�r�r�r�r�r�rzr4r2rKrK�s���0�B�F�
� 1��[�[�����'�'�&�		
�
H��	�
,�	�
,�0�0�$G�,	0��[�[��� D�E�+,�F�+,�Z�[�[����M��C��C�,r4rKc�$�eZdZd�Zd�Zd�Zd�Zy)�TestLocCallablec���tgd�td�gd�d��}|jd�}tj||j|j
dkD�|jd�dd�f}tj||j|jdk(dd�f�|jd�d	�f}tj||j|j
dkDgd
�f�|jd�d�f}tj||j|j
dkDd
f�|jd�d�f}tj||j|j
dkDdd
gf�|jd�d�f}tj||j|j
dk(dd
gf�|jd�d�f}||jdk(sJ�y)N�rfr>rlror;r�c� �|jdkDS�Nr>�r'r4s r2r5zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>����q�s�s�Q�w�r4r>c� �|jdk(S)Nr#)r�r4s r2r5zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>�s��q�s�s�c�z�r4r#c� �|jdkDSr�r�r4s r2r5zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>�r�r4c� �|jdk(S�Nr�r�r4s r2r5zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>�s��!�)�)�s�2B�r4)FTFc� �|jdkDSr�r�r4s r2r5zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>�r�r4c��yr�rzr4s r2r5zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>���r4r�c� �|jdkDSr�r�r4s r2r5zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>�r�r4c�
�ddgS�Nr'r�rzr4s r2r5zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>�s
��3��*�r4r'c� �|jdk(Sr�r�r4s r2r5zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>�s��q�s�s�a�x�r4c�
�ddgSr�rzr4s r2r5zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>�s
��C��:�r4c��y)Nrfrzr4s r2r5zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>�r�r4c��yr&rzr4s r2r5zATestLocCallable.test_frame_loc_getitem_callable.<locals>.<lambda>�r�r4r�)rr�r(r)r*r'r�r��r@r0r�s   r2�test_frame_loc_getitem_callablez/TestLocCallable.test_frame_loc_getitem_callable�s���
�\��V��<�P�
Q���f�f�&�'��
���c�2�6�6�"�$�$��(�#3�4��f�f�)�1�,�-��
���c�2�6�6�"�$�$�#�+�q�.�#9�:��f�f�&�(B�B�C��
���c�2�6�6�"�$�$��(�4H�*H�#I�J��f�f�&�
�5�6��
���s�B�F�F�2�4�4�!�8�S�=�$9�:��f�f�&�(<�<�=��
���c�2�6�6�"�$�$��(�S�#�J�*>�#?�@��f�f�'�)=�=�>��
���c�2�6�6�"�$�$�!�)�c�3�Z�*?�#@�A��f�f�[�-�/�0���b�f�f�V�n�$�$�$r4c��tgd�td�gd�d��}|jd�ddgf}tj||j|j
dkDddgf�|jddgd	�f}tj||jddgddgf�|jdd
�f}tj||jdddgf�y)Nr�r;r�c� �|jdkDSr�r�r4s r2r5zITestLocCallable.test_frame_loc_getitem_callable_mixture.<locals>.<lambda>�r�r4r'r�r>rlc�
�ddgSr�rzr4s r2r5zITestLocCallable.test_frame_loc_getitem_callable_mixture.<locals>.<lambda>�s
���S�z�r4c�
�ddgSr�rzr4s r2r5zITestLocCallable.test_frame_loc_getitem_callable_mixture.<locals>.<lambda>�s
��3��*�r4)rr�r(r)r*r'r�r�s   r2�'test_frame_loc_getitem_callable_mixturez7TestLocCallable.test_frame_loc_getitem_callable_mixture�s���
�\��V��<�P�
Q���f�f�&��c�
�2�3��
���c�2�6�6�"�$�$��(�S�#�J�*>�#?�@��f�f�a��V�1�1�2��
���c�2�6�6�1�a�&�3��*�*<�#=�>��f�f�Q�,�,�-��
���s�B�F�F�1�s�C�j�=�$9�:r4c���tgd�td�d�td���}|jd�}tj||jddg�|jd	�dd�f}tj||jddgdd�f�|jd
�d�f}tj
||jddgdf�|jd
�d�f}tj||jddgdgf�|jddgd�f}tj
||jddgdf�|jddgd�f}tj||jddgdgf�|jd�df}tj
||jddgdf�|jd�dgf}tj||jddgdgf�y)Nr�r;��Xrwr�r
c�
�ddgS�Nr'r�rzr4s r2r5zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>��
���S�z�r4r'r�c�
�ddgSr�rzr4s r2r5zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>�r�r4c�
�ddgSr�rzr4s r2r5zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>�r�r4c��y�Nr�rzr4s r2r5zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>�r�r4r�c�
�ddgSr�rzr4s r2r5zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>�r�r4c��dgSr�rzr4s r2r5zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>�s��c�U�r4c��yr�rzr4s r2r5zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>�r�r4c��dgSr�rzr4s r2r5zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>�s��C�5�r4c�
�ddgSr�rzr4s r2r5zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>�r�r4c�
�ddgSr�rzr4s r2r5zHTestLocCallable.test_frame_loc_getitem_callable_labels.<locals>.<lambda>�r�r4)rr�r(r)r*r�r�s   r2�&test_frame_loc_getitem_callable_labelsz6TestLocCallable.test_frame_loc_getitem_callable_labels�s���
�\��V��=�T�&�\�
R���f�f�)�*��
���c�2�6�6�3��*�#5�6��f�f�)�1�,�-��
���c�2�6�6�3��*�a�-�#8�9��f�f�)�=�8�9��
���s�B�F�F�C��:�s�?�$;�<��f�f�)�?�:�;��
���c�2�6�6�3��*�s�e�*;�#<�=��f�f�c�3�Z��.�/��
���s�B�F�F�C��:�s�?�$;�<��f�f�c�3�Z��0�1��
���c�2�6�6�3��*�s�e�*;�#<�=��f�f�)�3�.�/��
���s�B�F�F�C��:�s�?�$;�<��f�f�)�C�5�0�1��
���c�2�6�6�3��*�s�e�*;�#<�=r4c��tgd�ttd�t��d�td���}|j	�}d|j
d�<|j	�}d|j
d	d
g<t
j||�|j	�}d|j
d�dd�f<|j	�}d|j
d	d
gdd�f<t
j||�|j	�}d
|j
d�d�f<|j	�}d
|j
d	d
gdf<t
j||�|j	�}ddg|j
d�d�f<|j	�}ddg|j
d	d
gdgf<t
j||�|j	�}tjd
dg�|j
d	d
gd�f<|j	�}tjd
dg�|j
d	d
gdf<t
j||�|j	�}d|j
d	d
gd�f<|j	�}d|j
d	d
gdgf<t
j||�|j	�}d|j
d�df<|j	�}d|j
d	d
gdf<t
j||�|j	�}d|j
d�dgf<|j	�}d|j
d	d
gdgf<t
j||�y)Nr�r;r�r�r�r
i��c�
�ddgSr�rzr4s r2r5zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>��
��3��*�r4r'r�rZc�
�ddgSr�rzr4s r2r5zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>�r�r4rc�
�ddgSr�rzr4s r2r5zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>	r�r4c��yr�rzr4s r2r5zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>	r�r4r�rprkc�
�ddgSr�rzr4s r2r5zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>	r�r4c��dgSr�rzr4s r2r5zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>	s����r4rc��yr�rzr4s r2r5zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>
	r�r4c��dgSr�rzr4s r2r5zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>	s��s�e�r4c�
�ddgSr�rzr4s r2r5zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>	r�r4���c�
�ddgSr�rzr4s r2r5zATestLocCallable.test_frame_loc_setitem_callable.<locals>.<lambda>	r�r4)
rrr�r r�r(r)r*r�r�)r@r0r�r�s    r2�test_frame_loc_setitem_callablez/TestLocCallable.test_frame_loc_setitem_callable�s���
��V�D��L��%G�H��v�,�
���g�g�i��(+����$�%��g�g�i��!�����c�
��
���c�3�'��g�g�i��+-����$�a�'�(��g�g�i��!#�����c�
�A�
��
���c�3�'��g�g�i��79����$�m�3�4��g�g�i��#%�����c�
�C�� �
���c�3�'��g�g�i��:;�R�����$�o�5�6��g�g�i��&'��W�����c�
�S�E�!�"�
���c�3�'��g�g�i��-/�X�X�r�2�h�-?�����c�
�M�)�*��g�g�i��#%�8�8�R��H�#5�����c�
�C�� �
���c�3�'��g�g�i��/1�����c�
�O�+�,��g�g�i��%'�����c�
�S�E�!�"�
���c�3�'��g�g�i��-/����$�c�)�*��g�g�i��#%�����c�
�C�� �
���c�3�'��g�g�i��/1����$�s�e�+�,��g�g�i��%'�����c�
�S�E�!�"�
���c�3�'r4N)r�r�r�r�r�r�r�rzr4r2r�r��s��%�8;�>�<7(r4r�c�l�eZdZd�Zd�Zd�Zd�Zejjdddg�d��Z
y)	�TestPartialStringSlicingc���tgd�gd�d�tgd����}tddgdd	gd�td
dg���}|jd}tj||�y)
Nrr�)r�r�)�
2020-08-01z
2020-07-02�
2020-08-05r
r$rQrfrlr�r�z2020-08)rrr(r)r*r�s    r2�5test_loc_getitem_partial_string_slicing_datetimeindexzNTestPartialStringSlicing.test_loc_getitem_partial_string_slicing_datetimeindex&	sf��
�$�i�8��H�I�
����3�Z�!�Q��0��|�\�:�;�
�����	�"��
���f�h�/r4c��tjddd��}|j�}|jdd}|jdd}tj||�y)N�
2017-01-01�
2018-01-01rx�rXryr)z2017-12r)r��period_range�	to_seriesr(r�r)r�)r@�pir�r�r1s     r2�8test_loc_getitem_partial_string_slicing_with_periodindexzQTestPartialStringSlicing.test_loc_getitem_partial_string_slicing_with_periodindex3	sN��
�_�_�<�\��
L���l�l�n������)�$���8�8�C�R�=��
���v�x�0r4c��tddd��}|j�}|jdd}|jdd}t	j
||�y)N�1 day�2 days�1hr�z1 daysr)rr�r(r�r)r�)r@r�r�r�r1s     r2�;test_loc_getitem_partial_string_slicing_with_timedeltaindexzTTestPartialStringSlicing.test_loc_getitem_partial_string_slicing_with_timedeltaindex;	sJ��
�7��t�
D���l�l�n������(�#���8�8�C�R�=��
���v�x�0r4c���tdtd�ittd�d����}|jd}|jd}tj||�y)Nr�rl�daysrgr
r�0 days)rr�rr�r(r)r�)r@r0r1�sliceds    r2�#test_loc_getitem_str_timedeltaindexz<TestPartialStringSlicing.test_loc_getitem_str_timedeltaindexC	sL��
��U�1�X��l�5��8�&�.Q�
R���7�7�1�:������!��
���v�x�0r4�indexer_endN�2020-01-02 23:59:59.999999999c��|dgdzttd�td�td�td�td�g|���	�}|dgd
zttd�td�g|���	�}td|�}||}tj||�|j
|}tj||�y)Nrfrpz
2019-12-30z
2020-01-01z
2019-12-25r�z
2019-12-19rur
r>)rrr�r)r�r()r@�tz_aware_fixturer�r.rMr1r�r�s        r2�/test_loc_getitem_partial_slice_non_monotonicityzHTestPartialStringSlicing.test_loc_getitem_partial_slice_non_monotonicityJ	s���
�
�C�!�G���l�+��l�+��l�+��=�>��l�+��$�	�
��#�
�C�!�G���l�+��=�>��$��	
����k�2���W���
�����)�����!��
�����)r4)r�r�r�r�r�r�r�r�r�r�r�rzr4r2r�r�%	sB��0�1�1�1��[�[���]�T�3R�,S�T�!*�U�!*r4r�c�H�eZdZd�Zd�Zejjdejddd��e
dd	d
��g�d��Zd�Zd
�Z
ejjdejdd�dedd�gejdd�ejdd�edd�gdejdd�edd�gg�d��Zejjdddg�d��Zejjdddg�d ��Zd!�Zy)"�TestLabelSlicingc
�*�ttjdd��dD�cgc]}tdd|dd���c}�	�}ttjd
d��dD�cgc]}tdd|dd���c}�	�}||fD�]}|jtdddd�d}tj||�|jdtdddd�}tj||�|jtdddd�tdddd�}tj||�|jtdddd
�d}|jdd}tj||�|jdd}tj||���
ycc}wcc}w)Nrr�r�r�i�rfrkrr
r)rfr>r>rlroror�z20010101 11)rr�r�rr(r)r*r�)r@r��	df_unique�df_dupsr0r�r1s       r2�(test_loc_getitem_slicing_datetimes_framez9TestLabelSlicing.test_loc_getitem_slicing_datetimes_framep	sw����I�I�c��+�9E�F�A�8�D�!�Q��B�/�F�
�	���I�I�c��+�9H�I�A�8�D�!�Q��B�/�I�
��
�g�&�	4�B��V�V�H�T�1�a��4�6�7�F��!�!�&�"�-��V�V�6�h�t�Q��2�6�7�F��!�!�&�"�-��V�V�H�T�1�a��4�x��a��B�7O�P�F��!�!�&�"�-��V�V�H�T�1�a��4�6�7�F��w�w�q�r�{�H��!�!�&�(�3��V�V�M�N�+�F��!�!�&�(�3�	4��G��Js�F
�F
c��tdddd��}tgd�|��}tdd�	�}td
d�	�}|j||}tddg|dd
��}t	j
||�||}d}||k(sJ�y)Nz2017-10-29 01:30:00z
Europe/Berlinrpz30 min)r}rYr))rrfr>rlror
z2017-10-29 02:30:00+02:00ruz2017-10-29 02:00:00+01:00r>rlro)rrrr(r)r�)r@rS�series2�t_1�t_2r�r1s       r2�'test_loc_getitem_label_slice_across_dstz8TestLabelSlicing.test_loc_getitem_label_slice_across_dst�	s����!�o�q�x�
�����4���3��H���3��H�����S��%���1�a�&��A�a��1��
���v�x�0���������!�!�!r4rr�r�rxr�r�r�r�c��|j�}|jd|d}|jdd}tj||�y)Nrr)r�r(r�r)r�)r@rr�r�r1s     r2�-test_loc_getitem_label_slice_period_timedeltaz>TestLabelSlicing.test_loc_getitem_label_slice_period_timedelta�	sC���o�o�������5��9�%���8�8�C�R�=��
���v�x�0r4c�8�gd�}ttjjd�jd�|��}|jdd}t|�dk(sJ�|jdd}t|�dk(sJ�|jdd}t|�d	k(sJ�y)
N)g�x"p|�@g\Va��|�@g����|�@r>�rlr>r
g3333c|�@g�|�@g3333�|�@g�����|�@rl)rr�r�r�r(r)r@rr0�s1s    r2�%test_loc_getitem_slice_floats_inexactz6TestLabelSlicing.test_loc_getitem_slice_floats_inexact�	s���:��
�r�y�y�,�,�Q�/�6�6�v�>�e�
L��
�V�V�G�G�
$���2�w�!�|��|�
�V�V�G�G�
$���2�w�!�|��|�
�V�V�G�G�
$���2�w�!�|��|r4c���|}ttjjd�jd�tjdd|����}t|jdd�dk(sJ�t|jdd�d	k(sJ�tjdd|��}d
|d<||_t|jdd�dk(sJ�t|jdd�d	k(sJ�y)Nr>rkrZr�r
ror�g)@rngffffff(@)rr�r�r�r�rr(r)r@rdr=r�rSs     r2�'test_loc_getitem_float_slice_floatindexz8TestLabelSlicing.test_loc_getitem_float_slice_floatindex�	s���!����I�I�!�!�!�$�+�+�B�/�r�y�y��R�u�7U�
���3�7�7�4�5�>�"�a�'�'�'��3�7�7�4�5�>�"�a�'�'�'��i�i��B�e�,����A����	��3�7�7�4�5�>�"�a�'�'�'��3�7�7�4�5�>�"�a�'�'�'r4zstart,stop, expected_slicer�nsNr�rfr=rmrnrorpc��ttd�tdd��}|jt	||�}|j
|}t
j||�y)Nr�r�z10 days)rr�rr(r�r�r)r�)r@rX�stop�expected_slicer�r�r1s       r2�$test_loc_getitem_slice_label_td64objz5TestLabelSlicing.test_loc_getitem_slice_label_td64obj�	sN���U�2�Y���)� D�E������u�d�+�,���8�8�N�+��
���v�x�0r4rX�2018�2020c���|gd�td�td�td�g��}tjtd��5|j|dddd�y#1swYyxYw)	Nr��2016�2019�2017r
z,Value based partial slicing on non-monotonicr�r�)rr�r�rJr()r@r.rXrMs    r2�)test_loc_getitem_slice_unordered_dt_indexz:TestLabelSlicing.test_loc_getitem_slice_unordered_dt_index�	sa�����V�$�i��&7��6�9J�K�
���]�]��J�
�	"�
�G�G�E�&�!�	"�	"�	"�s�A�A(r$rNc��|td�|dddg��}|j|d}|td�|dddg��}tj||�y)Nrorr>�thirdr
)r�r(r)r�)r@r.r$rMr�r1s      r2�1test_loc_getitem_slice_labels_int_in_object_indexzBTestLabelSlicing.test_loc_getitem_slice_labels_int_in_object_index�	sT���e�A�h�u�g�q�'�.J�K������w�'��"�5��8�E�7�A�w�3O�P��
�����)r4c��tdddd�dg��}tddggdgtddgt����}tj|j
dd�dd�f|�y)	Nrfr>rl)�testrfr>rr
r�)r�rr<)rrr r)r*r(r�s   r2�*test_loc_getitem_slice_columns_mixed_dtypez;TestLabelSlicing.test_loc_getitem_slice_columns_mixed_dtype�	s[��
��a�A�.�q�c�
:����a�&��!��e�Q��F�&�.I�
��	���b�f�f�Q���U�m�X�6r4)r�r�r�r�rr�r�r�r�r�rrrr
r�r�r�rrrrrzr4r2r�r�o	sF��4�:"�"�[�[�����B�O�O�,�L�s�K��'�x�d�C�	
��1��1��
(��[�[���$�
�R�^�^�A�t�
$�d�E�!�R�L�9�
�R�^�^�A�s�
#�^�R�^�^�A�s�%;�U�1�a�[�I�
�>�2�>�>�!�S�)�5��A�;�7�	
��1��1��[�[���W�v�v�&6�7�"�8�"��[�[���W�q�#�h�/�*�0�*�7r4r�c��eZdZejjdddg�d��Zejjdddg�d��Zd�Zy)�TestLocBooleanLabelsAndSlices�
bool_valueTFc��|�d�}|jdk7r>||d��}tjt|��5|j|ddd�yy#1swYyxYw)Nz7: boolean label can not be used without a boolean indexr6r rHr�)r�r�r�rJr()r@rr.r�messagerMs      r2�'test_loc_bool_incompatible_index_raiseszETestLocBooleanLabelsAndSlices.test_loc_bool_incompatible_index_raises�	sd��
 �L� W�X�����)�+�!��X�>�C����x�w�7�
$����
�#�
$�
$�,�
$�
$�s�A�Ac�P�|tddgd��d��}|j|y)NTFr6r�r rH)rr()r@r.rrMs    r2�test_loc_bool_should_not_raisez<TestLocBooleanLabelsAndSlices.test_loc_bool_should_not_raise�	s*�����u�
�Y�7�x�
��	���
�r4c��d}||d��}tjt|��5|jddddd�y#1swYyxYw)NzEslice\(True, False, None\): boolean values can not be used in a slicer rHr�TF)r�r�r�r()r@rr.r!rMs     r2�test_loc_bool_slice_raisesz8TestLocBooleanLabelsAndSlices.test_loc_bool_slice_raises
sL��
U�	��E��:��
�]�]�9�G�
4�	 ��G�G�D���	 �	 �	 �s�A�A
N)	r�r�r�r�r�r�r"r$r&rzr4r2rr�	sW���[�[���\�D�%�=�9�$�:�$��[�[���\�D�%�=�9��:�� r4rc��eZdZd�Zej
j
dddg�d��Zd�Zd�Z	e
jd��Zd	�Z
d
�Zd�Zd�Zy)
�TestLocBooleanMaskc	��tdtd�i�}ttd�d��|_|ddkD|ddk(|ddkg}gd�gd�gd�g}t	||�D]`\}}|j�}d|j|df<t|ttd�d��dgd	�
�}tj||��by)Nr�rkrrgrl)
rrfr>rlrkrkrkrkrkrk)
rrfr>rkrorprmrnr�r�)
rkrkrkrlrorprmrnr�r�rEr�)	rr�rrrr�r(r)r*)r@r0�
conditions�
expected_data�condr�r�r1s        r2�)test_loc_setitem_bool_mask_timedeltaindexz<TestLocBooleanMask.test_loc_setitem_bool_mask_timedeltaindex
s���
��U�2�Y�'�
(����b�	��4�����g��k�2�c�7�a�<��C��1��=�
�0�+�-�
�
�
�j�-�8�
	4�J�D�$��W�W�Y�F�$&�F�J�J�t�S�y�!� ��"�5��9�3�7����	�H�
�!�!�(�F�3�
	4r4r}Nr�c���tjgd��}tdd|��}tdtjd�i|��jd�}|j
�}|j|dd�f|j|dd�f<tj||�|j
�}|j||j|<tj||�y)Nr~�20010101ror�r$r
r�)
r�r�rrr�rr�r(r)r*)r@r}r8rSr0r�s      r2�+test_loc_setitem_mask_with_datetimeindex_tzz>TestLocBooleanMask.test_loc_setitem_mask_with_datetimeindex_tz'
s����x�x�2�3����Q�2�6��
��R�Y�Y�q�\�*�#�
6�
=�
=�i�
H������� �f�f�T�1�W�o��
�
�4��7��
���f�b�)�������6�6�$�<��
�
�4��
���f�b�)r4c	��ttjd�jdd�t	d�tddd����}|j
�}|jd	gtjtjgz|d
<|jdk}|j|j|j|d
f<tj||�y)Nrrlr>�ABr&r�)rYr)r�rr�rf)rr�r�r�r�rr�rr�r�r'r(r)r*)r@r0r1r8s    r2�2test_loc_setitem_mask_and_label_with_datetimeindexzETestLocBooleanMask.test_loc_setitem_mask_and_label_with_datetimeindex8
s�����I�I�c�N�"�"�1�a�(���J��Z���>�
��
�7�7�9��!����*�+�r�v�v�r�v�v�.>�>���
��t�t�a�x���F�F�4�L�.�.����t�S�y��
���b�(�+r4c�d�td�}td�}tdt||g�i�}|j�}t|g�}|djdj
}||jddg<|djdj
}||k(sJ�tj||�y)Nrl
,GsO1�colrfTF)	rrrr�r��_valuer(r)r*)r@�td1�td2r0�df_copyr�r1r�s        r2�'test_loc_setitem_mask_td64_series_valuez:TestLocBooleanMask.test_loc_setitem_mask_td64_series_valueG
s�����l���)�*��
��v�s�C�j�1�2�
3���'�'�)���c�U�m���e�9�>�>�!�$�+�+�� #�����e�}���E�����"�)�)���6�!�!�!�
���b�'�*r4c��|j�}|ddkD}d|j|df<|jj�}d||jdf<t||j|j
��}t
j||�y)Nr'rr�rfr)r�r(r�rrr<r)r*)r@rRr1r8r�s     r2�#test_loc_setitem_boolean_and_columnz6TestLocBooleanMask.test_loc_setitem_boolean_and_columnV
s}���#�#�%���3��!�#��%&�����c�	�"����%�%�'��!"��t�{�{�A�~���V�8�>�>�8�CS�CS�T��
���k�8�4r4c�,�tgd�gd�d��}tdgd�igd���|jgd�dgf<tgd	�gd�d��}tj||�tgd�gd�d��}t	gd
�gd���|jgd�dgf<tj||�tgd�gd�d��}t	gd
�gd���|jgd�df<tj||�tgd�gd�d��}|j�}|d}tj|�5t	gd
�gd���|jgd�<ddd�|rtj||�ytj||�y#1swY�9xYw)Nr�r�r�r$r�)r>rfrr
)FFT)rfr>rkr�)rr(r)r*rr�r�)r@r�r�r0r1r�r�s       r2�)test_loc_setitem_ndframe_values_alignmentz<TestLocBooleanMask.test_loc_setitem_ndframe_values_alignmentb
sW���Y�Y�7�
8��.7�
�,��y�/
����#�c�U�*�+��:�I�>�?��
���b�(�+��Y�Y�7�
8��.4�\��.S����#�c�U�*�+�
���b�(�+��Y�Y�7�
8��,2�<�y�,Q����#�S�(�)�
���b�(�+�
�Y�Y�7�
8���'�'�)����g��
�
"�
"�#5�
6�	R�,2�<�y�,Q�C�G�G�(�)�	R���!�!�"�g�.��!�!�"�h�/�	R�	R�s�1!F
�
Fc��tggd�t��}|j�}|dj�|jt	j
gtj��dgf<tj||�y)Nr�r�r$�	rr r�r(r�r��bool_r)r*r�s   r2� test_loc_indexer_empty_broadcastz3TestLocBooleanMask.test_loc_indexer_empty_broadcast�
s\��
�R�b�)��
8���7�7�9��68��g�l�l�n����r�x�x��"�(�(�+�c�U�2�3�
���b�(�+r4c�
�tdgdgd�t��}|j�}|dj�|jt	j
dgtj��dgf<tj||�y)Nr�rXr�r�r#Fr$r@r�s   r2�$test_loc_indexer_all_false_broadcastz7TestLocBooleanMask.test_loc_indexer_all_false_broadcast�
sb��
�c�U�#��/�v�
>���7�7�9��;=�c�7�<�<�>����r�x�x���r�x�x�0�3�%�7�8�
���b�(�+r4c��tdgdgd�t��}tdgdgd�t��}|dj�|jt	j
dgtj��dgf<tj||�y)Nr�rXr�r�r#Tr$r@r�s   r2�test_loc_indexer_length_onez.TestLocBooleanMask.test_loc_indexer_length_one�
sl��
�c�U�#��/�v�
>���C�5��u�5�V�D��:<�S�'�,�,�.����r�x�x���b�h�h�/�#��6�7�
���b�(�+r4)r�r�r�r-r�r�r�r0r3r:�td�skip_array_manager_invalid_testr<r>rBrDrFrzr4r2r(r(
si��4�,�[�[���T�D�%�=�1�*�2�*� 
,�
+��'�'�	5�(�	5�0�@,�,�,r4r(c���eZdZejjdd�ejeg�d��Z	d�Z
d�Zejjdddg�d	��Zd
�Z
y)�TestLocListliker�c��|Sryrzr4s r2r5zTestLocListlike.<lambda>�
s��q�r4c�L�tddtjg�}tt	d�|��}|j
||�}t
j||�|||�}t
j||�|j�j
||�}t
j||j��|dd}|dd}d}tjt|��5|j
||�ddd�tjt|��5|||�ddd�tjt|��5|j�j
||�ddd�y#1swY��xYw#1swY�]xYw#1swYyxYw)	Nr'r�rlr
rrfr
r�)
rr�r�rr�r(r)r�r�r*r�r�rJ)r@r��cir�r��ser2�ci2r�s        r2�8test_loc_getitem_list_of_labels_categoricalindex_with_nazHTestLocListlike.test_loc_getitem_list_of_labels_categoricalindex_with_na�
sX���s�C����0�
1���U�1�X�R�(������R��!��
���v�s�+��S��W���
���v�s�+�����#�#�C��G�,��
���f�c�l�l�n�5��3�B�x�����f����
�]�]�8�3�
/�	��H�H�S��X��	��]�]�8�3�
/�	���S��N�	��]�]�8�3�
/�	*��M�M�O����C��)�	*�	*�
	�	��	�	��	*�	*�s$�-F�&F�$F�F�F�F#c���tjgd�d��}tgd�tddd���}t	j
td	�
�5|j|ddd�y#1swYyxYw)N)�
2001-01-04z
2001-01-02rRz
2001-01-14r�r�)r>rpr�r�z
2001-01-01r=rorr
r�)r�r�rrr�r�rJr()r@rar�s   r2�1test_loc_getitem_series_label_list_missing_valueszATestLocListlike.test_loc_getitem_series_label_list_missing_values�
sZ���h�h�D�L�
���]�J�|�#�q�$Q�R��
�]�]�8�>�
:�	��G�G�C�L�	�	�	�s�A(�(A1c��ttjddg�tjddg���}tjt
d��5|jtjddg�ddd�y#1swYyxYw)NlPF
AHlUB�eNlP2�$�$�n�rr�r
r�lNZ4F�G)rr�r�r�r�rJr(rWs  r2�9test_loc_getitem_series_label_list_missing_integer_valueszITestLocListlike.test_loc_getitem_series_label_list_missing_integer_values�
sw����(�(�,�.?�@�A����-�/A�B�C�
���]�]�8�>�
:�	E��G�G�B�H�H�.�0A�B�C�D�	E�	E�	E�s�%B�B
�	to_periodTFc��tdddd��}|r|jd�}tddg|d�	�}td�td�g}|r|D�cgc]}|jd���}}|j|}tddg|d�	�}|s |j
j
d�|_tj||d
��td�td�td�g}|r|D�cgc]}|jd���}}tgd�t|d|j�
�d�	�}|j|}tj||d
��td�td�td�g}|r|D�cgc]}|jd���}}tjtd��5|j|ddd�ycc}wcc}wcc}w#1swYyxYw)N�
2011-01-01z
2011-01-02r=rS)r)r�皙�����?皙�����?rr�T)r�)r[r[rZ)r�r=�
2011-01-03r
r�)rrWrrr(rr-r)r�rr=r�r�rJ)r@rWrSr�r�r�r�r�s        r2�.test_loc_getitem_listlike_of_datetimelike_keysz>TestLocListlike.test_loc_getitem_listlike_of_datetimelike_keys�
s�����|�#�E�J����-�-��$�C��c�3�Z�s��5���,�'��<�)@�A���.2�3��A�K�K��$�3�D�3��������c�3�Z�s��5����	�	�,�,�T�2�C�I�
���v�s�T�B�
�l�#��l�#��l�#�
��
�.2�3��A�K�K��$�3�D�3���5��E����#K�RU�
��������
���v�s�T�B�
�l�#��l�#��l�#�
��
�.2�3��A�K�K��$�3�D�3�
�]�]�8�>�
:�	��G�G�D�M�	�	��94��4��4�	�	�s�G�(G�5G
�*G�Gc���tddgddgddgggd�dd	g�
�}|jdd}d|j_|jtdd
gd��}t
j||�y)Nrfr>rorprnr�)�cobra�viper�
sidewinder�	max_speed�shieldrr�r_r`r�)rr�rr�r(rr)r*r�s    r2�test_loc_named_indexz$TestLocListlike.test_loc_named_index�
st��
���V�a��V�a��V�$�2� �(�+�
��
�7�7�2�A�;��#���������w��0�u�=�>��
���f�h�/r4N)r�r�r�r�r�r�r��asarrayr�rPrSrVr]rdrzr4r2rJrJ�
sk���[�[���U�[�"�*�*�d�$C�D�*�E�*�6�E��[�[���[�4��-�8�'�9�'�R
0r4rJz%columns, column_key, expected_columns)��r�i�rfr�rf)rfr��Allrgr>c��ttjjd�jd�|t	d���}|j
dd�|f}|jgd�|f}tj||d��y)Nr>rr�r�r�Tr�)	rr�r�r�r�r�r(r)r*)r<�
column_key�expected_columnsr0r1r�s      r2�*test_loc_getitem_label_list_integer_labelsrk�
sn��
�
�	�	���a� �'�'��/���U��
�B��w�w�q�*�*�+�H�
�V�V�O�Z�/�
0�F����&�(�d�Cr4c��tjjd�jd�}t	|�}tj
|jdd�df<tj|tjtj
gdz�jdd�f�}t	|gd���}tj||�t	|�}tj
|jdd�df<tj||�y)Nr>)r�rorbr�rf)rrQr�rgrbr�)r�r�r�r�rr�r(�hstackr�r�r)r*)�	rand_datar�r+r1s    r2�test_loc_setitem_float_intindexros����	�	�%�%�a�(�8�8��@�I�
�y�
!�F����F�J�J�q�#�v���I�I�y�"�(�(�B�F�F�8�a�<�*@�*H�*H��A�*N�O�P�M���0I�J�H����&�(�+�
�y�
!�F����F�J�J�q�#�v�����&�(�+r4c��dD��cgc]
}dD]}||f���}}}ttjd�td�t	j
|���}|j
d��dd	}ttjd
�td�t	j
gd����}tj||�ycc}}w)N)��r�)rnr�r�rk)rkr��
ABCDEFGHIJrrfr��rqr��r�r�r�)rs)rqrk)r�rnrt)	rr�r�r�rr�r(r)r*)�yrrzrr0r�r1s      r2�test_loc_axis_1_slicervs���*�B��M�B�q�R��G�B�G�B�D�B�	�
������L�!��&�&�t�,�
�B�
�V�V��V�^�I�i�
0�F��
������L�!��&�&�'T�U��H�
���&�(�+��Cs�Cc
��tdtd�tjtd�td�g���}|j	�}|j
ddgf|j
ddgf<t
j||�y)Nr$r>rrr�)rr�rr�r�r(r)r*)r1r�s  r2�!test_loc_set_dataframe_multiindexrx0so����5��8�Z�%<�%<�e�A�h��a��=Q�%R��H��]�]�_�F�$�j�j��V�H��5�F�J�J�q�6�(�{�����&�(�+r4c�|�ttd�tddgt���}|jd}|dk(sJ�y)Nr>rfr�r�r)rr�rr r()r�r�s  r2�test_loc_mixed_int_floatrz:s6��
��q��5�!�S���8�
9�C�
�W�W�Q�Z�F��Q�;��;r4c��ttd�gd���}tjtd��5d|j
ddddd�y#1swYyxYw)Nror<r
�$Slicing a positional slice with .locr�r>rl)rr�r�r�r�r()r�s r2�%test_loc_with_positional_slice_raisesr}BsF��
��q��!5�
6�C�	���y�(N�	O������������s�A
�
Ac��tdd��}ttjj	d�jd�|��}|d}d}||fD]h}tjt|�	�5|jd
dddd�tjtd�	�5d
|jd
dddd��jtjt|�	�5|jd
d�d
fddd�tjtd�	�5d|jd
d�d
f<ddd�y#1swY��xYw#1swY��xYw#1swY�YxYw#1swYyxYw)Nr�rl�rYr>rr
rzOcannot do slice indexing on DatetimeIndex with these indexers \[1\] of type intr�rfr|)	rrr�r�r�r�r�r�r()�dtir0r�r�rMs     r2�#test_loc_slice_disallows_positionalr�Js>��
�\�1�
-�C�	�2�9�9�(�(��+�2�2�6�:�#�	F�B�
�Q�%�C�	&��
�C�y���
�]�]�9�C�
0�	��G�G�A�a�L�	��]�]�9�,R�
S�	��C�G�G�A�a�L�	�	�	�
���y��	,��
���q��s�A�v���
���y�(N�	O������q��s�A�v����	�	��	�	�������s0�0D,�#D8�E�E�,D5	�8E	�E
�Ec	�.�ttjjd�j	d�gd�tddd����}|jgd	�j�}|j}tj|j�}d
}tjt|��5|j|ddd�tjt|��5|dj|ddd�y#1swY�@xYw#1swYyxYw)
Nr>r�r�2012ryrprr�)rr>r>rlz/None of \[TimedeltaIndex.* are in the \[index\]r�r$)rr�r�r�r�rr�r�rr��TimedeltaIndex�asi8r�r�rJr()r0r�rir�s    r2�'test_loc_datetimelike_mismatched_dtypesr�fs���
�
�	�	���a� �0�0��8����c�1�5�
�B�
����	�	#�	#�	%�B�
�(�(�C�
�
�
�C�H�H�
%�C�
<�C�	���x�s�	+��
���s���
���x�s�	+��
�3����C���������s�0C?�#D�?D�Dc�Z�tjddd��}ttjjd�j
d�|��}tj||j|�tj||jt|��tj||jt|��tj|jdd	|j|dd	�tj||jt|��y)
Nz2002-01z2003-12rxr(r>)r�rkr
rrp)r�r�rr�r�r�r�r)r*r(r�r�)rSr0s  r2�"test_loc_with_period_index_indexerr�|s���
�/�/�)�Y�S�
9�C�	�2�9�9�(�(��+�;�;�H�E�S�	Q�B����"�b�f�f�S�k�*����"�b�f�f�T�#�Y�/�0����"�b�f�f�T�#�Y�/�0����"�'�'�!�A�,����s�1�Q�x�(8�9����"�b�f�f�T�#�Y�/�0r4c�j�tjjd�jd�}t	dd��}gd�}t|||��}tj|j|jdd	f<tj|dd
dt|||��}tj||�y)Nr>)r�rmr&r�r)r'r�r�r=�E�Frrfr�r)r�r�r�r�rrr�r(rr)r*)r�rSrr�r�s     r2�%test_loc_setitem_multiindex_timestampr��s���
�9�9� � ��#�3�3�F�;�D�
�Z��
+�C�)�D�
�D��T�
2�C�(*���C�G�G�C�I�I�a�L�*�$�%��6�6�D��G�A�a�L�
�D��T�
2�C����#�s�#r4c�v�gd�}ddg}ddg}tj|||ggd���}tdtd	�|�
�}|jdd�|d|d|dff}|j
dd�dd�f}t
j||�|j|d|d|dfgd�d��}t
j||�|j
d}|j
dd}	|j|d|d|dfgd�d��}
t
j|
|	�|j|d|d|df}|dk(sJ�y)
Nrr�)rfrrrf)r�rXrrbrmrprre)rr�)
rr�rr�r(r�r)r*�xsr�)r?r@�lev3rr0r�r1�altr��	expected2�alt2r�s            r2�'test_loc_getitem_multiindex_tuple_levelr��sM���D��F��D�
�q�6�D��"�"�D�$��#5�_�M�D�	�1�E�!�H�d�	3�B��V�V�A��Q���a��$�q�'�2�2�
3�F��w�w�q�"�1�"�u�~�H����&�(�+�
�%�%��a��$�q�'�4��7�+�9�1�%�
E�C����#�x�(�
�'�'�!�*�C�����!��I��6�6�4��7�D��G�T�!�W�-�Y�Q�6�G�D����4��+��g�g�d�1�g�t�A�w��Q��/�0�G��a�<��<r4c
��ttjgd�gd�ddtjtjgg�jgd�d��}|jd�}|jjdk(sJ�|jd}tdd	g|jdd�
�}tj||�|jjt�|_|jd}tj||�y)Nr�)rprmrnr�rfr>rr�)r�r<r=rQrpr�)rr�r�r��Tr�rr=r(rr<r)r�rr )r0r�r�r1s    r2�/test_loc_getitem_nullable_index_with_duplicatesr��s���	�
�X�X�|�\�A�q�"�&�&�"�&�&�3I�J�
K�
M�
M���
�B�

�,�,�s�
�C��9�9�?�?�g�%�%�%�

�'�'�!�*�C��q�!�f�C�K�K�w�Q�G�H����3��)��	�	� � ��(�C�I�

�'�'�!�*�C����3��)r4r$r�c�<�tgd�dgd��}tjtd��5||jd<ddd�t
rt
|tj�rd}nd	}tgd
�dg|��}tj||�y#1swY�VxYw)Nr�r��uint8r;r�r�)r>r��int16�uint16)rfr>r�ro)
rr)r�r�r(rr�r�r�r*)r$r0r=r1s    r2�test_loc_setitem_uint8_upcastr��s���
�<�&���	A�B�	�	#�	#�M�9U�	V�"�!����y��"��*�U�B�H�H�5�������&���G�H����"�h�'�"�"�s�B�Bzfill_val,exp_dtypez
2022-01-06zdatetime64[ns]z
2022-01-07�
US/Easternruzdatetime64[ns, US/Eastern]c��ddd|j�g}t||j|��}tgd�dg|��}d|jd	<|jd
�t||��}t
j|j|d�
�y)Nz
2022-01-02z
2022-01-03z
2022-01-04)r}r=)rkr�r�r�r$r�r�)�
2022-01-08r$r�r�T)�exact)	rrr}rr(rxr)r�r)�fill_val�	exp_dtyper�rr0�expected_indexs      r2�0test_loc_setitem_using_datetimelike_str_as_indexr��sx��
�,��h�m�m�o�F�D��$�8�;�;�i�@�E�	�#�c�U�%�	@�B� "�B�F�F����K�K���"�4�y�9�N����"�(�(�N�$�?r4c��ttd�g�}d|jdd�df<tdgdgdgdgd��}tj||�y)N�abcrpr�r$r#rQ)rrfr>r�)rr�r(r)r*)r0r1s  r2�test_loc_set_int_dtyper��sO��	�D��K�=�	!�B��B�F�F�1�f�9���c�U��u�#����D�E�H����"�h�'r4z8ignore:Period with BDay freq is deprecated:FutureWarningr�c��tgd�dd��}tgd�gd�gd�gd�g|gd	��
�}|jddgd
��d}|j|dddfdk(sJ�y)N)z
20181101 1100z
20181101 1200z
20181102 1300z
20181102 1400rr�)r�r))r'r�rQ)r'r�r�)r��Qrg)�Wr�r)�ONE�TWO�VALUESrr�r�T)rxr�rr'rQ)rrr�r()�p_index�	mi_seriess  r2�test_loc_periodindex_3_levelsr��sw���L�
�
��G�
�	�/�?�O�L��(��I�
�#�#�U�E�N�4�#�@��J�I��=�=�'�!�*�c�3�/�0�C�7�7�7r4c�B�tjd�ttgd�d��tgd��d��}tddg�}||j|j
d	f<ttgd
�d��tgd��d��}t
j||�y)N�pyarrowr�zstring[pyarrow]r�)TTF)�stringsrmr�rwr�)r�rwr�)r�r9rrr(rmr)r*)r0�	new_value�expected_dfs   r2� test_loc_setitem_pyarrow_stringsr�s���
���	�"�	��o�5F�G��-�.�	
�
�B���S�z�"�I� )�B�F�F�2�6�6�9�����o�5F�G��-�.�	
��K����"�k�*r4c�*�eZdZejjdddg�d��Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zejjdej"ej"eeg�ejjdgd��d���Zejjdeddd�fded�fg�d��Zd�Zejjdddg�d��Zej8d��Zd�Zd�Zd�Z y)�
TestLocSeriesr\)r]rl)r^roc�H�tddd��}|j||k(sJ�y)Nrlro)r]r^)rr()r@rDr1r�s    r2rzTestLocSeries.test_loc_uint64s)����1�-�.���w�w�s�|�x�'�'�'r4c�F�|jgd�}tj|j||j	|��tj|j
ddd�|ddd��|jddg\}}|j||}|j
||�}tj||�||j�kD}tj|j|||�|j|||k(sJ�|j|||k(sJ�y)N�rlrornrpr>�)rr)r�r(r�r��truncate�median)	r@�
string_series�datetime_series�inds�d1�d2r�r1r8s	         r2�test_loc_getitemzTestLocSeries.test_loc_getitem$s%���"�"�9�-��
���}�0�0��6�
�8M�8M�d�8S�T�
���}�1�1�!�$�Q�$�7��q�t�!�t�9L�M�!�&�&��2�w�/���B� �$�$�R��+��"�+�+�B��3��
���v�x�0��}�3�3�5�5��
���}�0�0��6�
�d�8K�L��"�"�2�&�/�"�*=�=�=�=��"�"�2�&�/�"�*=�=�=�=r4c�Z�|jddg\}}|ddd�jgd�}d}tjt|��5|j
||ddd�tjt|��5d|j
||ddd�y#1swY�=xYw#1swYyxYw)Nrpr�r>)rfr>rz"Timestamp\('2000-01-10 00:00:00'\)r�r)rr�r�r�rJr()r@r�r�r��ts2r�s      r2�test_loc_getitem_not_monotonicz,TestLocSeries.test_loc_getitem_not_monotonic7s��� �&�&��2�w�/���B��c��c�"�'�'�	�2��3��
�]�]�8�3�
/�	��G�G�B�r�N�	�
�]�]�8�3�
/�	��C�G�G�B�r�N�	�	�	�	��	�	�s�	B�<B!�B�!B*c
���ttjjd�j	d�tt
ddd����}|j�}d|jdd|jdddk(j�sJ�|j�}d|jdd|jdddk(jj�sJ�|jdd	}|jdd}|jgd
��}tj||�tj||�|jtt
d��tt
ddd
��z}tj t"d��5|jddddd�tj t"d��5d|jddddd�y#1swY�=xYw#1swYyxYw)Nr>rkrrZr
rorlr�rm)rormr�rkrpr�rz^3$r�)rr�r�r�r�r�r�r�r�r>r�r(r�r)r�r�r�rJ)r@r��cpr�r�r1�s2s       r2�0test_loc_getitem_setitem_integer_slice_keyerrorsz>TestLocSeries.test_loc_getitem_setitem_integer_slice_keyerrorsBs�����I�I�!�!�!�$�4�4�R�8��U�1�b�RS�_�@U�
��
�X�X�Z�������"�
�����"�
��"�'�'�)�)�)��X�X�Z�������"�
�����"�
��"�*�*�.�.�0�0�0����!�A����'�'�!�B�-���;�;�}�-��
���v�x�0�
���w��1��X�X�d�5��8�n�t�E�!�Q��O�'<�<�
=��
�]�]�8�6�
2�	��F�F�1�R�L�	�
�]�]�8�6�
2�	��B�F�F�1�R�L�	�	�	�	��	�	�s�
G�=G"�G�"G+c��t|jdd�}|j|}tj||dd�y)Nrk)r�rr(r)r�)r@r�rSr�s    r2�test_loc_getitem_iteratorz'TestLocSeries.test_loc_getitem_iterator_s@���=�&�&�s��+�,���"�"�3�'��
���v�}�S�b�'9�:r4c��||j�kD}|j�}d|j|<|}d||<tj||�y)Nr)r�r�r(r)r�)r@r�r8r�r1s     r2�test_loc_setitem_booleanz&TestLocSeries.test_loc_setitem_booleandsO���}�3�3�5�5���#�#�%����
�
�4�� ������
���v�x�0r4c���t|jgd��}d|j|<d}tjt
|��5d|j|dgz<ddd�y#1swYyxYw)N)rpr�r�rpz\['foo'\] not in indexr�r�)r�rr(r�r�rJ)r@r�r�r�s    r2�test_loc_setitem_cornerz%TestLocSeries.test_loc_setitem_cornermse���M�'�'�
�3�4��"#�
���$��'��
�]�]�8�3�
/�	2�01�M���d�e�W�n�-�	2�	2�	2�s�A$�$A-c�f�|jgd�}|j�}|j�}d||<d|j|<tj||�|j�}|j�}d||d|dd|j|d|dtj||�y)N)rprkr�rr>)rr�r(r)r�)r@r��indicesr�r�s     r2�test_basic_setitem_with_labelsz,TestLocSeries.test_basic_setitem_with_labelsts���!�'�'��4��
�
!�
!�
#���"�"�$����7��������
���r�3�'�
�
!�
!�
#���"�"�$��&'��7�1�:���
�#�+,������
�W�Q�Z�(�
���r�3�'r4c
�
�ttjjd�j	d�tt
ddd����}gd�}tjgd��}|j�}|j�}d||<d|j|<tj||�|j�}|j�}d||<d|j|<tj||�gd�}tjgd��}d}tjt|�	�5d||<ddd�tjt|�	�5d||<ddd�y#1swY�3xYw#1swYyxYw)
Nr>rkrrZr
)rrorm�rrorprmz\[5\] not in indexr�)rr�r�r�r�r�r�r�r�r(r)r�r�r�rJ�	Exception)	r@r�r��arr_indsr�r��
inds_notfound�arr_inds_notfoundr�s	         r2�!test_loc_setitem_listlike_of_intsz/TestLocSeries.test_loc_setitem_listlike_of_ints�s@����I�I�!�!�!�$�4�4�R�8��U�1�b�RS�_�@U�
�����8�8�I�&��
�X�X�Z���h�h�j����D�	������
�
���r�3�'�
�X�X�Z���h�h�j����H�
�������
���r�3�'�$�
��H�H�\�2��#��
�]�]�8�3�
/�	#�!"�C�
��	#�
�]�]�9�C�
0�	'�%&�C�!�"�	'�	'�	#�	#��	'�	'�s�5E-�E9�-E6�9Fc�j�ttddd��gd���}|j�}tdd��}||jd	<|jd	}||k(sJ�|j�}||j
d
<|j
d
}||k(sJ�|j�}||d	<|d	}||k(sJ�y)NrYrlr�r�rr
r\rur$r)rrr�rr(r�)r@r�r�r1r�s     r2�test_loc_setitem_dt64tz_valuesz,TestLocSeries.test_loc_setitem_dt64tz_values�s�����|�Q�<�@�!�
���X�X�Z���\�l�;������s����������!�!�!�
�X�X�Z�������
���������!�!�!�
�X�X�Z����3���C�����!�!�!r4�array_fnr,r�c�\�|dg|z�}t|ddddgtd�t��}tdtd�t��}||jd<t	j
||�tdtd�t��}||jd<t	j
||�y)Nr�abcderHr$)rr�r r(r)r�r�)r@r,r�r�r1r�s      r2�#test_loc_iloc_setitem_with_listlikez1TestLocSeries.test_loc_iloc_setitem_with_listlike�s�����s�T�z�"���3��1�a��+�4��=��O���Q�d�7�m�6�:��������
���s�H�-��Q�d�7�m�6�:��������
���s�H�-r4r�r'Nc�\�ttjgd��gd���}d}tjt
|��5|j|dd�fddd�tjt
|��5d|j|dd�f<ddd�y#1swY�AxYw#1swYyxYw)N))r'�0)r'r8)r�r�)�r0r8rUr�r�rf)rrr�r�r�r
r()r@r�r�r�s    r2�+test_loc_series_getitem_too_many_dimensionsz9TestLocSeries.test_loc_series_getitem_too_many_dimensions�s�����(�(�)M�N��
��"��
�]�]�=��
4�	 ��G�G�G�Q�J��	 ��]�]�=��
4�	$�"#�C�G�G�G�Q�J��	$�	$�	 �	 ��	$�	$�s�B�9B"�B�"B+c��|jgd�}|j�}d|j|<|j�}d|jgd�<t	j
||�d|jddd|ddt	j
||�|jddg\}}d|j||d|ddt	j
||�d|j|<d|j|<||dk(sJ�||dk(sJ�y)Nr�rprkr�rmr`ro)rr�r(r�r)r�)r@r�r�r�r1r�r�s       r2�test_loc_setitemzTestLocSeries.test_loc_setitem�s���"�"�9�-���#�#�%����
�
�4�� �%�%�'��#$��
�
�i� �
���v�x�0�����A�b�����2��
���v�x�0��$�$�a��W�-���B���
�
�2�b�����2��
���v�x�0�!"�
���"�� !�
���"���R� �A�%�%�%��R� �A�%�%�%r4r=r rUc��tddgddgd�|��}ddd�|jd	dd�f<tddgddgd�|��}tj||�y)
Nr��def�ghi�jklr�r��newA�newBrr�)r@r=r0r1s    r2�test_loc_assign_dict_to_rowz)TestLocSeries.test_loc_assign_dict_to_row�s]���e�U�^�5�%�.�A��
O��#�&�1����q�!�t���F�E�?�&�%��I�QV�W��
���b�(�+r4c��tddg��}tdd��dd�|jd	<tdd��dd�|jd	<ttdd��dggddgd	g�
�}tj||�y)Nrr$r�rmrrgr�)rr$rfr�)rrr(r)r*r!s   r2�,test_loc_setitem_dict_timedelta_multiple_setz:TestLocSeries.test_loc_setitem_dict_timedelta_multiple_set�s����F�G�#4�5��!*�1�3�!7�%�H��
�
�1�
�!*�1�3�!7�%�H��
�
�1�
�����$�e�
,�-���7H�QR�PS�
��	���f�h�/r4c�2�tddgdg��}ddg|jdddgf<tttjtjgd	�
�dtjgdtjgd�ddg��}tj||�y)
Nrfr>r$rrmrnr#rQr r�rr
)rr(rr�r�r)r*r�s   r2�3test_loc_set_multiple_items_in_multiple_new_columnszATestLocSeries.test_loc_set_multiple_items_in_multiple_new_columns
s���
�a��V�c�U�
3��!"�A�����q�3��*�}����R�V�V�R�V�V�,�H�=�����[�����[�
�
�a�&�

��	���b�(�+r4c���d}tjt|��5tjddd��}tt
d�|��}|jdd	k(sJ�	ddd�y#1swYyxYw)
Nz#Period with BDay freq is deprecatedr��2000rZr�rWr
z
2000-01-14r�)r)r�r�r�r�rr�r()r@r�rr-s    r2� test_getitem_loc_str_periodindexz.TestLocSeries.test_getitem_loc_str_periodindex
se��3��
�
'�
'�
�S�
A�	1��O�O�&�"�3�G�E��E�"�I�U�3�F��:�:�l�+�q�0�0�0�	1�	1�	1�s�AA+�+A4c���ttd��}t|dzd��}tdt	j
t
|�tj��i|��}|j|}td|jd��jtj�itt	j|�jd�d����}tj||�y)	Nr�i�r�r�rDr
�stable)rB)r�r�rrr�r�r�intpr(�argsortrr�r�r)r*)r@rmrr0r�r1s      r2�test_loc_nonunique_masked_indexz-TestLocSeries.test_loc_nonunique_masked_index
s����5��9�o���c�D�j��0��
��r�y�y��U��2�7�7�C�D�E�
R���������
�E�M�M�x�M�0�7�7����@�A������
�,�,�T�2�'�B�
��	���f�h�/r4)!r�r�r�r�r�r�rr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rr�r�r�r�rGrHr�r�r�r�rzr4r2r�r�s=���[�[���^�n�j�-I�J�(�K�(�
>�&	��:;�
1�2�
(�'�8"�,�[�[���Z�"�(�(�B�H�H�d�E�)J�K��[�[���V�\�2�.�3�L�.� �[�[���Y��C��F�);�c�5��;�=O�(P�Q�$�R�$�&�4�[�[���W�x��&:�;�,�<�,��'�'�0�(�0�,� 1�
0r4r�)[�__doc__�collectionsrrrrrr'�dateutil.tzr�numpyr�r��pandas._configr	�pandas._libsrrQ�pandas.compat.numpyr�
pandas.errorsr
�pandas.util._test_decorators�util�_test_decoratorsrG�pandasr�rrrrrrrrrrrrrrrrrr�pandas._testing�_testingr)�pandas.api.typesr �pandas.core.indexingr!�pandas.tests.indexing.commonr"r�r�r�r3r6r�r�r�rKr�r�r�rr(rJrkrorvrxrzr}r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rzr4r2�<module>rs���*�"���
���
�5�*�.�'�)�)�������(�&�6�K������&�
�&�&�"�&�&�#�	��b�f�f�b�f�f� 5�7J�K�
�&�&�#���b�f�f�
��t�}�5���1��1�{�{�|U,�U,�p,:(�:(�zs:�s:�lV,�V,�r(�(�DG*�G*�TA7�A7�H � �:E,�E,�Pc0�c0�L�����+�	�d�D�\�A�q�6�2�	�t�T�l�Q��F�3�	�t�U�m�a��V�4���D��D�,�,�",����8�,1�	$��<*�(������3�	��	�	�#�������
�"F�G�(�H�(�&������	�<�	 �"2�3�	�<�L�	1�3O�P���	@��	@�(������W�X������R�S�
8�T�Y�
8� +�,I0�I0r4

Youez - 2016 - github.com/yon3zu
LinuXploit