
    Mh                     @
   S SK rS SKrS SKJr  S SKJr  S SKrS SKJ	r	J
r
  S SKJr  S SKJr  \R                   " SS/S9S	 5       rS
 rS rS r\R*                  R-                  SSS/SS/S9S 5       r\R*                  R-                  SSS/SS/S9\R*                  R-                  S\" SS5      \R2                  " / SQ5      \R2                  " SS/5      // SQS9\R*                  R-                  S\" SS5      \R2                  " / SQ5      SS/// SQS9S 5       5       5       r\R*                  R-                  SSS/SS/S9\R*                  R-                  S\" SS5      \R2                  " / SQ5      \R2                  " SS/5      // SQS9\R*                  R-                  S\" SS5      \R2                  " / SQ5      SS/// SQS9S 5       5       5       r\R*                  R-                  S\" S S5      \R2                  " / S Q5      \R2                  " S S/5      // SQS9S! 5       rS" rS# r\R*                  R-                  SSS/SS/S9S$ 5       rS% r \R*                  R-                  SSS/SS/S9S& 5       r!\R*                  R-                  S\" S'S5      \R2                  " / S Q5      S'S/// SQS9S( 5       r"\R*                  R-                  S)S* S+ S, S- S. S/ // S0QS9\R*                  R-                  SSS/SS/S9S1 5       5       r#\R*                  R-                  SSS/SS/S9S2 5       r$\R*                  R-                  S)S3 S4 S5 S6 // S7QS9S8 5       r%S9 r&\R*                  R-                  S)S: S; S< S= S> // S?QS9S@ 5       r'\R*                  R-                  S)SA SB SC // SDQS9SE 5       r(SF r)SG r*\R*                  R-                  S\" S S5      \R2                  " / S Q5      \R2                  " S S/5      // SQS9SH 5       r+SI r,SJ r-SK r.SL r/\R*                  R-                  S)SM SN SO // SDQS9SP 5       r0SQ r1\R*                  R-                  SRSSS'/5      \R*                  R-                  ST\Rd                  SU4\Rf                  SV4\Rd                  S /S'44\Rf                  S /S 44\Rd                  \" S5      S'44\Rf                  \" S5      S 44/5      \R*                  R-                  SW/ SXQ/ SYQ/SS/S9SZ 5       5       5       r4S[ r5S\ r6S] r7S^ r8S_ r9g)`    N)SettingWithCopyWarning)is_float_dtype)	DataFrameSeries)	get_arraynumpynullable)paramsc                 z    U R                   S:X  a  S nS nOU R                   S:X  a  S nS nU R                   WW4$ )Nr   c                      [        U 0 UD6$ N)r   argskwargss     V/var/www/html/env/lib/python3.13/site-packages/pandas/tests/copy_view/test_indexing.pymake_dataframebackend.<locals>.make_dataframe   s    d-f--    c                      [        U 0 UD6$ r   )r   r   s     r   make_seriesbackend.<locals>.make_series   s    4*6**r   r	   c                      [        U 0 UD6nUR                  5       nUR                   HT  n[        X$   R                  5      (       d  M!  [        X4   R                  5      (       a  M?  X4   R                  S5      X4'   MV     UR                  5       $ )NFloat64)r   convert_dtypescolumnsr   dtypeastypecopy)r   r   dfdf_nullablecols        r   r   r      s    D+F+B++-K zz!"'--00$**: : (3'7'>'>y'IK$	 " ##%%r   c                  T    [        U 0 UD6nUR                  5       R                  5       $ r   )r   r   r   )r   r   sers      r   r   r   *   s)    $)&)C%%',,..r   )param)requestr   r   s      r   backendr&      sC    }}	.	+ 
*	$	&	/ ==.+55r   c                 N   U u  p#nU" / SQ/ SQ/ SQS.5      nUR                  5       nUSS/   nU(       aB  [        R                  " [        US5      [        US5      5      (       d   eSUR                  S'   OA[        R                  " [        US5      [        US5      5      (       a   eSUR                  S'   [        R                  " [        US5      [        US5      5      (       a   eU" / S	Q/ SQS
.5      n[
        R                  " Xg5        [
        R                  " XE5        g )N                  皙?皙?333333?abcr5   r7   r   r   r   r   r*   r+   r5   r7   )r   npshares_memoryr   iloctmassert_frame_equal)r&   using_copy_on_write_r   r   df_origsubsetexpecteds           r   test_subset_column_selectionrE   5   s     OA!	I	JBggiGc
^F	&# 6	"c8JKKKKD##Ifc$:Ib#<NOOOO D	&# 6	"c8JKKKKy?@H&+"&r   c                    U u  p#nU" / SQ/ SQ/ SQS.5      nUSS/   nU(       a2  [         R                  " [        US5      [        US5      5      (       d   eSUR                  S'   [         R                  " [        US5      [        US5      5      (       a   eU(       a2  [         R                  " [        US5      [        US5      5      (       d   eU" / SQ/ SQS	.5      n[        R
                  " XV5        g )
Nr(   r,   r0   r4   r5   r7   r   r8   r:   )r;   r<   r   r=   r>   r?   )r&   r@   rA   r   r   rC   rD   s          r   *test_subset_column_selection_modify_parentrG   Q   s     OA!	I	JBc
^F	&# 6	"c8JKKKKBGGDM	&# 6	"c8JKKKK	&# 6	"c8JKKKKy?@H&+r   c                     U u  p4nU" / SQ/ SQ/ SQS.5      nUR                  5       nUSS nUR                  R                  5         [        R                  " [        US5      [        US5      5      (       d   eU(       aB  SUR                  S	'   [        R                  " [        US5      [        US5      5      (       a   eO.[        R                  " U5         SUR                  S	'   S S S 5        UR                  R                  5         U" SS/S
S/SS/S.[        SS5      S9n[        R                  " Xx5        U(       a  [        R                  " XV5        g SUR                  S'   [        R                  " XV5        g ! , (       d  f       N= f)Nr(   r,   r0   r4   r)   r+   r5   r   r8   r.   r/   r2   r3   index)r)   r   )r   _mgr_verify_integrityr;   r<   r   r=   r>   assert_cow_warningranger?   )	r&   r@   warn_copy_on_writerA   r   r   rB   rC   rD   s	            r   test_subset_row_slicerP   h   sI    OA!	I	JBggiG!WF
KK!!#Ifc2Ib#4FGGGGD##Ifc$:Ib#<NOOOOO ""#56 !FKK 7 KK!!#1vQF#sDERSUVKXH&+
b* T
b* 76s   E??
Fr   int64float64zsingle-blockzmixed-block)idsc           	         U u  pVnUS:H  =(       a    US:H  =(       a    U(       + nU" / SQ/ SQ[         R                  " / SQUS9S.5      n	U	R                  5       n
U	R                  S S 2SS 24   nUR                  R                  5         U(       at  [         R                  " [        US	5      [        U	S	5      5      (       d   eS
UR                  S'   [         R                  " [        US	5      [        U	S	5      5      (       a   eOU(       a/  [        R                  " U5         S
UR                  S'   S S S 5        O]U(       a  [        OS n[        R                  " SS5         [        R                  " U5         S
UR                  S'   S S S 5        S S S 5        U" / SQ[         R                  " / SQUS9S.5      n[        R                  " X5        U(       d4  U(       d  U(       a&  S
U
R                  S'   [        R                  " X5        g [        R                  " X5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f)NrQ   r   r(   r,         	   r   r4   r)   r6   r   r8   chained_assignmentwarn)r   r.   r/   r6   r7   r   r)   )r;   arrayr   r=   rK   rL   r<   r   r>   rM   r   pdoption_contextassert_produces_warningr?   )r&   r@   rO   using_array_managerr   dtype_backendr   rA   single_blockr   rB   rC   r[   rD   s                 r   test_subset_column_slicere      s    #*Ma5]g5"!
!  
ibhhy.NO
B ggiGWWQU^F
KK!!#	&# 6	"c8JKKKKD##Ifc$:Ib#<NOOOOO	""<0 !FKK 10 *6%43V<++D1$%D! 2 = yrxx	/OPQH&+ $7<T
b*
b*# 10 21 =<s0   !H! I7H2I!
H/2
I 	<I
Irow_indexerr)   r*   )FTT)slicemaskr^   column_indexerr6   r7   c           	         U u  pxn	U" / SQ/ SQ[         R                  " / SQUS9S.5      n
U
R                  5       nU
R                  X#4   n[	        U[
        5      =(       a?    [	        U[
        5      =(       a(    U=(       d    US:H  =(       a    US:H  =(       a    U(       + n[        R                  " U=(       a    U5         SUR                  S	'   S S S 5        U" SS
/[         R                  " SS/US9S.[        SS5      S9n[        R                  " X5        U(       a  SUR                  S'   [        R                  " X5        g ! , (       d  f       N|= fNr(   r,   rU   rY   r4   rQ   r   r   r8   r/   rW   rX   r\   r)   r+   rI   )r)   r)   )r;   r^   r   loc
isinstancerg   r>   rM   r=   rN   r?   r&   r   rf   ri   rb   r@   rO   rc   r   rA   r   rB   rC   mutate_parentrD   s                  r   test_subset_loc_rows_columnsrp      s,   8 #*Ma	ibhhy.NO
B ggiGVVK/0F
 	;& 		
~u-		
     ,!W,,++  
		1Cm	DD 
E !f288QF%89q!H &+T"& 
E	D    E
Er+   c           	         U u  pxn	U" / SQ/ SQ[         R                  " / SQUS9S.5      n
U
R                  5       nU
R                  X#4   n[	        U[
        5      =(       a?    [	        U[
        5      =(       a(    U=(       d    US:H  =(       a    US:H  =(       a    U(       + n[        R                  " U=(       a    U5         SUR                  S	'   S S S 5        U" SS
/[         R                  " SS/US9S.[        SS5      S9n[        R                  " X5        U(       a  SUR                  S'   [        R                  " X5        g ! , (       d  f       N|= frk   )
r;   r^   r   r=   rm   rg   r>   rM   rN   r?   rn   s                  r   test_subset_iloc_rows_columnsrs      s,   8 #*Ma	ibhhy.NO
B ggiGWW[01F
 	;& 		
~u-		
     ,!W,,++  
		1Cm	DD 
E !f288QF%89q!H &+T"& 
E	Drq   indexer)TTFc                    U u  pVnU" / SQ/ SQ/ SQS.5      nUR                  5       nUSS n	U[        R                  L aE  [        U[        R
                  5      (       a&  UR                  S:X  a  [        R                  " S5        U(       a  S	U" U	5      U'   OU(       a*  [        R                  " 5          S	U" U	5      U'   S S S 5        OeU[        R                  L a  [        OS n
[        R                  " S
S5         [        R                  " U
5         S	U" U	5      U'   S S S 5        S S S 5        U" / SQ/ SQ/ SQS.[        SS5      S9n[        R                  " X5        U(       a  [        R                  " Xx5        g S	USS& [        R                  " Xx5        g ! , (       d  f       Ny= f! , (       d  f       N= f! , (       d  f       N= f)Nr)   r*   r+   r-   r-   r.   r/   rV   r1   r2   r3   皙?r4   r)   r-   intz&setitem with labels selects on columnsr   rZ   r[   )r   r   r-   )r   r   rV   )        r{   ry   rI   r+   )r   r>   setitemrm   r;   ndarrayr   pytestskiprM   r   r_   r`   ra   rN   r?   )r&   
indexer_sirt   r@   rO   rA   r   r   rB   rC   r[   rD   s               r    test_subset_set_with_row_indexerr   :  sg    OA!	L?ST	UBggiG!WF 	bjj w

++MMU"<=&'
67#	""$*+Jvw' %$ *4rzz)A%t3V<++D1./
6"7+ 2 = io>eAqkH &+
b* !
b*' %$ 21 =<s0   4F;F;F*F;
F'*
F8	4F;;
G	c                    U u  p4nU" / SQ/ SQ/ SQS.5      nUR                  5       nUSS nUS:  nU(       a  SXx'   OqU(       a#  [        R                  " 5          SXx'   S S S 5        OG[        R                  " S	S
5         [        R
                  " [        5         SXx'   S S S 5        S S S 5        U" / SQ/ SQ/ SQS.[        SS5      S9n	[        R                  " Xy5        U(       a  [        R                  " XV5        g SUR                  S'   SUR                  SS2S4'   [        R                  " XV5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f)Nrv   rw   rx   r4   r)   r-   r+   r   rZ   r[   )r*   r+   r   )r   r   r   )r2   r3   ry   rI   )r+   r5   r6   )
r   r>   rM   r_   r`   ra   r   rN   r?   rl   )
r&   r@   rO   rA   r   r   rB   rC   rh   rD   s
             r   test_subset_set_with_maskr   i  s)   OA!	L?ST	UBggiG!WFA:D	""$FL %$ 3V<++,BC  D = i.>?uQPQ{H &+
b*  F !AaCH
b*% %$ DC =<s0   D7?EEE7
E
E	E
E'c                    U u  p4nU" / SQ/ SQ/ SQS.5      nUR                  5       nUSS nUS:X  a  [        R                  " SS	/S
S9n	O[        R                  " SS	/SS9n	U(       d  U(       a  XS'   OG[        R                  " SS5         [
        R                  " [        5         XS'   S S S 5        S S S 5        UR                  R                  5         U" SS	/SS/SS/S.[        SS5      S9n
[
        R                  " X5        [
        R                  " Xg5        g ! , (       d  f       Nx= f! , (       d  f       N= f)Nr(   r,   r0   r4   r)   r+   r   
      rQ   rY   Int64r5   rZ   r[   r.   r/   r2   r3   rI   )r   r;   r^   r_   r`   r>   ra   r   rK   rL   rN   r?   )r&   r@   rO   rc   r   rA   r   rB   rC   arrrD   s              r   test_subset_set_columnr     s   ")Ma	I	JBggiG!WFhhBxw/hhBxw/0s3V<++,BC!s D = KK!!#2haV3*5U1a[H &+"& DC =<s$   D/'D,D/
D,	(D//
D=c           	      .   U u  pVnU" / SQ/ SQ[         R                  " / SQUS9S.5      nUR                  5       nUSS n	U(       a)  [         R                  " SS	/S
S9U	R                  S S 2S4'   OU(       aG  [        R
                  " 5          [         R                  " SS	/S
S9U	R                  S S 2S4'   S S S 5        Ok[        R                  " SS5         [        R                  " S U(       + S9   [         R                  " SS	/S
S9U	R                  S S 2S4'   S S S 5        S S S 5        U	R                  R                  5         U" SS	/SS/[         R                  " SS/US9S.[        SS5      S9n
[        R                  " X5        U(       a  [        R                  " Xx5        g [         R                  " SS	/S
S9UR                  SS2S4'   [        R                  " Xx5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f)Nr(   r,   rU   rY   r4   r)   r+   r   r   rQ   r5   rZ   r[   raise_on_extra_warningsr.   r/   rW   rX   rI   )r;   r^   r   rl   r>   rM   r_   r`   ra   rK   rL   rN   r?   )r&   r@   rO   rb   r   rA   r   r   rB   rC   rD   s              r   test_subset_set_column_with_locr     s    OA!	ibhhy.NO
B ggiG!WFXXr2hg>

1c6	""$!#2r('!BFJJq#v %$ 3V<++,?(? &(XXr2hg%F

1c6"	 = KK!!#2haV"((Aq6*GHAqkH &+
b* !#"b AAaCH
b*- %$  =<s0   )G$H0)G5H$
G25
H	?H
Hc                 "   U u  pEnU" S/ SQ05      nUR                  5       nUSS nU(       a  SUR                  S S 2S4'   OU(       a2  [        R                  " 5          SUR                  S S 2S4'   S S S 5        OV[        R
                  " SS5         [        R                  " S U(       + S9   SUR                  S S 2S4'   S S S 5        S S S 5        UR                  R                  5         U" SSS/0[        SS5      S	9n	[        R                  " X5        U(       a  [        R                  " Xg5        g SUR                  SS2S4'   [        R                  " Xg5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f)
Nr5   r(   r)   r+   r   rZ   r[   r   rI   )r   rl   r>   rM   r_   r`   ra   rK   rL   rN   r?   )
r&   r@   rO   rb   rA   r   r   rB   rC   rD   s
             r    test_subset_set_column_with_loc2r     sF    OA!	C#	$BggiG!WF

1c6	""$!"FJJq#v %$ 3V<++,?(? &'

1c6"	 = KK!!##1veAqk:H&+
b* !"AaCH
b*' %$  =<s0   EF -E/F 
E,/
E=	9F  
Fc           	        ^
 U u  pEnU" / SQ/ SQ[         R                  " / SQUS9S.5      nUR                  5       nUSS m
U(       d  U(       a  ST
S	S
/'   OJ[        R                  " SS5         [
        R                  " [        5         ST
S	S
/'   S S S 5        S S S 5        T
R                  R                  5         U(       a  [        U
4S jS 5       5      (       d   eU" SS/SS/SS/S.[        SS5      S9n	US:X  a.  U	S	   R                  S5      U	S	'   U	S
   R                  S5      U	S
'   [
        R                  " T
U	5        [
        R                  " Xx5        g ! , (       d  f       N= f! , (       d  f       N= f)Nr(   r,   rU   rY   r4   r)   r+   r   r5   r7   rZ   r[   c              3   Z   >#    U  H   nTR                   R                  U5      v   M"     g 7fr   )rK   _has_no_reference).0irC   s     r   	<genexpr>*test_subset_set_columns.<locals>.<genexpr>  s#     DV6;;0033Vs   (+)r   r*   r.   r/   rI   r	   rQ   )r;   r^   r   r_   r`   r>   ra   r   rK   rL   allrN   r   r?   )r&   r@   rO   r   rc   r   rA   r   rB   rD   rC   s             @r   test_subset_set_columnsr     sP    #*Ma	ibhhy.NO
B ggiG!WF0Sz3V<++,BC%&Sz" D = KK!!#DVDDDDD1vQF!Q@aQRTH
" !,,W5 ,,W5&(+"& DC =<s$   .E,	EE,
E)	%E,,
E:r5   c                    U u  pEnU" / SQ/ SQ/ SQS.5      nUR                  5       nUSS nU(       a  SUR                  S S 2U4'   OlU(       a2  [        R                  " 5          SUR                  S S 2U4'   S S S 5        O3[        R
                  " SS	5         SUR                  S S 2U4'   S S S 5        UR                  R                  5         U" SS/S
S
/SS/S.[        SS5      S9n	[        R                  " X5        U(       a  [        R                  " Xg5        g SUR                  SS2SS/4'   [        R                  " Xg5        g ! , (       d  f       N= f! , (       d  f       N= f)Nr(   r0   r,   r4   r)   r+   r   rZ   r[   r{   r.   r/   rI   r*   r5   r6   )
r   rl   r>   rM   r_   r`   rK   rL   rN   r?   )
r&   rt   r@   rO   rA   r   r   rB   rC   rD   s
             r   #test_subset_set_with_column_indexerr     s2    OA!	yI	JBggiG!WF!"

1g:	""$%&FJJq'z" %$ 3V< &'FJJq'z" =
 KK!!#1vS#JaVDERSUVKXH&+
b*
 ()AaC#sO$
b*% %$ =<s   $E	E	
E
E(methodc                     U SS/   SS $ Nr5   r6   r   r*    r   s    r   <lambda>r   B  s    2sCj>!A&r   c                     U SS SS/   $ Nr   r*   r5   r6   r   r   s    r   r   r   C  s    2a7C:&r   c                 *    U SS/   R                   SS $ r   r=   r   s    r   r   r   D  s    2sCj>&&q+r   c                 *    U SS/   R                   SS $ )Nr5   r6   r   r)   rl   r   s    r   r   r   E  s    2sCj>%%a*r   c                 2    U SS R                   S S 2SS24   $ )Nr   r*   r   r   s    r   r   r   F  s    2a7<<1Q3'r   c                 2    U SS R                   S S 2SS24   $ r   r   r   s    r   r   r   G  s    2a7;;q#c'z*r   )zrow-getitem-slicezcolumn-getitemzrow-iloc-slicezrow-loc-slicecolumn-iloc-slicecolumn-loc-slicec           	      :   Uu  pxnU" / SQ/ SQ[         R                  " / SQUS9S.5      n	U	R                  5       n
U R                  R                  R
                  nU(       d  US;   nOUR                  S5      nU" U	5      n[        R                  " U=(       a    U5         SUR                  S	'   S S S 5        U(       d  U(       d  [        R                  " X5        OU	R                  S	   S:X  d   eU" U	5      n[        R                  " U=(       a    U5         SU	R                  S	'   S S S 5        U" S
S/SS/S.5      nU(       d  U(       d  [        R                  " X5        g UR                  S	   S:X  d   eg ! , (       d  f       N= f! , (       d  f       Ni= f)Nr(   r,   rU   rY   r4   )z$numpy-single-block-column-iloc-slicez#numpy-single-block-column-loc-slice)r   r   r   r8   r)   r*   r-   r.   r5   r6   )r;   r^   r   nodecallspecidendswithr>   rM   r=   r?   )r%   r&   r   r   r@   rb   rO   rA   r   r   rB   test_callspecsubset_is_viewrC   rD   s                  r   test_subset_chained_getitemr   ?  s[   B OA!	ibhhy.NO
B ggiG LL)),,M& +
 
 '//5

 BZF			1Dn	ED 
F>
b*wwt}!!! BZF			1Dn	E 
F1vQF34H.
f/{{4 A%%% 
F	E 
F	Es    E;F;
F	
Fc           	         U u  pEnU" / SQ/ SQ[         R                  " / SQUS9S.5      nUR                  5       nUS S  S   SS n	UR                  5         [        R
                  " U5         SU	R                  S'   S S S 5        U(       a  [        R                  " Xx5        OUR                  S	   S:X  d   eUS S  S   SS n	UR                  5         [        R
                  " U5         SUR                  S	'   S S S 5        U" S
S/SS9n
U(       a  [        R                  " X5        g U	R                  S   S:X  d   eg ! , (       d  f       N= f! , (       d  f       N\= f)Nr(   r,   rU   rY   r4   r5   r   r*   r8   r)   name)	r;   r^   r   _clear_item_cacher>   rM   r=   r?   assert_series_equal)r&   r   r@   rO   rc   r   r   r   rB   rC   rD   s              r   "test_subset_chained_getitem_columnr     s.    (/$Mf	ibhhy.NO
B ggiG U3Z!_F			1	2A 
3
b*wwt}!!! U3Z!_F			1	2 
3q!f3'H
v0{{1~"""! 
3	2 
3	2s   ,D=(E=
E
Ec                     U SS SS $ Nr5   r7   r6   r   ss    r   r   r     s    !C*S%r   c                 :    U R                   SS R                   SS $ )Nr   r+   r*   r   r   s    r   r   r     s    !&&1+""1Q'r   c                 :    U R                   SS R                   SS $ r   r   r   s    r   r   r     s    !%%C.$$S-r   c                     U R                   SS R                  SS R                  SS R                   SS R                  SS $ )Nr5   r7   r   r+   r*   r6   r)   )rl   r=   r   s    r   r   r     sJ    !%%C.	a	a 
S 
a	r   )getitemr=   rl   z
long-chainc                 j   U u    pEU" / SQ/ SQS9nUR                  5       nU" U5      n[        R                  " U5         SUR                  S'   S S S 5        U(       a  [        R                  " Xg5        OUR                  S   S:X  d   eUR                  SS R                  SS n[        R                  " U5         SUR                  S'   S S S 5        U" SS/SS	/S9n	U(       a  [        R                  " X5        g UR                  S   S:X  d   eg ! , (       d  f       N= f! , (       d  f       N^= f)
Nr(   r4   rI   r   r+   r*   r)   r5   r6   r   r>   rM   r=   r   )
r&   r   r@   rO   rA   r   r   s_origrC   rD   s
             r   "test_subset_chained_getitem_seriesr     s   & LAqy0AVVXF AYF			1	2A 
3
q)vvayA~~ VVAa[a"F			1	2q	 
3q!fS#J/H
v0{{1~""" 
3	2 
3	2s   D<D$
D!$
D2c                    [        / SQ/ SQ/ SQS.5      nUR                  5       nUS S  R                  S   R                  SS n[        R                  " U5         SUR                  S'   S S S 5        U (       d  U(       a  [        R
                  " X45        OUR                  S   S:X  d   eUS S  R                  S   R                  SS n[        R                  " U5         SUR                  S'   S S S 5        [        SS	/S
S/SS9nU (       d  U(       a  [        R                  " XV5        g UR                  S   S:X  d   eg ! , (       d  f       N= f! , (       d  f       Ni= f)Nr(   r,   rU   r4   r   r*   r8   r)   r-   r5   r6   )rJ   r   )r   r   r=   r>   rM   r?   r   r   )r@   rb   rO   r   rB   rC   rD   s          r   $test_subset_chained_single_block_rowr     s    
C	DBggiG UZZ]!$F			1	2A 
31
b*wwt}!!! UZZ]!$F			1	2 
3q!fS#JQ7H1
v0{{1~""" 
3	2 
3	2s   E"E
E
E#c                     U S S  $ r   r   r   s    r   r   r     s    2a5r   c                 ,    U R                   S S 2S S 24   $ r   r   r   s    r   r   r     s    266!Q$<r   c                      U R                   S S  $ r   r   r   s    r   r   r     s    266!9r   c                 ,    U R                   S S 2S S 24   $ r   r   r   s    r   r   r     s    2771a4=r   c                      U R                   S S  $ r   r   r   s    r   r   r     s    2771:r   )r   rl   zloc-rowsr=   z	iloc-rowsc                 R   U u  pEnU" / SQ/ SQ/ SQS.5      nUR                  5       nU" U5      n	XLd   e[        R                  " U5         SU	R                  S'   S S S 5        U(       a  [        R                  " Xx5        g UR                  S   S:X  d   eg ! , (       d  f       NB= f)Nr(   r,   rU   r4   r   r8   )r   r>   rM   r=   r?   )
r&   r   r@   rO   rc   r   rA   r   rB   df2s
             r   test_null_slicer     s     #*Ma	C	DBggiG
*C == 
		1	2 
3
b*wwt}!!! 
3	2s   B
B&c                     U S S  $ r   r   r   s    r   r   r     s    !A$r   c                      U R                   S S  $ r   r   r   s    r   r   r     s    !%%(r   c                      U R                   S S  $ r   r   r   s    r   r   r     s    !&&)r   )r   rl   r=   c                 D   U u    pEU" / SQ/ SQS9nUR                  5       nU" U5      nXLd   e[        R                  " U5         SUR                  S'   S S S 5        U(       a  [        R                  " Xg5        g UR                  S   S:X  d   eg ! , (       d  f       NB= f)Nr(   r4   rI   r   r   )	r&   r   r@   rO   rA   r   r   r   s2s	            r   test_null_slice_seriesr     s     LAqy0AVVXF	B ;; 
		1	2
 
3
q)vvayA~~ 
3	2s   B
Bc                 B   U u    p4U" / SQ/ SQS9nUR                  5       nUS S  n[        R                  " [        U5      [        U5      5      (       d   e[        R
                  " U5         SUR                  S'   S S S 5        U(       a0  [        R                  " [        U5      [        U5      5      (       a   eU" / SQ/ SQS9n[        R                  " Xx5        U(       a  [        R                  " XV5        g UR                  S   S:X  d   eg ! , (       d  f       N= f)Nr(   r4   rI   r   r9   )r   r;   r<   r   r>   rM   r=   r   )	r&   r@   rO   rA   r   r   r   rC   rD   s	            r   test_series_getitem_slicer   7  s    LAqy0AVVXFqTFIf-y|<<<<			1	2A 
3 ##If$5y|DDDDi7H6,
q) vvayA~~ 
3	2s   ,D
Dc                 @   [        / SQ5      nUR                  5       nUS   n[        R                  " [	        U5      [	        U5      5      (       d   e[
        R                  " U5         SUR                  S'   S S S 5        U (       a0  [        R                  " [	        U5      [	        U5      5      (       a   e[        / SQ5      n[
        R                  " XE5        U (       a  [
        R                  " X#5        g UR                  S   S:X  d   eg ! , (       d  f       N= f)Nr(   .r   r9   )	r   r   r;   r<   r   r>   rM   r=   r   )r@   rO   r   r   rC   rD   s         r   test_series_getitem_ellipsisr   Q  s    yAVVXFsVFIf-y|<<<<			1	2A 
3 ##If$5y|DDDDi H6,
q) vvayA~~ 
3	2s   )D
Dc                    U u    pVU" / SQ/ SQS9nUR                  5       nUS S  n	S n
SnU[        R                  L a?  [        U[        R
                  5      (       a   UR                  R                  S:X  a  [        n
U(       a+  [        R                  " U
S LS9   SU" U	5      U'   S S S 5        O([        R                  " XS9   SU" U	5      U'   S S S 5        U" / S	Q/ SQS9n[        R                  " X5        U(       a  [        R                  " Xx5        g [        R                  " X|5        g ! , (       d  f       Nd= f! , (       d  f       Nu= f)
Nr(   r4   rI   z;Series.__setitem__ treating keys as positions is deprecatedr   r   r   match)r   r   r+   )r   r>   r|   rm   r;   r}   r   kindFutureWarningrM   ra   r   )r&   r   rt   r@   rO   rA   r   r   r   rC   r[   msgrD   s                r   #test_series_subset_set_with_indexerr   j  s	    LAqy0AVVXFqTFD
GCbjj w

++MM#%""4t;KL*+Jvw' ML ''8*+Jvw' 9i7H6,
q)
q+ ML 98s   D,D=,
D:=
Ec                    U u  p4nU" / SQ/ SQ/ SQS.5      nUR                  5       nUS S  n[        R                  " [        US5      [        US5      5      (       d   eUS	 [        R                  " [        US5      [        US5      5      (       d   e[        R
                  " Xg5        [        R
                  " XSS/   5        UR                  R                  5         [        R                  " U=(       a    US:H  5         S	UR                  S
'   S S S 5        [        R                  " [        US5      [        US5      5      (       d   eUR                  5       n[        R                  " U5         SUR                  S'   S S S 5        U(       a  [        R
                  " Xg5        g UR                  S   S:X  d   eg ! , (       d  f       N= f! , (       d  f       NS= f)Nr(   r,   r0   r4   r5   r6   r7   r      )r   r6   d   r   r5   )
r   r;   r<   r   r>   r?   rK   rL   rM   rl   )	r&   r@   rO   rc   r   rA   r   rB   r   s	            r   test_del_framer     sv    #*Ma	I	JBggiG
Q%CIb#.	#s0CDDDDCIb#.	#s0CDDDD"&#Sz23HH 			1Nmw6N	Ov 
PIb#.	#s0CDDDDggiG			1	2 
3
b*vvf~$$$ 
P	O
 
3	2s   F=1G=
G
Gc                    U u    pU" / SQ/ SQS9nUR                  5       nUS S  n[        R                  " [        U5      [        U5      5      (       d   eUS	 [        R                  " [        U5      [        U5      5      (       a   e[        R
                  " X45        [        R
                  " XTSS/   5        UR                  nSUR                  S'   US   S:X  d   eg )	Nr(   r4   rI   r5   r6   r7   r   r   )r   r;   r<   r   r>   r   valuesrl   )r&   rA   r   r   r   r   r   s          r   test_del_seriesr     s    LAqy0AVVXF	
1BIaL)B-8888
3	!im<<<<1%2sCj12 YYFBFF3K!9r   c                 F   U u  pEnU" / SQ/ SQ/ SQS.5      nUR                  5       nUS   n	[        R                  " [        U	S5      [        US5      5      (       d   eU(       d  U(       a  SU	S'   O}U(       a$  [        R
                  " 5          SU	S'   S S S 5        ORUS:X  a  [        OS n
[        R                  " SS	5         [        R                  " U
5         SU	S'   S S S 5        S S S 5        U" / S
QSS9n[        R                  " X5        U(       a4  [        R                  " Xx5        [        R                  " US   US   5        g SUR                  S'   [        R                  " Xx5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f)Nr(   r,   r0   r4   r5   r   r   rZ   r[   r9   r   r8   )r   r;   r<   r   r>   rM   r   r_   r`   ra   r   r?   r=   )r&   r@   rO   rb   rc   r   r   r   rB   r   r[   rD   s               r   test_column_as_seriesr     sJ    (/$Mf	I	JBggiG
3AIa-yS/ABBBB1!&&(! )( .;g-E)4D""#7@//5AaD 6 A ic*H1'
b*
r#w5T
b*# )(
 65 A@s0   E0FF F0
E>
F	F
F c                     U u  pEnU" / SQ/ SQ/ SQS.5      nUR                  5       nUS   n	US:X  aP  [        R                  " U5         [        R                  " [
        SS9   S	U	S
'   S S S 5        S S S 5        U" / SQSS9n
OU(       d  U(       d  U(       a6  [        R                  " [        SS9   S	U	S
'   S S S 5        U" / SQ[        SS9n
On[        R                  " SS5         SR                  SS/5      n[        R                  " [        [        4US9   S	U	S
'   S S S 5        S S S 5        U" / SQ[        SS9n
[        R                  " X5        U(       a4  [        R                  " Xx5        [        R                  " US   US   5        g XS'   [        R                  " Xx5        g ! , (       d  f       GNF= f! , (       d  f       GNP= f! , (       d  f       GN= f! , (       d  f       N= f! , (       d  f       N= f)Nr(   r,   r0   r4   r5   r	   zInvalid valuer   foor   r   zincompatible dtype)r   r*   r+   )r   r   rZ   r[   |zAA value is trying to be set on a copy of a slice from a DataFrame3Setting an item of incompatible dtype is deprecated)r   r>   rM   r~   raises	TypeErrorra   r   objectr_   r`   joinr   r   r?   )r&   r@   rb   rO   rc   r   r   r   rB   r   rD   r   s               r   %test_column_as_series_set_with_upcastr     s    (/$Mf	I	JBggiG
3A
"""#56y@! A 7 )#.	 26I''=QRAaD S-vC@3V<((WIC ++'7s ! = -vC@1'
b*
r#w5
b*; A@ 76 SR  =<sT   	F:#F()F:1G%3G/GG/(
F7	2F::
G	
G
G,	(G//
G=c                     U S   $ Nr5   r   r   s    r   r   r     s    2c7r   c                 (    U R                   S S 2S4   $ r   r   r   s    r   r   r     s    266!S&>r   c                 (    U R                   S S 2S4   $ )Nr   r   r   s    r   r   r      s    2771a4=r   c                 D   Uu  pgnU" / SQ/ SQ/ SQS.5      n	U	R                  5       n
U" U	5      nU" U	5      nSU R                  R                  ;   nU(       d  U(       d  U(       a  XLd   eOXL d   eU(       d  U(       a  SUR                  S'   OU(       a.  [        R
                  " 5          SUR                  S'   S S S 5        O\US:X  a  [        OS n[        R                  " SS	5         [        R                  " U5         SUR                  S'   S S S 5        S S S 5        U(       a0  [        R                  " XS
   5        [        R                  " X5        g UR                  S   S:X  d   eg ! , (       d  f       N[= f! , (       d  f       Nt= f! , (       d  f       N}= f)Nr(   r,   r0   r4   r=   r   r   rZ   r[   r5   )r   r   r   r=   r>   rM   r   r_   r`   ra   r   r?   )r%   r&   r   r@   rO   rb   rc   r   rA   r   rB   s1r   is_ilocr[   s                  r   #test_column_as_series_no_item_cacher     s=   & #*Ma	I	JBggiG	B	B)))G0G||xx1
	""$BGGAJ %$ *7')A%t3V<++D1
 2 = 
r3<0
b*wwqzQ %$
 21 =<s0   -E/+FF F/
E= 
F	
F
Fc                 v   U u  p#nU" / SQ/ SQS.5      nU" / SQ5      nXeS'   U(       a2  [         R                  " [        US5      [        U5      5      (       d   eO1[         R                  " [        US5      [        U5      5      (       a   eSUS'   U" / SQ/ SQ/ SQS.5      n[        R                  " XW5        g )Nr(   r0   r   )r   r      newr   )r5   r6   r   )r;   r<   r   r>   r?   )r&   r@   rA   r   r   r   r   rD   s           r   %test_dataframe_add_column_from_seriesr   P  s     #A&	9	:B|AuI	"e 4ilCCCC##Ib%$8)A,GGGG AaDy|TUH"'r   valr   zindexer_func, indexerr   r8   r!   r0   rU   c                 N   [        / SQ/ SQUS.5      nUR                  5       nUS S  nUS:X  a3  U(       d,  [        R                  " [        SS9   XB" U5      U'   S S S 5        US:X  a4  U(       a-  [        R                  " [        SS9   XB" U5      U'   S S S 5        O5[        R
                  " U=(       a    US:H  5         XB" U5      U'   S S S 5        U (       a{  [        R                  " [        US	5      [        US	5      5      (       d   e[        R                  " [        US5      [        US5      5      (       a   e[        R                  " X5        g [        R                  " [        US
5      [        US
5      5      (       d   eUS:X  a3  [        R                  " [        US5      [        US5      5      (       a   eg [        R                  " [        US5      [        US5      5      (       d   eg ! , (       d  f       GN= f! , (       d  f       GNA= f! , (       d  f       GNS= f)Nr(   r,   r4   r5   r   r   z,incompatible dtype|Setting a value on a viewr   r6   r7   )
r   r   r>   ra   r   rM   r;   r<   r   r?   )	r@   rO   indexer_funcrt   r   r!   r   rB   views	            r   )test_set_value_copy_only_necessary_columnr  c  s   ( 
=	>BggiGa5D
cz,''!V
 ),LW%
 cz(''!O
 ),LW%
 

 ""#5#D#*E(+LW% F 	"c 2IdC4HIIII##Ib#$6	$8LMMMM
d,	"c 2IdC4HIIII#:''	"c(:IdC<PQQQQQ##Ib#$6	$8LMMMM-
 


 

 FEs$   G1H>H1
H 
H
H$c                 0   [        / SQ[        R                  R                  / SQ/ SQ/5      S9nUR	                  5       nUS   n[
        R                  " [        U5      [        U5      5      (       d   e[        R                  " U5         SUR                  S'   S S S 5        U (       a  [        R                  " X#5        g [        / SQ[        R                  R                  / SQ/ SQ/5      S9n[        R                  " X%5        g ! , (       d  f       Nr= f)	Nr(   )r)   r)   r*   )r+   r-   r.   rI   r)   r   r   )r   r*   r+   )r   r_   
MultiIndexfrom_arraysr   r;   r<   r   r>   rM   r=   r   )r@   rO   r#   ser_origresultrD   s         r   test_series_midx_slicer
    s    
"--";";Y	<R"S
TCxxzHVFIcNIf,=>>>>			1	2A 
3
s-r}}88)Y9OP
 	s- 
3	2s   D
Dc                    [        SS/SSS.5      nUR                  5       nUS   nU (       a"  UR                  R                  S5      (       a   eU(       d2  [        R
                  " [        US5      [        US5      5      (       d   eU (       a&  SUR                  S	'   [        R                  " XC5        g U(       a.  [        R                  " 5          SUR                  S	'   S S S 5        OR[        R                  " S
S5         [        R                  " [        5         SUR                  S	'   S S S 5        S S S 5        UR                  S	   S:X  d   eg ! , (       d  f       N$= f! , (       d  f       N== f! , (       d  f       NF= f)Nr)   r*   )r5   x)r5   y)r6   r  )r5   r   r  r  r   r8   rZ   r[   )r   r   rK   r   r;   r<   r   r=   r>   r?   rM   r_   r`   ra   r   )r@   rO   rb   r   rB   new_dfs         r   test_getitem_midx_slicer    s*    
AA1E	FBggiGZF;;003333	"j 99VS;QRRRRD
g*&&($'D! )( ""#7@//0FG(+FKK% H A wwt}### )( HG A@s0   EE5E$-E5
E!$
E2	.E55
Fc                    [        / SQ[        R                  R                  / SQ5      S9nUS   n[        R
                  " [        U5      [        U5      5      (       d   e[        R                  " U5         SUR                  S'   S S S 5        U (       aB  [        / SQ[        R                  R                  / SQ5      S9n[        R                  " X$5        g g ! , (       d  f       NX= f)Nr(   ))r)   r*   r+   )r  r-   ))r*   r+   r-   rI   r  r   r   )r   r_   r  from_tuplesr;   r<   r   r>   rM   r=   r   )r@   rO   r#   r	  rD   s        r   test_series_midx_tuples_slicer    s    
mm''(OPC [FIcNIf,=>>>>			1	2A 
3--++,ST
 	s-  
3	2s   7C
C'c            	      N   S n [         R                  R                  U " SS5      U " SS5      U " SS5      U " SS5      /5      n[         R                  R                  / SQS	S
/S9n[	        SXS9R                  5       R                  SS9nUS   S:H  nUR                  5       nUR                  [         R                  US S 2SS/4   S S 24   nUR                  [         R                  S S 2S S 2SS/4   S S 24   n[        R                  " Xg5        [        R                  " XE5        g )Nc                 J    [        U5       Vs/ s H  o  U 3PM
     sn$ s  snf r   )rN   )prefixnr   s      r   mklbl/test_midx_read_only_bool_indexer.<locals>.mklbl  s$    (-a11(1#111s    Ar-   Br*   CD)r5   r   )r5   bar)r6   r   )r6   bahlvl0lvl1)namesr)   )rJ   r   )axisr  C1C3)r_   r  from_productr  r   
sort_indexr   rl   
IndexSlicer>   r?   r   )r  idxcolsr   rh   expected_maskr	  rD   s           r    test_midx_read_only_bool_indexerr.    s   2 --
$
$	sAc1uS!}eCmDC ==$$@QWHX % D 
1C	.	9	9	;	F	FA	F	NBlq DIIKMVVBMM$D$<"78!;<FvvbmmAq4,$67:;H&+4/r   c                 X   [        S/ SQ05      n[        / SQ/ SQS.5      nUR                  5       nX!R                  S S 2SS/4'   U (       a  [        R                  " [        US5      [        US5      5      (       d   e[        R                  " [        US5      [        US5      5      (       d   eUR                  R                  S5      (       a   eO2[        R                  " [        US5      [        US5      5      (       a   eSUR                  S	'   [        R                  " X#5        g )
Nr5   r(   r,   r\   r6   r7   r)   r   r]   )r   r   rl   r;   r<   r   rK   r   r=   r>   r?   )r@   r   rhsrhs_origs       r   !test_loc_enlarging_with_dataframer2    s    	C#	$B
))4
5CxxzHFF1sCj=	"c 2Ic34GHHHH	"c 2Ic34GHHHH77,,Q/////##Ib#$6	#s8KLLLLBGGDM#(r   ):r   r;   r~   pandas.errorsr   pandas.core.dtypes.commonr   pandasr_   r   r   pandas._testing_testingr>   pandas.tests.copy_view.utilr   fixturer&   rE   rG   rP   markparametrizere   rg   r^   rp   rs   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rl   r=   r  r
  r  r  r.  r2  r   r   r   <module>r<     sr     0 4   1 ,-6 .6F'8,.!+H gy!'F  (+(+V gy!'F   
1a["((./1a&1AB"  
 
3_bhh23c3Z@"  
0'0'f gy!'F   
1a["((./1a&1AB"  
 
1a["((./!Q8"  
0'0'f 
1a["((./1a&1AB"  
'+
'+T+B'6 gy!'F  %+%+P"+J gy!'F  ''@ 
3_bhh23c3Z@"  
+
+D &&+*'*	  & gy!'F  2&',2&j gy!'F  ##B %'-			 	1  ##:#6   	<  
"
"* 
 	#  442 
1a["((./1a&1AB"  
,
,H%>0!+H*+Z ! 
 	#  &&X(& c
+		&	1#s	A3(	%+s#$	5;"#
 	OY'm^-L   N
 , NF. $4."0*)r   