
    A>i)                     \   S SK J r   S SKrS SKrS SKJr  S SKJr  S SK	J
r
JrJrJr  S SKrS SKJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJr  S SK J!r"  S SK#J$r$  S SK%J&r&   " S	 S
5      r' " S S5      r( " S S5      r) " S S5      r* " S S5      r+ " S S5      r, " S S5      r-S r.S r/g)    )datetimeN)	_registry)is_object_dtype)CategoricalDtypeDatetimeTZDtypeIntervalDtypePeriodDtype)Categorical	DataFrameDatetimeIndexIndexIntervalIntervalIndex
MultiIndexNaTPeriodPeriodIndexSeries	Timestampcut
date_rangenotnaperiod_range)SparseArray)BDayc                   X   \ rS rSrS r\R                  R                  S/ SQ5      S 5       rS r	S r
S rS	 rS
 rS rS rS rS rS rS rS rS r\R                  R                  S\" S5      \" S5      4\" SSS9\" SS5      4\" SSS9R7                  S5      \" SSS94/5      S  5       r\R                  R                  S!\R>                   V VVVs/ s H0  n[A        URB                  [D        5      (       a  M$  URB                  PM2     snnnn S"S#/-   5      S$ 5       r#S% r$\R                  R                  S&/ S'Q5      S( 5       r%\R                  R                  S&/ S'Q5      S) 5       r&S* r'S+ r(S, r)S- r*\R                  R                  S/ S.Q5      S/ 5       r+\R                  R                  S0S1S1//5      S2 5       r,S3 r-S4 r.\R                  R                  S5/ S6Q/ S7Q/5      S8 5       r/S9 r0S: r1S; r2S< r3S= r4\R                  R                  S>/ S?Q/ S@QSA4/ SBQ/ S@QSA4/ SCQ/ S@QSA4/ SDQ/ SEQSF4/ SGQ/ SHQSI4/ SJQ/ SHQSK4/5      SL 5       r5SM r6\R                  R                  SN/ SOQSP\7" / SQQ/ SQQ/ SQQ// SOQSR94SSST/SPSU/\7" / SVQ/ SWQ/ SXQ// SOQSR94/ SYQ\8Rr                  " / SZQ\8Rt                  S[9\7" / SZQ/ SZQ/ SZQ// SYQSR94/ S\Q/ SZQ/ S]Q/ S^Q/\7" / S_Q/ S`Q/ SaQ// SOQSR94/ SbQ\8Rr                  " / SZQ/ S]Q/ S^Q/\8Rt                  S[9\7" / ScQ/ SdQ/ SeQ// SOQSR94SfSS/\7" SPSU/SgSh/SiSj//SfSS/SR9\7" / SkQ/ SlQ/ SmQ// SYQSR94/5      Sn 5       r;So r<Sp r=Sq r>Sr r?Ss r@St rASu rB\R                  R                  Sv0 SwSx0/5      Sy 5       rCSz rDS{ rES| rFS} rGS~ rHS rISrJgs  snnnn f )TestDataFrameSetItem(   c           	           " S S[         5      nS/n[        U5      n[        SS/0US9nSUS'   S	XA" S
5      '   [        SS/SS/U" S
5      S	/0US9n[        R                  " XE5        g )Nc                       \ rS rSrSrSrg)@TestDataFrameSetItem.test_setitem_str_subclass.<locals>.mystring+    N)__name__
__module____qualname____firstlineno__	__slots____static_attributes__r#       g/var/www/html/land-tabula/venv/lib/python3.13/site-packages/pandas/tests/frame/indexing/test_setitem.pymystringr!   +   s    Ir*   r,   z2020-10-22 01:21:00+00:00a   index   b   c)strr   r   tmassert_equal)selfr,   datar0   dfexpecteds         r+   test_setitem_str_subclass.TestDataFrameSetItem.test_setitem_str_subclass)   sz    	s 	 ,,d#aSz/38C=cA3aS(3-!EUS
%r*   dtype)int32int64uint32uint64float32float64c                     [         R                  R                  S5      R                  SS[	        U5      5      n[         R
                  " X1S9X!'   X!   R                  R                  U:X  d   eg )Nr1   r.   
   r>   )nprandomdefault_rngintegerslenarrayr>   name)r8   r>   float_framearrs       r+   test_setitem_dtype'TestDataFrameSetItem.test_setitem_dtype6   sZ    
 ii##A&//2s;7GHXXc7!'',,555r*   c                     [         R                  R                  S5      R                  [	        U5      S45      nX!SS/'   [
        R                  " USS/   R                  U5        g )Nr1   AB)rH   rI   rJ   standard_normalrL   r6   assert_almost_equalvalues)r8   rO   r9   s      r+   test_setitem_list_not_dataframe4TestDataFrameSetItem.test_setitem_list_not_dataframe@   sV    yy$$Q'77[9I18MN"&S#J
{C:6==tDr*   c                    [        / SQ/ SQS.[        / SQSS9S9n[        / SQ[        / S	QSS9S
S9nSn[        R                  " [
        US9   X!S'   S S S 5        [        [        R                  R                  S5      R                  SSS5      / SQS9nSn[        R                  " [
        US9   UR                  SS/5      R                  5       US'   S S S 5        Sn[        R                  " [
        US9   [        5       US'   S S S 5        g ! , (       d  f       N= f! , (       d  f       NQ= f! , (       d  f       g = f)Nr.   r1   r3   )def)barbazr-   r2   r4   foorN   r/   )ghij)r-   r2   r4   r-   fizr0   rN   z/cannot reindex on an axis with duplicate labelsmatchnewcolr1   r   )   rn   r-   r2   r4   r]   columnszDCannot set a DataFrame with multiple columns to the single column grr2   r4   grz7Cannot set a DataFrame without columns to the column gr)r   r   r   pytestraises
ValueErrorrH   rI   rJ   rK   groupbycount)r8   r:   sermsgs       r+   test_setitem_error_msmgs-TestDataFrameSetItem.test_setitem_error_msmgsE   s   o6e4
  ,59

 @]]:S1xL 2 II!!!$--aF;(

 U]]:S1zz3*-335BtH 2 H]]:S1 {BtH 21 21 21
 21s$   D0%D 8D1
D 
D.1
D?c                 P   SnSn[        [        U5      S9n[        R                  R	                  S5      R                  U5      n[        U5       H  nXCU'   M	     [        [        R                  " XB5      R                  X5      [        U5      S9n[        R                  " X65        g )NrF      r/   r1   )
r   rangerH   rI   rJ   rV   repeatreshaper6   assert_frame_equal)r8   NKr:   new_colrg   r;   s          r+   test_setitem_benchmark+TestDataFrameSetItem.test_setitem_benchmarkc   s    U1X&))''*::1=qAqE RYYw2::1@aQ
b+r*   c                    [        [        R                  R                  S5      R	                  S5      [        R
                  " S5      / SQS9nUR                  SSUS   5        UR                  SS	US
   5        US   R                  S5      US'   UR                  n[        [        R                  " S5      /S-  [        R                  " S5      /-   / SQS9n[        R                  " X#5        US   R                  S5      US'   UR                  n[        [        R                  " S5      /S-  [        R                  " S5      /S-  -   / SQS9n[        R                  " X#5        US   R                  S5      US'   UR                  n[        [        R                  " S5      /S-  [        R                  " S5      /S-  -   [        R                  " S5      /-   / SQS9n[        R                  " X#5        g )Nr1   r}   r3   r}   )r4   r2   r-   r0   rq   r   rc   r-   r`   r4   rC   xrD   )rc   r4   r`   r2   r-   r   r/   rn   r?   y)rc   r4   r`   r2   r-   r   r   )r   rH   rI   rJ   rV   arangeinsertastypedtypesr   r>   r6   assert_series_equalr8   r:   resultr;   s       r+   test_setitem_different_dtype1TestDataFrameSetItem.test_setitem_different_dtypen   s   II!!!$44V<))A,#

 			!UBsG$
		!UBsG$
 S'..+3XXi !A%))<(==4
 	v0 S'..+3XXi !A%))<(=(AA4
 	v0S'..)3XXi !A%))<(=(AARXXgEVDWW9
 	v0r*   c                     [        / SQS9nUR                  US'   / SQUS'   [        S/ SQ0/ SQS/S9n[        R                  " X5        g )NrT   rU   Cr/   Xr   r   z)r9   r0   rq   )r   r0   r6   r   r8   r:   exps      r+   test_setitem_overwrite_index1TestDataFrameSetItem.test_setitem_overwrite_index   sL     _-((3!3'
 	b&r*   c                     [        5       n/ SQUS'   [        S/ SQ05      n[        R                  " X5        [        [        / 5      S9n/ SQUS'   [        S/ SQ05      n[        R                  " X5        g )Nr\   rc   rp   )r   r6   r   r   r8   r:   r;   s      r+   test_setitem_empty_columns/TestDataFrameSetItem.test_setitem_empty_columns   se    
 [5	eY/0
b+uRy)5	eY/0
b+r*   c                     [        SSSSS9n[        [        R                  " [	        U5      5      S9nXS'   US   R
                  [        R
                  " S5      :X  d   eg )	Nz1/1/2000 00:00:00z1/1/2000 1:59:5010sns)frequnitr/   rT   M8[ns])r   r   rH   r   rL   r>   )r8   rngr:   s      r+   %test_setitem_dt64_index_empty_columns:TestDataFrameSetItem.test_setitem_dt64_index_empty_columns   sR    ,.@uSWXRYYs3x013#w}} 2222r*   c                     [        [        S5      S9n[        SSS9US'   [        [        SSS9//S-  [        S5      S/S9n[        R                  " X5        g )Nr3   r/   20130101UTCtznowr   )r   r~   r   r6   r   r   s      r+   $test_setitem_timestamp_empty_columns9TestDataFrameSetItem.test_setitem_timestamp_empty_columns   sY    U1X&jU35	
u-./!358eW
 	b+r*   c                    [         R                  " / SQ/ SQ5      n[        [        S5      S/S9nS[	        U5       S[	        U5       S3n[
        R                  " [        US	9   XS
'   S S S 5        g ! , (       d  f       g = f)N)r   r.   r.   r   r.   r1   rb   rF   r`   rp   zLength of values \(z$\) does not match length of index \(z\)rk   rc   )r
   
from_codesr   r~   rL   rs   rt   ru   )r8   catr:   ry   s       r+   2test_setitem_wrong_length_categorical_dtype_raisesGTestDataFrameSetItem.test_setitem_wrong_length_categorical_dtype_raises   sq    $$%7IuRy5'2 #3s8* -114R	= 	 ]]:S1uI 211s   $A22
B c                     [        / SQ/ SQS.5      n[        / SQ5      nX!S'   [        USS9n[        R                  " US   U5        g )Nrb         ?       @      @c_1n_1r   r   r.   
new_columnrd   )r   r   r   r6   r   )r8   r:   sp_arrayr;   s       r+   test_setitem_with_sparse_value3TestDataFrameSetItem.test_setitem_with_sparse_value   sD    GHy)#<(6
r,/:r*   c                     [        / SQ/ SQS.5      n[        [        / SQ5      / SQS9nX!S'   [        [        / SQ5      SS	9n[        R                  " US   U5        g )
Nrb   r   r   r   )r1   r.   r   r/   r   )r.   r   r   rd   )r   r   r   r6   r   )r8   r:   	sp_seriesr;   s       r+   (test_setitem_with_unaligned_sparse_value=TestDataFrameSetItem.test_setitem_with_unaligned_sparse_value   sP    GH;y1C	$<+i0|D
r,/:r*   c                     [        SS5      /n[        / 5      nXS'   [        SU0S/S9n[        R                  " X#5        g )Nz2003-12Dr-   rp   )r   r   r6   r   )r8   r9   r   r;   s       r+   #test_setitem_period_preserves_dtype8TestDataFrameSetItem.test_setitem_period_preserves_dtype   sA    y#&'2sc4[3%8
f/r*   c           
         [        [        / SQSS9[        / SQ[        S9[        / SQ[        S9[        / SQSS9S.5      n[        [        / SS9[        / [        S9[        / [        S9[        / SS9S.5      n[        / SQ5       HU  u  p4[	        U5      [        U5      [        U5      [
        R                  " U5      S.UR                  UR                  S   '   MW     [        R                  " X!5        g )N)r   r.   r1   r@   rG   r\   rA   ro   r   )r   r   float	enumerateintrH   rA   locshaper6   r   )r8   r;   r:   idxr2   s        r+   "test_setitem_dict_preserves_dtypes7TestDataFrameSetItem.test_setitem_dict_preserves_dtypes   s    IW5IU3IU3IX6	
 Bg.Be,Be,Bh/	
  	*FCX1X1XYYq\	#BFF288A; + 	b+r*   z	obj,dtypez2020-01Mr   r}   )leftrightr@   r   z
2011-01-01z
US/Easternr   s)r   r   c                     [        / SQ[        U/S-  US9S.5      n[        S/ SQ05      nXS'   [        R                  " XC5        g )Nr\   r3   rG   )r   objr   r   r   r   r6   r   )r8   r   r>   r;   r:   s        r+   test_setitem_extension_types1TestDataFrameSetItem.test_setitem_extension_types   sD     Yvseaiu7UVWy)*5	
b+r*   ea_namezdatetime64[ns, UTC]	period[D]c                 t    [        S/5      nS/X!'   [        SS/US/05      n[        R                  " X#5        g )Nr   r.   r   r6   r   )r8   r   r   r;   s       r+   test_setitem_with_ea_name.TestDataFrameSetItem.test_setitem_with_ea_name  s=     A3#a!gs34
f/r*   c                 z   [         R                  " SS/SS9n[        U5      R                  5       nXS'   [	        SS /SS /S.SS9n[
        R                  " X#5        [         R                  " SS/SS9nXBS'   [
        R                  " US   US   5        [
        R                  " US   R                  5       U5        g )	Nr.   natdatetime64[ns]rG   new)r   r   datetime64[s]r   )
rH   rM   r   to_framer   r6   r   r   assert_numpy_array_equalto_numpy)r8   data_nsr   r;   data_ss        r+   6test_setitem_dt64_ndarray_with_NaT_and_diff_time_unitsKTestDataFrameSetItem.test_setitem_dt64_ndarray_with_NaT_and_diff_time_units%  s    ((Au:-=>))+u!TAt9=EUV
f/ 1e*O<u
vay(1+6
##F5M$:$:$<fEr*   r   )rf   mr   msr   r   Yc                    Sn[         R                  " SU S35      n[         R                  " U[         R                  S9R	                  U5      nUS;   a  UnOUR                  S5      n[        S[         R                  " U5      0[         R                  " U5      S9nXFU'   Xa   R                  UR                  :X  d   eXa   R                  U:H  R                  5       (       d   eg )	Nd   M8[]rG   )r   r   r   intsr/   	rH   r>   r   r@   viewr   r   rX   allr8   r   nr>   valsex_valsr:   s          r+   -test_frame_setitem_datetime64_col_other_unitsBTestDataFrameSetItem.test_frame_setitem_datetime64_col_other_units3  s     3tfA'yy"((+007;G kk/2G		!-RYYq\B4x~~...7*//1111r*   c                    Sn[         R                  " SU S35      n[         R                  " U[         R                  S9R	                  U5      nUR                  S5      n[        S[         R                  " U5      0[         R                  " U5      S9n[         R                  " U[         R                  S9R	                  S5      US	'   XFS	'   US	   R                  U:H  R                  5       (       d   eg )
Nr   r   r   rG   r   r   r/   r   datesr   r   s          r+   6test_frame_setitem_existing_datetime64_col_other_unitsKTestDataFrameSetItem.test_frame_setitem_existing_datetime64_col_other_unitsH  s     3tfA'yy"((+007++./		!-RYYq\Bii277A7 77""g-224444r*   c                 <   UnUS   R                  S5      nX2S'   [        R                  " US   [        USS95        SUS'   X2S'   [        R                  " US   [        USS95        US	 UR                  R
                  S   R                  nUR                  R
                  S   R                  n[        R                  " XE5        UR                  R                  nUR                  R                  n[        U5      [        U5      :X  d   eUR                  5       n[        UR                  S'   [        UR                  S	'   US   n	[        R                  " [        U	5      [        / S
QSS95        [        R                  " UR                  UR                  5        g )NrU   rc   r   rd   r   r.   r1   )r.   r.   r.   r1   )TFT)renamer6   r   r   _mgrblocksrX   assert_extension_array_equal_ndarraybaseidcopyr   ilocr   r   )
r8   timezone_framer:   r   v1v2v1basev2basedf2r   s
             r+   test_setitem_dt64tz(TestDataFrameSetItem.test_setitem_dt64tzY  sG   gnnU# 3
r#ws(=>33
r#ws(=>sG
 WW^^A%%WW^^A%%
''/!!!!&zRZ''' ggiS
uV}f5Hs.ST
szz2995r*   c                    [        SSSS9n[        [        R                  R	                  S5      R                  S5      US9nXS'   [        US   5      n[        R                  " X1S	S
9  UR                  S:X  d   eUR                  S:X  d   eUR                  5       R                  S5      n[        UR                  [        5      (       d   e[        R                  " UR                  U5        g )Nz1/1/2000r}   r0   )periodsrN   r1   r   r/   r   Fcheck_names)r   r   rH   rI   rJ   rV   r   r6   assert_index_equalrN   reset_index	set_index
isinstancer0   r   )r8   r   r:   rss       r+   test_setitem_periodindex-TestDataFrameSetItem.test_setitem_periodindexx  s    :qw?ryy,,Q/??GsS72g;
b59ww'!!!xx7"""^^''0"((K0000
bhh,r*   c                    [        / SQ/ SQS.5      n[        R                  " SS/SS/SS//5      nX!SS/'   [        / SQ/ SQ/ S	Q/ S
QS.5      nUS   R                  UR                  5      US'   US   R                  UR                  5      US'   US   R                  UR                  :X  d   eUS   R                  UR                  :X  d   e[
        R                  " X5        g )N)onetwothreer\   r-   r2   r.   r3   r}   r4   r]   r.   r3   r}   r.   r.   r.   ro   )r   rH   rM   r   r>   r6   r   r8   r:   rP   r;   s       r+   'test_setitem_complete_column_with_array<TestDataFrameSetItem.test_setitem_complete_column_with_array  s    49EFhhAAA/0C:,	
 !,,SYY7 ,,SYY7}""cii///}""cii///
b+r*   c                     [        SSSSS9n[        U5      n[        S/ SQ0SS9nUR                  UR                  S S & [        R
                  " X#5        g )	Nz
2016-01-01	   r   rT   )r  r   rN   )	r   r   r   r   r   r   r   r   r   r   rG   )r   r   	_na_valuer  r6   r   )r8   r   r   r;   s       r+   test_setitem_period_d_dtype0TestDataFrameSetItem.test_setitem_period_d_dtype  sR    <3G3QR
 A
f/r*   )f8i8u8c                 $   [        / SQUS9n[        [        R                  R	                  S5      R                  S5      US9n/ SQUS'   [        / SQ[        S9nUS	:X  a  [        / S
Q[        S9n[        R                  " UR                  U5        g )Nr\   rG   r1   )r3   r3   rp   rb   F)r.   r1   r3   Fr4  )r   r   r   F)
r   r   rH   rI   rJ   rV   objectr6   r  rq   )r8   r>   colsr:   expected_colss        r+   $test_setitem_bool_with_numeric_index9TestDataFrameSetItem.test_setitem_bool_with_numeric_index  su     Ye,ryy,,Q/??GQUV#5	.f=D=!"8GM
bjj-8r*   indexerrU   c                     [        SS/S9n[        SSS/05      nX2U'   [        [        R                  /S-  SS/S.5      nUS   R                  S5      US'   [        R
                  " X$5        g )NrT   rU   rp   r.   r1   rT   rU   r8  )r   rH   nanr   r6   r   )r8   r=  r:   otherr;   s        r+   #test_setitem_frame_length_0_str_key8TestDataFrameSetItem.test_setitem_frame_length_0_str_key  sn     Sz*3A-(7BFF8a<q!f=> ,,X6
b+r*   c           
         / SQS-  n[        [        S5      US9nSUR                  S'   SUR                  S S 2S4'   S	US
'   [        / SQ[        R                  SS[        R                  SS/[        R                  SS[        R                  SS//SS9nUS   R                  [        R                  5      US'   US   R                  [        R                  5      US'   Xl        [        R                  " X#5        g )Nr   r1   r3   r   )r   r3   )r   rT   )r.   rn   rU   r1   r}   r   )r   r.   r1   r3   rn   r}   r.   rn   r}   r8  rG   )
r   r~   r   rH   r@  r   r@   rq   r6   r   )r8   r9  r:   r;   s       r+   $test_setitem_frame_duplicate_columns9TestDataFrameSetItem.test_setitem_frame_duplicate_columns  s    "U1Xt4vq#v3"Arvvq!,Arvvq!,
 
 qk((2qk((2
b+r*   c                 F   / SQS-  n[        [        S5      US9n[        R                  " [        SS9   SUS/'   S S S 5        UR
                  S S 2S S24   n[        R                  " [        SS9   SUS/'   S S S 5        g ! , (       d  f       NL= f! , (       d  f       g = f)	Nr   r1   r3   r   "Columns must be same length as keyrk   )r   r3   r}   rT   )r   r~   rs   rt   ru   r  )r8   r9  r:   r  s       r+   2test_setitem_frame_duplicate_columns_size_mismatchGTestDataFrameSetItem.test_setitem_frame_duplicate_columns_size_mismatch  s    "U1Xt4]]:-QR!BuI S gga!en]]:-QR"CJ SR	 SR SRs   B1B
B
B r9  rb   )r-   r-   r-   c                     [        / SQ/US9n[        SS//SS/S9nSn[        R                  " [        US9   X2S	'   S S S 5        g ! , (       d  f       g = f)
Nr\   rp   rF      r]   r^   rI  rk   r-   r   rs   rt   ru   )r8   r9  r:   rhsry   s        r+   #test_setitem_df_wrong_column_number8TestDataFrameSetItem.test_setitem_df_wrong_column_number  sN     	{D1"b
S#J72]]:S1sG 211s   A
Ac                     [        / SQ// SQS9n[        / SQ// SQS9nX!SS/'   [        / SQ// SQS9n[        R                  " X5        X!SS/'   [        / SQ// S	QS9n[        R                  " X5        g )
Nr\   r-   r2   r2   rp   rF   rM     r-   r2   r4   )rF   rM  rU  rF   )r-   r2   r2   r4   r   r8   r:   rO  r;   s       r+   /test_setitem_listlike_indexer_duplicate_columnsDTestDataFrameSetItem.test_setitem_listlike_indexer_duplicate_columns  so    	{O<@C:l^_E
b+C:./9MN
b+r*   c                     [        / SQ// SQS9n[        SS//SS/S9nSn[        R                  " [        US	9   X!SS/'   S S S 5        g ! , (       d  f       g = f)
Nr\   rS  rp   rF   rM  r-   r2   rI  rk   rN  )r8   r:   rO  ry   s       r+   @test_setitem_listlike_indexer_duplicate_columns_not_equal_lengthUTestDataFrameSetItem.test_setitem_listlike_indexer_duplicate_columns_not_equal_length  sP    	{O<"b
S#J72]]:S1 SzN 211s   A


Ac                 8   [        S[        S5      05      n[        US   S5      n[        UR                  R
                  [        5      (       d   eX!S'   [        R                  " U5      US'   UR                  US'   [        R                  " UR                  5      US'   UR                  [        5      US'   [        US   R                  [        5      (       d   e[        US   R                  R
                  R                  [        5      (       d   e[        US   R                  [        5      (       d   e[        US   R                  R
                  R                  [        5      (       d   e[        US   R                  [        5      (       d   e[        US   R                  [        5      (       d   e[        US   5      (       d   eS	 n[         R"                  " U" UR$                  5      U" UR$                  5      5        [         R"                  " U" UR$                  5      U" UR&                  5      S
S9  [         R"                  " U" UR$                  5      U" UR(                  5      S
S9  [         R"                  " U" UR&                  5      U" UR(                  5      S
S9  [         R*                  " US   US   5        [         R*                  " US   US   S
S9  [         R*                  " US   US   5        [         R*                  " US   US   S
S9  g )NrT   rF   r}   rU   r   r   EFc                 @    [        [        R                  " U 5      5      $ N)r   rH   rM   r   s    r+   <lambda>=TestDataFrameSetItem.test_setitem_intervals.<locals>.<lambda>  s    eBHHQK(r*   Fr  )r   r~   r   r!  r   
categoriesr   rH   rM   rX   r   r8  r>   r   r   r   r6   r  rU   r   r   r   )r8   r:   rx   r4   s       r+   test_setitem_intervals+TestDataFrameSetItem.test_setitem_intervals  sZ   U2Y'("S'1o#'',,m<<<<
 3((3-3**3((3::&3**V$3"S'--)9::::"S'++0066FFFF"S'--)9::::"S'++0066FFFF "S'--7777"S'--7777 r#w'''' )
agqw/
agqwEB
agqwEB
agqwEB 	r#w30
r#w3UC 	r#w30
r#w3UCr*   c                 6   [        S[        [        S5      5      R                  S5      05      nUR                  R
                  R                  SS/5      Ul        [        S[        SS/5      R                  SS/5      05      n[        R                  " X5        g )Nrf   mncategoryr   r   )
r   r   listr   rf   r   reorder_categoriesr
   r6   r   r   s      r+   test_setitem_categorical-TestDataFrameSetItem.test_setitem_categorical'  s}    VDJ/66zBCDttxx**C:6+sCj)<<c3ZHI
 	b+r*   c                     [        / SS9n[        S/US9n/ US'   [        S/US9n[        R                  " UR                  UR                  5        g )Nr   rd   rT   rq   r0   )r   r   r6   r  r0   )r8   r0   r   r;   s       r+    test_setitem_with_empty_listlike5TestDataFrameSetItem.test_setitem_with_empty_listlike0  sK    bu%C56scU%8
fllHNN;r*   zcols, values, expected)r   r   r   r-   r.   r1   r3   rn   rn   )r   r   r   r-   )r   rU   rU   r-   )r   rU   r-   r\   r3   )rU   r   r-   )r3   r1   r.   r.   )r   r-   rU   r1   c                 \    [        U/US9nUS   US'   US   R                  S   nXS:X  d   eg )Nrp   r-   r   )r   rX   )r8   r9  rX   r;   r:   r   s         r+   test_setitem_same_column-TestDataFrameSetItem.test_setitem_same_column8  s=     x.S'3C"!!!r*   c                    / SQSS// SQ4n[         R                  " U5      n[        SSS9n[        R                  R                  S5      R                  S	S
[        U5      [        U5      45      n[        XBUS9nUR                  R                  R                  5       US   S S  pv[        R                  R                  S5      R                  U5        US   R                  US S S24   US'   [        R                  " US   US   5        [        R                  R                  S5      R                  U5        US   R                  Xg4   US'   [        R                  " US   US   5        [        R                  R                  S5      R                  U5        US   R                  Xg4   US'   [        R                  " US   US   5        g )N)jimjoejoliefirstlast)r   centerr   20141006   )r  r1   r.   i  ro  ry  rw  )ry  r{  )rx  rz  )ry  rz  )rx  r{  )r   from_productr   rH   rI   rJ   rK   rL   r   r0   rX   r  shuffler   r6   r   )r8   itr9  r0   r   r:   rg   rh   s           r+   test_setitem_multi_index-TestDataFrameSetItem.test_setitem_multi_indexJ  s    %w&79TT&&r*:r2yy$$Q'00D3u:s4y:QRt7xx##%r"vay1
		a ((+wKOOAttG,5	
biG5
		a ((+!"3488>
b!12B7H4IJ
		a ((+ !3488>?
b126H3IJr*   zcolumns,box,expectedrT   rU   r   r      )r  r  r  r  rp   r   r      )r.   r1   r  r  )r3   rn   r  r  r}      r  r  r   )r  r  r0  rG   rU   r   r   rT  )         )r.   r  r  r0  )r3   rF   rM  rU  )r}   r  r  r  )r   rT   r   )r  r1   r  r0  )rM  rn   rF   rU  )r  r  r  r  rT   r0  rF   rM  rU  )r  r1   r  )r0  rn   rF   )rM  r  rU  c                 b    [        SS/SS/SS//SS/S	9nX$U'   [        R                  " XC5        g )
Nr.   r1   r3   rn   r}   r  rT   rU   rp   r   )r8   rq   boxr;   r:   s        r+   !test_setitem_list_missing_columns6TestDataFrameSetItem.test_setitem_list_missing_columnsb  s=    f AAA/#sD7
b+r*   c                     [        [        US   US   5      5      nX!S'   US   n[        X!R                  SS9n[        R
                  " X45        g )NrT   rU   tuplesrj   )rj  zipr   r0   r6   r   )r8   rO   r  r   r;   s        r+   test_setitem_list_of_tuples0TestDataFrameSetItem.test_setitem_list_of_tuples  sO    c+c*K,<=> &HX&&(9(9I
v0r*   c                     [        / SQ/ SQS.5      nS S 5       nSUR                  U'   [        / SQ/ SQS.5      n[        R                  " X5        g )	Nr\   rn   r}   r  r)  c              3   $   #    U  H  ov   M     g 7fr`  r#   .0r   s     r+   	<genexpr>CTestDataFrameSetItem.test_setitem_iloc_generator.<locals>.<genexpr>       %f1f   r  r.   r+  rn   r.   r.   r   r  r6   r   r8   r:   r=  r;   s       r+   test_setitem_iloc_generator0TestDataFrameSetItem.test_setitem_iloc_generator  sF    YY78%f%99=>
b+r*   c                     [        / SQ/ SQS.5      nS S 5       nSUR                  US4'   [        / SQ/ SQS.5      n[        R                  " X5        g )Nr\   r  r)  c              3   $   #    U  H  ov   M     g 7fr`  r#   r  s     r+   r  STestDataFrameSetItem.test_setitem_iloc_two_dimensional_generator.<locals>.<genexpr>  r  r  r  r.   r  r  r  s       r+   +test_setitem_iloc_two_dimensional_generator@TestDataFrameSetItem.test_setitem_iloc_two_dimensional_generator  sJ    YY78%f%
99=>
b+r*   c                    [        SSS9n[        U[        / SS9S9n[        SU[        R                  S9US'   [        S	US
S9US	'   [        SUS
S9US'   [        SU[        R
                  S9US'   UR                  n[        [        R                  [        [        [        R
                  /[        S5      S9n[        R                  " X45        g )Nr  S24)rN   r>   r5   rG   r   r-   )rN   r0   r>   r2   S64r4   r]   abcdr/   )r   r   r   rH   rA   uint8r   r8  rj  r6   r   )r8   r0   r:   r   r;   s        r+   (test_setitem_dtypes_bytes_type_to_object=TestDataFrameSetItem.test_setitem_dtypes_bytes_type_to_object  s    D.UE"E,BCcbii@3ce<3ce<3cbhh?3299ffbhh?tF|T
v0r*   c                 8   [        SS/SS/S.5      R                  SSS.5      n[        SUR                  S	9nUS
   UR                  US
4'   US   UR                  US4'   [        SS/SS/S.5      R                  SSS.5      n[
        R                  " X5        g )Nr3   rn   r}   r  r)  r@   Int64Fr/   r-   r2   )r   r   r   r0   r   r6   r   )r8   r   maskr;   s       r+    test_boolean_mask_nullable_int645TestDataFrameSetItem.test_boolean_mask_nullable_int64  s    !Qq!f56==(
 e6<<0 &s

49 &s

49Aq6A78??(
 	f/r*   c                     [        SSS/05      n[        SS/SS9US'   [        SSS/0SS9n[        R                  " X5        g )Nr-   r.   r1   r  rG   r   r   s      r+    test_setitem_ea_dtype_rhs_series5TestDataFrameSetItem.test_setitem_ea_dtype_rhs_series  sJ    aV}%!Qw/3cAq6]':
b+r*   c                    [        [        R                  " S5      [        R                  " S5      S.[        R                  " S5      S9n[        R                  " S5      n[        [        R                  " S5      [	        / SS9S9nX#S'   [
        R                  " [        S	S
9   [        R                  " U5      US'   S S S 5        [
        R                  " X15        g ! , (       d  f       N%= f)NrF   )np-array	np-matrixr/   )rF   r.   r5   rG   r   r  z@matrix subclass is not the recommended way to represent matricesrk   r  )
r   rH   onesr   r   r6   assert_produces_warningPendingDeprecationWarningmatrixr   )r8   r;   r-   r:   s       r+   test_setitem_npmatrix_2d-TestDataFrameSetItem.test_setitem_npmatrix_2d  s     2772;?ryyQS}
 GGGRYYr]E"E4JK: ''%T
 !iilB{O	
 	b+
 
s   #C
C*r   r]   r-   c                 0   [        SS/SS/S.UE5      nSSS.UR                  S S 2S	4'   S
SS.UR                  S S 2S4'   SS
0UR                  S S 2S4'   [        SS/SS/S.UES
S/[        R                  S
/S.E5      n[        R
                  " X#5        g )Nr.   r1   r3   rn   r)  r      )r.   r   r-   r}   r  r   r.   r4   r^   )r4   r^   )r   r   rH   r@  r6   r   )r8   r   r:   r;   s       r+   %test_setitem_aligning_dict_with_index:TestDataFrameSetItem.test_setitem_aligning_dict_with_index  s     aV1a&9D9: S)q#v1q#vQq#v*Aq6QTQAbffa[Q
 	b+r*   c                 8   [        SSS/05      n[        SSS/0SS/S9US'   [        S[        R                  S/05      n[        R                  " X5        [        SSS/05      nUR                  S[        SSS/0SS/S95        [        R                  " X5        g )Nr-   r.   r1   rF   rM  r/   r   )r   rH   r@  r6   r   isetitemr   s      r+   test_setitem_rhs_dataframe/TestDataFrameSetItem.test_setitem_rhs_dataframe  s    aV}%S2r(OAq6:3cBFFB<01
b+aV}%
Ay#BxA?@
b+r*   c                     [        SS/SS/SS//S9n[        SSS	/0US
9US'   [        [        SS	/US
9SS/S.5      n[        R                  " X#5        g )Nr-   r2   r.   r1   r3   rn   rq   r9   rF   rM  rG   r)  r   r8   any_numeric_ea_dtyper:   r;   s       r+   *test_setitem_frame_overwrite_with_ea_dtype?TestDataFrameSetItem.test_setitem_frame_overwrite_with_ea_dtype  sm    Sz!Q!Q0@AS2r(O3GH3RH,@AV
 	b+r*   c                 >   [         R                  " S5        [        SSS/05      n[        R                  " SS5         [        SS/[        S9US'   S S S 5        [        SS/[        SS/[        S9S	.5      n[        R                  " X5        g ! , (       d  f       NC= f)
Npyarrowr-   r.   r1   zfuture.infer_stringTr2   rG   r)  )
rs   importorskipr   pdoption_contextr   r8  r   r6   r   r   s      r+   'test_setitem_string_option_object_index<TestDataFrameSetItem.test_setitem_string_option_object_index  s    I&aV}%4d;S#Jf5BsG <Aq6Sz0PQR
b+ <;s   B
Bc                 ~    [        SS/05      nUR                  5       nSnX/   X'   [        R                  " X5        g )Nr)  rF   r   r  r6   r   )r8   r:   r;   col_names       r+   test_setitem_frame_midx_columns4TestDataFrameSetItem.test_setitem_frame_midx_columns  s<    
RD)*779*~
b+r*   c                    [        S[        R                  " S/SS905      n[        S/SS9UR                  S S 2S4'   [        S[        R                  " S/SS905      n[
        R                  " X5        [        S[        R                  " S/SS905      n[        S/SS9UR                  S S 2S4'   [
        R                  " X5        g )Nr-   rF   r5  rG   rM  r  r   )r   rH   rM   r   r   r6   r   r  r   s      r+   test_loc_setitem_ea_dtype.TestDataFrameSetItem.test_loc_setitem_ea_dtype  s    RXXrd$789G4q#vc288RD#=>?
b+RXXrd$789t731
b+r*   c                     [        [        S5      /[        S9n[        SS/05      nXR                  S S 2S4'   XS'   [        S/UUS.5      n[
        R                  " X#5        g )Nz
2019-12-31rG   r-   r.   r2   r4   rb   )r   r   r8  r   r   r6   r   )r8   r   r:   r;   s       r+   -test_setitem_index_object_dtype_not_inferringBTestDataFrameSetItem.test_setitem_index_object_dtype_not_inferring#  sf    Y|,-V<aSz"q#v3S
 	b+r*   r#   N)Kr$   r%   r&   r'   r<   rs   markparametrizerQ   rY   rz   r   r   r   r   r   r   r   r   r   r   r   r   r	   r   r   r   as_unitr   r   ea_registryr   r!  rN   propertyr   r   r  r  r  r#  r-  r2  r;  rB  rF  rJ  rP  rW  rZ  re  rl  rp  rt  r  r   rH   rM   r@   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r)   )r  r>   r!  r  s   0000r+   r   r   (   s   & [[M66E
#<	,#1J	',3,
;;0,6 [[IC 011A&gw(GH,<8@@ES\:	

,
, [[ %++	
+ejj(3 EJJ+	
 !+
.	/	0	0F [[V%IJ2 K2( [[V%IJ5 K5 6>-,&	0 [[W&899 :9 [[Yse5, 6,,.	# [[Vo%GH I
,!*DX,< [[ !<3!<3!<3i+i+i+	

"
"K0 [[ %!<>0 c
A!<>0  "((39i;_U  L,7!?OD0  )\<@Q!?OD0 c
Aq6Ar7RH5SzJ
K8/M-	
0b,c0b,1,,
10,,( [[Vb3*%56	, 7	,	,
,,,	,,[	
s   #N$?N$r   c                   n    \ rS rSr\R
                  S 5       r\R
                  S 5       rS rS r	S r
Srg)	TestSetitemTZAwareValuesi4  c                 @    [        SS/SS9nUR                  S5      nU$ )Nz2013-1-1 13:00z2013-1-2 14:00rU   rd   z
US/Pacific)r   tz_localize)r8   naiver   s      r+   r   TestSetitemTZAwareValues.idx5  s*    /1ABM-
r*   c                     [        [        R                  " UR                  5       SS9SS9nUR                  UR                  :X  d   eU$ )Nr8  rG   rU   rd   )r   rH   rM   tolistr>   )r8   r   r;   s      r+   r;   !TestSetitemTZAwareValues.expected;  s:    "((3::<x@sK~~***r*   c                 Z   [        [        R                  R                  S5      R	                  S5      S/S9nXS'   UR                  SS/S9R                  R                  S 5      US'   US   n[        UR                  S	5      R                  S 5      SS
9n[        R                  " XE5        g )Nr1   r1   r.   rT   rp   rU   r   r.   r/   r   rd   )r   rH   rI   rJ   rV   	to_seriesdt
tz_convertr   r  r6   r   )r8   r   r;   r:   r   comps         r+   test_setitem_dt64series0TestSetitemTZAwareValues.test_setitem_dt64seriesA  s    ryy,,Q/??GRUQVW3--q!f--00;;DA3CcnnU+77=CH
v,r*   c                     [        [        R                  R                  S5      R	                  S5      S/S9nXS'   US   n[
        R                  " XB5        g )Nr1   r  rT   rp   rU   )r   rH   rI   rJ   rV   r6   r   r8   r   r;   r:   r   s        r+   test_setitem_datetimeindex3TestSetitemTZAwareValues.test_setitem_datetimeindexK  sL    ryy,,Q/??GRUQVW 3C
v0r*   c                    [        [        R                  R                  S5      R	                  S5      S/S9nUR                  5       US'   US   nUR                  R                  S5      n[        R                  " XB5        g )Nr1   r  rT   rp   rU   us)
r   rH   rI   rJ   rV   to_pydatetimer  r  r6   r   r  s        r+   .test_setitem_object_array_of_tzaware_datetimesGTestSetitemTZAwareValues.test_setitem_object_array_of_tzaware_datetimesT  sk    ryy,,Q/??GRUQVW ##%3C;;&&t,
v0r*   r#   N)r$   r%   r&   r'   rs   fixturer   r;   r  r  r   r)   r#   r*   r+   r  r  4  s?    ^^ 
 ^^ 
-11r*   r  c                   V    \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rS rS rSrg)!TestDataFrameSetItemWithExpansioni_  c                     [        / SQ/ SQS.5      nUS   n[        R                  " SS/SS/SS	//5      US
S/'   SUR                  S'   [	        / SQSS9n[
        R                  " X#5        g )Nr\   )rn   rn   r  r)  r-   g?g?g333333?g?      ?r4   r]   r   r   r   rd   )r   rH   rM   r  r   r6   r   )r8   r:   rx   r;   s       r+   test_setitem_listlike_views=TestDataFrameSetItemWithExpansion.test_setitem_listlike_views`  sp    YY78 g C:SzC:"FGC: )#.
s-r*   c                     [        SS/SS//5      nSS/US'   [        / SQ/ S	Q// S
QS9n[        R                  " X5        g )Nr.   r1   r3   rn   r}   r  0 - Name)r.   r1   r}   )r3   rn   r  )r   r.   r  rp   r   r   s      r+   .test_setitem_string_column_numpy_dtype_raisingPTestDataFrameSetItemWithExpansion.test_setitem_string_column_numpy_dtype_raisingp  sF    AA'(Q:i3=OP
b+r*   c                 *   [        / SQSS9n[        [        S5      5      UR                  S S 2S4'   [        S[        R
                  [        R
                  /S[        R
                  [        R
                  /// SQS9n[        R                  " X5        g )	NrS  rD   rq   r>   r1   r-   r   r.   rp   )r   rj  r~   r   rH   r@  r6   r   r   s      r+   'test_setitem_empty_df_duplicate_columnsITestDataFrameSetItemWithExpansion.test_setitem_empty_df_duplicate_columnsw  si    i@eAhq#v 1bffbff"56
 	b+r*   c           
         [        S[        R                  " [        R                  R	                  S5      R                  SSS5      SS905      n[        [        SSS5       Vs/ s H  o" S	US
-    3PM     sn5      nUR                  S/SS9n[        UR                  [        SSS5      SUS9nUR                  nXQS'   UR                  n[        [        R                  " S5      [        USS9/SS/S9n[         R"                  " Xg5        XAS'   UR                  n[        [        R                  " S5      [        USS9[        USS9// SQS9n[         R"                  " Xg5        US   nUS   n	[         R$                  " UR&                  R                  U5        SUl        [         R"                  " U	R+                  5       UR+                  5       5        g s  snf )Nvaluer1   r   i'  r   r?   rG   i  z - i  T)by	ascendingi)  F)r   labelsr   )rd  orderedr/   r]  )r  r   r]  )r   rH   rM   rI   rJ   rK   r
   r~   sort_valuesr   r  rX   r   r   r>   r   r6   r   assert_categorical_equalr
  rN   
sort_index)
r8   r:   rg   r  rx   r   r   r;   result1result2s
             r+   -test_setitem_with_expansion_categorical_dtypeOTestDataFrameSetItemWithExpansion.test_setitem_with_expansion_categorical_dtype  s   II))!,55aDG
 %5#:NO:NQ3q3wi0:NOP^^yD^9"((E!UC0fMjj 3XXg 0FE RSC.
 	v0 3! FEB FEB
 &
 	v0S'S'
##GLL$6$6< 
w113S^^5EFE Ps   #Gc                     [        5       nSUS'   [        S/S9R                  [        R                  5      n[        R
                  " X5        g )Nr.   rc   rp   )r   r   rH   r@   r6   r   r   s      r+   test_setitem_scalars_no_index?TestDataFrameSetItemWithExpansion.test_setitem_scalars_no_index  s;    [5	eW-44RXX>
b+r*   c                     SUR                   ;  d   eUS   US'   SUR                   ;   d   eUS   nUS   n[        R                  " X#SS9  g )Nr?  rT   Fr  )rq   r6   r   )r8   rO   r   r;   s       r+   test_setitem_newcol_tuple_key?TestDataFrameSetItemWithExpansion.test_setitem_newcol_tuple_key  sj    
 $$% 	% % !,C 0H[00000X&s#
vUCr*   c                     [        SS[        5       S9n[        U[        S5      S9n[	        SSS5      n[        U5      n[        R                  X$'   [        R                  " X$   5      R                  5       (       d   eg )	Nz1/1/2012z2/1/2012)startendr   rF   ro  i  rM  r.   )
r   r   r   r~   r   r   rH   r@  isnanr   )r8   rq   r9   ttss        r+   #test_frame_setitem_newcol_timestampETestDataFrameSetItemWithExpansion.test_frame_setitem_newcol_timestamp  sd    ::DFKb	:T2q!q\66xx!%%''''r*   c                     [        SSS/05      nUR                  US'   SUR                  SS/S4'   UR                  S/S S 24   n[        S/S/S.S/S9n[        R                  " X#5        g )	Nr-   r2   r   FTr.   r)  r/   )r   r0   r   r6   r   r   s       r+   *test_frame_setitem_rangeindex_into_new_colLTestDataFrameSetItemWithExpansion.test_frame_setitem_rangeindex_into_new_col  sq    c3Z()((3%(t}c!"QC5u5aSA
f/r*   c           	          [        SS/SS/SS//S9n[        SSS	/0US
9US'   [        SS/SS/[        SS	/US
9S.5      n[        R                  " X#5        g )Nr-   r2   r.   r1   r3   rn   r  rF   rM  rG   r4   rb   r   r  s       r+    test_setitem_frame_keep_ea_dtypeBTestDataFrameSetItemWithExpansion.test_setitem_frame_keep_ea_dtype  st    Sz!Q!Q0@AS2r(O3GH3VVRH,@A
 	b+r*   c                    [        [        S5      S9n[        R                  " SSS9[        R                  " SSS9SS.UR                  S	'   [        [        R
                  " S
5      [        R
                  " S5      S//[        S	/5      / SQS9nUS   R                  S5      US'   US   R                  S5      US'   [        R                  " X5        g )Nabcrp   r}   r   )r   H   23rb   r   z0 days 00:00:05z0 days 00:01:12r   r-   zm8[s]r2   )
r   rj  r  to_timedeltar   	Timedeltar   r   r6   r   )r8   r   r;   s      r+   &test_loc_expansion_with_timedelta_typeHTestDataFrameSetItemWithExpansion.test_loc_expansion_with_timedelta_type  s    4;/-#.


1
 ll,-r||<M/NPTUV*$

 !,,W5 ,,W5
f/r*   c                     [        5       n/ SQUS'   [        S/SS9n[        S/ SQ0US9n[        R                  " X5        g )Nr\   r  F)tupleize_colsrp   )r   r   r6   r   )r8   r:   r9  r;   s       r+   %test_setitem_tuple_key_in_empty_frameGTestDataFrameSetItemWithExpansion.test_setitem_tuple_key_in_empty_frame  s?    [6
fXU3fi0$?
b+r*   r#   N)r$   r%   r&   r'   r  r  r  r  r   r#  r+  r.  r1  r9  r=  r)   r#   r*   r+   r  r  _  s<    . ,,+GZ,
D(0,0 ,r*   r  c                   <   \ rS rSrS r\R                  R                  S\\	R                  \\R                  /5      \R                  R                  S/ SQ5      S 5       5       r\R                  R                  S\\	R                  \\R                  /5      \R                  R                  S/ SQ5      S 5       5       r\R                  R                  S\\	R                  \\R                  /5      \R                  R                  S/ SQ5      S 5       5       rS	rg
)TestDataFrameSetItemSlicingi  c                     [        [        R                  " S5      5      nSUSS & [        R                  " S5      nSUSS & [        U5      n[        R                  " X5        g )N)r   r.   r.   )r   rH   zerosr6   r   r,  s       r+   test_setitem_slice_position7TestDataFrameSetItemSlicing.test_setitem_slice_position  sP    rxx)*23hhx BCS>
b+r*   r  r   r\   c                     [        / SQ// SQ/U-  -   / SQS9nU" / SQ5      U" U5      SS & [        / SQ// SQ/U-  -   / SQS9n[        R                  " XE5        g Nr*  r1   rn   r  rb   rp   rT  r.   r   r8   r   r  
indexer_sir:   r;   s         r+   +test_setitem_slice_indexer_broadcasting_rhsGTestDataFrameSetItemSlicing.test_setitem_slice_indexer_broadcasting_rhs  sZ     	{i[1_4oN .
2qri[L>A+==W
b+r*   c           	          [        / SQ// SQ/U-  -   / SQS9nU" / SQ5      UR                  [        [        SUS-   5      5      '   [        / SQ// SQ/U-  -   / SQS9n[        R
                  " X45        g rG  )r   r  rj  r~   r6   r   )r8   r   r  r:   r;   s        r+   *test_setitem_list_indexer_broadcasting_rhsFTestDataFrameSetItemSlicing.test_setitem_list_indexer_broadcasting_rhs  sg     	{i[1_4oN),\):U1a!e_%&i[L>A+==W
b+r*   c                     [        / SQ/ SQ// SQ/U-  -   / SQS9nU" / SQ5      U" U5      SS & [        / SQ// SQ/US-   -  -   / SQSS	9n[        R                  " XE5        g )
Nr*  r   rH  rb   rp   rT  r.   r8  r  r   rI  s         r+   0test_setitem_slice_broadcasting_rhs_mixed_dtypesLTestDataFrameSetItemSlicing.test_setitem_slice_broadcasting_rhs_mixed_dtypes  so     (I;?:O
 !.
2qrK<.AE22#

 	b+r*   r#   N)r$   r%   r&   r'   rD  rs   r  r  r   rH   rM   rj  r  rK  rN  rQ  r)   r#   r*   r+   r@  r@    s    , [[UVRXXtRXX$FG[[S),, - H, [[UVRXXtRXX$FG[[S),, - H, [[UVRXXtRXX$FG[[S),, - H,r*   r@  c                        \ rS rSrS rS rSrg)TestDataFrameSetItemCallablei%  c                     [        / SQ/ SQS.5      n/ SQUS '   [        / SQ/ SQS.5      n[        R                  " X5        g )Nrr  r  r?  )rM  rU  r  r  c                     g)NrT   r#   ra  s    r+   rb  DTestDataFrameSetItemCallable.test_setitem_callable.<locals>.<lambda>)  s    Sr*   r   r   s      r+   test_setitem_callable2TestDataFrameSetItemCallable.test_setitem_callable&  s9    \=>,=.\BC
b&r*   c                     S n[        SS/SS//[        S9nXUS:  '   [        SU/US//5      n[        R                  " X#5        g )Nc                     U S-   $ )Nr.   r#   ra  s    r+   incETestDataFrameSetItemCallable.test_setitem_other_callable.<locals>.inc0  s    q5Lr*   r  r.   rG   r   )r   r8  r6   r   )r8   r\  r:   r;   s       r+   test_setitem_other_callable8TestDataFrameSetItemCallable.test_setitem_other_callable.  sR    	 Q!R)826
r3i#r34
b+r*   r#   N)r$   r%   r&   r'   rX  r^  r)   r#   r*   r+   rT  rT  %  s    '
,r*   rT  c                      \ rS rSr\R
                  R                  SS S /SS/S9S 5       r\R
                  R                  S	S
9\R
                  R                  S\	\
R                  \/5      S 5       5       r\R
                  R                  S\	\
R                  \/5      S 5       rS rS r\R
                  R                  SSS/5      \R
                  R                  S0 SS/0SS/0/5      S 5       5       rS rS rS rSrg)TestDataFrameSetItemBooleanMaski;  	mask_typec                 :    U [         R                  " U 5      S-  :  $ Nr1   )rH   absr:   s    r+   rb  (TestDataFrameSetItemBooleanMask.<lambda>>  s    Ba'r*   c                 N    U [         R                  " U 5      S-  :  R                  $ rd  )rH   re  rX   rf  s    r+   rb  rg  >  s    R"&&*q.5H4P4Pr*   	dataframerM   )idsc                 b   UR                  5       nU" U5      nUR                  5       n[        R                  XT'   UR                  R                  5       n[        R                  U[        R                  " U5      '   [        XcR                  UR                  S9n[        R                  " XV5        g )Nr   )
r  rH   r@  rX   rM   r   r0   rq   r6   r   )r8   rb  rO   r:   r  r   r;   s          r+   test_setitem_boolean_mask9TestDataFrameSetItemBooleanMask.test_setitem_boolean_mask<  s{     } vv99>>##%66$ XXXrzzJ
f/r*   z1Currently empty indexers are treated as all False)reasonr  c                     [        S/S/S/S.5      nU[        :X  a  U" / SS9nOU" / 5      nSn[        R                  " [        US9   S/UR
                  US/4'   S S S 5        g ! , (       d  f       g = f)	Nr-   r.   rb   r8  rG   z@Must have equal len keys and value when setting with an iterablerk   r2   )r   r   rs   rt   ru   r   )r8   r  r:   r=  ry   s        r+   :test_setitem_loc_empty_indexer_raises_with_non_empty_valueZTestDataFrameSetItemBooleanMask.test_setitem_loc_empty_indexer_raises_with_non_empty_valueO  sl     cU!A378&="H-G"gGP]]:S1&'SBFF7SE>" 211s   A%%
A3c                 
   [        S/S/S/S.5      nU" S/5      nSUS   -
  UR                  US/4'   [        S/S/S/S.5      n[        R                  " X$5        SUR                  US/4'   [        R                  " X$5        g )	Nr-   r.   rb   FrF   r4   r2   r0  )r   r   r6   r   )r8   r  r:   r=  r;   s        r+   1test_setitem_loc_only_false_indexer_dtype_changedQTestDataFrameSetItemBooleanMask.test_setitem_loc_only_false_indexer_dtype_changed\  s    
 cU!A378ug,!#bgw~C5s!=>
b+!"w~
b+r*   c                     [        / SQ/ SQS.5      nUR                  5       nUS   S:  nU" U5      U   R                  S5      U" U5      U'   [        R                  " X#5        g )N)r.   rn   r1   r3   r  r)  r-   r3   )r   r  r  r6   r   )r8   
indexer_slr:   r;   r  s        r+   "test_setitem_boolean_mask_aligningBTestDataFrameSetItemBooleanMask.test_setitem_boolean_mask_aligningj  sY    \=>779#w!|)"~d3??D
2t
b+r*   c                 ^   [        / SQSS/S9n[        / SQ5      n/ SQn[        XS.US9n[        / S	Q/ S
QS9n[        / SQ5      n/ SQn[        XWS.US9nUR                  5       n	U	S   R                  R                  / S
Q5      U	S'   US   S:H  n
SS/X'   [        R                  " X5        g )N)r-   r-   r2   r2   r-   r-   r-   r-   r2   )rd  )rf   rg   rh   klr   r   )r.   r.   r1   r1   r.   r.   r.   )catsrX   r/   )r-   r-   r4   r4   r-   r-   r-   rb   )r.   r.   r3   r3   r.   r.   r.   r|  r4   r1   )r
   r   r   r  r   set_categoriesr6   r   )r8   cats2idx2values2exp_multi_rowcatsfidxfvaluesfr:   	exp_fancyr  s              r+   test_setitem_mask_categorical=TestDataFrameSetItemBooleanMask.test_setitem_mask_categoricalr  s     ?SRUJW89'!5"DDQ/O
 89'9F!&&(	%f-11@@Q	&&zS 8
b,r*   r>   r   r@   kwargsr0   r.   rq   rT   c                 |    XS'   [        S0 UD6nUR                  5       nSX3U:  '   [        R                  " X45        g )Nr>   /   r#   r  )r8   r>   r  r:   r  s        r+   %test_setitem_empty_frame_with_booleanETestDataFrameSetItemBooleanMask.test_setitem_empty_frame_with_boolean  s<      w  ggi8
b&r*   c           
         [        [        S5      5      n/ SQn[        UU[        R                  " / SQ/ SQ/ SQ/[
        S9S9n[        X[        R                  " [        U5      [        U5      45      S9n[        UU[        R                  " / SQ/ SQ/ S	Q/[
        S9S9nS
X3SU-  :  '   [        R                  " X55        [        R                  " [        SS9   S
X3R                  S S
 S:  '   S S S 5        g ! , (       d  f       g = f)Nr3   r   )        r  r   )      ?r         @)r         @      @rG   )r0   rq   r9   )r  r   r  )r  r  r  r  r   zItem wrong lengthrk   r1   )rj  r~   r   rH   rM   r   r  rL   r6   r   rs   rt   ru   r0   )r8   r   r9  df1r  r;   s         r+   test_setitem_boolean_indexing=TestDataFrameSetItemBooleanMask.test_setitem_boolean_indexing  s    58n /?C5
 cbggs3xT>S6TU?NLIQVW
  "#)O
c,]]:-@A&(C		#2"# BAAs   C88
Dc                     [        SS/SS/SS.5      nUR                  5       n[        SS/SS	9n[        S
SS/0SS/S9UR                  US
/4'   [        R
                  " X5        g )Nr.   r1   r3   rn   r-   rb   Fr4   rd   r2   r}   r  r   r/   )r   r  r   r   r6   r   )r8   r:   r;   r=  s       r+   -test_loc_setitem_all_false_boolean_two_blocksMTestDataFrameSetItemBooleanMask.test_loc_setitem_all_false_boolean_two_blocks  sk    aV1a&s;<779%c2!*C!Q=A!Gw~
b+r*   c                     [        SS/SS//5      n[        SS/SS//5      n[        [        SS/SS	9[        [        R                  S/SS	9S
.5      nSX'   [        R
                  " X5        g )Nr  r1   r3   rB  r   TFbooleanrG   r  )r   r   r  NAr6   r   )r8   r:   r;   boolean_indexers       r+   test_setitem_ea_boolean_mask<TestDataFrameSetItemBooleanMask.test_setitem_ea_boolean_mask  sw    Q!R)*q!fq!f-.#4-y9255$-y9
  
b+r*   r#   N)r$   r%   r&   r'   rs   r  r  rl  xfailrj  rH   rM   r   rp  rs  rw  r  r  r  r  r  r)   r#   r*   r+   ra  ra  ;  s)   [[	')PQ'"  
0
0 [[QR[[UT288V$<=	) > S	) [[UT288V$<=, >,,-. [[Ww&89[[XWqcNY<N'OP' Q :').,,r*   ra  c                   f   \ rS rSrS r\R                  R                  SSS/5      S 5       rS r	\R                  R                  SS	\
R                  " S	/S	//S
S9S	/S	///5      S 5       r\R                  R                  SS\
R                  " S/S//5      S/S///5      S 5       r\R                  R                  SSS/\R                  " SS/\R                  R                  SSS9S9/5      \R                  R                  SSS\" S5      \" S5      4S/5      S 5       5       rS rS r\R                  R                  SS
S/5      S 5       rS  rS! rS" r\R                  R                  S#S$S%/\" S&5      4/ S'Q/ S'Q/4\" S&5      \" S&5      4S%4S$S	S(/4S%S%/4S$/S	4S%/4S$/\
R2                  " S	5      4S%/4\" S&5      \
R2                  " S	5      4/ S)Q4\" S&S%5      \
R2                  " S	5      4S%S%/4\
R                  " / S*Q5      \
R                  " / S+Q5      4S%S%/4/5      S, 5       rS-rg&).%TestDataFrameSetitemCopyViewSemanticsi  c                    SUR                   ;  d   eUS   R                  5       nX!S'   [        R                  UR                  SS2UR                   R                  S5      4'   [        USS 5      R                  5       (       d   eg )Nr]  rT   r}   rF   )rq   r  rH   r@  r  get_locr   r   )r8   rO   r   s      r+   test_setitem_always_copy>TestDataFrameSetitemCopyViewSemantics.test_setitem_always_copy  s~    +-----!!#CCE662{22::3??@QqW~!!####r*   consolidateTFc                    [        / SQ/ SQS./ SQS9nUR                  SS[        R                  5        U(       a6  UR	                  5         [        UR                  R                  5      S:X  d   eO%[        UR                  R                  5      S:X  d   eS	UR                  SS 2S4'   [        [        R                  [        R                  S	S	/UR                  SS
9n[        R                  " US   U5        g )N)g?g @g@gffffff@)gffffff@gffffff@gffffff@g333333 @)r   r   )r   r.   r1   r3   r/   r1   r   r.   *   rj   )r   r   rH   r@  _consolidate_inplacerL   r
  r  r   r   r0   r6   r   )r8   r  r:   r;   s       r+   #test_setitem_partial_column_inplaceITestDataFrameSetitemCopyViewSemantics.test_setitem_partial_column_inplace  s     &-AB,
 			!S"&&!##%rww~~&!+++rww~~&!+++qr3w2662662r2"((M
r#w1r*   c                     SS/S-  n[        SS/US9nUR                  5       nUS S  nSUS'   [        / SQ/US	9n[        R                  " XC5        [        R                  " X%5        g )
NrT   rU   r1   r  r   r   rE  )r  r1   r  r}   rp   r  )r8   r9  r:   df_copydf_viewr;   s         r+   *test_setitem_duplicate_columns_not_inplacePTestDataFrameSetitemCopyViewSemantics.test_setitem_duplicate_columns_not_inplace  sh    SzA~s1#t4'')Q%3./>
g/
b+r*   r  r.   r@   rG   c                     SS/n[        SSS/US9nUR                  5       nUS S  nXS/'   [        SS/SS//US9n[        R                  " X65        [        R                  " XT5        g )NrT   rU   r   r.   r   rp   r  r8   r  r9  r:   r  r  r;   s          r+   #test_setitem_same_dtype_not_inplaceITestDataFrameSetitemCopyViewSemantics.test_setitem_same_dtype_not_inplace  sq    
 SzqA5'')Q%C5	q!fq!f-t<
b+
g/r*   r   c                     SS/n[        SSS/US9nUR                  5       nUS S  nXS/'   [        SS/SS//US9n[        R                  " XT5        [        R                  " X65        g )NrT   rU   r   r.   r   r   rp   r  r  s          r+   2test_setitem_listlike_key_scalar_value_not_inplaceXTestDataFrameSetitemCopyViewSemantics.test_setitem_listlike_key_scalar_value_not_inplace  sq     SzqA5'')Q%C5	q#hC14@
g/
b+r*   r=  r-   z+Boolean indexer incorrectly setting inplace)rn  strict)markszvalue, set_value)r.   r}   )r   g      @z
2020-12-31z
2021-12-31r)  c                 ~    [        SU0SS/S9nUR                  5       nUS S  nX$U'   [        R                  " Xe5        g )Nr-   r   r.   r/   r  )r8   r  	set_valuer=  r:   r;   r   s          r+   "test_setitem_not_operating_inplaceHTestDataFrameSetitemCopyViewSemantics.test_setitem_not_operating_inplace  sA    2 U|Aq62779!u7
d-r*   c                 6   [        S5       Vs/ s H  nSU 3PM
     nn[        U Vs0 s H"  o3[        R                  " [	        U5      5      _M$     snUS9nUR
                  R                  S   R                  n[        R                  " 5          UR                   H
  nSXF   U'   M     S S S 5        [        R                  " U[        R                  " S5      [        R                  " S5      4   S:H  5      (       d   eg s  snf s  snf ! , (       d  f       Nf= f)NrF   r4   r/   r   r.   )r~   r   rH   rC  rL   r
  r  rX   r6   raises_chained_assignment_errorrq   r   r   )r8   rg   r  colr:   rX   labels          r+   "test_setitem_column_update_inplaceHTestDataFrameSetitemCopyViewSemantics.test_setitem_column_update_inplace'  s     $)9-9aAaS'9-fEfsRXXc&k22fEVT"))//1#$	%  $ 2 vvfRYYr]BIIbM9:a?@@@@ .E 21s   D )DD


Dc                     [        / SQ5      n[        / SQSS9US'   [        / SQSS9US'   [        / SQ/ SQ[        S9n[        R                  " UR
                  U5        g )	Nr\   ri  rG   col1col2)r@   ri  ri  )r   r  r  )r0   r>   )r   r   r8  r6   r   r   )r8   r:   expected_typess      r+   %test_setitem_column_frame_as_categoryKTestDataFrameSetitemCopyViewSemantics.test_setitem_column_frame_as_category4  sU    y!y
;6
IZ86
-5HPV
 	ryy.9r*   r>   r  c                 .   [        S[        R                  " S5      0US9n[        R                  " S//5      UR                  [        R                  " S/5      [        R                  " S/5      4'   [        S/ SQ0US9n[
        R                  " X#5        g )Nr-   r3   rG   r1   r   )r1   r.   r.   )r   rH   r  rM   r  r6   r   )r8   r>   r:   r;   s       r+   "test_setitem_iloc_with_numpy_arrayHTestDataFrameSetitemCopyViewSemantics.test_setitem_iloc_with_numpy_array?  so     RWWQZ(6021#!rxx},-c9-U;
b+r*   c                 D   [        / SQ/ SQ// SQS9n[        SS/SS//S	S	/S9nX!S	'   [        / S
Q/ SQ// SQS9n[        R                  " X5        [        / SQ/ SQ// SQS9n[        SS/SS//S	S	/S9nX!S	'   [        / SQ/ SQ// SQS9n[        R                  " X5        g )Nrr  )rn   r}   r  r  )r-   r2   r-   r4   rp   r   r  r1   r  r-   )r   r1   r  rn   )r1   r}   r  r  r\   r  )r-   r-   r2   )r   r  r3   )r1   r  r  r   rV  s       r+   !test_setitem_frame_dup_cols_dtypeGTestDataFrameSetitemCopyViewSemantics.test_setitem_frame_dup_cols_dtypeH  s    l3=QR!SAs8,sCjA3^,6J
 	b+	9-G!SAs8,sCjA3k;7Q
b+r*   c                     [        S/SSS9n[        SU05      R                  S5      nUSS R                  5       nS US'   S US'   [        / SS/US S S9n[        R
                  " X#5        g )	Nz
2000-01-01r   date)r>   rN   r   30102010ro  )r   r   r   r  r6   r   )r8   dtir:   r;   s       r+   "test_frame_setitem_empty_dataframeHTestDataFrameSetitemCopyViewSemantics.test_frame_setitem_empty_dataframeX  s|    \N(H}%//7!W\\^6
6
V$bq'

 	b+r*   c                     [        / SQ/ SQ/ SQ/ SQS.5      nUR                  5       nUSS/   nSS/SS//UR                  S	S
/S S 24'   [        R                  " X5        [        / SQ/ SQS.UR
                  S9n[        R                  " X45        U/ SQ   nSS/SS//UR                  S	S
/SS
S24'   [        R                  " X5        [        / SQ/ SQ/ SQS.UR
                  S9n[        R                  " X45        g )N)r.   rn   r.   r}   )r1   r}   r1   r  )r3   r  r.   r  )r  r0  rF   rM  r  rU   r   r1   r.   r3   r1   r1   r1   r1   )r3   r1   r.   r1   )rU   r   r/   r  r   )r  r1   rF   r1   )r   r  r  r6   r   r0   )r8   	df_parentdf_origr:   r;   s        r+   test_iloc_setitem_view_2dblockDTestDataFrameSetitemCopyViewSemantics.test_iloc_setitem_view_2dblockh  s    !!!#	
	 .."Sz"  !!fq!f-A	 	i1 <lC288T
b+ '#$a&1a&!1A!A
i1\Fbhh
 	b+r*   zindexer, valuer   r1   Nr  r3   )r1   r1   r1   )FTF)FTFTc                    [         R                  " S5      R                  SS5      n[        UR	                  5       [        S5      S9nUR                  R                  (       d   eUR	                  5       nUS S  nX&R                  U'   [        R                  " XE5        X#U'   [        U[        S5      S9n[        R                  " Xg5        g )NrU  r3   rn   ABCDrp   )rH   r   r   r   r  rj  r
  is_single_blockr  r6   r   )r8   r=  r  rP   r  r  r:   r;   s           r+   test_setitem_2dblock_with_refCTestDataFrameSetitemCopyViewSemantics.test_setitem_2dblock_with_ref  s    $ iim##Aq)chhj$v,?	 ~~----.."q\  	i1 GS$v,7
b+r*   r#   )r$   r%   r&   r'   r  rs   r  r  r  r  rH   rM   r  r  paramr  r   r  r  r  r  r  r  r  slicer@   r  r)   r#   r*   r+   r  r    s   $ [[]T5M:2 ;2*
, [[!RXXsQCj8A3*E
0
0 [[WsBHHsecU^,Dusen&UV
, W
, [[ELLukk''H  ( 
	
 [[|$i&=>		
...A	: [[Ww&89, :,, , ,@ [[!feDk"\<$@ADk5;'+!Q[1a&!c1XsOc288A;!%Dk288A;'3D!nbhhqk*QF3./:T1UVA	
 ,! ,r*   r  c                     [        SSS/05      n [        R                  " [        SS9   SU R                  S S 2S4'   S S S 5        [        R                  " [        SS9   SSS	.U R                  S S 2S4'   S S S 5        S
SS	.U R                  S S 2S4'   [        SS
S/05      n[
        R                  " X5        g ! , (       d  f       N= f! , (       d  f       N[= f)Nr-   r.   r1   zInvalid valuerk   Tr  g      @r  r3   rn   )r   rs   rt   	TypeErrorr   r6   r   r:   r;   s     r+   'test_full_setter_loc_incompatible_dtyper    s    	C!Q=	!B	y	8q#v 
9 
y	8 S)q#v 
9 q\BFF1c6N#1v'H"' 
9	8 
9	8s   B9C
9
C

Cc            
          [        / SQ/ SQS.5      n SU R                  U R                  S:*  SS/4'   [        / SQ/ SQSS[        S	5      /S
S
[        S	5      /S.5      n[        R
                  " X5        g )Nr\   )r  r}   r  r?  )r.   r4  r.   r^  Gr   r@  r4  )rT   rU   r^  r  )r   r   r0   r   r6   r   r  s     r+   )test_setitem_partial_row_multiple_columnsr    sq    	5	6B(2BFF288q=3*$%q%,'e-		
H "'r*   )0r   numpyrH   rs   pandas.core.dtypes.baser   r  pandas.core.dtypes.commonr   pandas.core.dtypes.dtypesr   r   r   r	   pandasr  r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   pandas._testing_testingr6   pandas.core.arraysr   pandas.tseries.offsetsr   r   r  r  r@  rT  ra  r  r  r  r#   r*   r+   <module>r     s       < 5      $  * 'I, I,X(1 (1VW, W,t), ),X, ,,C, C,Lj, j,Z((r*   