
    Mh                     \   S SK rS SKrS SKrS SKJrJrJrJrJ	r	  S SK
Jr  S rS rS r\R                   R#                  SSSS/SS/SS/SS//\R$                  " / S	QS
S/S9\R$                  " SS/S/S94S/ SQ/ SQ/\" SS/SS9\R$                  " / SQSS
/S94/5      S 5       rS rS rg)    N)	DataFrameIndex
MultiIndexSeries
date_rangec                  `   [         R                  " SS/SS//5      n [        [        R                  " S5      U [
        S9nUR                  5       nUR                  [
        :H  R                  5       (       d   eUR                  SS9nUR                  [
        :H  R                  5       (       d   eg )	Nbarfooonetwo      @)indexdtyper   level)	r   from_productr   nparangeobjectunstackdtypesall)miserres1res2s       Z/var/www/html/env/lib/python3.13/site-packages/pandas/tests/series/methods/test_unstack.pytest_unstack_preserves_objectr      s    		 	 5%.5%.!A	BB
3r
8C;;=DKK6!&&((((;;Q;DKK6!&&((((    c            	         [        SS// SQ// SQ/ SQ/S9n [        [        R                  " S5      U S9nUR	                  5       n[        S	[        R                  S
/SS[        R                  //SS// SQS9n[        R                  " X#5        UR	                  SS9n[        R                  " X#R                  5        [        S// SQSS/// SQ/ SQ/ SQ/S9n [        [        R                  R                  S5      R                  S5      U S9n[        / SQSS/// SQ/ SQ/S9n[        SUR                  0US9R                  SS9nUR	                  S5      R                  5       n[        R                  " X#5        [         R                  " SS/S[        R                  //5      n[        SS/US9nUR	                  5       n[        [        R                  S/S[        R                  //SS/[        R                  S/S9n[        R                  " Xx5        [         R                  " / SQ/ SQSSSS[        R                  //5      n[        / SQUS9n[        SS/S[        R                  /[        R                  S/S [        R                  //S!S"/S#9nS$S%S&[        R                  4S'/n	[         R                   " U	5      Ul        [        R                  " UR	                  SS9U5        g )(Nr	   r
   )r   threer   )   r"   r   r   )r   r"   r      )levelscodesr   r   g       @g      @g              ?)r   columnsr   r   )r   r   r!   r"   )r   r   r   r   r   r   )r   r"   r#   r   r"   r#   )r   r"   r   r"   r   r"   r#      e   f   g      @)catr,   r,   dogr-   )ar.   br.   r/   )r'   皙?333333??ffffff?r2   r0   r3   r1   r,   r-   )r(   r.   r"   r.   r#   r/   r/   r"   )r   r   r   r   r   r   nantmassert_frame_equalTrandomdefault_rngstandard_normalvalues
sort_indexfrom_arraysfrom_tuplesr   )
r   s	unstackedexpected	exp_indexidxtsleftrighttplss
             r   test_unstackrK      s    78\*E
 	ryy~U+A		I
rvvs	c3/0en'H ).			"I)ZZ001a&9!#57IJE 	ryy$$Q'77:%HA'!Q0!#56I %*)<GGaGPH		!'')I). 
 
 3*sBFFm!<
=C	Ac	"B::<D
&&!q"&&k"3*rvvsmE $&

 
 /%1a 	
C 
)	5B
sc266]RVVSMC=AE hbffx8D((.EK"**1*-u5r   c            	         [         R                  " / SQ/ SQ/SS/S9n [        SU S9nUR                  S5      n[	        / SQ/ SQ/ SQ/[         R
                  " / S	QS/S9[        / SQSS
9S9n[        R                  " X#5        g )N)r.   r/   c)r"   r#      Ar.   )Br/   namesr"   r&   )r"   r"   r"   )r.   r/   )rM   namer(   r   )	r   r   r   r   r   rA   r   r8   r9   )rF   r   resultrD   s       r   $test_unstack_tuplename_in_multiindexrZ   V   s~    

!
!	)$Z,DC #
C[[$F	Iy)&&'?
|TIJ/H
 &+r   z>unstack_idx, expected_values, expected_index, expected_columnsrO   r"   ))r"   rN   )r"      )r#   rN   )r#   r[   rQ   CrR   rT   rU   )rO   rQ   )r"   r"   r"   r"   rN   r[   rV   )r4   r5   r6   )r/   r#   c                     [         R                  " SS/SS/SS/// SQS9n[        SUS	9nUR                  U 5      n[	        XUS
9n[
        R                  " Xg5        g )Nr.   r/   r"   r#   rN   r[   )rO   rQ   r\   rR   r&   rX   )r   r   r   r   r   r8   r9   )unstack_idxexpected_valuesexpected_indexexpected_columnsrF   r   rY   rD   s           r   *test_unstack_mixed_type_name_in_multiindexrb   f   sh    . 
!
!
saVaV$,BC #
C[[%FH &+r   c            
         [        [        R                  R                  S5      R	                  S5      [        [        S5      [        S9[        SSSS9S	9n U R                  S
S9R                  R                  SS/5      n[        S/[        U5      -  USSS9nUR                  5       nUR                  R                  S   n[         R"                  " S/[        U5      -  5      n[        UR%                  5       UR%                  5       UR%                  5       UR%                  5       S.[        [        S5      SS9UR                  S5      S	9n[&        R(                  " X65        g )Nr#   )
   r[   ABCD)r   z
2000-01-01rd   rQ   )periodsfreqrX   T)future_stackmajorminorr
   category)r   rW   r   r   )rP   rQ   r\   DrV   )r   r   r;   r<   r=   r   listr   r   stackr   renamer   lenr   r$   pdCategoricalcopyr8   r9   )dfr   r   rY   dtirM   rD   s          r   +test_unstack_multi_index_categorical_valuesrv      s   	
		a 009d6l&1r<
B
 
t	$	*	*	1	17G2D	EB
%3r7"":Z
PC[[]F
))

1
C
wS)*AffhQVVXAFFH1668Dd6l1jj!H
 &+r   c            	         SS/SS/SS//n [         R                  " U SS9n[        SS/US9nUR                  S	5      n[	        S/S//[        S/S	S
9[         R                  " SS/SS/S9S9n[        R                  " X45        g )Nr.   r"   r#   redblue)xr   yrR   r&   rz   rV   )r"   rx   )r#   ry   r   r{   rX   )	r   r@   r   r   r   r   rA   r8   r9   )arraysrF   r   rY   rD   s        r   test_unstack_mixed_level_namesr}      s    Cj1a&5&/2F

 
 }
=C
!Qs
#C[[F
qc
se#&$$j+%>q#hOH
 &+r   )numpyr   pytestpandasrq   r   r   r   r   r   pandas._testing_testingr8   r   rK   rZ   markparametrizerA   rb   rv   r}    r   r   <module>r      s        	)86v,  D VaVaVaV,""#CCQT:V""FF#3J<H		
 <(1a&s#""8S@Q		
&,'&, ,*,r   