
    Mh{P                     ^    S SK rS SKrS SKJrJrJrJrJrJ	r	J
r
  S SKJr  S r " S S5      rg)    N)	DataFrameIndex
RangeIndexSeries
date_rangeperiod_rangetimedelta_rangec                     U [         L a)  [        [        R                  " [        U5      5      US9nU$ [	        [        R
                  R                  S5      R                  [        U5      [        U5      45      UUS9nU$ )Nindex   )r   columns)r   nparangelenr   randomdefault_rngstandard_normal)klassr   objs      S/var/www/html/env/lib/python3.13/site-packages/pandas/tests/indexing/test_floats.pygen_objr      sl    RYYs5z*%8 J II!!!$44c%j#e*5MN

 J    c                      \ rS rSrS r\R                  R                  S\" \	" S5      5      \" \	" S5      SS9\
" SSS	9\" S
SS	9\" SSS	9/5      S 5       r\R                  R                  S\" \	" S5      5      \" \	" S5      SS9\
" SSS	9\" S
SS	9\" SSS	9/5      S 5       rS r\R                  R                  S\" \R"                  " S5      \R$                  S9\" S5      /5      S 5       r\R                  R                  S\" \R"                  " S5      \R$                  S9\" S5      /5      S 5       rS r\R                  R                  S\" \	" S5      \S9\
" SSS	9\" S
SS	9\" SSS	9/5      \R                  R                  S\" SS5      \" SS5      \" SS5      /5      S 5       5       rS r\R                  R                  S\" SS5      \" SS5      \" SS5      /5      S 5       r\R                  R                  S\" \R"                  " S5      \R$                  S9\" S5      /5      S 5       r\R                  R                  S\" SS5      \" SS5      \" SS5      /5      \R                  R                  S\" \R"                  " S5      \R$                  S9\" S5      /5      S 5       5       r\R                  R                  S\" SS5      \" SS5      \" SS5      /5      S 5       rS rS r S  r!S!r"g")#TestFloatIndexers   c                     [        U[        5      (       a  UR                  U   nO*U(       a  UR                  SS2U4   nOUR                  U   n[        R                  " X5        g)zW
comparator for results
we need to take care if we are indexing on a
Series or a frame
N)
isinstancer   iloctmassert_almost_equal)selfresultoriginalindexergetitemexpecteds         r   checkTestFloatIndexers.check   sP     h''}}W-H}}QZ0H}}W-H
v0r   r   abcdecategorydtypez
2020-01-01   )periodsz1 dayc                    [        X!5      n[        R                  " [        SS9   U" U5      S     S S S 5        SU;  d   eUR	                  5       nSU" U5      S'   U[
        R                  L a  SUR                  S   ;   d   eg U[
        R                  L a  SUR                  S   ;   d   eg SUR                  S   ;  d   eSUR                  S   ;  d   eg ! , (       d  f       N= f)N^3.0$match      @
   r   )	r   pytestraisesKeyErrorcopyr    setitemaxesloc)r"   r   frame_or_series
indexer_slss2s         r   test_scalar_non_numeric)TestFloatIndexers.test_scalar_non_numeric,   s     O+ ]]873qM# 4 !||VVX 
2s#"''"+%%%266!"''!*$$$bggaj(((bggbk))) 43s   C
C'c                 6   [        [        R                  " [        U5      5      US9nSn[        R
                  " [        US9   US     S S S 5        [        R                  " [        SS9   US     S S S 5        g ! , (       d  f       N6= f! , (       d  f       g = f)Nr   ;Series.__getitem__ treating keys as positions is deprecatedr2      r1   r4   )
r   r   r   r   r    assert_produces_warningFutureWarningr7   r8   r9   )r"   r   r@   msgs       r   'test_scalar_non_numeric_series_fallback9TestFloatIndexers.test_scalar_non_numeric_series_fallbackO   sm     299SZ(6K''SAaD B]]873cF 43 BA33s   A9*B
9
B

Bc                 *   [        / SQ/ SQS9n[        / SQ/ SQS9n[        R                  " [        SS9   U" U5      S     S S S 5        [        R                  " [        SS9   U" U5      S     S S S 5        U" U5      S	   nS
nXE:X  d   e[        R                  " [        SS9   U" U5      S     S S S 5        U[        R
                  La2  Sn[        R                  " [        US9   US   nS S S 5        S
nXE:X  d   e[        R                  " [        SS9   U" U5      S     S S S 5        U" U5      S   nSnXE:X  d   eg ! , (       d  f       GN= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       Nh= f)N)   r   rF   )abcr   )rN   rO         ?z^1.0$r2         ?z^1\.0$rO   r   rE   rM   rQ   rF   )r   r7   r8   r9   r    r=   rG   rH   )r"   r?   rA   s3r#   r'   rI   s          r   test_scalar_with_mixed(TestFloatIndexers.test_scalar_with_mixedc   sO   I_5I_5 ]]873rN3 4 ]]895rN3 6 B$!!! ]]873rN3 4 RVV#OC++MEA FH%%%]]895rN3 6 B$!!!9 43 65 43 FE
 65s;   D?#E$E"&E3F?
E
E"
E03
F
Fc                    U[         R                  LnUn[        X%5      nU" U5      S   nU R                  XvSU5        [	        U[
        5      (       a  S nSn	OR[         R                  nU(       a  [        S[        [        U5      5      SS9n	O[        S[        [        U5      5      SS9n	UR                  5       n
SU" U
5      S'   U" U
5      S   nU" Xy5        U" U
5      S   nU" Xy5        g )Nr4   rF   c                     X:X  d   eg )N )xys     r   compare6TestFloatIndexers.test_scalar_integer.<locals>.compare   s    vvr   d   )r   nameg      Y@)
r    r=   r   r(   r   r   assert_series_equalranger   r:   )r"   r   r>   r?   r&   ir   r#   r[   r'   rA   s              r   test_scalar_integer%TestFloatIndexers.test_scalar_integer   s     BFF*
 o) C%

67+c6"" H,,G!#U3s8_1E!%uSXQGXXZ!
2sB$!B"!r   c                 *    [        X!5      nSU;   d   eg )Nr4   )r   )r"   r   r>   r   s       r   "test_scalar_integer_contains_float4TestFloatIndexers.test_scalar_integer_contains_float   s     o- czzr   c                    [        [        R                  " S5      5      n[        X5      nUS   n[        R
                  [        R                  4 H  nU[        R
                  LnU" U5      U   nU R                  XsSU5        UR                  5       nU" U5      U   nU R                  XsSU5        [        R                  " [        SS9   U" U5      S     S S S 5        M     SU;   d   eUR                  S   n	UR                  5       nXR                  S'   UR                  S   nU R                  XsSS5        g ! , (       d  f       M  = f)N      @rF   z^3\.5$r2         @r4   F)r   r   r   r   r    r=   r;   r(   r:   r7   r8   r9   r   )
r"   r>   r   r@   r%   idxrr&   r#   rA   r'   s
             r   test_scalar_float#TestFloatIndexers.test_scalar_float   s   biin%O+ (VVRZZ(D"&&(G !WW%FJJv!W- B"Xg&FJJv!W- xy9Q :9 )$ axx 66!9VVX


6a' :9s   
D::
E		idxr4      rF         @c                    [        X15      nU[        R                  L a  S[        U5      R                   S3nOS[        U5      R                   S3n[
        R                  " [        US9   U" U5      U     S S S 5        U[        R                  L a  Sn[
        R                  " [        US9   SU" U5      U'   S S S 5        g ! , (       d  f       NQ= f! , (       d  f       g = f)Nz!cannot do positional indexing on / with these indexers \[(3|4)\.0\] of type floatcannot do slice indexing on z8 with these indexers \[(3|4)(\.0)?\] of type (float|int)r2   zBslice indices must be integers or None or have an __index__ methodr   )r   r    r   type__name__r7   r8   	TypeError)r"   r   rm   r>   indexer_slir@   rI   s          r   test_slice_non_numeric(TestFloatIndexers.test_slice_non_numeric   s     O+ "''!E{++, - E{++, -''  ]]9C0N3 1 "''!VC]]9C0"#KN3 10 10 10s   +C-C
C
C!c           	         [        [        R                  " S[        R                  S95      S4[	        S5      S4[        [        R                  " S[        R                  S9S-   5      S44 GH  u  p[        [        S5      US9n[        SS5      [        S	S
5      [        SS
5      4 HE  nUR                  U   nU(       a  [        SS5      nO[        S	S5      nU R                  XSUS5        MG     [        SS5      [        SS5      4 HE  nUR                  U   nU(       a  [        SS5      nO[        SS5      nU R                  XSUS5        MG     S[        U5      R                   S3n[        R                  " [        US9   U[        SS5           S S S 5        [        SS5      [        S	S5      4[        SS5      [        SS5      4[        SS5      [        S	S5      44 H|  u  pHUR                  U   nU(       a  [        SS5      n	OUn	U R                  XSU	S5        S[        U5      R                   S3n[        R                  " [        US9   X4     S S S 5        M~     GM     g ! , (       d  f       N= f! , (       d  f       M  = f)Nr.   r,   Fr5   Tr   r4   rn   rF   ro   r   i   g      g      @rr   z, with these indexers \[-6\.0\] of type floatr2         @r   ri   z/ with these indexers \[(2|3)\.5\] of type float)r   r   r   int64r   r   r`   slicer=   r(   rs   rt   r7   r8   ru   )
r"   r   oobr@   rm   r#   r%   rI   res1ress
             r   test_slice_integer$TestFloatIndexers.test_slice_integer  s<    299Qbhh/0%8]E"299Qbhh/"45t<
JE uQxu-A c1uQ}eCoFs
 #AqkG#AqkG

6gu5 G b!eD#&67s
 #AqkG#BlG

6gu5 8E{++, - 
 y4%c"# 5
 sAa,q#a,sC%1+.	
 s1+CC

6c51;//0 1!! 
 ]]9C8F 98'Y
P 54. 98s   I)I:)
I7	:
J	r          @c                    [        [        SS5      [        SS5      S9nUSS nUR                  SS n[        R                  " X45        [
        nSUR                   S3n[        R                  " [        US9   X!     SSS5        [        R                  " [        US9   UR                  U     SSS5        g! , (       d  f       N@= f! , (       d  f       g= f)	zMmake sure that we are raising on positional indexing
w.r.t. an integer index
r   rz   r   rn   z)cannot do (slice|positional) indexing on z/ with these indexers \[(2|4)\.0\] of type floatr2   N)
r   r`   r   r    r_   r   rt   r7   r8   ru   )r"   rm   r@   r#   r'   r   rI   s          r    test_integer_positional_indexing2TestFloatIndexers.test_integer_positional_indexingL  s    
 5A;eAqk21Q66!A;
v0>>" # 	
 ]]9C0F 1]]9C0FF3K 10 1000s   8B7C7
C
Cc           	         [        [        R                  R                  S5      R	                  S5      US9n[        SS5      [        SS5      [        SS5      4 Hp  nUR                  U   n[        SS5      nU R                  XBUS5        S	[        U5      R                   S
3n[        R                  " [        US9   X#     S S S 5        Mr     [        SS5      [        SS5      4 H/  nUR                  U   nU R                  XB[        SS5      S5        M1     S	[        U5      R                   S3n[        R                  " [        US9   U[        SS5           S S S 5        [        SS5      [        SS5      4[        SS5      [        SS5      4[        SS5      [        SS5      44 Hf  u  p7UR                  U   nU R                  XBUS5        S	[        U5      R                   S3n[        R                  " [        US9   X#     S S S 5        Mh     g ! , (       d  f       GM  = f! , (       d  f       N= f! , (       d  f       M  = f)Nr   r.   r   r           rM   r   rR   Frr   z/ with these indexers \[(0|1)\.0\] of type floatr2   ir5   g      $      $@Tz- with these indexers \[-10\.0\] of type floatg      ?rQ   z+ with these indexers \[0\.5\] of type float)r   r   r   r   r   r}   r=   r(   rs   rt   r7   r8   ru   )r"   r   r@   rm   r#   r%   rI   r   s           r    test_slice_integer_frame_getitem2TestFloatIndexers.test_slice_integer_frame_getitemb  s	   
 bii++A.>>vFeT #qM5C=%S/BCUU3ZFAqkGJJv'51E{++, - 
 y4 54 C #rNE%$67CUU3ZFJJv%R.$7 8;''( ) 	
 ]]9C0eE4 ! 1
 3]E!QK(1c]E!QK(3_eAqk*
HC
 UU3ZFJJv#u-E{++, - 
 y4 54
% 54 10$ 54s$   =HH(H9
H%	(
H69
I	c                 >   [        [        R                  R                  S5      R	                  S5      US9nUR                  5       nSUR                  U'   UR                  U   R                  R                  5       nUS:H  R                  5       (       d   eS[        U5      R                   S3n[        R                  " [        US9   SX1'   S S S 5        [        R                  " [        US9   X1     S S S 5        g ! , (       d  f       N5= f! , (       d  f       g = f)Nr   r   r   r   rr   rq   r2   )r   r   r   r   r   r:   r=   valuesravelallrs   rt   r7   r8   ru   )r"   rm   r   r@   scr#   rI   s          r   2test_float_slice_getitem_with_integer_index_raisesDTestFloatIndexers.test_float_slice_getitem_with_integer_index_raises  s     bii++A.>>vFeT VVXs##))+!  """";''( ) 	
 ]]9C0AF 1 ]]9C0F 10 10 10s   	C=/D=
D
Dc                    [        [        R                  " S5      5      S-   n[        X$5      nUR                  SS nU" U5      U   n[        U[        U5      5      (       d   e[        R                  " Xv5        UR                  5       nSU" U5      U'   U" U5      U   R                  R                  5       nUS:H  R                  5       (       d   eg )Nrh   g?rF   rn   r   )r   r   r   r   r   r   rs   r    assert_equalr:   r   r   r   )	r"   rm   r>   r?   r   r@   r'   r#   rA   s	            r   test_slice_float"TestFloatIndexers.test_slice_float  s     biin%+O+66!A; As#&$q'****
) VVX
2sB$++113!  """"r   c                     [        / SQ5      n[        [        S5      US9nUS   S:X  d   eUR                  S   S:X  d   eUR                  S   S:X  d   eg )N)rQ   r   rF   g      @r.   r.   r   rF   r   )r   r   r`   r=   r   )r"   r   r@   s      r   test_floating_index_doc_example1TestFloatIndexers.test_floating_index_doc_example  sU    )*585)tqyyuuQx1}}vvayA~~r   c                    [        [        R                  " S5      [        R                  " S5      S-  [        R                  S9nU" U5      SS n[        SS/S9n[        R
                  " X45        U" U5      S   nUS	:X  d   eU" U5      S   nUS	:X  d   e[        R                  " [        S
S9   U" U5      S     S S S 5        [        S	S/[        SS/[        R                  S9S9nSS/[        R                  " SS/5      4 H#  n[        R
                  " U" U5      U   U5        M%     [        S	S/[        SS/SS9S9nSS/[        R                  " SS/5      4 H#  n[        R
                  " U" U5      U   U5        M%     U[        R                  L a  [        OS nSn[        R                  " XgS9   U" U5      S	S nS S S 5        U" U5      SS n	U" U5      SS n
U" U5      SS n[        R
                  " WU	5        [        R
                  " X5        [        R
                  " X5        [        SS	/SS/S9n[        R                  " XgS9   U" U5      S	S nS S S 5        [        R
                  " X45        U" U5      / SQ   nUR                  / SQ   n	[        R
                  " X5        [        R                  " [        SS9   U" U5      / SQ     S S S 5        [        R                  " [        SS9   U" U5      / SQ     S S S 5        U" U5      SS/   n[        R
                  " U[        SS	/SS/S95        U" U5      S/   n[        R
                  " U[        S/S/S95        g ! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN9= f! , (       d  f       N= f! , (       d  f       N= f)Nr.   r{   )r   r-   rR   r4   rM   r   rh   r   z^4$r2   rn   r   r   r,   float64z3The behavior of obj\[i:j\] with a float-dtype indexr   g @)r   r.   r5   )r   r   rn   znot in index)g?r.   r5   )r   rM   r   )r   r   r   r|   r    r_   r7   r8   r9   r   r   arrayr;   rH   rG   r   )r"   r?   r@   r#   r'   	fancy_idxwarnrI   result1result2result3result4s               r   test_floating_misc$TestFloatIndexers.test_floating_misc  s9    299Q<ryy|c'9J As3'!C5)
v0 As#{{Aq!{{
 ]]862qM! 3
 1a&sCj

(KL*bhhSz&:;I"":a=#;XF < 1a&q!fI(FGa&"((Aq6"23I"":a=#;XF 4 !+bjj 8}dD ''8 mAa(G 9Q-C(Q-A&Q-A&
w0
w0
w01a&c
3''8]1Q'F 9 	v0 Q--&&#
w0]]8>:qM,' ; ]]8>:qM)$ ; AQx(
vvq!fS#J'GHAu%
vvqc#'?@_ 32" 98 98 ;: ;:s<   0M)5M;NN5N0)
M8;
N

N
N-0
N>c                    Un0 SS_SS_SS_SS_S	S
_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_0 SS_SS_SS_S S_S!S_S"S#_S$S_S%S&_S'S_S(S)_S*S_S+S,_S-S_S.S_S/S_S0S1_S2S_E0 S3S4_S5S_S6S7_S8S_S9S:_S;S_S<S_S=S_S>S?_S@S_SASB_SCS_SDSE_SFS_SGSH_SIS_SJSK_E0 SLS_SMSN_SOSP_SQSR_SSS_STSU_SVS_SWSX_SYS_SZS_S[S_S\S]_S^S__S`Sa_SbS_ScSd_SeS_E0 SfSg_ShSP_SiSj_SkS_SlS_SmS_SnSo_SpS_SqSr_SsS_StSu_SvS_SwSx_SySP_SzS_S{S_S|S}_E0 S~S_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_E0 SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_E0 SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_ESSSSSSSSSSSSSS.En[        X2S9nUR                  5       nUR                  R                  U:X  d   e[	        U5        g )N   g     "@rM   g     S@r   g     8@rF   r   rn   g     w@r.   rz   g     p@      	   r5   g     @      g      8@      g     @      g     @Y@      g    @            g     "@      g     {@      g    @   r   g     Ȇ@             g     \@!   "   g     @#   $   g     v@%   &   g     .@'   (   )   *   g     @+   ,   g     @-   .   g     @/   0   g     @1   2   g     @3   4   g     @5   g     Q@6   g     0@7   8   g     @t@9   :   g     @;   <   =   >   g     *@?   r   @   g      E@A   B   g     @@C   D   g      V@E   F   g     @G   H   I   J   g    @K   L   g     u@M   N   g    @O   P   g     w@Q   R   S   T   g     r@U   V   g     x@W   g      @X   g     v@Y   Z   g    t@[   g      "@\   ]   ^   g     @_   `   g     ȏ@a   b   g     @c   r]   g     &@e   f   g     @g   h   i   j   k   l   m   n   o   p   q   r   s   t   u   v   w   x   y   z   {   |   }   ~   g     @   g      6@   g     p@   i  g     h@i  i	  i  i  i
  g     @g     @g     8@g     `d@g     +@g     0@g     @)i  i  i  i  i  i  i                    r,   )r   value_countsr   r-   str)r"   float_numpy_dtyper-   serr@   r#   s         r   test_floatindex_slicing_bug-TestFloatIndexers.test_floatindex_slicing_bug  s.   !V
V
tV
 vV
 s	V

 uV
 sV
 uV
 sV
 sV
 sV
 V
 V
 V
 V
 V
  !V
" #V
$ %V
& 'V
( )V
* +V
, -V
. /V
0 1V
2 3V
4 5V
6 7V
8 9V
: ;V
< =V
> ?V
@ AV
B CV
D EV
F GV
H IV
J KV
L MV
N OV
P QV
R SV
T UV
V WV
X YV
Z [V
\ ]V
^ _V
` aV
b cV
d eV
f gV
h iV
j kV
l mV
n oV
p qV
r sV
t uV
v wV
x yV
z {V
| }V
~ V
@ AV
B CV
D EV
F GV
H IV
J KV
L MV
N OV
P QV
R SV
T UV
V WV
X YV
Z [V
\ ]V
^ _V
` aV
b cV
d eV
f gV
h iV
j kV
l mV
n oV
p qV
r sV
t uV
v wV
x yV
z {V
| }V
~ V
@ AV
B CV
D EV
F GV
H IV
J KV
L MV
N OV
P QV
R SV
T UV
V WV
X YV
Z [V
\ ]V
^ _V
` aV
b cV
d eV
f gV
h iV
j kV
l mV
n oV
p qV
r sV
t uV
v wV
x yV
z {V
| }V
~ V
@ AV
B CV
D EV
F GV
H IV
J KV
L MV
N OV
P QV
R kV
r 3$!||!!U***Fr   rX   N)#rt   
__module____qualname____firstlineno__r(   r7   markparametrizer   listr   r	   r   rB   rJ   rT   r   r   r|   r   rb   re   rk   objectr}   rw   r   r   r   r   r   r   r   r*  __static_attributes__rX   r   r   r   r      sB   1 [[$w- $w-z2|Q/GQ/q1	
	*	*2 [[$w- $w-z2|Q/GQ/q1	
		""H [[%		!BHH5z!}E""""H [[%		!BHH5z!}E!(F [[$w-v.|Q/GQ/q1		
 [[UU3]E!SM5c?$ST$ U$>EN [[UU1c]E#qM5c?$ST U* [[%		!BHH5z!}E11f [[UU3]E!SM5c?$ST[[%		!BHH5z!}E U, [[UU3]E!SM5c?$ST# U#$DAL_r   r   )numpyr   r7   pandasr   r   r   r   r   r   r	   pandas._testing_testingr    r   r   rX   r   r   <module>r8     s0        	U
 U
r   