+
    xȇi                       ^ RI H t  ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIH	t	 ^ RI
t^ RI
HtHtHtHtHtHtHt ^ RIHt ^ RIHt ]P2                  ! RR.R	7      R
 4       t ! R R4      t]P8                  P;                  RRR.4      R 4       t]P8                  P;                  R. R+OR]P>                  3R,R-R..3. R/OR,R]P>                  3R-R..3. R0OR,R-R]P>                  3R..3. R1OR,R-R.R]P>                  3.3.. R2OR7      R 4       t R t!R t"]P8                  PG                  R4      R 4       t$]P8                  PG                  R4      ]P8                  P;                  RRR]PJ                  .4      R 4       4       t&]P8                  PG                  R4      ]P8                  P;                  RRR]PJ                  .4      R 4       4       t']P8                  PG                  R4      ]P8                  P;                  RRR]PJ                  .4      ]P8                  P;                  RR^ .4      R 4       4       4       t(R t)R t*]P8                  PG                  R4      R  4       t+R! t,]P8                  PG                  R4      R" 4       t-]P8                  PG                  R4      R# 4       t. ! R$ R%4      t/]P8                  PG                  R4      R& 4       t0]P8                  P;                  R'R]P>                  3R]P>                  3R]Pb                  3R(]Pb                  3.4      ]P8                  P;                  R)RR.4      R* 4       4       t2R# )3    )datetimeN)lib)Pandas4Warning)	DataFrameIndex
MultiIndexPeriodSeries	Timedelta
date_range)reshapeTF)paramsc                     V P                   # N)param)requests   &u/Users/max/.openclaw/workspace/postharvest/venv/lib/python3.14/site-packages/pandas/tests/frame/test_stack_unstack.pyfuture_stackr      s    ==    c                   \  a  ] tR t^t o ]P
                  P                  R4      R 4       t]P
                  P                  R4      R 4       tR t	]P
                  P                  R4      R 4       t
R tR tR tR	 tR
 tR t]P
                  P#                  RRS. RTO. RTO. RTO. RTO.]P&                  ! . RUORR.R7      ]P&                  ! . RVORRS.R7      3RW. RXO. RXO.]! ^^.RR7      ]P&                  ! . RYO. RZOR7      3.4      R 4       tR t]P
                  P                  R4      R 4       t]P
                  P                  R4      R 4       t]P
                  P                  R4      R 4       tR t]P
                  P                  R4      R 4       tR tR t]P
                  P#                  R]P>                  ! ^4      ]P>                  ! ^4      3]P@                  ! ^RR7      ]P@                  ! ^^
RR7      334      R  4       t!]P
                  P                  R4      R! 4       t"R" t#]P
                  P#                  R#^ . R[O]PH                  R^.]PH                  ^^.3^. R\O]PH                  ^^.]PH                  R^.334      R$ 4       t%]P
                  P#                  R%RR.]&! R4      .4      R& 4       t'R' t(R( t)R) t*]P
                  P#                  R*R]R^.4      ]P
                  P#                  R+]+! ],! ^4      4      4      R, 4       4       t-]P
                  P#                  R*].P^                  ! . R_O4      4      ]P
                  P#                  R+]+! ],! ^4      4      4      ]P
                  P#                  R-R.R/.4      R0 4       4       4       t0R1 t1R2 t2R3 t3R4 t4R5 t5]P
                  P                  R4      ]P
                  P#                  R6. R`O. RaO. RbO. RcO. RdO. ReO^ ^.^ ^.^ ^.^ .^.^.. RfO. RgO. RhO. RiO. RjO. RkO^^ .^^ .^^ ..4      ]P
                  P#                  R7Rl^ ^^ ^.^^ .34      R8 4       4       4       t6]P
                  P                  R4      R9 4       t7]P
                  P                  R4      ]P
                  P#                  R:R;R<.4      R= 4       4       t8]P
                  P                  R4      ]P
                  P#                  R:R;R<.4      ]P
                  P#                  R>]+! R?4      . RmO3]+! R@4      . RnO3.4      RA 4       4       4       t9]P
                  P                  R4      RB 4       t:]P
                  P                  R4      ]P
                  P#                  RC. RoO. RpO. RaO.4      RD 4       4       t;]P
                  P                  R4      ]P
                  P#                  RE^^.RFRG.RHRIRI3^^.RJRK.RHRLRM3.4      RN 4       4       t<]P
                  P#                  R7^ ^.4      RO 4       t=]P
                  P#                  R7^ RP.4      RQ 4       t>RRt?V t@R# )qTestDataFrameReshape9ignore:The previous implementation of stack is deprecatedc                   VP                  4       p\        P                  ! \        P                  ! VP                  4      4      P                  VP                  4      VR &   VP                  VR7      p\        RVRV/4      pVP                  4       pVP                  4       p\        P                  ! Wc4       \        P                  ! VR,          V4       VP                  ^ 4      pVP                  ^ 4      p	\        P                  ! VP                  V4       \        P                  ! V	R,          P                  V4       R# )NNNr   foobarN)copynparangeprodshaper   stackr   unstacktmassert_frame_equalT)
selffloat_framer   dfstacked
stacked_df	unstackedunstacked_dfunstacked_colsunstacked_cols_dfs
   &&&       r   test_stack_unstack'TestDataFrameReshape.test_stack_unstack   s     		"''"((+,44RXX>1(((5ww?@
OO%	!))+
i,
l5126 +&..q1
n..3
/688"=r   c                   \        ^4      . R	O^^..p\        ^V^ ,          V^,          R7      pVP                  VR7      p\        ^\        P
                  ! VR,          4      R7      p\        P                  ! WE4       \        ^V^ ,          \        P
                  ! VR,          4      R7      pVP                  ^VR7      p\        ^\        P
                  ! V^ ,          V^,          .4      V^,          R7      p\        P                  ! WE4       VRR.,          P                  ^VR7      pVRR.,          p\        P                  ! WE4       R# )
   abindexcolumnsr   :N   Nr8   :   NNN)r4   r5   r6   )	ranger   r#   r
   r   from_productr%   assert_series_equalr&   )r(   r   levelsr*   resultexpecteds   &&    r   test_stack_mixed_level+TestDataFrameReshape.test_stack_mixed_level4   s   
 (MAq62 qq	6!9=|4!:#:#:6":#FG
v0 qq	:3J3J6RT:3VW!,7Z,,fQi-CDfUVi
 	f/ S#J%%al%CS#J'
f/r   c                L   \        R ^^\        P                  .RR^\        P                  ./4      pVR .,          pVR,          VR&   \        VP                  P
                  4      ^8X  g   Q hVP                  4       pVP                  4       p\        P                  ! W44       R# )xy      @N)	r   r   nanlen_mgrblocksr$   r%   r?   )r(   r*   df2resrB   s   &    r   test_unstack_not_consolidated2TestDataFrameReshape.test_unstack_not_consolidatedN   s    aBFF^S32662BCD#ic7C388??#q(((kkm::<
s-r   c                   \        . RO\        P                  R7      p\        P                  ! . RO4      Vn        VP                  RR7      p\        R. ROR. RO/. RO\        P                  R7      p\        P                  ! W44       R	p\        P                  ! \        VR
7      ;_uu_ 4        VP                  RR7      pRRR4       \        R. ROR. RO/. RO\        R7      p\        P                  ! W44       \        R. ROR. ROR. ROR. RO/4      P                  . RO4      pVP                  RR.^ R7      pRpWx,          p\        . ROVP
                  VR7      p\        P                  ! W44       VP                  RR.VR7      p	V	P
                  P!                  VP
                  P"                  4      V	n        V	P%                  \        P&                  4      p	V	P(                  VP
                  ,          p\        P                  ! W64       VR,          p
V
P                  RR.^ R7      pVR,          p\        P                  ! W44       R#   + '       g   i     EL; i)r<   dtyperF   r5   r6   rG   z
fill_valuer8   rS   JUsing a fill_value that cannot be held in the existing dtype is deprecatedmatch      ?Nw)r8   namer   )r<   r:         )rF   r5   )rF   r6   )rG   r6   )rT   r5   )r<   ra   r_   )r:   r^   ra   rF   rG   rT   )r<   r[   r_   )r:   r^   r[   r5   r5   r6   )jkrd   r   r<   r:   )r\   r6   rd   )r   r   r:   )r
   r   int16r   from_tuplesr8   r$   r   r%   r&   assert_produces_warningr   float	set_indexr?   r#   reorder_levelsnamesastypeint64loc)r(   r   datarA   rB   msgr*   r-   keyr+   ss   &&         r   test_unstack_fill&TestDataFrameReshape.test_unstack_fillY   s    l"((3++<

 ,*c:.oRXX
 	f/ Y 	 ''cBB\\S\1F C +sK0u
 	f/ /3iiX

)O
$ 	 JJSzaJ8	>	sC
v0//3*</H44RXX^^D..*RXX&
f) sGC:!4S>
f/; CBBs   /II"	c                   ^^.^^.^^.^^..p\        V\        R4      \        P                  R7      p\        P
                  ! . RO4      Vn        VP                  RR7      p. RO. RO. RO.p\        V\        R4      \        P                  R7      p\        P
                  ! . RO4      Vn        \        P                  ! W44       VR,          P                  \        P                  4      VR&   VR,          P                  \        P                  4      VR&   VP                  RR7      pVR,          P                  \        P                  4      VR&   VR,          P                  \        P                  4      VR&   \        P                  ! W44       Rp\        P                  ! \        VR	7      ;_uu_ 4        VP                  R
R7      pRRR4       . RO. RO. RO.p\        V\        R4      \         R7      p\        P
                  ! . RO4      Vn        \        P                  ! W44       R#   + '       g   i     Lk; i)r<   AB)r9   rS   rU   xyzrW   ABrX   rY   r[   Nr`   ra   )r<   r4   r:   r^   )ra   r_   ra      )   ra      ra   )rz   r5   )rz   r6   )r{   r5   r{   r6   )r[   r_   r[   r|   )r}   r[   r~   r[   )r   listr   int32r   rh   r8   r$   r9   r%   r&   rn   rg   float64ri   r   rj   )r(   rowsr*   rA   rB   rr   s   &     r   test_unstack_fill_frame,TestDataFrameReshape.test_unstack_fill_frame   s   AAAA/tT$Zrxx@))<
 r*nn=TeBHHE%11<
 	f/ S'..*3S'..,3r* ,,RXX6 ,,RZZ8
f/ Y 	 ''cBBZZ3Z/F C .0@ATeEB%11<
 	f/ CBs   8H..H>	c           	     V   \        R ^R7      P                  p\        V4      p\        P                  ! . RO4      Vn        VP                  4       p\        RV^ ,          \        P                  V^,          .RV^,          V^,          \        P                  ./. ROR7      p\        P                  ! W44       VP                  V^ ,          R7      p\        RV^ ,          V^ ,          V^,          .RV^,          V^,          V^ ,          ./. ROR7      p\        P                  ! W44       R# )	
2012-01-01periodsr5   r6   r;   rU   Nr`   rb   )r   valuesr
   r   rh   r8   r$   r   pdNaTr%   r&   )r(   dvrq   rA   rB   s   &    r    test_unstack_fill_frame_datetime5TestDataFrameReshape.test_unstack_fill_frame_datetime   s    a077bz++<

 2a5"&&"Q%(#1r!ubff/EF!
 	f/A/2a5"Q%A'r!ubeRU.CD!
 	f/r   c           	     z   \        ^4       Uu. uF  p\        VR7      NK  	  pp\        V4      p\        P                  ! . RO4      Vn        VP                  4       p\        RV^ ,          \        P                  V^,          .RV^,          V^,          \        P                  ./. ROR7      p\        P                  ! WE4       VP                  V^,          R7      p\        RV^ ,          V^,          V^,          .RV^,          V^,          V^,          ./. ROR7      p\        P                  ! WE4       R# u upi )	r^   )daysr5   r6   r;   rU   Nr`   rb   )r=   r   r
   r   rh   r8   r$   r   r   r   r%   r&   )r(   itdrq   rA   rB   s   &     r   !test_unstack_fill_frame_timedelta6TestDataFrameReshape.test_unstack_fill_frame_timedelta   s   ).q2AiQ2bz++<

 2a5"&&"Q%(#1r!ubff/EF!
 	f/A/2a5"Q%A'r!ubeRU.CD!
 	f/% 3s   D8c           	     D   \        R 4      \        R4      \        R4      \        R4      .p\        V4      p\        P                  ! . R	O4      Vn        VP                  4       p\        RV^ ,          RV^,          .RV^,          V^,          R./. R
OR7      p\        P                  ! W44       VP                  V^,          R7      p\        RV^ ,          V^,          V^,          .RV^,          V^,          V^,          ./. R
OR7      p\        P                  ! W44       R# )z2012-01z2012-02z2012-03z2012-04r5   r6   Nr;   rU   r`   rb   )	r	   r
   r   rh   r8   r$   r   r%   r&   )r(   r   rq   rA   rB   s   &    r   test_unstack_fill_frame_period3TestDataFrameReshape.test_unstack_fill_frame_period   s    9999	
 g++<

 71:tWQZ0#
GAJPT7UV!
 	f/4gaj'!*gaj9gaj'!*gaj9 "
 	f/r   c                .   \        . RORR7      p\        P                  ! . RO4      Vn        VP	                  4       p\        R \        P                  ! . RO\        R4      R7      R\        P                  ! . RO\        R4      R7      /\        R4      R	7      p\        P                  ! W#4       R
p\        P                  ! \        VR7      ;_uu_ 4        VP	                  RR7       RRR4       VP	                  RR7      p\        R \        P                  ! \        R4      \        R4      R7      R\        P                  ! \        R4      \        R4      R7      /\        R4      R	7      p\        P                  ! W#4       R#   + '       g   i     L; i)r5   r6   ccategoryrR   Nabc
categoriesry   r;   z9Cannot setitem on a Categorical with a new category \(d\)rY   drU   acabccr5   r6   r   r5   r`   )r5   Nr5   )r6   r   N)r
   r   rh   r8   r$   r   r   Categoricalr   r%   r&   pytestraises	TypeError)r(   rq   rA   rB   rr   s   &    r   #test_unstack_fill_frame_categorical8TestDataFrameReshape.test_unstack_fill_frame_categorical   s"   **=++<


 R^^$4eMR^^$4eM u+
 	f/ K]]9C00LLCL( 1 -R^^DKDKHR^^DKDKH u+
 	f/ 10s   FF	c           	     R   \         P                  ! . RO. R	O.R
R.R7      p\        R^.^	,          R^.^	,          /VR7      pVP                  R
4      p\        . RO. RO. RO.\         P                  ! . RORR
.R7      \        . R	ORR7      R7      p\        P                  ! W44       R# )r5   rm   r   er;   Nr]   r9   r8   r5   r6   r   r<   r:   r4   r   r   )r<   r<   r<   r:   r:   r:   )r   r5   r   r6   )r   r   r   r5   r   r6   )r   r   )r   r>   r   r$   rh   r   r%   r&   r(   idxr*   rA   rB   s   &    r   $test_unstack_tuplename_in_multiindex9TestDataFrameReshape.test_unstack_tuplename_in_multiindex"  s    %%i(Z0H
 aS1WcA3733?J'!35GH** Z(
 	
3
 	f/r   z>unstack_idx, expected_values, expected_index, expected_columnsrz   r5   r{   Cr   Nr   c                    \         P                  ! R R.^^.^^... ROR7      p\        R^.^,          R^.^,          /VR7      pVP                  V4      p\        W$VR7      p\        P
                  ! Wx4       R# )	r5   r6   r   r   r   r;   r   N)r   r{   r   )r   r>   r   r$   r%   r&   )	r(   unstack_idxexpected_valuesexpected_indexexpected_columnsr   r*   rA   rB   s	   &&&&&    r   *test_unstack_mixed_type_name_in_multiindex?TestDataFrameReshape.test_unstack_mixed_type_name_in_multiindex;  s~    L %%3Z!Q!Q(0F
 aS1WcA3733?K(^
 	f/r   c                   \        R . ROR. ROR\        . RO4      P                  R4      R\        P                  P                  ^4      P	                  ^4      R^RRR\        P                  ! R	4      R
\        . RO4      P                  R4      R\        . RO4      P                  R4      RRR\        . RO4      P                  R4      /4      pR pVP                  R R.4      pV! VR4       VP                  R R.4      pV! VR4       VP                  RR.4      pV! VR4       VP                  . RO4      pV! VR4       VP                  R
R.4      pV! VR
4       VP                  R R.4      pVR,          pV! VR4       R# )stater8   some_categoriesr   rz   r{   r   r   D20010102Efloat32Fr   GFHint8c                 x    V P                  V.4      pV P                  V4      p\        P                  ! W#4       R # r   r$   r%   r&   )r*   column_name
unstacked1
unstacked2s   &&  r   unstack_and_compareNTestDataFrameReshape.test_unstack_preserve_dtypes.<locals>.unstack_and_compare~  s.    [M2JK0J!!*9r   N)ILMINCr   )      ?      I@g      Y@)rH         @      @)r<      i2 )r   r{   r   )	r   r
   rn   r   randomdefault_rngr   	Timestamprk   )r(   r*   r   df1rt   s   &    r   test_unstack_preserve_dtypes1TestDataFrameReshape.test_unstack_preserve_dtypesl  sh   +!6/#:#A#A*#MRYY**1-44Q7QUR\\*-V./66yAVO,33I>UV,-44V<
 	:
 llGW-.C)llG%678C!23llC:&C%ll./C%llC:&C%llGW-.HAw'r   c           	     4   \         P                  ! \        \        P                  ! \        ^4      ^R7      4      4      p\        \        P                  P                  ^4      P                  R4      VR7      p\        P                  ! VP                  ^^.VR7      VP                  ^VR7      P                  ^VR7      4       \        P                  ! VP                  RR	.VR7      VP                  ^VR7      P                  ^VR7      4       VP                  4       pVP                  P!                  \        ^4      RR7      pVe   Q h\        P                  ! VP                  ^^.VR7      VP                  ^VR7      P                  ^VR7      4       R# )
r4   repeatr9   levelr   T)inplaceN)      ra   )r   rh   r   	itertoolsproductr=   r   r   r   r   standard_normalr%   r&   r#   r   r9   	set_names)r(   r   r9   r*   df_namedreturn_values   &&    r   test_stack_ints$TestDataFrameReshape.test_stack_ints  sf    ((i.?.?aQR.S)TUII!!!$44X>
 	HHAq6H=HH1<H8>>l ? 	
 	HHB8,H?HH1<H8>>l ? 	
 779''11%(D1I###
NN!QlNCNNN>DDl E 	
r   c                F   \         P                  ! . RO. ROR7      p\        \        P                  P                  ^4      P                  R4      VR7      pVP                  RR.VR7      pVP                  RR.VR7      pVP                  4       p. ROVP                  n
        \        P                  ! VP                  R^.VR7      VRR7       \        P                  ! VP                  R^.VR7      VRR7       R	p\        P                  ! \        VR
7      ;_uu_ 4        VP                  R^ .VR7       RRR4       VP                  4       p. ROVP                  n
        \        P                  ! VP                  R^ .VR7      VRR7       R#   + '       g   i     La; i)rz   expanimalhair_lengthr   r   r   Fcheck_nameszSlevel should contain all level names or all level numbers, not a mixture of the tworY   N)rz   catlong)r{   r   r   )rz   dogshort)r{   r   r   r   r   r   r^   r^   )r   r   r<   )r   r   r   )r   rh   r   r   r   r   r   r#   r   r9   rm   r%   r&   r   r   
ValueError)	r(   r   r9   r*   animal_hair_stackedexp_hair_stackedrM   rr   df3s	   &&       r   test_stack_mixed_levels,TestDataFrameReshape.test_stack_mixed_levels  st    (( 3
 II!!!$44V<g
 !hh]+, ' 
 88-(| $ 
 ggi0
IIXqMIE	

 	IIUAJ\IB	
# 	 ]]:S11IIXqMIE 2
 ggi0
IIXqMIE	
 21s   !FF 	c                   \         P                  ! . R
O. ROR7      p\        \        P                  P                  ^4      P                  R4      VR7      pVP                  RR.VR7      pVP                  RR.VR7      pVP                  RR.VR7      pVP                  4       p. ROVP                  n
        \        P                  ! VP                  ^^.VR7      VRR7       \        P                  ! VP                  ^ ^.VR7      VRR7       \        P                  ! VP                  ^ ^.VR7      VRR7       VP                  4       p. ROVP                  n
        \        P                  ! VP                  ^ ^.VR7      VRR7       \        P                  ! VP                  ^^ .VR7      VRR7       \        P                  ! VP                  ^^.VR7      VRR7       R	# )rz   r   r   r   r   r   r   Fr   Nr   r   r   rf   )r:   r   r<   )r   rh   r   r   r   r   r   r#   r   r9   rm   r%   r&   )	r(   r   r9   r*   exp_animal_stackedr  r  rM   r  s	   &&       r   test_stack_int_level_names/TestDataFrameReshape.test_stack_int_level_names  s    (( 3
 II!!!$44V<g
  XX(#, & 
 !hh]+, ' 
 88-(| $ 
 ggi%
IIQFI>	

 	IIQFI>	

 	IIQFI>	
 ggi%
IIQFI>	

 	IIQFI>	

 	IIQFI>	
r   c           	     t   \        R R .\        P                  ! RR.RR..4      R.R7      pVP                  4       p\        \        P
                  ! R \        P                  .\        P                  R ..\        R7      RR.\        P                  ! RR.RR..4      R7      p\        P                  ! W#4       R# )	Fr5   r6   r   lcolr7   rR   N)
r   r   from_arraysr$   r   arrayrI   objectr%   r&   )r(   r*   rsxps   &   r   test_unstack_bool&TestDataFrameReshape.test_unstack_bool2  s    EN((3*sCj)ABG

 ZZ\HHubffo7vF***UENS#J+GH

 	b%r   c           	        \        R R.RR.RR... RO. RO. RO.. ROR	7      p\        ^ VR
7      pVP                  ^^.4      P                  ^ VR7      p\        R R.RR... RO. RO.RR.R	7      p\	        \
        P                  ! ^ \
        P                  .\
        P                  ^ .^ \
        P                  .\
        P                  ^ ..\
        P                  R7      V\        RR.RR7      R7      p\        P                  ! WF4       R# )r   r   onetwor5   r6   firstsecondthirdr@   codesrm   r;   r   rR   r   r7   Nr   r   r<   r<   r   r<   r   r<   )r<   r   r<   r   )r  r  r  )r   r
   r$   r#   r   r   r  rI   r   r   r%   r&   )r(   r   mirt   rA   expected_mirB   s   &&     r   test_unstack_level_binding/TestDataFrameReshape.test_unstack_level_binding@  s    
 ENUENS#J?|<.

 1BAq6"(((F ENUEN3.H%
 HHRVVrvvqkArvv;DBJJ 3*73
 	f/r   c                   VP                  4       p\        V\        4      '       g   Q hVP                  4       P                  p\        P
                  ! W14       \        R ^^\        P                  .RR^\        P                  ./4      p\        . RO4      Vn
        VP                  4       p\        R R.. RO.. RO. RO.R7      p\        ^^\        P                  ^^\        P                  .VR7      p\        P                  ! WF4       VP                  4       p\        ^4       F  pVP                  4       pK  	  \        P
                  ! Wr4       R# )	rF   rG   rH   r@   r  r;   Nr   )r   r   r   r<   r<   r<   )r   r<   r:   r   r<   r:   )r$   
isinstancer
   r'   r%   r&   r   r   rI   r   r8   r   r?   r   r=   )	r(   r)   rq   undorA   midxrB   old_data_s	   &&       r   test_unstack_to_series+TestDataFrameReshape.test_unstack_to_series]  s   ""$$''''||~
d0 #1bff~sS!RVV4DEF?+
#J0%'9:
 1aArvv6dC
v0 99;qA<<>D 
h-r   c                   . RO. RO. RO. RO.p\        V\        R4      R7      pVP                  p\        \        P
                  ! R4      .^,          \        R4      R7      p\        P                  ! WE4       VP                  RR.4      pVP                  R4      pVP                  p\        \        P
                  ! R4      .^,          \        P                  ! . RO. RO.RR
7      R7      p\        P                  ! WE4       VP                  RR.4      pRVR&   VP                  R4      pVP                  p\        \        P
                  ! R4      .^,          \        P
                  ! R4      .^,          ,           \        P                  ! . RO. RO.RR
7      R7      p\        P                  ! WE4       RVR&   VP                  R4      pVP                  pV'       d&   \        P                  ! \        P                  R7      M\        P
                  ! R4      p\        \        P
                  ! R4      .^,          V.^,          ,           \        P                  ! . RO. RO.RR
7      R7      p\        P                  ! WE4       R	# )r<   ABCDr   ro   r;   rz   r{   r   r   Nr   rH   r   r   )na_valuer  )r<   r<   r4   r^   r<   r:   r4   r^   )r:   r<   r4   r^   )r:   r:   r4   r^   )r   r   r   r   )r<   r:   r<   r:   )Nr{   )r   r   dtypesr
   r   rS   r%   r?   rk   r$   r   r  r   StringDtyperI   )	r(   using_infer_stringr   r*   rA   rB   rM   r  rS   s	   &&       r   test_unstack_dtypes(TestDataFrameReshape.test_unstack_dtypesx  s   lL,GtT&\2288G,-1fF
v0 llC:&kk#XXg!#((%|4K
 	v0 llC:&Ckk#XXi !A%'):(;a(??((%|4K
 	v0Ckk# " NNBFF+(# 	
 XXi !A%!3((%|4K
 	v0r   zc, df8rR   c                   \        R R.^,          RVRVR\        R^R7      /4      pVP                  R,          P                  RR	7      pVP	                  R R.4      pVR,          P                  R
4      VR&   VP                  R,          P                  ^ 4      pVP	                  R R.4      P                  ^ 4      pVR,          P                  R
4      VR&   VP                  R8X  g   Q h\        P                  ! WT4       R# )rz   r5   r   r   r{   r   r   :Nr4   NT)deepro   N)r   r5   )r4   r:   )
r   r   ilocr   rk   rn   r$   r"   r%   r&   )r(   r   r   r*   rightlefts   &&&   r   test_unstack_dtypes_mixed_date3TestDataFrameReshape.test_unstack_dtypes_mixed_date  s     cUQYQQZa8	
   d +\\3*%S'..)3wwr{""1%c
+33A6!*-44W=jzzV###
d*r   c                   \         P                  ! RR	.RR.R7      p\        ^^.VR7      pRp\        P                  ! \
        VR7      ;_uu_ 4        VP                  R4       RRR4       \        P                  ! \
        VR7      ;_uu_ 4        VP                  P                  RVR7       RRR4       R#   + '       g   i     L\; i  + '       g   i     R# ; i)
r5   c1r   r;   z5The name c1 occurs multiple times, use a level numberrY   Nr   )r5   r6   )r   r   )	r   rh   r   r   r   r   r$   r'   r#   )r(   r   r   r*   rr   s   &&   r   #test_unstack_non_unique_index_names8TestDataFrameReshape.test_unstack_non_unique_index_names  s     $$j*%=dD\R1vS)E]]:S11JJt 2 ]]:S11DDJJt,J7 21 21 211s   B8C8C	C	c                   \         P                  ! R .. RO.4      RR p\        ^^ ..^,          VR7      pVP                  4       p\         P                  ! \	        ^4      . RO.4      p\        . R	O.R .VR7      p\
        P                  ! W54       VP                  P                  ^,          VP                  ^,          8H  P                  4       '       g   Q h\	        ^4      \	        ^4      .p. R
O. RO.p\        Wg4      p\        P                  ! ^4      P                  ^^4      p\        \        P                  ! W^,           .4      VR7      pVP                  4       p\        \        P                  ! V^,          V^,          ^,           .^R7      VR7      p\
        P                  ! W54       VP                  P                  ^,          VP                  ^,          8H  P                  4       '       g   Q hR# )r5   Nr;   r7   axisr   )rz   r{   r   r   ra   rz   r{   r   )r<   r<   r<   r   r   r   r  r   r:   r   r:   )r   r>   r   r$   r=   r%   r&   r9   r@   allr   r    r   concatenate)	r(   r   r*   rA   exp_colrB   r@   r  blocks	   &        r   test_unstack_unused_levels/TestDataFrameReshape.test_unstack_unused_levels  s   %%u.B&CDSbIAx!|3/))58_*EF01#P
f/%%a(CJJqM9>>@@@@ (E!H%|,'		!$$Q*r~~uai&89ENNEAIuqy1}5A>
 	f/%%a(CJJqM9>>@@@@r   z"level, idces, col_level, idx_levelc                   . RO. RO.p. RO. RO.p\        WV4      p\        P                  ! ^4      p\        VP	                  ^^4      VR7      p	V	P                  VR7      p
\        P                  ! ^4      \        P                  ,          pWV&   \         P                  ! \        ^4      V.4      p\        VP	                  ^^4      WLR7      p\        P                  ! W4       R# )	r5   r;   r   r7   N)r5   r:   r   )r<   r4   r_   r}   )r   ra   r<   r<   )r   r:   ra   r:   )r   r   r    r   r   r$   zerosrI   r>   r=   r%   r&   )r(   r   idces	col_level	idx_levelr@   r  r   rq   r*   rA   exp_datacolsrB   s   &&&&&         r   )test_unstack_unused_levels_mixed_with_nan>TestDataFrameReshape.test_unstack_unused_levels_mixed_with_nan  s      ..'yy|t||Aq)5%(88B<"&&(&&a)'<=X--a39S
f/r   rR  c                   \        . RO. R	O.. R
OR7      pVP                  . R
ORR7      pVP                  \        R4      \        R4      R3V3,          pVP	                  4       pVP
                  ^ .,          V,          p\        P                  ! VP                  R..RR.R7      Vn        VP                  P                  R4      Vn	        \        P                  ! WV4       R# )  Ir   r   F)dropNr   )rV  r5   rW  )i  r6   IIrC  )r   rk   rp   slicer$   r7  r   r>   r9   r8   	droplevelr%   r&   )r(   rR  r*   ind	selectionrA   rB   s   &&     r   test_unstack_unused_level.TestDataFrameReshape.test_unstack_unused_level  s     (*;<oVll?l7GGU4[%+s;TAB	""$88QC=&%22u%dC[
 "11#6
f/r   c           	     N   \        ^..\        P                  ! ^ ..R.R7      \        P                  ! . RO.. ROR7      R7      pVP                  . R	O4      p\        ^..\        P                  ! . RO.. R
OR7      \	        ^ .RR7      R7      p\
        P                  ! W#4       R# )r<   r=  r   i1r   r   N)r   r   r<   r   r   r   r<   )ra  i2i3i4i5i6i7)rb  rc  rd  re  rf  rg  )r=  rb  rc  rd  re  rf  rg  )r   r   rh   r$   r   r%   r&   r(   r*   rA   rB   s   &   r   test_unstack_long_index,TestDataFrameReshape.test_unstack_long_index  s     SE**QC5?((&'@
 @ASE**&'@ $'
 	f/r   c           	        \        R R .R R ..\        P                  ! RR.RR..RR.R7      \        P                  ! . RO. RO.. ROR7      R	7      pVP                  RR.4      P                  P
                  RR
 RR.8X  g   Q hR
# )        r{   r   r   r=  c2r   ra  rb  r   N)
      r   )rn  ro  (   ra  rb  rc  r   )r   r   rh   r$   r9   rm   )r(   r*   s   & r   test_unstack_multi_level_cols2TestDataFrameReshape.test_unstack_multi_level_cols*  s    3Z#s$**sc3Z(t ((|,4F
 zz4,'//55bc:tTlJJJr   c                L   \        ^^.^^.RR.RR	..\        P                  ! . R
O. RO.4      \        P                  ! . RO. RO. RO. RO.. ROR7      R7      pVP                  RR.4      pVP                  R.4      P                  R.4      p\        P
                  ! W#4       R# )r<   rb  rc  r   r   Nra   r   r   )r   r   f)m1P3   )rx  A5o   )m2ry  rz  )r}  r{  r|  rq  )r   r   rh   r$   r%   r&   rh  s   &   r   &test_unstack_multi_level_rows_and_cols;TestDataFrameReshape.test_unstack_multi_level_rows_and_cols7  s    VaVb"XBx0**O_+MN((%%%%	 )
 T4L)::tf%--tf5
f/r   r   levc           	        R  p\        RRR\        P                  R.R. ROR. RO/4      pVP                  RR.4      P	                  4       R,          pVP                  RR.4      P	                  4       R,          P
                  p\        P                  ! WV4       VP                  \        V4      4      pVP	                  VR7      pVP                  4       P                  P                  4       \        V4      8X  g   Q hR p	VR,          P                  4       P                  P                  4       w  r\        W4       F  w  r\        VR,          P                   W3,          P#                  R	4      4      pV	! VR,          P$                  V,          4      V	! VR,          P&                  V,          4      ,           p\        \)        W64      4      pWV8X  d   K  Q h	  R
# )c                     W 8w  d   R MT pVR #  1 valval_strs   & r   cast:TestDataFrameReshape.test_unstack_nan_index1.<locals>.castN      JbCGa[!r   jimr5   r6   r   joejolierL  c                 J    \        V \        4      '       d   \        V 4      # V .# r   r$  tupler   r5   s   &r   <lambda>>TestDataFrameReshape.test_unstack_nan_index1.<locals>.<lambda>a      z!U';';DGD!Dr   .N)r\   rF   rG   rT   )za.wzb.xz .yzd.z)r   r   rI   rk   r$   r'   r%   r&   r   notnar   sumrJ   nonzerozipsortedr7  splitr8   r9   map)r(   r   r  r  r*   r9  r8  r  udfmk_listr   rR  r   rd   s   &&&           r   test_unstack_nan_index1,TestDataFrameReshape.test_unstack_nan_index1J  s   	" S"&&#.+5
 ||UEN+335g>eU^,446w?AA
d*\\$s)$jjsj#yy{!!%%'3r7222D\'')0088:
ODA#g,++AD177<=DCL..q12WS\=Q=QRS=T5UUE3t+,E= =	 $r   r  4th5thc           	        a R  o\        RR.^,          \        P                  .^,          ,           R.^,          ,           R.^,          ,           R.^,          ,           R.^,          ,           RR.^,          R	.^,          ,           \        P                  .^,          ,           R
.^,          ,           \        P                  .^,          ,           R.^,          ,           \        P                  .^,          ,           R. RO/4      pVP                  V3R l^R7      VP                  V3R l^R7      uVR&   VR&   VP	                  \        V4      4      pVP                  VR7      pVP                  4       P                  P                  4       ^\        V4      ,          8X  g   Q hR pWc,          P                  4       P                  P                  4       w  r\        W4       F  w  r\        Wc,          P                  W3,          P                  R4      4      pV! Wc,          P                   V
,          4      V! Wc,          P"                  V,          4      ,           p\        \%        SV4      4      pW8X  d   K  Q h	  R# )c                     W 8w  d   R MT pVR # r  r  r  s   & r   r  ATestDataFrameReshape.test_unstack_nan_index_repeats.<locals>.castm  r  r   1str   r5   r   r   r6   2ndrG   r\   rT   rF   3rdc                 :   < R P                  \        SV 4      4      # )r  )joinr  rr  s   &r   r  ETestDataFrameReshape.test_unstack_nan_index_repeats.<locals>.<lambda>  s    sxxD!5r   rA  c           	      b   < R P                  \        SV P                  RRR1,          4      4      # )r  Nra   )r  r  r7  r  s   &r   r  r    s!    sxxD!&&2,(?@r   r  r  rL  c                 J    \        V \        4      '       d   \        V 4      # V .# r   r  r  s   &r   r  r    r  r   r  N)C   '   5   H   9   P            r   ;   2   >   r  L   4      r  <   3   )r   r   rI   applyrk   r   r$   r  r   r  rJ   r  r  r  r7  r  r8   r9   r  )r(   r   r  r  r*   r  r  r  r   rR  r   rd   r9  r8  r  s   &&&&          @r   test_unstack_nan_index_repeats3TestDataFrameReshape.test_unstack_nan_index_repeatsi  s   	" uqy66(Q,%!) %!) %!)	
 %!) uqy%!)66(Q, %!) 66(Q,	
 %!) 66(Q,  $&
R HH5AH>HH@qHI 	5	2e9
 \\$s)$jjsj#yy{!!%%'1s2w;666DX^^%,,446
ODA#(---33C89DCHNN1-.9I9I!9L1MME3tU+,E= =	 $r   c           
     p   \        R \        R4      R\        ^4      R\        ^4      /4      pVP                  RR/4      p\        P
                  VP                  R&   VP                  R R.4      P                  ^ 4      p^^ ^^\        P
                  \        P
                  \        P
                  \        P
                  .\        P
                  \        P
                  \        P
                  \        P
                  ^^^^..p\        \        \        \        V!  4      4      p\        \        P
                  ^ ^^^^^^.RR7      p\        R.RR..^ ^ .^ ^..RR .R	7      p\        W5VR
7      p\        P                  ! W&4       \        R \        R4      R\        \        ^4      4      ^,          R\        ^4      /4      pVP                  RR/4      p\        P
                  VP                  R&   VP                  R R.4      P                  ^ 4      p^\        P
                  .^ ^.^^.\        P
                  ^.^^..p\        R.RR..^ ^ .^ ^..RR .R	7      p\        \        P
                  ^ ^^^.RR7      p\        W5VR
7      p\        P                  ! W&4       \        R \        R4      R\        \        ^4      4      ^,          R\        ^4      /4      pVP                  RR/4      p\        P
                  VP                  R&   VP                  R R.4      P                  ^ 4      p^\        P
                  .^ ^.^^.^^.\        P
                  ^..p\        R.RR..^ ^ .^ ^..RR .R	7      p\        \        P
                  ^ ^^^.RR7      p\        W5VR
7      p\        P                  ! W&4       R# )rz   aaaabbbbr{   r   rj   r   r5   r6   Nr  r   r4   r<   )r:   r<   )r   r   r=   rn   r   rI   r7  rk   r$   r  r  r   r   r%   r&   r(   r*   r9  valsr   rR  r8  s   &      r   test_unstack_nan_index2,TestDataFrameReshape.test_unstack_nan_index2  s4   T*-sE!Hc58LMYYW~&||S#J'//2 1a8VVRVVRVVRVVQ1a8
 Cc4j)*RVVQ1aAq1<EC:&1v1v.>tSk
 $C8
d*T*-sDqNQ4FUSTXVWYYW~&||S#J'//2BFFaVaVbffa[1a&AEC:&1v1v.>tSk
 RVVQ1a(s3$C8
d*T*-sDqNQ4FUSTXVWYYW~&||S#J'//2BFFaVaVaVbffa[AEC:&1v1v.>tSk
 RVVQ1a(s3$C8
d*r   c           
     J   \        R \        R4      R\        R^R7      P                  4       ^,          R\        P
                  ! ^
4      /4      p\        P                  VP                  R&   VP                  R R.4      P                  4       p\        P                  ! ^^ ^^\        P                  ^.\        P                  ^^^^^	..4      p\        RR.R R7      p\        R.\        R^R7      .. RO. RO.R	R.R
7      p\        W5VR7      p\        P                  ! W&4       R	# )rz   
aaaaabbbbbr{   r   r   r   r5   r6   r   Nr  r   r  )r   r   r   r   r   r   )ra   r   r<   r:   r4   r^   )r   r   r   tolistr   r    rI   r7  rk   r$   r  r   r   r%   r&   r  s   &      r   test_unstack_nan_index3,TestDataFrameReshape.test_unstack_nan_index3  s    T,'jq9@@BQFRYYr]
 ||S#J'//1xx!Q1bffa02661aAq2IJKS#JS)E:lA>?%':;+
 $C8
d*r   c                4   R \         P                  \         P                  R.RR\         P                  R.RR\         P                  R.. RO. RO. RO.p\        V. RO. ROR7      pVP                  4       P	                  . RO4      P                  4       p\         P                  \         P                  R\         P                  R.RR\         P                  R\         P                  ..p\        RR.R..^ ^.R^ ..RR.R7      p\        R
.. RO.. RO. RO.RR	.R7      p\        WVR7      p\        P                  ! W64       VP                  R,          P                  4       P	                  . RO4      p\        P                  ! VP                  4       V4       R# )Hgi(Url  Pbg	VZ>@>]K=?)=(agentchangedosages_idr   r  N:ipC  NN)Snr  r  r  )Agrl  r  r  a2U0*#)r  r  r  r  )r  r  r  r  )ioC  ipC  iqC  irC  isC  itC  )r  r  r  ra   )r  r  r  r  r  )r   r   r   r   r   r   r<   r:   r4   r^   )
r   rI   r   r   rk   r$   r   r%   r&   rp   )r(   r  r*   r9  r   rR  r8  s   &      r   test_unstack_nan_index4,TestDataFrameReshape.test_unstack_nan_index4  se    2662669-#rvvy)8RVVY/1*/
 9<
 wwy""#>?GGI VVRVVXrvvs3(BFFJ7

 	*VH5q6B7#8$
 J =>"O4/
 $C8
d*vvf~""$../JK
dllne4r   c                   \        R . R
OR\        R^RR7      R^d\        P                  ! ^4      ,           R\        P                  P                  ^4      P                  ^4      ^
,          P                  ^4      /4      pVR,          \        P                  ! R4      ,
          VR&   \        P                  ;VP                  R&   VP                  R&   \        P                  ;VP                  R&   VP                  R&   VP                  . RO4      P                  RR.4      pVP                  4       P                  P!                  4       ^\#        V4      ,          8X  g   Q hR FW  pVP%                  4        F@  w  rEVR ,          W5R,          VR,          33pWS,          VP                  V,          8X  d   K@  Q h	  KY  	  R	# )r  r  z
2014-02-01r   )r   freqr  r  z
2014-02-02r  N)r<   r:   r<   r:   r<   r:   )r<   r  )r4   r  )r<   r  )r^   r  r  r  r  r  r  )r   r   r   r    r   r   r   roundr   r   rI   rp   rk   r$   r  r   r  rJ   iterrows)r(   r*   r9  r  r(  r  rs   s   &      r   test_unstack_nan_index5,TestDataFrameReshape.test_unstack_nan_index5  s\   )z,DsRYYq\)		--a0@@CbHOOPQR	
 uI\ ::5	.0ff4x266(+.0ff4x266(+||12::E5>Jzz|""&&(ABK777!Chh% 99v#... & "r   c                   \        R ^^4      p\        . R	O\        P                  ! VRR3.4      R7      pV'       d   RM\        pRp\
        P                  ! WER7      ;_uu_ 4        VP                  VR7      pRRR4       \        P                  ! \        ^4      R
.4      p\        P                  ! VR3.4      p\        . R	OWxR7      p	\
        P                  ! XV	4       R#   + '       g   i     Lr; i)i  rz   r{   r   Nz2The previous implementation of stack is deprecatedrY   r   r7   r.  )r{   )r   r   r   rh   r   r%   ri   r#   r>   r=   r&   )
r(   r   tr*   warnrr   rA   eidxecolsrB   s
   &&        r   %test_stack_datetime_column_multiIndex:TestDataFrameReshape.test_stack_datetime_column_multiIndex2  s    T1a |Z-C-Cac]O-TU#tB''88XX<X8F 9 &&a&'9:&&Cz2\E
fh/ 98s   &C##C3	multiindex_columnsr   c                f   V'       g   R M\         P                  p\        P                  ! . RORR.R7      pWQ,          p\	        \
        P                  ! ^\        V4      ,          4      P                  ^\        V4      4      VR7      pVP                  W$VR7      p\        V\        4      '       d`   V'       gX   VP                  VRVR7      p	\        V	\        4      '       d   \        P                  ! W4       M\        P                  ! W4       \        P                  ! VP                   P#                  4       VP                   P$                  R7      Vn        VP                  W$VR7      p	\        V	\        4      '       d   \        P                  ! W4       R# \        P                  ! W4       R# )	FUpperLowerr   r   r   dropnar   TN)r{   rF   )r{   rT   )rz   rG   )r   rF   )r   u)r   
no_defaultr   rh   r   r   r    rJ   r   r#   r$  intr
   r%   r?   r&   r9   to_numpyrm   )
r(   r  r   r   r  full_multiindex
multiindexr*   rA   rB   s
   &&&&      r   test_stack_partial_multiIndex2TestDataFrameReshape.test_stack_partial_multiIndex@  s7   @ +$00HG$
 %8
IIa#j/)*221c*oF
 <PeS!!, xxeD|xTH(F++&&v8%%f7++JJ!)9)9

 88%\8Rh''""64!!&3r   c           	     j   \         P                  ! . RORR.R7      p\        \        P                  ! ^4      P                  ^^4      V. RO,          R7      pV'       g   RM\        P                  pVP                  WAR7      p\        ^ ^.^\        P                  .^^.^\        P                  ..\        \        ^4      . RO.. RO. RO.RR.R	7      \        R R.RR
7      R7      pVR ,          P                  VP                  P                  ^ ,          4      VR &   \        P                   ! WV4       R# )r{   r   r  r  r   r   Fr  r   Nr  r   r7   r  )r   r<   r4   )r  rF   rG   rT   r  )r<   r4   r<   r4   )r   rh   r   r   r    r   r   r  r#   rI   r=   r   rn   r/  r7  r%   r&   )r(   r   r  r*   r  rA   rB   s   &&     r   test_stack_full_multiIndex/TestDataFrameReshape.test_stack_full_multiIndex  s    
 %00HG$
 ryy|++Aq1?9;UV*CVa[1a&1bff+6a"67#\2Wo
 3*73
 !,,RYY^^A->?
f/r   orderedFTc                .   \         P                  ! \        R 4      \        R4      VR7      p\        . RO.VR7      pVP	                  VR7      p\
        P                  ! VP                  V.4      p\        . ROVR7      p\        P                  ! WW4       R# )yxzry   r   r  r   r   r;   N)rn  r     )r   CategoricalIndexr   r   r#   r   r>   r8   r
   r%   r?   )r(   r  r   cidxr*   rA   r&  rB   s   &&&     r   %test_stack_preserve_categorical_dtype:TestDataFrameReshape.test_stack_preserve_categorical_dtype  st     ""4;4;PWX~t4|4 &&$'78,d3
v0r   zlabels,datary   zyxc                
   \         P                  ! V\        V4      VR 7      p\         P                  ! RR.VR7      p\        P                  ! WV.4      p\        \        V4      .VR7      pVP                  ^ ^.VR7      p	V'       d   TM
\        V4      p\         P                  ! W!R7      p
V'       d   \        V4      MTp\        V\        P                  ! \        ^4      W.4      R7      p\        P                  ! W4       R# )r  r  v)r  r   r   r;   N)r   r
  r  r   r>   r   r#   r
   r=   r%   r?   )r(   r  labelsrq   r   r  cidx2r&  r*   rA   s_cidxexpected_datarB   s   &&&&&        r   +test_stack_multi_preserve_categorical_dtype@TestDataFrameReshape.test_stack_multi_preserve_categorical_dtype  s     ""6fVngV##S#J@&&}5t~t41a&|<'VF^$$V=(4t$!8!8%(F9R!S
 	v0r   c                0   \         P                  ! . RO4      p\        RVRV/4      pVP                  VR7      p\        P
                  ! \        ^4      RR..4      p\        \         P                  ! . RO4      VR7      p\        P                  ! WF4       R# )r5   rz   r{   r   r;   N)r5   r5   r6   r   )r5   r5   r5   r5   r6   r6   r   r   )
r   r   r   r#   r   r>   r=   r
   r%   r?   )r(   r   r   r*   rA   r8   rB   s   &&     r   ,test_stack_preserve_categorical_dtype_valuesATestDataFrameReshape.test_stack_preserve_categorical_dtype_values  s|    
 nn12S#s+,|4''qC:(>?NNCDE
 	v0r   r8   c                *   \         P                  ! ^^.RR..4      p\        WR7      P                  ^4      pVP	                  VR7      p\         P
                  ! VP                  P                  4       4      p\        VP                  4       WeP                  R7      p\        P                  ! WW4       \        P                  ! VP                  P                  4      p\        P                  ! VP                  4      p	\        P                  ! W4       R# )r<   r5   r6   r7   r   N)r   r>   r   fillnar#   rh   r8   r  r9   r%   r&   r   asarrayr  assert_numpy_array_equal)
r(   r8   r   r9   r*   r+   	new_indexrB   stacked_codesexpected_codess
   &&&       r   )test_stack_multi_columns_non_unique_index>TestDataFrameReshape.test_stack_multi_columns_non_unique_index  s     ))Aq6C:*>?U4;;A>(((5**7==+A+A+CD	i
 	g0

7==#6#67IOO4
##MBr   z,vals1, vals2, dtype1, dtype2, expected_dtyperH   r   Int64Float64r   r   stringr  c           
        \        R\        WR7      R\        W$R7      /4      pVP                  VR7      pVP                  \        4      P                  VR7      P                  V4      p	\
        P                  ! W4       R# )rz   rR   r   Nrz   r<   )rz   r:   )r   r
   r#   rn   r  r%   r&   )
r(   vals1vals2dtype1dtype2expected_dtyper   r*   rA   rB   s
   &&&&&&&   r   .test_stack_multi_columns_mixed_extension_typesCTestDataFrameReshape.test_stack_multi_columns_mixed_extension_types  ss     &5&5
 |4IIf###>EEnU 	 	f/r   c           	         \         P                  ! . RORR.R7      p\        R \        P                  ! . RORR7      R\        P
                  ! . RO4      /VR7      pVP                  VR	7      pVP                  \        4      P                  VR	7      pV^ 8X  d+   VR,          P                  \        P                  4      VR&   M)VR
,          P                  \        P                  4      VR
&   \        VP                  P                  .^,          VP                  P                  .^,          ,           VP                  R7      p\         P"                  ! VP$                  V4       \         P&                  ! VP                  \        4      V4       R# )rz   r{   r5   r6   r   Nr#  rR   r;   rL  rz   r   )r0  r'  )r{   r<   )r   r<   Nrc   )rz   r{   )r   rh   r   r   r  r   r$   rn   r  r  NAr
   rz   rS   r{   r9   r%   r?   r/  r&   )r(   r   r8   r*   rA   rB   expected_dtypess   &&     r   "test_unstack_mixed_extension_types7TestDataFrameReshape.test_unstack_mixed_extension_types  s"   &&'EcSVZXRXXl':R^^O4 
 %(99V$,,5,9A:#+J#7#>#>ruu#EHZ !)(!3!:!:255!AHX TTZZL1

|a//v~~
 	v}}o>
fmmF3X>r   bazc                   \         P                  ! \        ^4      RR..RR.R7      p\        ^ ^.^^..VRR.R7      pR	VP                  n        \        . RO.\         P                  ! . RORR	.R7      R
7      pRVP                  n        VP                  4       P                  ^R7      P                  ^VR7      p\        P                  ! WT4       R# )r<   r   r   r   r5  r   r{   rz   r7   r   r   rA  )rB  r   N)r4   r<   r:   r   ))r   rz   )r   r{   )r   rz   )r   r{   )r   r>   r=   r   r9   r]   rh   r8   r$   	swaplevel
sort_indexr%   r&   )r(   r   r  r*   rB   rA   s   &&    r    test_unstack_swaplevel_sortlevel5TestDataFrameReshape.test_unstack_swaplevel_sortlevel  s     $$eAhc
%;E5>RAA'rC:F

N**@PU
 $''Q'/:::O
f/r   r  r   )r<   r<   r:   r:   ))r<   r4   )r<   r^   r:   r4   )r:   r^   )r   r   r   r   )r   r{   )r<   r<   r<   r<   r:   r:   r:   r:   ))r   r5   r<   )r   r5   r:   )r   r6   r<   )r   r6   r:   )r   r5   r<   )r   r5   r:   )r   r6   r<   )r   r6   r:   )Nr   r{   )      r|   	   r:   r_   r~   r  )r~   r  r<   r^   r	     r<  r=  r  )r  r  r  r  r   r<   r:   r4   )r   r<   r:   r^   rf   r   )r:   r4   r^   )r^   r4   r:   r<   r   )r4   r:   r<   r   )r^   r:   r<   r   )r:   r<   r   )r4   r:   r<   )r^   r4   r:   ra   )rn  r  r	  r<  r  r?  )r  r?  r	  r<  rn  r  r  )r   r   r:   r4   )A__name__
__module____qualname____firstlineno__r   markfilterwarningsr1   rC   rO   ru   r   r   r   r   r   r   parametrizer   rh   r   r   r   r   r  r  r  r   r)  r2  r   rM  r    r:  r>  rI  rI   rS  rZ  r^  ri  rr  r~  r   r=   r  r   permutationsr  r  r  r  r  r  r  r  r  r  r  r!  r-  r3  r9  __static_attributes____classdictcell____classdict__s   @r   r   r      s    [[C>>$ [[C00.	. [[C0000d&0P0,0,0< 0D02 [[H |\<H&&4S#J &&D,
 ")+CDq!f3'&&	 2		
!D0E!D0((T [[C

< [[C6
6
p [[C;
;
z& [[C004.6/1b [[XXa["((1+&YYq%ryyBd'CD	
++. [[C88A0 [[,+bffc1-=1~N-1~Q?OP	
00" [[VsCj%+%>?0 @00,K0& [[U^^$DE[[UDqN3! 4 F!: [[UI$:$:;P$QR[[UDqN3[[UUEN3;! 4 4 S;!z/+b+0'5R/.0 [[C [[FFFCCCFFF+	
4 [[Wr1a!Q!Q&@A4 B5<4B [[C00* [[C [[Y61 71 [[C [[Y6[[%[23%[23	
1 71& [[C	1	1 [[C [[	
CC [[C [[6Vc3Z)Y?VeU^WhA	
00  [[Wq!f-? .?. [[Wq%j10 20r   r   rS   r   r$  c                    \         P                  ! . RO4      pV ! \        P                  ! RR4      W!R7      pVP	                  ^ R	R
7      pV \
        J d   \         P                  ! RR.4      pMR R.p\        RR.RR..\         P                  ! RR.4      VVR7      p\        P                  ! WF4       VP	                  RR	R
7      pV \
        J d"   \        \        ^4      RR..^ ^ .^ ^..R7      pMRR.pVR8X  d   \        P                  M\        P                  p\        RV.VR.RV.VR..V\         P                  ! . RO4      VR7      p\        P                  ! WF4       VP	                  ^^.R	R
7      pV \
        J d(   \        \        ^4      RR.RR..^ ^ .^ ^.^ ^..R7      pM\         P                  ! RR.4      p\        RR.RR..R R.VVR7      p\        P                  ! WF4       R# )r  rT   r6   rG   r5   r  r   r   rW   Fr   sortrH          @r   )r8   r9   rS   r#  r$  r9   r8   rS   N))r  rT   r6   )r  rG   r5   )r  rT   r6   )r  rG   r5   )r   r  )r   r  )rT   r6   )rG   r5   ra   ))r  rT   )r  rG   )r  rT   )r  rG   )r   rh   r   r    r$   r   r%   r&   r=   r   r1  rI   )frame_or_seriesrS   r8   objrA   r   rB   items   &&      r   test_unstack_sort_falserU  2  s    ""TE "))C-U
HC[[qu[-F)#%11:z2JK!5>
sc3Z $$j*%=> 	H &+[[r[.F)#%!HsCj)1a&1a&1A
  :Y&255BFFD
ttSkC;s< $$D
 H &+[[1vE[2F)#%!HsCj3*5q!fq!fqRSf=U
 &11:z2JK
sc3Z en 	H &+r   zlevels2, expected_columnsvalue)idsc           	      ^   R R.p\         P                  ! W .RR.R7      p\        R. RO/VR7      pVP                  RRR7      p^ ^.^^.^^.^^..p\        \	        \        W4      4      \        R R.RR	7      \         P                  ! VR
R.R7      R7      p\        P                  ! WW4       R
# )r6   r5   level1level2r   rV  r;   FrN  r   Nr7   )r   r<   r:   r4   r^   r_   r|   r}   )
r   r>   r   r$   dictr  r   rh   r%   r&   )levels2r   levels1r8   r*   rA   r  rB   s   &&      r   test_unstack_sort_false_nanr^  m  s    0 CjG##W$6x>RSE	G56e	DBZZhUZ3FVaVaVaV4MS!12S#JX.&&'7h?OPH
 &+r   c                     \        . R
ORR7      p \        P                  ! . RO4      V n        V P	                  4       p\        R R \        P                  R .RRR\        P                  ./\        R4      \        R7      p\        P                  ! W4       V P	                  RR7      p\        R . ROR. RO/\        R4      \        R7      p\        P                  ! W4       R	# )r5   r6   r   r  rR   ry   rW   r   rU   Nr   r`   )r5   r   r5   )r6   r   r   )r
   r   rh   r8   r$   r   r   rI   r   r  r%   r&   )rq   rA   rB   s      r   test_unstack_fill_frame_objectr`    s    &h7D''8DJ
 \\^F	sBFFC #S"&&'9:5kH
 &+ \\S\)F	osO4DKvH &+r   c            
      n   \        R \        P                  ! RRR7      .RR.RR.RR./. ROR7      p V P                  RR.4      P	                  4       p\        \        P                  ! RRR7      R..\        R.RR7      \        R R.R..^ ^.^ ^ ..R	R.R
7      R7      p\        P                  ! W4       R	# )	timestampz2017-08-27 01:00:00.709949+0000UTC)tzr5   r6   r   r   r   Nr  r7   )rb  r5   r6   r   )	r   r   r   rk   r$   r   r   r%   r&   )r*   rA   rB   s      r   "test_unstack_timezone_aware_valuesre    s    	",,'HUST###		
 -
B \\3*%--/F
,,8U
CS	IJSE$ #&.q6Aq6"+
H &+r   r   c           	          \        R RRRR7      p\        RV/. R
OR7      pVP                  V R7      p\        V\	        . R
OR... RO. RO.R7      R7      p\
        P                  ! W44       R	# )r   2018010120180103zAmerica/New_York)r  startendrd  rz   r;   r   r#  Nr   rf   r   r   r   )r   r   r#   r
   r   r%   r?   )r   tsr*   rA   rB   s   &    r    test_stack_timezone_aware_valuesrm    sh     
JJCU	VB	C9O	4BXX<X0F
3% 8I@VWH 6,r   r  c                 @   \         P                  ! ^ 4      \         P                  ! ^ 4      .p\        \        P                  \        V. . .R7      R7      pV'       dn   V \        P                  JdZ   \        P                  ! \        RR7      ;_uu_ 4        \        \        P                  R7      P                  WR7       RRR4       R# \        \        P                  R7      P                  WR7      p\        P                  ! WC4       R#   + '       g   i     R# ; i)r   r#  )rS   r8   dropna must be unspecifiedrY   rR   r  N)r   
RangeIndexr
   r   r   r   r   r  r   r   r   r   r#   r%   r?   )r  r   r@   rB   rA   s   &&   r   test_stack_empty_framerq    s     mmAa 01FBJJjrSUh.WXHcnn4]]:-IJJBJJ'--V-W KJ ,22 3 
 	v0 KJJs   +DD	c                     V'       dn   V \         P                  JdZ   \        P                  ! \        R R7      ;_uu_ 4        \        \        P                  R7      P                  WR7       RRR4       R# TpVP                  4       P                  . WR7      p\        P                  ! WC4       \        4       p\        4       P                  . WR7      p\        P                  ! WC4       R#   + '       g   i     R# ; i)ro  rY   rR   r  Nr  )r   r  r   r   r   r   r   ro   r#   r   r%   r&   )r  r   	int_framerB   rA   s   &&&  r   test_stack_empty_levelrt    s     cnn4]]:-IJJBHH%++6+U KJ !''V ( 
 	f/;""F"V
f/ KJJs   +C,,C=	rV   c                    V'       d~   V \         P                  Jdj   \        P                  ! \        R R7      ;_uu_ 4        \        \        P                  R7      P                  WR7      P                  VR7       RRR4       R# \        \        P                  R7      P                  WR7      P                  VR7      p\        \        P                  R7      p\        P                  ! W44       R#   + '       g   i     R# ; i)ro  rY   rR   r  rU   N)r   r  r   r   r   r   r   ro   r#   r$   r%   r&   )r  rV   r   rA   rB   s   &&&  r   test_stack_unstack_empty_framerv    s    
 cnn4]]:-IJJBHH%++ , gg, KJ BHH%U&U<W
W+ 	
 288,
f/ KJJs   ;C22D	c                      R p \         P                  ! \        V R7      ;_uu_ 4        \        \        P
                  R7      P                  4        RRR4       R#   + '       g   i     R# ; i)z'index must be a MultiIndex to unstack.*rY   rR   N)r   r   r   r
   r   ro   r$   )rr   s    r    test_unstack_single_index_seriesrx    s<    
4C	z	-	-RXX&&( 
.	-	-	-s   )AA+	c                     \        R RR.RR^.RRR.R^ ^ .R	R
R./4      p V P                  . RO4      p V P                  R	.^ R7      p V P                  R^ R7      P                  R^ R7      pV P                  RR.^ R7      p\        . RO. RO.\        RR.R R7      \        P
                  ! . RO. ROR7      R7      p\        P                  ! W!4       R# )r]   AliceBobscore      #@employedFTkidsgenderfemalemalerU   r   Nr   r7   )r]   r~  r  r  )r}  rl  rl  rl  )rl  rl  rl  g       @))r|  r  Fr   )r|  r  Tr   )r|  r  Fr   )r|  r  Tr   )Nr  r~  r  )r   rk   r$   r   r   rh   r%   r&   )r*   rB   rA   s      r   test_unstacking_multi_index_dfr    s    	We$c1XQFx(	

B 
<	=B	XJ1	-Bzz*z3;;Fq;QHZZV,Z;F	34We$62&& 7
H &+r   c                 :   \         P                  ! RR.RR.R7      p\        . RO.VR7      pVP                  ^ V R7      p\	        RR.RR7      p\        \        ^4      R R..^ ^ .^ ^..RR.R	7      p\        ^^.^^..WTR
7      p\        P                  ! W64       R# )rF   rG   rT   r5   r   r   r   r   Nr  r7   )rF   rG   )rG   rT   r<   r<   r<   r<   )r   r>   r   r#   r   r=   r%   r&   )r   r9   r*   rA   new_columnsr  rB   s   &      r   2test_stack_positional_level_duplicate_column_namesr  ,  s     %%z:&>sCjQG	L>7	3BXXalX3Fc
-Ka3*%q!fq!f-=dC[I 1a&1a&)PH&+r   c                     \         P                  ! \        ^4      . RO.4      p \        ^ \        P
                  P                  ^4      P                  ^4      ^\        P
                  P                  ^4      P                  ^4      P                  \        P                  4      ^\        P
                  P                  ^4      P                  ^4      ^\        P
                  P                  ^4      P                  ^4      /V R7      p\        ;QJ d0    R VP                  P                   4       F  '       g   K   RM%	  RM!! R VP                  P                   4       4      '       g   Q hVP                  4       p\        P                  ! \        ^4       Uu. uF  q1V,          P                  4       NK  	  up\        ^4      ^R7      p\         P"                  ! W$4       R# u upi )r_   r;   c              3   V   "   T F  qP                   P                  '       * x  K!  	  R # 5ir   )mgr_locsis_slice_like).0rF   s   & r   	<genexpr>5test_unstack_non_slice_like_blocks.<locals>.<genexpr>I  s     D^::++++^s   ')TF)keysrB  NrC  )r   r>   r=   r   r   r   r   r   rn   ro   anyrK   rL   r$   r   concatr%   r&   )r  r*   rN   nrB   s        r   "test_unstack_non_slice_like_blocksr  <  sE    
	 	 %(O!<	=B	ryy$$Q'77;ryy$$Q'77;BB288Lryy$$Q'77;ryy$$Q'77;		
 
B 3DRWW^^D333DRWW^^DDDDD
**,Cyy58<8aQ%--/8<58RSTH#( =s   G!c                    . RO. RO^^\         P                  \         P                  ..p\        V\        RR.RR... RO. RO.R7      R	7      pV '       d   / MR
R/pVP                  ! RR^ RV /VB pV '       dU   \        RRRRRR\         P                  .RRRRRR\         P                  ./\        P
                  ! . RO. RO.4      R7      pM/\        R. ROR. RO/\        P
                  ! . RO. RO.4      R7      p\        P                  ! WE4       \        V\        P
                  ! . RO. RO.4      R	7      pV '       d   / MR
R/pVP                  ! RR^ RV /VB p\        P                  ! WE4       R# )r<   rH   r   r   r{   rz   rF   rG   r#  r   rO  Fr   r   r   rP  r;   N)r<   r:   rH   r   )r:   r4   r   r   r  r  r  )r   r   r<   r<   r:   r:   )r{   rz   r{   rz   r{   rz   )r   rH   rP  r   rH   )rP  r   rH   r   r   )r   r   r<   r<   r:   )r{   rz   r{   rz   r{   )r{   r{   rz   rz   )rF   rG   rF   rG   )r   rI   r   r   r#   r  r%   r&   )r   rq   r*   kwargsrA   rB   s   &     r   test_stack_sort_falser  Q  si    .Arvvrvv0FGD	#Jc
+L,3O

B  Rfe_FXXCACLCFCFc3S#rvv6c3S#rvv6 ((#%CD
 +S2KL((/;T)UV
 &+ 
&&(<>R'ST
B  Rfe_FXXCACLCFCF&+r   c                 &   \         P                  ! RR.4      p\        RR.RR..RR.VR7      pV '       d   / MRR	/pVP                  ! ^ ^.3R
V /VB p\         P                  ! . RO4      p\	        . ROVR7      p\
        P                  ! WF4       R# )weightr   rP  rH   r   r   r   r7   rO  Fr   r;   N)r  kg)heightm))r   r  r  )r   r  r  )r   r  r  )r   r  r  )r   rP  rH   r   )r   rh   r   r#   r
   r%   r?   )r   r   r*   r  rA   r   rB   s   &      r   !test_stack_sort_false_multi_levelr  x  s     
 
 "2O!D
EC	S#Jc
+E5>3	OBRfe_FXXq!fB<B6BF++	
N *.AH6,r   c                   l
  a  ] tR tRt o R t]P                  P                  R. R9O. R:O.. R;O^. R<O3. R=O. R>O.. R?O^. R@O3. R=O. RAO.. R?OR. R@O3.4      R 4       tR t	]P                  P                  R4      R 4       t]P                  P                  R4      ]P                  P                  R	]! R
4      ]! RR.RR..]P                  ! ]P                   ! ^4      P#                  ^4      ^4      ]P                  ! . RBO^4      .R7      .]P$                  ! RC4      ]! RR.^^.RR..]P                  ! ]P                   ! ^4      P#                  ^4      ^4      ]P"                  ! . RDO. REO4      ]P                  ! . RBO^4      .R7      ..4      R 4       4       t]P                  P                  R4      R 4       t]P                  P                  R4      R 4       t]P                  P                  R4      R 4       t]P                  P                  R4      R 4       t]P                  P                  R4      ]P                  P                  RRR.4      R 4       4       tR t]P                  P                  R4      R 4       t]P                  P                  R4      R 4       t]P                  P                  R4      R 4       t]P                  P                  R4      R 4       tR tR t]P                  P                  R4      R  4       t ]P                  P                  R4      R! 4       t!R" t"R# t#]P                  P                  R4      R$ 4       t$]P                  PJ                  R% 4       t&]P                  P                  R4      ]P                  P                  R&]'PP                  PS                  R' RF 4       4      4      ]P                  P                  R(]*! ^4      4      R) 4       4       4       t+]P                  P                  R4      R* 4       t,]P                  P                  R4      R+ 4       t-]P                  P                  R4      R, 4       t.R- t/]P                  P                  R4      R. 4       t0R/ t1R0 t2]P                  P                  R4      R1 4       t3]P                  P                  R4      R2 4       t4]P                  P                  R4      R3 4       t5R4 t6]P                  P                  R4      R5 4       t7]P                  P                  R4      R6 4       t8R7 t9R8t:V t;R# )GTestStackUnstackMultiLeveli  c                    TpVP                  4       pVP                  4        VP                  \        4      P                  4        VP                  \        P                  4      P                  4        R # r   )r$   rn   r  r   r   )r(   /multiindex_year_month_day_dataframe_random_dataymdr-   s   &&  r   test_unstack'TestStackUnstackMultiLevel.test_unstack  sO    =KKM	 	

3! 	

288$$&r   z5result_rows,result_columns,index_product,expected_rowNc           	     *   \        WR 7      P                  RR.4      pVP                  R,          P                  R4      p\        V.\        P
                  ! VR,          V..RR.R7      \        ^.RR7      R7      p\        P                  ! WV4       R# )	r   ix1ix2:r<   r:   N:r:   NNNr   r   r   )	r   rk   r7  r$   r   r>   r   r%   r&   )r(   result_rowsresult_columnsindex_productexpected_rowrA   rB   s   &&&&&  r   test_unstack_partial/TestStackUnstackMultiLevel.test_unstack_partial  s    < ;?IIEN
 S!))%0N++#m_5dE] %(
 	f/r   c                    \         P                  ! . RO4      p\        \        P                  P                  ^4      P                  ^4      VR7      pVP                  ^^.4      pVP                  ^RR7      p\        P                  ! W44       R# )r   r;   rE  rB  howN))r   r   r   )r   r   r   )r<   r5  r<   )r<   quxr<   )r   rh   r
   r   r   r   r   r$   r  r%   r&   )r(   r8   rt   r-   rB   s   &    r   &test_unstack_multiple_no_empty_columnsATestStackUnstackMultiLevel.test_unstack_multiple_no_empty_columns  sr    &&H
 299((+;;A>eLIIq!f%	###6
i2r   r   c                ^   TpVP                  4       pVP                  VR 7      pV'       d   VP                  RR7      p\        P                  ! WS4       VP                  ^R7      pVP                  ^4      pVP                  VR 7      pV'       d   VP                  RR7      p\        P                  ! VP                  ^ R7      V4       VRRR1,          pVP                  ^4      pVP                  VR 7      P                  ^^4      pV'       d   VP                  RR7      p\        P                  ! VP                  ^ R7      V4       VP                  ^ ^4      pVP                  ^ 4      P                  ^ ^^R7      pVP                  ^ VR 7      P                  ^^4      pV'       d   VP                  RR7      p\        P                  ! VP                  ^ R7      V4       VP                  4       pVP                  VR 7      pV'       d   VP                  RR7      p\        P                  ! WS4       VP                  ^4      P                  ^4      pVP                  ^VR 7      pVP                  4       p\        P                  ! Wx4       VP                  ^VR 7      pVP                  ^4      p\        P                  ! Wx4       VP                  ^ VR 7      pVP                  VR 7      P                  ^4      P                  ^4      p\        P                  ! Wx4       VP                  ^4      P                  R,          pVP                  VR 7      P                  VR 7      p	VP                  VR 7      p
V'       d%   V	P                  RR7      p	V
P                  RR7      p
\        P                  ! WP                  V	P                  4      4       VP                  ^ 4      P                  RVR 7      pVP                  ^ 4      P                  ^ VR 7      p\        P                  ! Wx4       R# )	r   rE  r  rL  NrA  ra   )r   :NNr4   r   )r$   r#   r  r%   r&   r8  r7  rp   r?   reindexr8   assert_equal)r(   r  r   r  r-   	restackedunlexsortedrA   rB   r+   ymd_stackeds   &&&        r   
test_stack%TestStackUnstackMultiLevel.test_stack  sx    > KKM	OOO>	!((U(3I
i-nn1n-''*	OOO>	!((U(3I
i222;SA!$B$'''*	OOO>HHAN	!((U(3I
i222;SA!++Aq1''*44Q4B	OOALOAKKAqQ	!((U(3I
i222;SA KKM	OOO>	!((U(3I
i- KKN**1-	>;;=
f/>;;q>
f/>99,97??BJJ1M
f/ KKN&&v.	//|/<BB% C 
 ii\i:nnn/G%,,,7K
w(;(;GMM(JK Q%%b|%D;;q>'''E
)r   zidx, exp_idxababr5   r6   r  r  r#  c                P   \        \        P                  ! ^4      P                  ^^4      V. ROR7      pV'       dD   Rp\        P
                  ! \        VR7      ;_uu_ 4        VP                  VR7       RRR4       R# VP                  VR7      p\        \        P                  ! ^4      VR7      p\        P                  ! Wg4       VP                  P                  RJ g   Q hVP                  VP                  r\        P                  ! W4       R#   + '       g   i     R# ; i)	r	  r7   z8Columns with duplicate values are not supported in stackrY   r   Nr;   F)r  r  r  )r   r   r    r   r   r   r   r#   r
   r%   r?   r8   	is_uniqueassert_index_equal)
r(   r   exp_idxr   r*   rr   rA   rB   liris
   &&&&      r   test_stack_duplicate_index5TestStackUnstackMultiLevel.test_stack_duplicate_index  s    8 IIbM!!!Q')

 LCz55l3 65 XX<X8Fbiim7;H""64<<))U222\\8>>!!") 655s   #DD%	c           
     X   \         P                  ! R .^,          R.^,          ,           R.^,          ,           R.^,          ,           R.^,          R.^,          ,           R.^,          ,           R.^,          ,           RR.^,          . RO,           .. ROR7      p\        R	\        P                  ! ^R
R7      R\        P                  ! ^R
R7      /VR7      pVP                  ^4      pVP                  VR7      pV'       d   VP                  RR7      p\        P                  ! WS4       R# )FriSatSunThuDinnerLunchNoYesr   r  r   rR   rJ   r;   r   rE  r  N)r  r  r  )daytimesmoker)
r   r  r   r   r    r$   r#   r  r%   r&   )r(   r   r  r*   rA   reconss   &&    r   test_unstack_odd_failure3TestStackUnstackMultiLevel.test_unstack_odd_failureK  s     ##!ugk)UGaK75'A+E
Q'Q.(a?7)a-Ou!$77
 ,
 ryy95ryy95 
 A<8]]u]-F
f)r   c                t   TpVP                   pR VR&   VP                  ^^R7      pVP                  VR7      pVR ,          P                  VR7      P                  4       p\        P                  ! VR ,          VRR7       VP
                  e   Q hVR,          P                  \        P                  8X  g   Q hR# )r   )r   rB  r   Fr   Nr   )r   four)	r'   r8  r#   r%   r?   r]   rS   r   r   )r(    multiindex_dataframe_random_datar   framer*   r+   rA   s   &&&    r   test_stack_mixed_dtype1TestStackUnstackMultiLevel.test_stack_mixed_dtypeg  s     1WW!=]]]+(((5El;FFH
wu~v5I{{"""u~##rzz111r   c                |   \        R . ROR. R	OR. R
OR. ROR\        P                  ! R4      /4      pVP                  . RO4      P	                  \
        4      pVP                  4       pVP                  VR7      p\        P                  ! WSP                  VP                  4      P                  \        4      4       R# )r   r   barcoder  extrag      @r   N)naiver  r  activer  r  )r5   r6   r6   r6   r5   r5   )r<   r:   r4   r^   r<   r4   )hir  byer  r  peace)r   r   r  r  )r   r   r    groupbyr  rJ   r$   r#   r%   r?   r  r8   rn   rj   )r(   r   r*   rA   r-   r  s   &&    r   test_unstack_bug+TestStackUnstackMultiLevel.test_unstack_bugw  s     R5-?3
 <=CCCHNN$	OOO>	
y..*I*P*PQV*WXr   c                (   TpVP                  4       pVP                  P                  R 8X  g   Q hVP                  P                  RR.8X  g   Q hVP                  VR7      pVP                  P                  VP                  P                  8X  g   Q hR# )r  r   r  r   N)r$   r8   r]   r9   rm   r#   )r(   r  r   r  r-   r  s   &&&   r   !test_stack_unstack_preserve_names<TestStackUnstackMultiLevel.test_stack_unstack_preserve_names  s}     1MMO	##w...  &&5(*;;;;OOO>	$$(9(9999r   methodr#   r$   c                   TpVP                   R ,          pVR8X  d   RV/M/ p\        P                  ! \        RR7      ;_uu_ 4        \	        WQ4      ! R/ VB  RRR4       VR8X  dT   VP
                  R,          p\        P                  ! \        RR7      ;_uu_ 4        \	        Wq4      ! R/ VB  RRR4       R# R#   + '       g   i     Ll; i  + '       g   i     R# ; i)	r   r#   r   zdoes not match index namerY   Nr$   )mistake)r   r   )rp   r   r   KeyErrorgetattrr7  )r(   r  r  r   r  r*   r  rt   s   &&&&    r   #test_stack_unstack_wrong_level_name>TestStackUnstackMultiLevel.test_stack_unstack_wrong_level_name  s     1 YYu39W3D.,/"]]8+FGGB4V4 H YAx/JKK"77 LK  HG LKKs   B=C=C	C!	c                |    TpVP                  R 4      pVP                  ^R7      p\        P                  ! W44       R# )r  rL  Nr   )r(   r  r  rA   rB   s   &&   r   test_unstack_level_name2TestStackUnstackMultiLevel.test_unstack_level_name  s3    0x(==q=)
f/r   c                6   TpVP                  R 4      pVP                  RVR7      pVP                  4       P                  ^ VR7      p\        P                  ! WV4       VP                  RVR7      pVP                  VR7      p\        P                  ! WV4       R# )r  r   r   N)r$   r#   r%   r&   r?   )r(   r  r   r  r-   rA   rB   s   &&&    r   test_stack_level_name0TestStackUnstackMultiLevel.test_stack_level_name  s     1MM(+	\B==?(((F
f/U>;;L;9
v0r   c                f   TpVP                  R R.4      pVP                  R 4      P                  R4      p\        P                  ! WE4       VP                  P                  VP                  P                  8X  g   Q hVR,          pVP                  R R.4      p\        P                  ! WuR,          4       VP                  R R.VR7      pV'       d   VP                  RR7      pVP                  ^ ^4      P                  ^^4      pVP                  ^ R7      p\        P                  ! W4       VP                  P                  VP                  P                  8X  g   Q hVP                  ^^.4      pVP                  ^4      P                  ^4      P                  ^RR7      p\        P                  ! WE4       VP                  ^^.4      pVP                  ^4      P                  ^4      P                  ^RR7      p\        P                  ! WEP                  RVP                  3,          4       R	# )
yearmonthrz   r   rE  r  rL  r  r   N)r$   r%   r&   r9   rm   r#   r  r7  r8  r8   rp   )	r(   r  r   r  r-   rB   rt   s_unstackedr  s	   &&&      r   test_stack_unstack_multiple6TestStackUnstackMultiLevel.test_stack_unstack_multiple  s    >KK 12	;;v&..w7
i2  &&(*:*:*@*@@@@ Hii 12
kC=9OOVW$5LOQ	!((U(3I''1-771=	((q(1	
i-$$		777 KKA'	;;q>))!,333F
i2KKA'	;;q>))!,333F
ia9J9J6J)KLr   c                    TpVP                  R R.4      p\        P                  ! \        RR7      ;_uu_ 4        VP	                  ^ R.VR7       RRR4       R#   + '       g   i     R# ; i)r  r  zlevel should containrY   r   N)r$   r   r   r   r#   r(   r  r   r  r-   s   &&&  r   test_stack_names_and_numbers7TestStackUnstackMultiLevel.test_stack_names_and_numbers  sT     >KK 12	 ]]:-CDDOOQL|OD EDDDs   AA+	c                   TpVP                  R R.4      p\        P                  ! \        RR7      ;_uu_ 4        VP	                  ^^.VR7       RRR4       \        P                  ! \        RR7      ;_uu_ 4        VP	                  RR.VR7       RRR4       R#   + '       g   i     LT; i  + '       g   i     R# ; i)	r  r  zToo many levelsrY   r   Nznot a valid level numberrv  ru  )r$   r   r   
IndexErrorr#   r  s   &&&  r   !test_stack_multiple_out_of_bounds<TestStackUnstackMultiLevel.test_stack_multiple_out_of_bounds  s     >KK 12	]]:->??OOQFO> @]]:-GHHOORH<O@ IH @?HHHs   B<B/B,	/C 	c           
        \         P                  ! . RORRR7      p\        RR.^,          RR7      p. ROp\        P                  ! W.4      p\        W4R7      pVP                  4       pVP                  ^R	7      pVP                  ^ R	7      p\         P                  ! . RORRR7      p	\        R. ROR. RO/V	RR.R
7      p
RV
P                  n	        \        P                  ! Wj4       \        P                  ! Wz4       \        P                  ! WP                  4       \         P                  ! . RORRR7      p\         P                  ! . RORRR7      p\        P                  ! W.4      p\        W4R7      pVP                  4       pVP                  ^R	7      pVP                  ^ R	7      p\         P                  ! . RORRR7      p	\         P                  ! . RORRR7      p\        \        P                  \        P                  \        P                  \        P                  ^^.\        P                  \        P                  ^^\        P                  \        P                  .^^\        P                  \        P                  \        P                  \        P                  ..V	VR
7      p
\        P                  ! Wj4       \        P                  ! Wz4       \        P                  ! WP                  4       R# )2013-01Mperiodr  r]   rz   r{   strr   r;   rL  r7   period1period2N)r  r  2013-02r  2013-03r  r<   r:   r4   r^   r_   r|   )r  r  r  )r<   r4   r_   )r:   r^   r|   )2013-122013-112013-102013-092013-082013-07)r  r  r  r  r  r  )r   PeriodIndexr   r   r  r
   r$   r   r9   r]   r%   r&   r'   r   rI   )r(   idx1idx2rV  r   rt   result1result2result3e_idxrB   e_colss   &           r   test_unstack_period_series5TestStackUnstackMultiLevel.test_unstack_period_series	  s>   ~~N

 c3Z!^%0"$$d\25$))+))!)$))!)$-Ch
 )S),EC:
 !&
g0
g0
gzz2~~N
 ~~N

 $$d\25$))+))!)$))!)$-Ci
 N

 A6Arvvrvv6Arvvrvvrvvrvv6
 
 	g0
g0
gzz2r   c                z   \         P                  ! . RORRR7      p\         P                  ! . RORRR7      pR. ROR. RO/p\        P                  ! W.4      p\	        W4R7      pVP                  4       pVP                  ^R	7      pVP                  ^ R	7      p\         P                  ! R R.RRR7      p	\         P                  ! . RORRR7      p
\        P                  ! R
P                  4       V
.4      p\	        . RO. RO.WR7      p\        P                  ! Wl4       \        P                  ! W|4       \         P                  ! . RORRR7      p	\         P                  ! . RORRR7      p
\        P                  ! RP                  4       V	.4      p\	        . RO. RO. RO.WR7      p\        P                  ! W4       R# )2014-012014-02r  r	  r  r
  rz   r{   r;   rL  zA A A B B Br7   zA A B BN)r  r   r   r   r  r  )r  r  r   r  r  r   r  )r|   r_   r^   r4   r:   r<   )r  r  r   r  r  r   )r_   r<   r|   r:   r|   r<   )r^   r:   r4   r4   r_   r^   )r  r   r  r   )r  r  r   )r_   r^   r:   r4   )r<   r:   r|   r_   )r|   r4   r<   r^   )	r   r  r   r  r   r$   r  r%   r&   )r(   r  r  rV  r   r*   r  r  r  e_1e_2r  rB   s   &            r   test_unstack_period_frame4TestStackUnstackMultiLevel.test_unstack_period_frameN  s|   ~~N

 ~~N

 (#/AB$$d\2u(**,**1*%**1*%nni3#INnnN

 '')<)<)>(DE!34C
 	g0
g0nn8s
 nn-Ci
 ''):C(@A<6c
 	g0r   c           
        ^.^,          ^.^,          ,           pR.^,          R.^,          ,           p\         P                  ! . RO^,          4      p\        P                  P	                  ^4      P                  ^ ^d^4      p\        RVRVRVRV/4      pVP                  RR.4      pRVP                  n	        VP                  R4      p	\        P                  ! R4      p
V'       d   R	p
\        P                  ! \        V
R
7      ;_uu_ 4        V	P!                  R4      P#                  4        RRR4       V	P!                  R4      P#                  RR7      pVP%                  RVR7      pV	P&                  RR.3,          P!                  R4      P#                  4       P%                  RVR7      pRVP                  n	        \(        P*                  ! W4       R#   + '       g   i     L; i)r<   r5   r6   IDNAMEDATEVAR1Paramsz&agg function failed [how->mean,dtype->z-dtype 'str' does not support operation 'mean'rY   zW-THUNT)numeric_onlyr   r   )z
2013-01-03z
2013-01-04z
2013-01-05)r   to_datetimer   r   r   integersr   rk   r9   r]   r$   reescaper   r   r   resamplemeanr#   rp   r%   r&   )r(   r   r1  id_colr]   datevar1r*   multiunstrr   downr  r  s   &&&           r   test_stack_multiple_bug2TestStackUnstackMultiLevel.test_stack_multiple_bug}  sx   
 #'qcAg&	seai(~~H1LMyy$$Q'00C;ffdFD&$OPfd^,%}}T"ii@AAC]]9C00MM'"'') 1}}W%***=ZZ<Z8HHQ[!XgTVU4lU3	 	 #


b% 10s    GG'	c           	        \        R RR.RRR.R^^./4      pVP                  R R.4      pV'       g   RM\        P                  pVP	                  4       P                  W1R7      p\        V4      \        VP                  4       4      8  g   Q hV'       dQ   \        P                  ! \        R	R
7      ;_uu_ 4        VP	                  4       P                  RVR7       RRR4       R# VP	                  4       P                  RVR7      p\        P                  ! WDP                  4       4       R#   + '       g   i     R# ; i)rz   a1a2r{   b1b2r   Fr  ro  rY   TN)r   rk   r   r  r$   r#   rJ   r  r   r   r   r%   r&   )r(   r   r*   r  r+   s   &&   r   test_stack_dropna,TestStackUnstackMultiLevel.test_stack_dropna  s    
 dD\3tcAq6JK\\3*%***,$$F$N7|c'.."23333z1MNN

""$\"J ON jjl((<(PG!!'>>+;<	 ONNs   :"D--D>	c                    \        . RO. RO. R	O.. R
O. RO.R7      p. ROVP                  n        RR.VP                  n        VP	                  RR.4       R# )r   r7   r6   r   r   r   N)r   r   r   r   r<   r<   r<   r<   )r   r   r<   r<   r   r   r<   r<   r   r<   r   r<   r   r<   r   r<   r  r  r   )r   r8   rm   r9   r$   )r(   r   r*   s   && r   "test_unstack_multiple_hierarchical=TestStackUnstackMultiLevel.test_unstack_multiple_hierarchical  sS    (((
 "<0
 ):

 	

C:r   c                   R p\        R\        P                  P                  ^4      P	                  ^dVR7      R\        P                  P                  ^4      P	                  RVR7      R\        P                  P                  ^4      P	                  R^VR7      R\        P                  P                  ^4      P	                  R^VR7      R\        P                  P                  ^4      P	                  RVR7      R	\        P                  P                  ^4      P                  V4      /4      pVP                  . RO4      pVP                  R4       R
# )  rz   )sizer{   i,  r   r   r   i  r   Nii)rz   r{   r   r   r   )r   r   r   r   r-  r   rk   r$   )r(   NUM_ROWSr*   idfs   &   r   test_unstack_sparse_keyspace7TestStackUnstackMultiLevel.test_unstack_sparse_keyspace  s    RYY**1-66s6JRYY**1-66s6JRYY**1-66r186LRYY**1-66sBX6NRYY**1-66t(6KRYY**1-==hG	
 ll45 	Cr   c                V   ^ ^.. RO.p. RO. RO.p\        W#4      p\        \        P                  P	                  ^4      P                  R4      VR7      pVP                  4       p\        VP                  4      ^8X  g   Q hVP                  VR7      p\        P                  ! Wu4       R# )r   r;   r   Nr@  r  rD  )r^   r:   )r   r   r   r   r   r   r$   rJ   r9   r#   r%   r&   )r(   r   r@   r  r8   r*   rA   r  s   &&      r   test_unstack_unobserved_keys7TestStackUnstackMultiLevel.test_unstack_unobserved_keys  s    
 a&,'|,6)ryy,,Q/??GuU6>>"a'''<8
f)r   c                    ! R  R\         P                  4      pVP                  4       ;_uu_ 4       pVP                  \         RV4       \	        \
        P                  ! R	4      \
        P                  ! R4      \
        P                  ! R4      .R7      pRp\        P                  ! WR7      ;_uu_ 4        \        P                  ! \        RR7      ;_uu_ 4        VP                  4        RRR4       RRR4       RRR4       R#   + '       g   i     L"; i  + '       g   i     L-; i  + '       g   i     R# ; i)
c                   P   a a ] tR tRt oV3R lV 3R lltV3R lR ltRtVtV ;t# )gTestStackUnstackMultiLevel.test_unstack_number_of_levels_larger_than_int32_warns.<locals>.MockUnstackeri  c                   < V ^8  d   QhRR/# r:   returnNr  )formatrL  s   "r   __annotate__tTestStackUnstackMultiLevel.test_unstack_number_of_levels_larger_than_int32_warns.<locals>.MockUnstacker.__annotate__  s     ? ?4 ?r   c                :   < \         SV `  ! V/ VB  \        R 4      h)Don't compute final result.)super__init__	Exception)r(   argsr  	__class__s   &*,r   r[  pTestStackUnstackMultiLevel.test_unstack_number_of_levels_larger_than_int32_warns.<locals>.MockUnstacker.__init__  s!     $1&1 =>>r   c                   < V ^8  d   QhRR/# rS  r  )rU  rL  s   "r   rV  rW    s       r   c                    R # r   r  )r(   s   &r   _make_selectorswTestStackUnstackMultiLevel.test_unstack_number_of_levels_larger_than_int32_warns.<locals>.MockUnstacker._make_selectors  s    r   r  )	rA  rB  rC  rD  r[  rb  rI  rJ  __classcell__)r^  rL  s   @@r   MockUnstackerrQ    s     ? ?
  r   re  
_Unstackerr;   z$The following operation may generaterY   rY  N   )rg  r:   )reshape_librf  contextsetattrr   r   rM  r    r%   ri   r   r   r\  r$   )r(   performance_warningmonkeypatchre  r  r*   rr   s   &&&    r   5test_unstack_number_of_levels_larger_than_int32_warnsPTestStackUnstackMultiLevel.test_unstack_number_of_levels_larger_than_int32_warns  s    	K22 	   ""aIIk<?$yy'5)9:B 9C++,?KK]]94QRRJJL S L #" SR LK #""s<   BD,6%D	D,D	4D,DD	D)$D,,D=	r@   c              #     "   T F4  p\         P                  ! \         P                  ! . ROV4      ^R7      x  K6  	  R# 5i)r   r   Nrf   )r   r   rH  )r  widths   & r   r  $TestStackUnstackMultiLevel.<genexpr>	  s4      &
 i44YFqQQs   <>	stack_levc                   \        V. RO. RO.R7      p\        V\        ^4      .R7      pV'       d   / MRV/pVP                  ! V3RV/VB pVP                   F`  p	VP
                   FM  p
VP                  W3,          pWV,          3pV
^V,
          ,          pVP                  W3,          pW8X  d   KM  Q h	  Kb  	  R# )r   r#  )r9   rq   rO  r   Nr  r  )r   r   r=   r#   r8   r9   rp   )r(   r@   rr  rO  r   r9   r*   r  
df_stackedrowr  rB   
result_row
result_colrA   s   &&&&&          r   %test_stack_order_with_unsorted_levels@TestStackUnstackMultiLevel.test_stack_order_with_unsorted_levels 	  s      F<2NOweAhZ8#&$XXiMlMfM
88Czz66#(+ i.0
 Y/
#
(>?))) " r   c           
       aa \        . RO. RO.\        P                  ! \        ^4      ^4      \        P                  ! \        ^4      ^4      .R7      p\        V\        ^4      \        P                  ! ^\        V4      ,          4      P                  ^R	4      R7      o\        ;QJ d*    VV3R lSP                   4       F  '       d   K   RM	  RM! VV3R lSP                   4       4      '       g   Q hR# )
rz   r#  )r9   r8   rq   c              3      <"   T Fb  pSP                    FO  pSP                  W3,          SP                  ^ SR7      P                  W^ ,          3V^,          3,          8H  x  KQ  	  Kd  	  R# 5i)r   r   N)r9   rp   r#   )r  ru  r  r*   r   s   &  r   r  ]TestStackUnstackMultiLevel.test_stack_order_with_unsorted_levels_multi_row.<locals>.<genexpr>*	  si      
  zz FF38xxx5993A-Q:OPQ "Qs   A*A-FTN)rz   r   r{   )r{   rz   r   ra   )r   r   r   r=   tiler   r    rJ   r   rE  r8   )r(   r   r  r*   s   &f @r   /test_stack_order_with_unsorted_levels_multi_rowJTestStackUnstackMultiLevel.test_stack_order_with_unsorted_levels_multi_row	  s     #_599U1Xq)27758Q+?@
 eAhRYYq3r7{-C-K-KAr-R
 s 
 xx
sss 
 xx
 
 
 	
 
r   c                6   Rp^p\        V. R	O. R
O.R7      p\        V\        ^4      .. ROR7      pV'       d   / MRR/pVP                  ! V3RV/VB p\        . RO^ ^... RO. RO.R7      p\        ^ . RO^. RO/VR7      p	\        P
                  ! Wy4       R# )r   r#  )r9   rq   r8   rO  Tr   r;   N)r   r<   )r<   r   r  r  )r<   r   r:   r4   r@  )r<   r<   r   r   r:   r:   r4   r4   )r<   r   r<   r   r<   r   r<   r   rB  )r:   r4   r:   r4   r:   r4   r:   r4   )r   r   r=   r#   r%   r&   )
r(   r   r@   rr  r9   r*   r  rA   r   rB   s
   &&        r   1test_stack_order_with_unsorted_levels_multi_row_2LTestStackUnstackMultiLevel.test_stack_order_with_unsorted_levels_multi_row_21	  s    
 "	F<2NOweAhZ|L#&$)I,I&I# 1a&)+-EF
 ++ !
 	f/r   c           	        \         P                  ! ^4      p\         P                  ! V Uu. uF  pRV 2NK
  	  upV Uu. uF  pRV 2NK
  	  up.4      p\        VP                  RR.R7      pRVP
                  n        RV/p\        P                  ! V^R7      pRR.VP
                  n	        VP                  \        VP
                  4      ^R7      pVP                  RR.VR7      P                  RR.4      p\        R	R
.RR.RR.RR.RR..\        ^4      \        P                   ! RR.RR.R7      R7      p	\"        P$                  ! W4       R# u upi u upi )r_   r6   r5   r   r  rF   rA  r  r   a0b0r;  r=  r<  r>  a3b3a4b4r   r7   N)r5   rF   )r6   rF   )r   r    vstackr   r'   r9   r]   r   r  rm   r  r  r#   r$   r=   r   rh   r%   r&   )
r(   r   r   rF   rq   r*   second_level_dictmulti_level_dfrA   rB   s
   &&        r   'test_stack_unstack_unordered_multiindexBTestStackUnstackMultiLevel.test_stack_unstack_unordered_multiindexI	  sW   
 1yy"()&Q1QC&)"()&Q1QC&)
 tvvSz2!

 "I#41=(0'':$##F>+A+A$B#K7H-LIQQh
 D\D$<$d|dD\R(**Z((0C
 	f/) *)s
   EE
c                D   TpR VR&   ^VR&   VP                  R4      pVR,          P                  \        P                  8X  g   Q hV'       g*   VR,          P                  \        P                  8X  g    Q h VR,          P                  \        P                  8X  g   Q hR# )r   r   r   r  Nr'  )r   r<   )r   r<   )r$   rS   r   r   object_)r(   r  r1  r  r-   s   &&&  r   test_unstack_preserve_types6TestStackUnstackMultiLevel.test_unstack_preserve_typesg	  s     >CCKK(	 &&"**444 & f##rzz1	
 &&"**444r   c                   \         P                  ! \         P                  ! R 4      ^4      p\         P                  ! R 4      p\        V.^,          ^ ^..,           V.^,          \         P                  ! ^4      P	                  R 4      .,           R7      p\        \         P                  ! R4      VR7      pVP                  4       pVP                  R8X  g   Q hVP                  VR7      p\        P                  ! WWP                  VP                  4      4       \        ^ ^..V.^,          ,           \         P                  ! ^4      P	                  R 4      .V.^,          ,           R7      p\        \         P                  ! R4      VR7      pVP                  ^ 4      pVP                  R8X  g   Q h\        V.^,          ^ ^..,           V.^,          ,           V.^,          \         P                  ! ^4      P	                  R 4      .,           V.^,          ,           R7      p\        \         P                  ! R4      VR7      pVP                  ^4      pVP                  R8X  g   Q hR# )  r#  rF  r;   r   N)r  r:   )r   r}  r    r   r   r
   r$   r"   r#   r%   r?   r  r8   )r(   r   r  r   r8   rt   rA   r+   s   &&      r   !test_unstack_group_index_overflow<TestStackUnstackMultiLevel.test_unstack_group_index_overflowx	  s    		#*		#7Q;1a&)'A+1!4!4S!9 ::

 299T?%0||x''' ,,L,9
q//!''":; F8ugk)99Q<&&s+,w{:

 299T?%01||x''' 7Q;1a&)UGaK77Q;"))A,"5"5c":!;;ugkI

 299T?%01||x'''r   c           	        \        R . ROR. ROR^
.^,          /4      P                  R R.4      p^VR&   \        VP                  P                  4      ^8X  g   Q hVP                  R4      pVR,          P                  ^ 4      VR&   \        . RO\        P                  RRR..\        RR.R R	7      \        P                  ! . ROR
R.R7      R7      p\        P                  ! W#4       R
# )r5   rz   r{   r6   r  is_      $@r   rl  r   Nr   r7   )rz   rz   r{   )cacbr  r  r  )r  r  r   r   ))r  r  )r  r  r  )r  r  )r   rk   rJ   rK   rL   r$   r  r   rI   r   r   rh   r%   r&   rh  s   &   r   +test_unstack_with_missing_int_cast_to_floatFTestStackUnstackMultiLevel.test_unstack_with_missing_int_cast_to_float	  s    _'bTAX
 )S#J
 	 5	277>>"a'''C &} 5 < <Q ?}#bffdC%=>c
-**HSk
 	f/r   c                   \        R . ROR. ROR. R	OR. RO/4      pVP                  . R
O4      p. ROpVP                  P                  VR R7      Vn        VP                  P                  VRR7      Vn        VP	                  R4      R,          P                  4       P                  p\        . RO. RO.. RO. RO.R R.R7      p\        P                  ! W44       R# )L1L2L3rF   N)r@   r   r  r.  )r4   r^   r<   r:   r  )r  r  r  )n1n2n3N)rF   r<   r@  )r:   r4   r   r<   )	r   rk   r8   
set_levelsr$   r8  r   r%   r  )r(   r   
new_levelsrA   rB   s   &    r   test_unstack_with_level_has_nan:TestStackUnstackMultiLevel.test_unstack_with_level_has_nan	  s    lll\	
 mm./-
II((
$(G	II((
$(G	T"8,779??,.FG.,
 	f/r   c                   \        \        P                  ! ^^.4      \        P                  ! . RO4      R7      pVP                  ^VR7      pV'       d2   \        ^ .RR... R	O. R
O.R7      p\        ^ .^^... R	O. R
O.R7      pM\        . RO4      p\        . RO4      p\        R\        P                  \        P                  .\        P                  RR.\        P                  RR..VVR7      p\        P                  ! W64       R# )r<   Nr   r   rl  r   r#  r7   ))r   NN)r   r:   r   )r   r:   r<   )r   r4   r   )r   r4   r<   rk  )ra   r   r<   )r   N)r   r   r  )r  )r   r:   )r   r4   )
r   r   rM  r   rh   r#   r   rI   r%   r&   )r(   r   r*   rA   r8   r9   rB   s   &&     r   $test_stack_nan_in_multiindex_columns?TestStackUnstackMultiLevel.test_stack_nan_in_multiindex_columns	  s    
 HHaV**
 !,7sS#J&7	:?VWE !q!fi=TUG56E78G266266"RVVS#$6c8JK

 	f/r   c                   \         P                  ! R .^,          R.^,          ,           \        P                  ! \	        R4      4      \        P                  ! \	        R4      4      .4      p\        \        P                  ! ^4      P                  ^^4      VR7      pVP                  ^^.VR7      pV'       Ed   \        ^ \        P                  .^\        P                  .\        P                  ^.\        P                  ^.^\        P                  .^\        P                  .\        P                  ^.\        P                  ^..R R.\         P                  ! ^ .^,          ^.^,          ,           \        P                  ! \	        R4      4      \        P                  ! \	        R4      4      .4      R7      pEM \        ^ \        P                  .\        P                  ^.^\        P                  .\        P                  ^.^\        P                  .\        P                  ^.^\        P                  .\        P                  ^..R R.\         P                  ! ^ .^,          ^.^,          ,           \        P                  ! \	        R	4      4      \        P                  ! \	        R
4      4      .4      R7      p\        P                  ! WERR7       R# )rz   r{   r  ccddr   r   ababababccddccddr   aabbaabbcdcdcdcdF)check_index_typeN)r   r  r   r   r   r   r   r    r   r#   rI   r%   r&   )r(   r   r&  r*   rA   rB   s   &&    r   "test_multi_level_stack_categorical=TestStackUnstackMultiLevel.test_multi_level_stack_categorical	  s   
 %%	SEAI%tF|,tF|,
 ryy|++Aq14@1a&|<< KKVVQKVVQKKKVVQKVVQK	 c
 ,,a1#')tJ'78tJ'78H* !KVVQKKVVQKKVVQKKVVQK	 c
 ,,a1#')tJ'78tJ'78H( 	fGr   c           	        \        \        P                  ! ^4      P                  ^^4      \        P
                  ! R\        P                  3R.RR.R7      \        ^ ^.RR7      \        P                  R	7      pVP                  VR
7      pV'       d,   \	        ^ ^.\        P                  R... RO. RO.RR.R7      pM>\        P
                  ! ^ \        P                  3R^\        P                  3R.RR.R7      p\        R\        P                  .\        P                  ^.R\        P                  .\        P                  R..\        RR.RR7      VR7      p\        P                  ! W54       R# )r^   rz   r{   r6   r  r  r   Numr   rQ  r   r  rl  rP  rH   r   Nr   r  r  )r   r6   )r<   r6   )r   r   r    r   r   rh   rI   r   r   r#   r%   r&   )r(   r   df_nanrA   r8   rB   s   &&    r   test_stack_nan_level/TestStackUnstackMultiLevel.test_stack_nan_level,
  s3   
 IIaL  A&**rvv
+GW3E AU+**
 <8A.#\2g&E **RVVhBFFX>ugFVE 266]RVVQK#rvvF3*73

 	f/r   c           
        \         P                  ! R .^ ^..4      p\        R\        P                  ! RR.4      /VR7      pVP                  4       p\        ^ \        P                  ! R.RR.R7      ^\        P                  ! R.RR.R7      /R .R7      p\         P                  ! RR.4      Vn        \        P                  ! W44       R# )	rz   r   r5   r6   r;   r   N)r   r   )r   r<   )
r   r>   r   r   r   r$   rh   r9   r%   r&   r   s   &    r    test_unstack_categorical_columns;TestStackUnstackMultiLevel.test_unstack_categorical_columnsK
  s    %%uq!fo6r~~sCj9:#F2>>3%S#J?2>>3%S#J? %
 &11:z2JK
f/r   c                   R R.pRR.p. ROp\         P                  ! W#V.. ROR7      p\        \        \	        V4      4      4      p\        WeR.R7      pVP                  RR.4      pVP                  P                  ^ 4      Vn        R	VP                  R&   VP                  RR.VR
7      P                  4       pVP                  ^R7      P                  RR.VR
7      P                  4       p	\        P                  ! W4       R# )ITAFRAA1A2VARTYPr   VALUE)rq   r8   r9   i'  r   rA  N)CRTDBTNET)PAEr  r  )r   )A0r  )r   r>   r   r=   rJ   r   r$   r9   r[  rp   r#   r8  r%   r?   )
r(   r   r  r  r  r   VDFrA   rB   s
   &&        r   test_stack_unsorted.TestStackUnstackMultiLevel.test_stack_unsortedZ
  s    
 enTl#$$c_<QRs2w A';ZZ'ZZ))!,
#' 5%.|DOOQMMqM!UE5>U=Z\ 	
 	v0r   c           
        \         P                  ! R R.RR..RR.R7      p\        . RORR7      p\        P                  ! . RO. RO. RO.4      p\        WBV\        P                  ! 4       R	7      pVP                  RVR
7      pVP                  \        P                  4      P                  RVR
7      P                  \        P                  ! 4       4      p\        P                  ! Wg4       WUP                  ^ ,          ,          P                  \        P                  ! 4       4      WUP                  ^ ,          &   VP                  RVR
7      p\        R\        P                  ! . RO\        P                  ! 4       R7      R\        P                  ! . RO\        P                  ! 4       R7      /\         P                  ! W2P                  ^ ,          .4      R7      pRVP                  n        \        P                  ! Wg4       R# )5451154515r  t_meanstationelementr   r  r   rQ  r   rR   r;   Nr   )r     rn     )rn  r  r>     )i1     r|  r  )r   r  r  g      "@g     s@g     [@)r  r  r  r  r  r  )r   r>   r   r   r  r   r   
Int64Dtyper#   rn   ro   r%   r&   r9   Float64Dtyper@   r]   )r(   r   r9   r8   arrr*   rA   rB   s   &&      r   test_stack_nullable_dtype4TestStackUnstackMultiLevel.test_stack_nullable_dtypes
  s|   
 ))w#x1)Y9O
 if-hh*,=?STUs5P),? IIbhhU9<U8VBMMO$ 	
 	f/ zz!}-44R__5FG::a=),?RXX9AR "((2"--/	 ))5..2C*DE

 !*
f/r   c           	     F   R R .^^.RR..p\         P                  ! VR
R7      p\        R^^./VR7      pVP                  R4      p\        ^.^..\         P                  ! R.RR.R7      \         P                  ! RR.^ R.R7      R	7      p\
        P                  ! WE4       R# )r5   redbluerF   rG   r   r  r;   Nr   )rF   r   rG   )r  r5   )r<   r  )r:   r  )r   r  r   r$   rh   r%   r&   )r(   arraysr   r*   rA   rB   s   &     r   test_unstack_mixed_level_names9TestStackUnstackMultiLevel.test_unstack_mixed_level_names
  s    *q!fufo6$$V=AaV}C0CS1#J**J<c{K((*k)B1c(S

 	f/r   r  )r<   r<   NN      >@N)r:   r:   NNr  N)r  r  col1col2col3col4)NNr  N)r<   r<   NNr  )r:   r:   NNr  )r  r  r  r  r  )NNr  )r:   NNNr  )r   r<   r   )r5   r:   r6   r<   r5   r<   )r6   r:   )r<   r   r<   )r4   r|   r4   r;  )<rA  rB  rC  rD  r  r   rE  rG  r  r  rF  r  r   r   r   r}  r    r   rh   r  r  r  r  r  r  r  r  r  r  r  r  r#  r8  r?  rC  rJ  rM  slowrm  r   chainfrom_iterabler=   rx  r~  r  r  r  r  r  r  r  r  r  r  r  r  r  rI  rJ  rK  s   @r   r  r    s    ' [[? 01OP>(	 *+CD6"	 *+FG6"		
.0/.0(	3 [[CJ*J*X [[C [[ V #J777299Q<#6#6q#91=rwwyRS?TU &&'OP #JA?		! 3 3A 6:		)Y7	1-
	
.*/4*& [[C**2 [[C22 [[CYY  [[C
:
: [[C [[X';<8 =8&0 [[C
1
1 [[C M MD [[C	E	E [[CAAC3J-1^ [[C&&6 [[C==  * [[C** [[! !4 [[C [[%% &
&
 	
 [[[%(3* 4*" [[C

$ [[C00* [[C0065" [[C#(#(J0600 [[C008 [[C5H5Hn [[C0080 [[C11, [[C#0#0J0 0r   r  c           	          \        . RO. RO. RO.. R	OR7      pVP                  V R7      p\        . R
O\        \	        ^4      . R	O.. RO. RO.R7      R7      p\
        P                  ! W#4       R# )r<   r   r   r#  r;   Nr   )r^   r_   r|   )r}   r~   r>  )r  r  r  )	r<   r:   r4   r^   r_   r|   r}   r~   r>  )	r   r   r   r<   r<   r<   r:   r:   r:   )	r   r<   r:   r   r<   r:   r   r<   r:   )r   r#   r
   r   r=   r%   r?   )r   r*   rA   rB   s   &   r   test_stack_tuple_columnsr  
  sh     
	Iy)3Q
B XX<X0F#!H<=.0KL
H 6,r   zdtype, na_valuer#  test_multiindexc                    V'       d,   \         P                  ! ^\        V.V R7      .,          4      pM\        V.V R7      p\        R^./VR7      pVP	                  4       pV'       d=   \         P                  ! \        V.V R7      \        V.V R7      \        R.4      .4      pM.\         P                  ! \        V.V R7      \        R.4      .4      p\        ^VR7      p\        P                  ! WW4       R# )r:   rR   r5   r;   N)r   r  r   r   r#   r
   r%   r?   )rS   r-  r  r8   r*   rA   r   rB   s   &&&     r   test_stack_preserves_nar  
  s     &&qE8*E,J+K'KLxj.	C!:U	+BXXZF#//xj.xj.se
 $//xj.se
 a~.H6,r   )Nr<   r:   r4   )rV  r<   )rV  r:   )rV  r4   )r<   Nr:   r4   )r<   r:   Nr4   )r<   r:   r4   N)z	nan=firstz
nan=secondz	nan=thirdznan=last)3r   r   r.  numpyr   r   pandas._libsr   pandas.errorsr   pandasr   r   r   r   r	   r
   r   r   pandas._testing_testingr%   pandas.core.reshaper   rh  fixturer   r   rE  rG  rU  rI   r^  r`  re  rF  rm  r  rq  rt  rv  rx  r  r  r  r  r  r  r  r1  r  r  r   r   <module>r     s     	    (     6 e}% &Q0 Q0h( 9i"897, :7,t  rvvlLI	

 GRVV,lLI	

 <'266):LI	

 <7HI	
$ 	=)  ,,-,,,0,0 WX	- Y	- WXD%#@A1 B Y1 WXD%#@A0 B Y0" WXD%#@Aay10 2 B Y0"),> WX, Y,)* WX#, Y#,L WX- Y-$[0 [0|  WX- Y-  	BFF	BFF	BEE	"%%	 *T5M:- ;-r   