+
    xȇi4                         ^ RI t ^ RIt^ RIt^ RIHtHtHtHtH	t	H
t
 ^ RIHt ^ RIHt ]P                   R 4       t ! R R4      t ! R R4      tR# )	    N)	DataFrameIndex
IndexSlice
MultiIndexSeriesconcat)BDayc                      \         P                  ! . RO. R	O. R
O.4      p \        RR.RR.. RO. RO.. RO. RO. RO. RO.. ROR7      p\        W\	        R4      R7      # )EJY?axbqlevelscodesnamesABCDEindexcolumnsgEJYgr鷯g|?5^ݿg6?gK?-?gT?g9#?g9]?g46<R?)gQg^)gxֿgI&?g=U@)ı.n$@      4@g      >@)         )r   r      )r   r    r    )r   r       )r!   r    r   )onetwothreefour)nparrayr   r   list)arrr   s     s/Users/max/.openclaw/workspace/postharvest/venv/lib/python3.14/site-packages/pandas/tests/frame/indexing/test_xs.pyfour_level_index_dataframer+      sa    
((757	
C c
S#J(=yI)Y	:-E
 StG}==    c                   P   a  ] tR t^$t o R tR tR tR tR tR t	R t
R tR	tV tR
# )TestXSc                >   VP                   ^,          pVP                  V4      pVP                  4        Fd  w  rE\        P                  ! V4      '       d.   \        P                  ! W,          V,          4      '       g   Q hKN  WQV,          V,          8X  d   Kd  Q h	  R# )r   N)r   xsitemsr&   isnan)selffloat_frameidxr0   itemvalues   &&    r*   test_xsTestXS.test_xs%   sr    "^^C 88:KDxxxx 1# 67777D 1# 6666	 &r,   c           	         R R^R^/RRRRRRR//p\        V4      pVP                  R4      pVP                  \        P                  8X  g   Q hVR ,          ^8X  g   Q hVR,          R8X  g   Q hR# )A12B3N)r   r0   dtyper&   object_)r3   	test_dataframer0   s   &   r*   test_xs_mixedTestXS.test_xs_mixed.   ss    33*C#sCc31OP	)$XXc]xx2::%%%#w!||#w#~~r,   c                   \         P                  ! \        \        P                  ! R 4      R7      ;_uu_ 4        VP                  VP                  ^ ,          \        4       ,
          4       RRR4       R#   + '       g   i     R# ; i)z Timestamp('1999-12-31 00:00:00')matchN)pytestraisesKeyErrorreescaper0   r   r	   )r3   datetime_frames   &&r*   test_xs_dt_errorTestXS.test_xs_dt_error7   sY    ]]BII&HI
 
 n2215>?
 
 
 
s   2A55B	c                :   VP                  4       pVP                  R ^R7      pVR ,          p\        P                  ! W44       VP                  R ^R7      p^VR&   \        P                  ! VR ,          VR ,          4       V^8H  P	                  4       '       d   Q hR# )r;   )axisNNNN)copyr0   tmassert_series_equalall)r3   r4   float_frame_origseriesexpecteds   &&   r*   test_xs_otherTestXS.test_xs_other=   s    &++-!,s#
v0 !,q	
{3/1A#1FGM&&(((((r,   c                   \        ^ .\        . RR7      R7      pRVR&   RVR&   RVR	&   R
VR&   RVR&   VP                  ^ 4      p\        . RO\	        R4      ^ R7      p\
        P                  ! W#4       \        . ROR7      pVP                  R4      p\        . R\        P                  R7      p\
        P                  ! WE4       R# )r   str)r@   r         ?r;   foor>          @CbarD      @Er   )r   namer   r   )rg   r@   N)r_   r`   ra   rc   re   r   r   c)	r   r   r0   r   r(   rU   rV   r&   float64)r3   dfr0   expresultrZ   s   &     r*   test_xs_cornerTestXS.test_xs_cornerK   s    aS%%*@A33333UU1X2$w-aP
r' _-s"3bjj9
v0r,   c                    \        \        P                  P                  ^4      P	                  R4      . ROR7      pVP                  R4      pVP                  ^,          p\        P                  ! W#4       R# )r!   rj   rh   N)r   r!   )r   r   rj   r   r   )	r   r&   randomdefault_rngstandard_normalr0   ilocrU   rV   )r3   rl   crossrm   s   &   r*   test_xs_duplicatesTestXS.test_xs_duplicates^   sV    II!!!$44V<+

 c
ggaj
u*r,   c                ,   \        R ^ R^R/R^ R^R/R^ ^
^^/R^ R^R//4      P                  . RO4      pVP                  RR RR	7      pVR
,          p\        P                  ! W#4       VP                  RRR .RR	7      p\        P                  ! W#4       R# )daysatsunflavour
strawberrysalesyear  F)level
drop_level:Nr    NN)r   r}   rz   )r   r{   )r   	set_indexr0   rU   assert_frame_equalr3   rl   rn   rZ   s   &   r*   test_xs_keep_levelTestXS.test_xs_keep_levelh   s    5!U+A|Q=!RBD!T*	
 ).
/ 	 uEe<b6
f/}VUON
f/r,   c                t   \        \        P                  ! R 4      P                  ^^4      \	        ^4      \	        ^4      R7      pVP                  4       p\        P                  ! 4       ;_uu_ 4        ^VP                  ^4      R&   RRR4       \        P                  ! W4       R#   + '       g   i     L(; i)r   r   rS   N)
r   r&   arangereshaperangerT   rU   raises_chained_assignment_errorr0   r   )r3   dmdf_origs   &  r*   test_xs_viewTestXS.test_xs_viewx   sw     ryy..q!4E!HeTUhW'')//11BEE!HQK 2
b* 21s   2B''B7	 N)__name__
__module____qualname____firstlineno__r8   rD   rO   r[   ro   rw   r   r   __static_attributes____classdictcell____classdict__s   @r*   r.   r.   $   s3     7@)1&+0 	+ 	+r,   r.   c                     a  ] tR t^t o R tR tR tR tR tR t	]
P                  P                  RR'R.R	.3.4      R
 4       tR t]
P                  P                  RRRR ]! RR.RR7      3RRR ]! R.RR7      3.4      R 4       t]
P                  P                  RR R .4      R 4       t]
P                  P                  RR R .4      R 4       tR tR tR tR  tR! tR" tR# tR$ tR%tV tR&# )(TestXSWithMultiIndexc                f   . RO. R	O.p\        \        V!  4      p\        P                  ! VRR.R7      p\	        \
        P                  P                  ^4      P                  R
4      . ROVR7      pVP                  RR^R7      pVP                  R^ .3,          p\        P                  ! WV4       R# )rc   firstsecondr   r   r   rR   rS   N)rc   rc   bazr   r`   r`   quxr   )r"   r#   r"   r#   r"   r#   r"   r#   )r      )r;   r>   rb   )r"   rc   )r   r   )r(   zipr   from_tuplesr   r&   rr   rs   rt   r0   ru   rU   r   )r3   arraystuplesr   rl   rn   rZ   s   &      r*   test_xs_doc_example(TestXSWithMultiIndex.test_xs_doc_example   s     ED
 c6l#&&vgx5HIII!!!$44V<!
 ~-@qI771qc6?
f/r,   c                n   \        R R4      p\        R4      p\        P                  ! W.RR.R7      p\	        \
        P                  P                  ^4      P                  \        V4      ^34      V. RO4      pVP                  R RR7      pVP                  R	,          p\        P                  ! WV4       R# )
a2ie2abcdedatesecidr   r   N)XYZ)r   rS   )r   r(   r   from_productr   r&   rr   rs   rt   lenr0   locrU   r   )r3   datesidsr   rl   rn   rZ   s   &      r*   test_xs_integer_key(TestXSWithMultiIndex.test_xs_integer_key   s    h)7m''VW<MNII!!!$44c%j!_E
 xv.66+&
f/r,   c                    TpVP                  R RR7      pW"P                  P                  ^4      R 8H  ,          p\        . RORR7      Vn        \        P
                  ! W44       R# )r#   r   r   r   rg   N)r`   rc   r   r   )r0   r   get_level_valuesr   rU   r   r3    multiindex_dataframe_random_datarl   rn   rZ   s   &&   r*   test_xs_level"TestXSWithMultiIndex.test_xs_level   sR    -uH-hh//2e;<;'J
f/r,   c                :   \         P                  P                  ^4      P                  R	4      p\	        . R
O. RO. RO.. RO. RO. RO.R7      p\        WR7      p\        VR,          R.R..R7      pVP                  R^R7      p\        P                  ! WT4       R# )r!   r   r   rj   r   r   rh   r    r!   Nr   N)r   r   )r   pr   )r   r   y)rj   rz)r!   r   r    	r&   rr   rs   rt   r   r   r0   rU   r   )r3   r)   r   rl   rZ   rn   s   &     r*   test_xs_level_eq_2'TestXSWithMultiIndex.test_xs_level_eq_2   s    ii##A&66v>#_oFi3
 s(SXsecU^<s!$
f/r,   c                    TpVP                  4       pVP                  R RR7      p^
VR&   \        P                  ! W#4       R# )r#   r   r   rS   NrT   r0   rU   r   )r3   r   rl   r   rn   s   &&   r*   test_xs_setting_with_copy_error4TestXSWithMultiIndex.test_xs_setting_with_copy_error   s;    -'')uH-q	
b*r,   c                    TpVP                  4       pVP                  RRR.R7      p^
VR&   \        P                  ! W#4       R# )r   r"   r%   r   rS   Nr   r   r   )r3   r+   rl   r   rn   s   &&   r*   (test_xs_setting_with_copy_error_multiple=TestXSWithMultiIndex.test_xs_setting_with_copy_error_multiple   s?    ''')xv7q	
b*r,   z
key, levelr"   r   c                f   Tp\        V.^,          4      pVP                  P                  RJ g   Q h\        VP                  RRR7      .^,          4      p\	        V\
        4      '       d   VP                  \        V4      VR7      pMVP                  WR7      p\        P                  ! Wv4       R# )r!   Fr"   r   r   N)	r   r   	is_uniquer0   
isinstancer(   tuplerU   r   )r3   keyr   r   rC   rl   rZ   rn   s   &&&&    r*   test_xs_with_duplicates,TestXSWithMultiIndex.test_xs_with_duplicates   s     1UGaK xx!!U***588E8:;a?@c4  UU5:UU3FUU3U,F
f/r,   c           	         . ROp\        V. ROR	7      P                  RR.4      p\        R. RO/\        R\        P                  RR.RR
7      R7      pVP                  RRR7      p\        P                  ! WC4       R# )r   r   xbcdeNzbcdeybcdea1a2cntr   r   rh   r   ))r   r   r    )r   bbcder!   )r   yzcde   )r   r      )r   N   )r   r   r   )r   r   r   )r   r   r   )r   r   r   r   )r   r   r   r&   nanr0   rU   r   )r3   accrl   rZ   rn   s   &    r*   test_xs_missing_values_in_index4TestXSWithMultiIndex.test_xs_missing_values_in_index   ss    
 s$78BBD$<P$%"&&'7;$G

 s$'
f/r,   zkey, level, exp_arr, exp_indexr   lvl0c                    V R,          # )rS   )rS   :r   r!   Nr   r   s   &r*   <lambda>TestXSWithMultiIndex.<lambda>   s    AfIr,   rc   r`   lvl1r   c                    V R,          # )rS   )rS   r   r   r   s   &r*   r   r      s    air,   c                *   \         P                  P                  ^4      P                  R	4      p\	        RR.. R
O.. RO. RO.RR.R7      p\        WVR7      pVP                  W^R7      p\        V! V4      VR7      p	\        P                  ! W4       R# )r!   r   r   r   r   r   r   r   N)r   r   )rc   r`   helloworld)r   r   r    r    )r   r    r!   r   r   )
r3   r   r   exp_arr	exp_indexr)   r   rl   rn   rZ   s
   &&&&&     r*   test_xs_named_levels_axis_eq_13TestXSWithMultiIndex.test_xs_named_levels_axis_eq_1   s     ii##A&66v>#J @A.6"

 s*sa0WS\9=
f/r,   indexerc                ,    V P                  RRR.R7      # )r   r"   r%   r   r   r0   rl   s   &r*   r   r     s    ruuXeV_u=r,   c                F    V P                  R 4      P                  ^RR7      # )r   r%   r   r   r   s   &r*   r   r     s    ruuSz}}Qf}5r,   c                    Tp. R	O.p\        R.R..^ .^ ..RR.R7      p\        WE\        R4      R7      pV! V4      p\        P                  ! Wv4       R# )
r   r   r   r#   r$   r   r   r   Nr   r   r   r(   rU   r   r3   r   r+   rl   expected_valuesexpected_indexrZ   rn   s   &&&     r*   test_xs_level_multiple+TestXSWithMultiIndex.test_xs_level_multiple  se     (DE#ED6?A3*UG<L
 4=
 
f/r,   c                (    V P                  R ^ R7      # )r   r   r   r   s   &r*   r   r     s    ruuSu2r,   c                $    V P                  R 4      # )r   r   r   s   &r*   r   r     s    ruuSzr,   c                    Tp. R	O. R
O.p\        RR.RR.^^..^ ^.^ ^.^^ ... ROR7      p\        WE\        R4      R7      pV! V4      p\        P                  ! Wv4       R# )r   r   r   r   r   r   r   r   Nr   r   )r#   r$   r%   r   r  s   &&&     r*   test_xs_level0#TestXSWithMultiIndex.test_xs_level0  s     (75
 $#J$!Q8q6Aq6Aq6**

 4=
 
f/r,   c                    TpVP                  R4      P                  pVP                  ^,          p\        P                  ! W44       R# rc   N)rc   r#   )r0   valuesrU   assert_almost_equalr   s   &&   r*   test_xs_values#TestXSWithMultiIndex.test_xs_values,  s6    -~&--99Q<
v0r,   c                ~    TpVP                  R4      pVP                  R,          p\        P                  ! W44       R# r  )r0   r   rU   rV   r   s   &&   r*   test_xs_loc_equality)TestXSWithMultiIndex.test_xs_loc_equality2  s1    -~&66.)
v0r,   c                   \        . RO^ ^... RO. RO.R7      p\        \        P                  P	                  ^4      P                  R4      VR7      pV\        J d
   V^ ,          pVP                  RR P                  ^ 4      pVP                  \        R	,          4      p\        P                  ! WT4       VP                  \        R	,          ,          p\        P                  ! WT4       R# )
r`   r   rh   N))r`   rc   r   )r`   r   r   r`   r   r   )r   r   r    r    r!   r!   )r   r    r   r    r   r    )   r   )r  rS   )r   r   r&   rr   rs   rt   r   ru   	droplevelr0   r   rU   assert_equalr   )r3   frame_or_seriesr   objrZ   rn   s   &&    r*   +test_xs_IndexSlice_argument_not_implemented@TestXSWithMultiIndex.test_xs_IndexSlice_argument_not_implemented8  s     MPQSTvV%'9:

 		--a0@@HPUVf$a&C88BC=**1-
#789
)$89:
)r,   c                    \        R . RO/4      pV\        J d
   VR ,          pRp\        P                  ! \        VR7      ;_uu_ 4        VP                  ^ RR7       RRR4       R#   + '       g   i     R# ; i)r;   zIndex must be a MultiIndexrG   asr   Nr    r!   r   )r   r   rI   rJ   	TypeErrorr0   )r3   r  r  msgs   &&  r*   test_xs_levels_raises*TestXSWithMultiIndex.test_xs_levels_raisesL  sW    i()f$c(C*]]9C00FF1DF! 1000s   	A''A8	c                   \         P                  ! . R
ORR.R7      p\        . RO.VR7      pVP                  R ^RR7      p\        ^^..\         P                  ! RR	.RR.R7      R7      p\        P
                  ! W44       R# )r   level1level2r   r   FrR   r   Nr   r   r   r   )r)  r*  )r   r   r   )r   r   r   r0   rU   r   )r3   mirl   rn   rZ   s   &    r*   "test_xs_multiindex_droplevel_false7TestXSWithMultiIndex.test_xs_multiindex_droplevel_falseU  s    ##088L
 	{B/su5VH**Z(80D
 	f/r,   c                    \        . RO.\        . RO4      R7      pVP                  R^RR7      p\        R^./4      p\        P                  ! W#4       R# )r    r   r   Fr(  Nr   ri   )r   r   r0   rU   r   r   s   &   r*   test_xs_droplevel_false,TestXSWithMultiIndex.test_xs_droplevel_falsed  sG    	{E/,BCsu5cA3Z(
f/r,   c                8   \        . RO.\        . RO4      R7      pVP                  R^RR7      p\        P                  ! VP
                  R,          P                  VP
                  R,          P                  4      '       g   Q h^VP
                  R	&   \        R^./4      p\        P                  ! W#4       \        . R
O.\        . RO4      R7      pVP                  R^RR7      p^VP
                  R	&   \        R^./4      p\        P                  ! W#4       R# )r    r   r   Fr(  Nr   ri   )rS   r   )r   r   )r    g      @r   )	r   r   r0   r&   shares_memoryru   _valuesrU   r   r   s   &   r*   test_xs_droplevel_false_view1TestXSWithMultiIndex.test_xs_droplevel_false_viewk  s    	{E/,BCsu5D 1 9 92774=;P;PQQQQcA3Z(
f/o0FGsu5cA3Z(
f/r,   c                   \         P                  ! . RO4      p\        . RO. R	O.VR7      p\        P                  ! \
        RR7      ;_uu_ 4        VP                  R
R^R7       RRR4       R#   + '       g   i     R# ; i)r   r   r   rG   F)r   rR   N))r   mr   )r   nr   )r   orj   r   )r   r   r  )r   r   )r   r   r   rI   rJ   rK   r0   )r3   r+  rl   s   &  r*   $test_xs_list_indexer_droplevel_false9TestXSWithMultiIndex.test_xs_list_indexer_droplevel_false~  sV    ##$WX	9-r:]]83//EE*QE7 0///s   A//B 	r   N)r"   r   )r   r   r   r   r   r   r   r   r   r   rI   markparametrizer   r   r   r   r  r	  r  r  r  r#  r,  r/  r4  r:  r   r   r   s   @r*   r   r      sC    0*00	0++ [[\,=(?T+UV0 W00* [[(&-ueU^&/QRF/u61JK	
00 [[=5	

0
0 [[24IJ00$11*("000&8 8r,   r   )rL   numpyr&   rI   pandasr   r   r   r   r   r   pandas._testing_testingrU   pandas.tseries.offsetsr	   fixturer+   r.   r   r   r,   r*   <module>rD     sQ    	     ' > > ]+ ]+@8 8r,   