
    Mh8              
          S SK rS SKrS SKJr  S SKJs  Jr  S SK	J
r
JrJrJrJrJrJrJrJrJrJrJrJrJr  S SKJr  \R6                  R9                  \" 5       SS9S 5       rS rS rS	 r S
 r!S r"S r#S r$S r%S r&S r'S r(S r)S r*S r+S r,\RZ                  \R6                  R]                  SSS/5      \R6                  R]                  SSS \" S 5      /5      S 5       5       5       r/S r0S r1\R6                  R]                  S\" SS 5      \" S!S 5      /\" SS 5      \" S!S 5      S"/S#S#/S#S#\Rd                  /4\" SS 5      \" S!S 5      /\" SS 5      \" S!S 5      /S#S#/S#S#/4/5      S$ 5       r3S% r4S& r5S' r6\R6                  R]                  S(S)/S*/// / //5      S+ 5       r7S, r8S- r9\R6                  R]                  SS.S//5      S0 5       r:g)1    N)using_pyarrow_string_dtype)NACategoricalFloat64DtypeIndex
MultiIndexNaTPeriodPeriodIndex
RangeIndexSeries	Timedelta	Timestamp
date_rangeisnaz#share memory doesn't work for arrow)reasonc                    UR                  UR                  5      n[        R                  " UR                  UR                  5      (       d   eUR                  R	                  UR                  5      (       d   eUR                  R                  UR                  5      (       d   eUR                  SS nUR                  U5      nUR                  5        H  u  pVXaU   :X  a  M   e   U R                  SS nU R                  U5      nUR                  5        H  u  pVX`U   :X  a  M   e   U R                  U5      n	[        R                  " U	5      R                  5       (       d   eU R                  S S S2   n
U R                  U
5      nUR                  5        H  u  pVX`U   :X  a  M   e   U R                  5       nXLd   eg )N
         )	reindexindexnpmay_share_memoryis_	identicalitemsisnanall)datetime_seriesstring_seriesidentitysubIndex	subSeriesidxval	subIndex2subTSstuffSeriesnonContigIndexsubNonContigresults                Z/var/www/html/env/lib/python3.13/site-packages/pandas/tests/series/methods/test_reindex.pytest_reindexr.      s    $$]%8%89H}22HNNCCCC>>m112222>>##M$7$78888""2b)H%%h/IOO%C(((( &  %%b,I##I.EKKMc**** "!))(3K88K $$&&&& %**3Q3/N"**>:L &&(c**** ) $$&F(((    c                     [        / SQSS[        R                  S/S9n [        R                  S[        R                  SS[        R                  // SQp![        R                  " U R                  U5      U R                  U   5        U R                  R                  S5      U l        [        R                  " U R                  U5      U R                  U   SS	9  g )
N)r                     r   )r   r   r   r1   r4   r   objectF)check_index_type)	r   r   nantmassert_series_equalr   ilocr   astype)tsijs      r-   test_reindex_nanrB   @   s    	Q2661$5	6BFFArvvq!RVV,.@q2::a="''!*5xxx(BH 2::a="''!*uMr/   c                  d   [        SSSS9n [        U 5      nUR                  [        S5      5      n[        R
                  " UR                  [        R                  " S5      5      (       d   eUR                  5       nUSS  R                  5       (       d   eUS S R                  5       (       a   eg )Nz1/1/2000 00:00:00r   10speriodsfreq   zM8[ns])
r   r   r   ranger   
issubdtypedtyper   r   any)rngseriesr,   masks       r-   test_reindex_series_add_natrQ   L   s    
("5
ACC[F^^E"I&F==rxx'9::::;;=D9==???CRy}}r/   c                     [        SSS9n [        [        R                  R	                  S5      R                  S5      U S9nUR                  [        UR                  SS 5      5      nUSS nUR                  R                  S 5      Ul        [        R                  " X#5        U[        UR                  SS 5         n[        R                  " X#5        g )Nz1/1/2000r   rF   r   r7   r2   r   )r   r   r   randomdefault_rngstandard_normalr   listr   
_with_freqr;   r<   )rN   r?   r,   expecteds       r-   test_reindex_with_datetimesrZ   X   s    
Z
,C			%%a(88<C	HBZZRXXa^,-F!BxH^^..t4HN6,RXXa^$%F6,r/   c                    [        / S9nUR                  U R                  SS9  UR                  U R                  SS9nU R                  [        U R                  5      5      nU R                  R	                  S 5      U l        [
        R                  " X5        U S S S2   nSn[        R                  " [        US9   UR                  U R                  SS9  S S S 5        g ! , (       d  f       g = f)Nr7   padmethodr   zVInvalid fill method\. Expecting pad \(ffill\), backfill \(bfill\) or nearest\. Got foomatchfoo)
r   r   r   rW   rX   r;   r<   pytestraises
ValueError)r    empty	reindexedr?   msgs        r-   test_reindex_cornerrh   e   s    E	MM/''M6 o33EBI  ''_-B-B(CDI+11<<TBO?6 
1	B	*  
z	-


?((
7 
.	-	-s   ;C
C-c                  *   [        [        R                  " S5      SS9n U S S S2   nUR                  U R                  SS9nUR                  U R                  SS9n[
        R                  " X#5        [        / SQ5      n[
        R                  " X$5        g )	Nr   int64rL   r   r\   r]   ffill)
r   r   r   r   r5   r5      rm   r6   r6   )r   r   aranger   r   r;   r<   )ss2rf   
reindexed2rY   s        r-   test_reindex_padrr   |   sv    ryy}G,A	
3Q3B

1775
1IAGGG4J9145H9/r/   c                     [        / SQ/ SQS9n / SQn[        / SQUS9nU R                  U5      R                  5       n[        R                  " X2R                  S5      5        Sn[        R                  " [        US9   U R                  U5      R                  S	S
9nS S S 5        [        R                  " X25        [        / SQUS9nU R                  USS9n[        R                  " X25        g ! , (       d  f       NW= f)Nr4   r   r1   r5   r2   )abcder7   )ru   grw   f)r4   r4   r1   r1   float64z-The 'downcast' keyword in ffill is deprecatedr_   infer)downcast)r4   r2   r1   r2   rl   r]   )r   r   rl   r;   r<   r>   assert_produces_warningFutureWarning)ro   	new_indexrY   r,   rg   s        r-   test_reindex_pad2r      s    &?@A$Il)4H YYy!'')F6??9#=>
9C		#	#M	=9%++W+= 
>6,l)4HYYyY1F6, 
>	=s   >C..
C<c                  D   [        / SQ[        S5      S9n SnSn[        R                  " [        US9   U R                  [        U5      5      R                  5       nS S S 5        [        / SQ[        U5      S9n[        R                  " WU5        g ! , (       d  f       N;= f)N)TFFTabcdr7   agc"Downcasting object dtype arrays onr_   )TTF)r   rW   r;   r   r   r   rl   r<   )ro   r   rg   r,   rY   s        r-   test_reindex_inferencer      sw    )f>AI
.C		#	#M	=4	?+113 
>)iAH68, 
>	=s   )B
Bc                  &   [        S[        S5      S9n Sn[        R                  " [        US9   U R                  S5      R                  5       nS S S 5        [        S[        S5      S9n[        R                  " WU5        g ! , (       d  f       N9= f)NFr2   r7   r   r_   r4   )r   rJ   r;   r   r   shiftbfillr<   )ro   rg   r,   rY   s       r-   test_reindex_downcastingr      sk    uE!H%A
.C		#	#M	=!!# 
>e58,H68, 
>	=s    B
Bc                  &   [        [        R                  " SSS95      n / SQnU R                  USS9n[        [        R                  " U5      R                  S5      U5      n[        R                  " X25        U R                  USSS9n[        S	S
[        R                  S/U5      n[        R                  " X25        U R                  US/ SQS9n[        S	[        R                  [        R                  S/U5      n[        R                  " X25        g )Nr   rj   rk   )g?g?g      ?       @nearestr]   g?)r^   	tolerancer   r4   r   )g333333?g{Gz?g?r1   )	r   r   rn   r   aroundr>   r;   r<   r:   )ro   targetr,   rY   s       r-   test_reindex_nearestr      s    ryy7+,A!FYYviY0Fbii'..w7@H8,YYvi3Y?Fq!RVVQ'0H8,YYvi;NYOFq"&&"&&!,f5H8,r/   c                    U S S S2   n[        [        R                  " [        U5      [        S9UR
                  S9nUR                  U R
                  5      nUR                  [        R                  :X  d   eUR                  UR
                  S S S2   5      nUR                  [        R                  " [        5      :X  d   eg Nr   rk   r7   )	r   r   zeroslenintr   r   rL   r|   )r    r?   int_tsreindexed_ints       r-   test_reindex_intr      s    	1	BBHHSWC0AF NN?#8#89M "**,,, NN6<<!#45M"((3-///r/   c                 t   U S S S2   n[        [        R                  " [        U5      [        S9UR
                  S9nUR                  U R
                  5      nUR                  [        R                  :X  d   eUR                  UR
                  S S S2   5      nUR                  [        R                  :X  d   eg r   )
r   r   r   r   boolr   r   rL   object_bool_)r    r?   bool_tsreindexed_bools       r-   test_reindex_boolr      s    	1	BRXXc"gT2"((CG ___%:%:;N 2::--- __W]]3Q3%78N288+++r/   c                     U SS  n[        [        R                  " [        U5      [        S9UR
                  S9nUR                  U R
                  SS9n[        US S 5      R                  5       (       d   eg )Nr2   rk   r7   r\   r]   )	r   r   r   r   r   r   r   r   r   )r    r?   r   filled_bools       r-   test_reindex_bool_padr      se    		BRXXc"gT2"((CG///"7"7/FKBQ $$&&&&r/   c                  N   [        SSS9n [        / SQSS9nUR                  U 5      n[        [        [        R
                  [        R
                  [        R
                  // SQS95      nXl        [        R                  " X#5        [        [        SS	// SQS95      nS
S/Ul        UR                  S
S/5      n[        R                  " X#5        [        [        S	[        R
                  // SQS95      nSS/Ul        UR                  SS/5      n[        R                  " X#5        g )N20000101r1   rS   )ru   rv   rw   categoryrk   )values
categoriesrv   rw   r4   r   )	r   r   r   r   r   r:   r   r;   r<   )r   ro   r,   rY   s       r-   test_reindex_categoricalr      s    z1-E 	j1AYYuFBFFBFFBFF3PH N6, k#sPQHVHNYY1vF6,k#rvv?STHVHNYY1vF6,r/   c                      [        / SQ/ SQS9n / SQnSn[        nU R                  U5      R                  U5      R                  U5      nU R                  U5      R                  U5      R                  U5      n[        R
                  " XE5        g )Nr4   r   r1   )r   r   r4   r7   )r   r4   r   r   )r   strr   r>   r;   r<   )serr   
temp_dtype	new_dtyper,   rY   s         r-   %test_reindex_astype_order_consistencyr      ss    
)
,CIJI[[#**:6==iHFzz*%--i8??	JH6,r/   c                     [        / SQ5      n U R                  / SQ5      n[        SS[        R                  // SQS9n[        R
                  " X5        U R                  / SQSS9n[        / SQ/ SQS9n[        R
                  " X5        [        / SQ5      nUR                  / SQ5      n[        SS[        R                  // SQS9n[        R
                  " X5        UR                  / SQSS9n[        / S	Q/ SQS9n[        UR                  R                  [        R                  5      (       d   e[        R
                  " X5        [        / SQ[        S
9nUR                  / SQ5      n[        SS[        R                  // SQ[        S9n[        R
                  " X5        UR                  / SQSS9n[        / SQ/ SQ[        S9n[        R
                  " X5        [        / SQ5      nUR                  / SQ5      n[        SS[        R                  // SQ[        S9n[        R
                  " X5        UR                  / SQSS9n[        / SQ/ SQS9n[        R
                  " X5        g )N)      ?r         @r   r   r   r7   r   
fill_value)r   r   r   )r   r1   r   rk   r   r1   r   rL   ra   )r   r1   ra   )TFTFT)FTF)r   r   r   r:   r;   r<   
issubclassrL   typeintegerr8   )floatsr,   rY   intsobjectsboolss         r-   test_reindex_fill_valuer     s    O$F^^I&FsC(	:H6,^^I!^4Fm95H6, )D\\)$FsC(	:H6, \\)\2Fiy1Hfll''44446, Yf-G__Y'Fq!RVVnIVDH6,__Y5_9Fm9FCH6, &'E]]9%FudBFF+9FKH6,]]9]7F*)<H6,r/   rL   zdatetime64[ns]timedelta64[ns]r   stringc                     U S:X  a  U[        S5      :X  a  [        S5      n[        [        /U S9nUR	                  SS/US9n[        [        U/SS/[
        S9n[        R                  " XE5        g )Nr   r   rk   r4   r   r   )r   r   r   r	   r   r8   r;   r<   )rL   r   using_array_managerr   r,   rY   s         r-   +test_reindex_fill_value_datetimelike_upcastr   >  sj    
 !!jIaL&@q\

#e
$C[[!QJ[7FsJ'1vVDH6,r/   c                      [        SSSS9n [        SSSS9n[        [        S5      U S	9nS
n[        R                  " [
        US9   UR                  USS9  S S S 5        g ! , (       d  f       g = f)N20131101zAmerica/Chicagor3   )tzrF   20131103r   hrE   r7   zLCannot compare dtypes datetime64\[ns, America/Chicago\] and datetime64\[ns\]r_   rl   r]   )r   r   rJ   rb   rc   	TypeErrorr   )r%   newidxro   rg   s       r-   /test_reindex_datetimeindexes_tz_naive_and_awarer   N  se    
Z$5q
AC
BS9FuQxs#A	   
y	,			&	) 
-	,	,s   A
A-c                      [        SS9R                  SS/5      n [        [        /S-  SS9n[        R                  " X5        g )Nzdatetime64[ns, UTC]rk   r   r4   r   )r   r   r	   r;   assert_equal)r,   rY   s     r-   "test_reindex_empty_series_tz_dtyper   [  s;    /088!Q@Fseai'<=HOOF%r/   z+p_values, o_values, values, expected_values2019Q1zQ-DEC2019Q2Allr   c                     [        U 5      n[        U5      n[        X$S9nUR                  U5      n[        X5S9n[        R
                  " Xx5        g )Nr7   )r   r   r   r   r;   r<   )	p_valueso_valuesr   expected_valuesperiod_indexobject_indexr   r,   rY   s	            r-   $test_reindex_periodindex_with_objectr   b  sG    & x(L?L

,C[[&Fo:H6,r/   c                      [        SS/5      n Sn[        R                  " [        US9   U R	                  SS/S5        S S S 5        g ! , (       d  f       g = f)Nr4   r   zCreindex\(\) takes from 1 to 2 positional arguments but 3 were givenr_   r1   Fr   rb   rc   r   r   r   rg   s     r-   test_reindex_too_many_argsr   ~  s@    
!Q.C
PC	y	,QFE" 
-	,	,   A
Ac                      [        SS/5      n Sn[        R                  " [        US9   U R	                  SS/SS/S9  S S S 5        g ! , (       d  f       g = f)Nr4   r   z4reindex\(\) got multiple values for argument 'index'r_   r1   r5   r7   r   r   s     r-   test_reindex_double_indexr     sF    
!Q.C
AC	y	,QF1a&) 
-	,	,r   c                      [        SS/5      n U R                  SS/S9n[        SS/SS/S9n[        R                  " X5        g )Nr4   r   r   r7   )r   r   r;   r<   )r   r,   rY   s      r-   test_reindex_no_posargsr     sE    
!Q.C[[1v[&Fq!fQF+H6,r/   r   ru   xc                    [        [        [        U S   5      5      [        R                  " U 5      SS9nUR                  [        R                  " S/5      SS9n[        [        S/U S   // / /S9SS9n[        R                  " X#5        g )Nr   r8   r   rv   )levelr4   )levelscodes)
r   rJ   r   r   from_arraysr   r   arrayr;   r<   )r   r   r,   rY   s       r-   test_reindex_empty_with_levelr     s     c&)nZ%;%;F%C8C [[3%[2F#q	 22r(C8H 6,r/   c                      [        / SQSS9n Sn[        R                  " [        US9   U R	                  / SQSS9  S S S 5        g ! , (       d  f       g = f)	N)r4   r   r1   r4   r   rk   z:Cannot setitem on a Categorical with a new category \(-1\)r_   rt   r   r   r   s     r-   test_reindex_missing_categoryr     s=    
Z
0C
GC	y	,O3 
-	,	,s   A
Ac                  D   [        S[        /[        5       S9n U R                  [	        S5      5      nUR
                  R                  n[        R                  " S[        R                  [        R                  /5      n[        R                  " X#5        [        R                  " S 5         [        R                  " U5      n[        S[        R                  [        R                  /[        5       S9n[        R                  " XE5        S S S 5        g ! , (       d  f       g = f)Nr   rk   r1   r4   r   )r   r   r   r   rJ   r   _datar   r   r:   r;   assert_numpy_array_equalr   logr<   )ro   	s_reindexr,   rY   
result_logexpected_logs         r-   #test_reindexing_with_float64_NA_logr     s    Ry/A		%(#I##FxxBFFBFF+,H1		#	#D	)VVI&
q"&&"&&1H
z8 
*	)	)s   *AD
Dtimedelta64
datetime64c           	         [        [        R                  " S/U  S3S95      nUR                  [	        S5      5      n[        [        R                  " S[        [        U 5      " SS5      /U  S3S95      n[        R                  " X#5        g )Nr4   z[s]rk   r   natro   )r   r   r   r   r   getattrr;   r<   )rL   r   r,   rY   s       r-   test_reindex_expand_nonnano_natr     st     1#wc]3
4C[[A'F
!WR's34ugSMJH 6,r/   );numpyr   rb   pandas._configr   pandas.util._test_decoratorsutil_test_decoratorstdpandasr   r   r   r   r   r	   r
   r   r   r   r   r   r   r   pandas._testing_testingr;   markxfailr.   rB   rQ   rZ   rh   rr   r   r   r   r   r   r   r   r   r   r   &skip_array_manager_not_yet_implementedparametrizer   r   r   r:   r   r   r   r   r   r   r   r    r/   r-   <module>r
     sF     5 ) )       )N  ))D	N	
-8.	0-(--- 0, '-0-0-f **#35F"GH!Yq\'BC
- D I +
-
*& 1 Hg&x(ABHg&x(A5I#J#rvv		
 Hg&x(ABHg&x(AB#J#J		
"-#"-#*- cUSENRH#=>	- ?	-4
9 =,"?@- A-r/   