
    Pi:              
          d dl Zd dlZd dlmZmZmZmZmZm	Z	m
Z
mZmZmZmZmZmZmZ d dlmZ d Zd Zd Zd Zd Zd Zd	 Zd
 Zd Zd Zd Zd Z d Z!d Z"d Z#d Z$ej%        &                    dddg          ej%        &                    ddd  ed           g          d                         Z'd Z(d Z)ej%        &                    d e
dd           e
dd          g e
dd           e
dd          dgd d gd d ej*        gf e
dd           e
dd          g e
dd           e
dd          gd d gd d gfg          d!             Z+d" Z,d# Z-d$ Z.ej%        &                    d%d&gd'ggg g gg          d(             Z/d) Z0d* Z1ej%        &                    dd+d,g          d-             Z2ej%        &                    d.g d/          d0             Z3dS )1    N)NACategoricalFloat64DtypeIndex
MultiIndexNaTPeriodPeriodIndex
RangeIndexSeries	Timedelta	Timestamp
date_rangeisnac                 x   |                     |j                  }t          j        |j        |j                  sJ |j                            |j                  sJ |j                            |j                  sJ |j        dd         }|                     |          }|                                D ]\  }}|||         k    sJ | j        dd         }|                      |          }|                                D ]\  }}|| |         k    sJ |                      |          }	t          j        |	          	                                sJ | j        d d d         }
|                      |
          }|                                D ]\  }}|| |         k    sJ |                                  }|| usJ d S )N
         )
reindexindextmshares_memoryis_	identicalitemsnpisnanall)datetime_seriesstring_seriesidentitysubIndex	subSeriesidxval	subIndex2subTSstuffSeriesnonContigIndexsubNonContigresults                |/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/pandas/tests/series/methods/test_reindex.pytest_reindexr-      s   $$]%899HM/@@@@@>m122222>##M$788888"2b5)H%%h//IOO%% ) )SmC((((((%be,I##I..EKKMM + +Soc******!))(33K8K  $$&&&&& %*33Q3/N"**>::L &&(( + +Soc****** $$&&F((((((    c                     t          g dddt          j        dg          } t          j        dt          j        ddt          j        gg d}}t          j        |                     |          | j        |                    | j                            d          | _        t          j        |                     |          | j        |         d	           d S )
N)r                     r   )r   r   r   r0   r3   r   objectF)check_index_type)	r   r   nanr   assert_series_equalr   ilocr   astype)tsijs      r,   test_reindex_nanr@   9   s    	Q261$5	6	6	6BFArvq!RV,.@.@.@qA2::a=="'!*555xx((BH 2::a=="'!*uMMMMMMr.   c                     t          ddd          } t          |           }|                    t          d                    }t	          j        |j        t	          j        d                    sJ |                                }|dd                                          sJ |d d         	                                rJ d S )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_natrN   E   s    
("5
A
A
ACC[[F^^E"II&&F=rx'9'9:::::;;==D9==???CRCy}}r.   c                     t          dd          } t          t          j                            d                              d          |           }|                    t          |j        dd                             }|dd         }|j        	                    d           |_        t          j        ||           |t          |j        dd                            }t          j        ||           d S )Nz1/1/2000r   rC   r   r6   r1   r   )r   r   r   randomdefault_rngstandard_normalr   listr   
_with_freqr   r:   )rK   r=   r+   expecteds       r,   test_reindex_with_datetimesrW   Q   s    
Z
,
,
,C		%%a((88<<C	H	H	HBZZRXad^,,--F!B$xH^..t44HN68,,,RXad^$$%F68,,,,,r.   c                    t          g           }|                    | j        d           |                    | j        d          }|                     t          | j                            }| j                            d           | _        t          j        | |           | d d d         }d}t          j        t          |          5  |                    | j        d           d d d            d S # 1 swxY w Y   d S )Nr6   padmethodr   zVInvalid fill method\. Expecting pad \(ffill\), backfill \(bfill\) or nearest\. Got foomatchfoo)
r   r   r   rT   rU   r   r:   pytestraises
ValueError)r   empty	reindexedr=   msgs        r,   test_reindex_cornerre   ^   sA   E	MM/'M666 o3EBBI  ''_-B(C(CDDI+1<<TBBO?I666 
1	B	*  
z	-	-	- 8 8


?(
7778 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8s   C66C:=C:c                  H   t          t          j        d          d          } | d d d         }|                    | j        d          }|                    | j        d          }t          j        ||           t          g d          }t          j        ||           d S )	Nr   int64rI   r   rY   rZ   ffill)
r   r   r   r   r4   r4      rj   r5   r5   )r   r   aranger   r   r   r:   )ss2rc   
reindexed2rV   s        r,   test_reindex_padro   u   s    ry}}G,,,A	
33Q3B

175
11IAGG44J9j11144455H9h/////r.   c                     t          g dg d          } g d}t          g d|          }|                     |                                          }t          j        ||           |                     |                                          }t          j        ||           t          g d|          }|                     |d          }t          j        ||           d S )	Nr3   r   r0   r4   r1   )abcder6   )rr   grt   f)r3   r3   r0         @)r3   r1   r0   r1   ri   rZ   )r   r   ri   r   r:   )rl   	new_indexrV   r+   s       r,   test_reindex_pad2r{      s    &?&?&?@@@A$$$InnnI666H YYy!!''))F68,,,YYy!!''))F68,,,lll)444HYYyY11F68,,,,,r.   c                  (   t          g dt          d                    } d}|                     t          |                                                    }t          g dt          |          t                    }t          j        ||           d S )N)TFFTabcdr6   agc)TTFr   rI   )r   rT   r   ri   r7   r   r:   )rl   rz   r+   rV   s       r,   test_reindex_inferencer      s    )))f>>>AIYYtI''--//F)))iOOOH68,,,,,r.   c                     t          dt          d                    } |                     d                                          }t          dt          d          t                    }t          j        ||           d S )NFr1   r6   r3   r   )r   rG   shiftbfillr7   r   r:   )rl   r+   rV   s      r,   test_reindex_downcastingr      sh    uE!HH%%%AWWQZZFe5886:::H68,,,,,r.   c                  Z   t          t          j        dd                    } g d}|                     |d          }t          t          j        |                              d          |          }t          j        ||           |                     |dd          }t          d	d
t          j        dg|          }t          j        ||           |                     |dg d          }t          d	t          j        t          j        dg|          }t          j        ||           d S )Nr   rg   rh   )g?g?g      ?       @nearestrZ   g?)r[   	tolerancer   r3   r   )g333333?g{Gz?g?r0   )	r   r   rk   r   aroundr<   r   r:   r9   )rl   targetr+   rV   s       r,   test_reindex_nearestr      s   ry7+++,,A!!!FYYviY00Fbi''..w77@@H8V,,,YYvi3Y??Fq!RVQ'00H8V,,,YYvi;N;N;NYOOFq"&"&!,f55H8V,,,,,r.   c                    | d d d         }t          t          j        t          |          t                    |j                  }|                    | j                  }|j        t          j        k    sJ |                    |j        d d d                   }|j        t          j        t                    k    sJ d S Nr   rh   r6   )	r   r   zeroslenintr   r   rI   float64)r   r=   int_tsreindexed_ints       r,   test_reindex_intr      s    	1	BBHSWWC000AAAF NN?#899M "*,,,, NN6<!#455M"(3--//////r.   c                 j   | d d d         }t          t          j        t          |          t                    |j                  }|                    | j                  }|j        t          j        k    sJ |                    |j        d d d                   }|j        t          j	        k    sJ d S r   )
r   r   r   r   boolr   r   rI   object_bool_)r   r=   bool_tsreindexed_bools       r,   test_reindex_boolr      s    	1	BRXc"ggT222"(CCCG ___%:;;N 2:---- __W]33Q3%788N28++++++r.   c                     | dd          }t          t          j        t          |          t                    |j                  }|                    | j        d          }t          |d d                                                   sJ d S )Nr1   rh   r6   rY   rZ   )	r   r   r   r   r   r   r   r   r   )r   r=   r   filled_bools       r,   test_reindex_bool_padr      s    		BRXc"ggT222"(CCCG///"7/FFKBQB  $$&&&&&&&r.   c                     t          dd          } t          g dd          }|                    |           }t          t          t          j        t          j        t          j        gg d                    }| |_        t          j        ||           t          t          dd	gg d          t          d
d                    }|                    d
dg          }t          j        ||           t          t          d	t          j        gg d          t          dd                    }|                    ddg          }t          j        ||           d S )N20000101r0   rP   rr   rs   rt   categoryrh   )values
categoriesrs   rt   r3   r6   r   r4   )
r   r   r   r   r   r9   r   r   r:   rG   )r   rl   r+   rV   s       r,   test_reindex_categoricalr      sW   z1---E 	j111AYYuFBFBFBF3PPP H HN68,,, C:///BBB%PQST++  H YY1vF68,,,C=___EEEUSTVW[[  H YY1vF68,,,,,r.   c                  `   t          g dg d          } g d}d}t          }|                     |                              |                              |          }|                     |                              |                              |          }t	          j        ||           d S )Nr3   r   r0   )r   r   r3   r6   )r   r3   r   r   )r   strr   r<   r   r:   )serrz   
temp_dtype	new_dtyper+   rV   s         r,   %test_reindex_astype_order_consistencyr      s    
)))
,
,
,C		IJI[[##**:66==iHHFzz*%%--i88??	JJH68,,,,,r.   c                  D   t          g d          } |                     g d          }t          ddt          j        gt	          dd                    }t          j        ||           |                     g dd	          }t          g d
t	          dd                    }t          j        ||           t          g d          }|                    g d          }t          ddt          j        gt	          dd                    }t          j        ||           |                    g dd	          }t          g dt	          dd                    }t          |j        j	        t          j
                  sJ t          j        ||           t          g dt                    }|                    g d          }t          ddt          j        gt	          dd          t                    }t          j        ||           |                    g dd	          }t          g dt	          dd          t                    }t          j        ||           t          g d          }|                    g d          }t          ddt          j        gt	          dd          t                    }t          j        ||           |                    g dd	          }t          g dt	          dd                    }t          j        ||           d S )N)      ?r   ry   r   r   ry   r3   r4   r6   r   
fill_value)r   ry   r   )r   r0   r   rh   r   r0   r   r^   )r   r0   r^   )TFTFT)FTF)r   r   r   r9   rG   r   r:   
issubclassrI   typeintegerr7   )floatsr+   rV   intsobjectsboolss         r,   test_reindex_fill_valuer      s    OOO$$F^^III&&FsC(a<<<H68,,,^^III!^44Fmmm5A;;777H68,,, )))D\\)))$$FsC(a<<<H68,,, \\)))\22FiiiuQ{{333Hfl'4444468,,, YYYf---G__YYY''Fq!RVnE!QKKvFFFH68,,,__YYY5_99Fmmm5A;;fEEEH68,,, &&&''E]]999%%FudBF+5A;;fMMMH68,,,]]999]77F***%1++>>>H68,,,,,r.   rI   zdatetime64[ns]timedelta64[ns]r   stringc                 6   | dk    r"|t          d          k    rt          d          }t          t          g|           }|                    ddg|          }t          t          |gt          d          t                    }t          j        ||           d S )Nr   r   rh   r3   r   r   r   )	r   r   r   r   r   rG   r7   r   r:   )rI   r   r   r+   rV   s        r,   +test_reindex_fill_value_datetimelike_upcastr   3  s     !!!jIaLL&@&@q\\

#e
$
$
$C[[!QJ[77FsJ'uQxxvFFFH68,,,,,r.   c                  (   t          dddd          } t          dddd	          }t          t          d          | 
          }d}t          j        t
          |          5  |                    |d           d d d            d S # 1 swxY w Y   d S )N20131101zAmerica/Chicagor2   ns)tzrC   unit20131103r   h)rC   rD   r   r6   zLCannot compare dtypes datetime64\[ns, America/Chicago\] and datetime64\[ns\]r\   ri   rZ   )r   r   rG   r_   r`   	TypeErrorr   )r$   newidxrl   rd   s       r,   /test_reindex_datetimeindexes_tz_naive_and_awarer   B  s    
Z$5qt
L
L
LC
BStDDDFuQxxs###A	   
y	,	,	, * *			&	)))* * * * * * * * * * * * * * * * * *s   "BBBc                      t          d                              ddg          } t          t          gdz  d          }t          j        | |           d S )Nzdatetime64[ns, UTC]rh   r   r3   r   )r   r   r   r   assert_equal)r+   rV   s     r,   "test_reindex_empty_series_tz_dtyper   O  sV    /00088!Q@@Fseai'<===HOFH%%%%%r.   z+p_values, o_values, values, expected_values2019Q1zQ-DEC2019Q2Allr   c                     t          |           }t          |          }t          ||          }|                    |          }t          ||          }t	          j        ||           d S )Nr6   )r
   r   r   r   r   r:   )	p_valueso_valuesr   expected_valuesperiod_indexobject_indexr   r+   rV   s	            r,   $test_reindex_periodindex_with_objectr   V  sj    & x((L??L
|
,
,
,C[[&&Fo\:::H68,,,,,r.   c                      t          ddg          } d}t          j        t          |          5  |                     ddgd           d d d            d S # 1 swxY w Y   d S )Nr3   r   zCreindex\(\) takes from 1 to 2 positional arguments but 3 were givenr\   r0   Fr   r_   r`   r   r   r   rd   s     r,   test_reindex_too_many_argsr   r  s    
!Q..C
PC	y	,	,	, # #QFE"""# # # # # # # # # # # # # # # # # #s   AAAc                      t          ddg          } d}t          j        t          |          5  |                     ddgddg           d d d            d S # 1 swxY w Y   d S )Nr3   r   z4reindex\(\) got multiple values for argument 'index'r\   r0   r4   r6   r   r   s     r,   test_reindex_double_indexr   z  s    
!Q..C
AC	y	,	,	, * *QF1a&)))* * * * * * * * * * * * * * * * * *s   AAAc                      t          ddg          } |                     ddg          }t          ddgddg          }t          j        ||           d S )Nr3   r   r   r6   )r   r   r   r:   )r   r+   rV   s      r,   test_reindex_no_posargsr     s[    
!Q..C[[1v[&&Fq!fQF+++H68,,,,,r.   r   rr   xc                 b   t          t          t          | d                             t          j        |           d          }|                    t          j        dg          d          }t          t          dg| d         gg g g          d          }t          j	        ||           d S )Nr   r7   r   rs   )levelr3   )levelscodes)
r   rG   r   r   from_arraysr   r   arrayr   r:   )r   r   r+   rV   s       r,   test_reindex_empty_with_levelr     s     c&)nnZ%;F%C%C8  C [[3%[22F#q	 22r(CCC8  H 68,,,,,r.   c                      t          g dd          } d}t          j        t          |          5  |                     g dd           d d d            d S # 1 swxY w Y   d S )	N)r3   r   r0   r3   r   rh   z:Cannot setitem on a Categorical with a new category \(-1\)r\   rq   r   r   r   s     r,   test_reindex_missing_categoryr     s    
Z
0
0
0C
GC	y	,	,	, 4 4OOO3334 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4s   AAAc                  *   t          dt          gt                                } |                     t	          d                    }|j        j        }t          j        dt          j	        t          j	        g          }t          j        ||           t          j        d           5  t          j        |          }t          dt          t          gt                                }t          j        ||           d d d            d S # 1 swxY w Y   d S )Nr   rh   r0   r3   r   )r   r   r   r   rG   r   _datar   r   r9   r   assert_numpy_array_equalassert_produces_warninglogr:   )rl   	s_reindexr+   rV   
result_logexpected_logs         r,   #test_reindexing_with_float64_NA_logr     s   Ry///A		%((##I#FxBFBF+,,H111		#D	)	) 9 9VI&&
q"bk@@@
z<8889 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9s   'ADDDtimedelta64
datetime64c           
      L   t          t          j        dg|  d                    }|                    t	          d                    }t          t          j        d t          t          |           dd          g|  d                    }t          j        ||           d S )Nr3   z[s]rh   r   natrl   )r   r   r   r   r   getattrr   r:   )rI   r   r+   rV   s       r,   test_reindex_expand_nonnano_natr     s     1#]]]333
4
4C[[A''F
!'WR''s334uMMMJJJ H 68,,,,,r.   zname, expected_match_level_a))rr   T)NF)r   Fc           	         t          ddgt          ddg|                     }t          j        ddgt          j        gddggg d	
          }|                    |          }|rBt          g dt          j        ddgt          j        gddggg d	
          |j                  }nMt          t          j        gdz  t          j        ddgt          j        gddggg d	
          |j                  }t          j	        ||           d S )N{G:@zGA8@Q   R   )namer6   z
2018-06-01z
2018-07-01r   )names)r   r   r   r   )datar   rI   r4   )
r   r   r   from_productr   r9   r   rI   r   r:   )r   expected_match_level_arL   r   r+   rV   s         r,   'test_reindex_multiindex_automatic_levelr     sI    UFO5"b+E+E+EFFFF$
bBF8lL9:///  F ^^F##F 
///)bBF8lL%AB%oo   ,
 
 
 &A)bBF8lL%AB%oo   ,
 
 
 68,,,,,r.   )4numpyr   r_   pandasr   r   r   r   r   r   r	   r
   r   r   r   r   r   r   pandas._testing_testingr   r-   r@   rN   rW   re   ro   r{   r   r   r   r   r   r   r   r   r   markparametrizer   r   r   r9   r   r   r   r   r   r   r   r   r    r.   r,   <module>r     s7                                             ) ) )D	N 	N 	N	 	 	
- 
- 
-8 8 8.	0 	0 	0- - -$- - -- - -- - - 0 0 0, , , ' ' '- - -4- - -0- 0- 0-f #35F"GHH!YYq\\'BCC
- 
- DC IH
-
* 
* 
*& & & 1 VHg&&x(A(ABVHg&&x(A(A5I#J#rv		
 VHg&&x(A(ABVHg&&x(A(AB#J#J		
 "- -# "-# # #* * *- - - cUSENRH#=>>	- 	- ?>	-4 4 4
9 
9 
9 =,"?@@- - A@- "   - - - - -r.   