
    Mh(s                     v   S SK r S SKrS SKJr  S SKrS SKJs  Jr  S SK	r
S SK	JrJrJrJrJrJr  S SKJr  \R(                  " / SQS9S 5       r\R(                  " SS/S9S	 5       r\R(                  " S
 \/SS/S9S 5       r\R(                  " SS/S9S 5       r\R(                  " SS/S9S 5       r\R(                  " S \R6                  4S \R8                  4S \R:                  4/S9S 5       r\R>                  RA                  S0 S\RB                  04SSS.S\RD                  04/5      S 5       r#\R>                  RA                  SS\RH                  " S\RJ                  " S5      S9/5      \R>                  RA                  S S!S"/5      S# 5       5       r&\R>                  RA                  S$/ S%Q/ S&Q/ S'Q/5      S( 5       r'\R>                  RA                  S)/ S*QS+4/ S,QS-4/5      S. 5       r(\R>                  RA                  S/S0/ S*Q4SS1S2\RR                  /4/5      \R>                  RU                  S35      S4 5       5       r+\R>                  RA                  S5S6S0/ S7Q4SS8S9\RR                  /4/5      \R>                  RU                  S35      S: 5       5       r,S; r-\R>                  RA                  S</ S%QS\RB                  04/ S&Q0 4/ S'Q0 4/5      S= 5       r.\R>                  RA                  S>SS?00 /5      S@ 5       r/\R>                  RA                  SASBSBSC//5      SD 5       r0\R>                  RA                  SE\ Rb                  " SF5      S8/\ Rb                  " SG5      SH/SFS8/SGSH/4\Rd                  " \ Rb                  " SF5      S8/5      SH/SFS8/SH/4/5      SI 5       r3SJ r4\R>                  RU                  S35      SK 5       r5\R>                  RA                  SL/ SMQ5      SN 5       r6\R>                  RU                  S35      SO 5       r7\R>                  RU                  S35      SP 5       r8\R>                  RU                  S35      SQ 5       r9\R>                  RA                  SRSSS0ST 4SSU 4/5      \R>                  RU                  S35      SV 5       5       r:\R>                  RA                  S$/ SWQS8\RR                  SX\RR                  //5      SY 5       r;\R>                  RA                  SZ/ S[Q\Rd                  " / SWQS\S]94/ S^Q\Rd                  " / S_Q5      4/5      S` 5       r<Sa r=Sb r>Sc r?\R>                  RA                  SdSeS0\" SfSg/S8Sh/5      4S\" \RR                  S8\RR                  /5      4/5      \R>                  RU                  S35      Si 5       5       r@Sj rASk rB\R>                  RA                  S$/ SlQ/ SWQ\Rd                  " / SmQSnS]9/5      \R>                  RA                  So0 \RB                  4SpS0\RB                  4SpSq0\R                  " \R                  5      R                  4SpSr0\R                  " \R                  Ss   S    5      4/5      St 5       5       rG\R>                  RA                  SuSSv/5      \R>                  RA                  S$/ SlQ/ SWQ\Rd                  " / SmQSnS]9/5      Sw 5       5       rHSx rISy rJ\R>                  RU                  Sz5      \R>                  RA                  Sp/ S{Q5      \R>                  RA                  S|/ S}Q\Rd                  " / S~Q\R                  S]94/ SQ\Rd                  " / SQ\R                  S]94/5      S 5       5       5       rL\R>                  RA                  SS\R                  4Sv\R                  4Sr\R                  4/5      S 5       rO\R>                  RA                  SSS\" \RD                  5      R                  \" \RD                  5      R                  /4SS\" \R                  5      R                  \" \R                  5      R                  /4SS\" \R                  5      R                  \" \R                  5      R                  /4S\S\" \RB                  5      R                  \" \RB                  5      R                  /4SSr\" \R                  5      R                  \" \R                  5      R                  /4SSr\" \R                  5      R                  \" \R                  5      R                  /4SSr\" \R                  5      R                  \" \R                  5      R                  /4SSr\" \R                  5      R                  \" \R                  5      R                  /4SS\" \RD                  5      R                  \" \RD                  5      R                  S1-   /4SS\" \R                  5      R                  \" \R                  5      R                  S1-   /4S\S\" \R                  5      R                  \" \R                  5      R                  S1-   /4SS\" \RD                  5      R                  S1-
  \" \R                  5      R                  /4SS\" \R                  5      R                  S1-
  \" \R                  5      R                  /4S\S\" \R                  5      R                  S1-
  \" \RB                  5      R                  /4SSr\" \R                  5      R                  \" \R                  5      R                  S1-   /4SSr\" \R                  5      R                  \" \R                  5      R                  S1-   /4SSr\" \R                  5      R                  \" \R                  5      R                  S1-   /4/5      S 5       rVS rW\R>                  RA                  S\" S S/5      \" S S/\R                  S]94/5      S 5       rX\R>                  RA                  SE/ SQSS\RR                  \RR                  S/4/ SQSS\RR                  /4/5      S 5       rY\R>                  RA                  S5S0\" / SQ5      4S/5      \R>                  RU                  S35      S 5       5       rZ\R>                  RA                  S/ SQ5      \R>                  RA                  S/ SQ5      S 5       5       r[S r\\R>                  RA                  S/ SQ5      S 5       r]\R>                  RA                  S/ SQ\" S1Sg\RR                  /SS]94/ S[Q\" / SWQSS]94/ SQ\" / SWQSS]94/ SQ\" / SQSS]94/ SQ\" S1\RR                  S/SS]94/ SQ\" / SQSS]94/5      S 5       r^S r_S r`\R>                  RA                  SS1S1/SSS4S8\
R                  /SSS4S8S/SSS4S1\
R                  /SSS4SS/SSS4S1S1/SSS4\R                  " \RB                  5      R                  S1-
  S1/SSS4S1S1/SSvS4S8S8/SSvS4S8S/SSvS4S1\
R                  /SSvS4SS/SSvS4\R                  " \R                  5      R                  S1-
  S1/SSvS4S1S1/SSrS4S8S8/SSrS4S8S/SSrS4S1\
R                  /SSrS4SS/SSrS4SS/SSrS4S1S1/SSqS4S1S/SSqS4S1S1/SSqS4S1S/SSqS445      S 5       rbS rcS rd\R>                  RA                  SLSS/5      S 5       re\R>                  RA                  S/ SQ5      S 5       rf\R>                  RA                  S/ SQ5      S 5       rg\R>                  RA                  S/ SQ5      S 5       rh\R>                  RA                  SSS/SS//5      S 5       ri\R>                  RA                  S/ SQ5      S 5       rjS rkS rlS rmg)    N)iinfo)
ArrowDtype	DataFrameIndexSeriesoption_context
to_numeric)Nignoreraisecoerce)paramsc                     U R                   $ Nparamrequests    T/var/www/html/env/lib/python3.13/site-packages/pandas/tests/tools/test_to_numeric.pyerrorsr          ==    TFc                     U R                   $ r   r   r   s    r   signedr      r   r   c                     U $ r    xs    r   <lambda>r      s    !r   identitystr)r   idsc                     U R                   $ r   r   r   s    r   	transformr#      r   r   l   N"2) l      Fx:^V c                     U R                   $ r   r   r   s    r   	large_valr%   $   r   r   c                     U R                   $ r   r   r   s    r   multiple_eltsr'   )   r   r   c                     [        U SS9$ )Nidxname)r   r   s    r   r   r   0   s    5'r   c                     [        U SS9$ )Nserr*   )r   r   s    r   r   r   1   s    6!%(r   c                 T    [         R                  " [        U 5      R                  5      $ r   )nparrayr   valuesr   s    r   r   r   2   s    288E!HOO,r   c                     U R                   $ r   r   r   s    r   transform_assert_equalr3   .   s     ==r   zinput_kwargs,result_kwargsdtyper   integerr   downcastc                 |    [        / [        S9n[        U40 U D6n[        / 40 UD6n[        R                  " X45        g Nr4   r   objectr	   tmassert_series_equal)input_kwargsresult_kwargsr-   resultexpecteds        r   
test_emptyrC   9   s<     6
"C,|,Fb*M*H6,r   infer_stringpyarrow)markslast_val7   c                     [        SU5         [        SSU /5      n[        U5      nS S S 5        [        / SQ5      n[        R                  " WU5        g ! , (       d  f       N3= f)Nzfuture.infer_string1-3.14   Q	rI   )r   r   r	   r=   r>   )rG   rD   r-   rA   rB   s        r   test_seriesrP   I   sS    
 
-|	<c7H-.C 
= m$H68, 
=	<s   A
A"data)rN            )      ?      @      @g      @)TFTTc                 n    [        U [        S5      SS9n[        U5      n[        R                  " X!5        g )NABCDEFG)indexr+   )r   listr	   r=   r>   )rQ   r-   rA   s      r   test_series_numericr]   V   s-     T&\
6C_F6'r   zdata,msgrN   rO   apple,Unable to parse string "apple" at position 2)orangerN   rO   r_   z-Unable to parse string "orange" at position 0c                     [        U 5      n[        R                  " [        US9   [	        USS9  S S S 5        g ! , (       d  f       g = f)Nmatchr   r   r   pytestraises
ValueErrorr	   )rQ   msgr-   s      r   
test_errorrk   f   s1     ,C	z	-3w' 
.	-	-s	   9
Azerrors,exp_datar
   rN   rO   z2ignore:errors='ignore' is deprecated:FutureWarningc                 r    [        / SQ5      n[        X S9n[        U5      n[        R                  " X45        g )Nr^   re   r   r	   r=   r>   )r   exp_datar-   rA   rB   s        r   test_ignore_errorro   w   s1    
 $
%C+FhH6,r   z
errors,exp)r   r`   TFr_   rU   g        c                    [        / SQ5      n[        U[        5      (       a,  [        R                  " [
        US9   [        X S9  S S S 5        g [        X S9n[        U5      n[        R                  " X45        g ! , (       d  f       g = f)Nrp   rc   re   	r   
isinstancer    rg   rh   ri   r	   r=   r>   )r   expr-   rA   rB   s        r   test_bool_handlingru      sf     '
(C#s]]:S1s* 21 C/#;
v0 21s   
A::
Bc                  ~    / SQn [        U 5      n[        R                  " / SQ5      n[        R                  " X5        g )N)rK   rL   rH   rM   r	   r/   r0   r=   assert_numpy_array_equal)r-   resrB   s      r   	test_listrz      s,    
C
S/Cxx&H.r   zdata,arr_kwargsc                 t    [        U 5      n[        R                  " U 40 UD6n[        R                  " X#5        g r   rw   )rQ   
arr_kwargsrA   rB   s       r   test_list_numericr}      s/     Fxx+
+H1r   kwargsOc                 |    / SQn[        U40 U D6n[        U5      n[        U5      n[        R                  " X45        g )NrM   rm   )r~   rQ   r-   rA   rB   s        r   test_numericr      s6    D

 
 C_Fd|H6,r   columnsabc                 >   [        S[        R                  " S5      [        R                  " S5      S// SQS.5      n[        SS[        R                  S// SQS.5      nUR                  5       nX0   R                  [        5      X0'   [        R                  " X25        g )Ng333333?Q	@infinityz0.1)rU   g       @rV   rW   r   r   皙?)
r   decimalDecimalr/   infcopyapplyr	   r=   assert_frame_equal)r   dfrB   df_copys       r   test_numeric_df_columnsr      s     
wt,gooj.I5Q%	

B T26637>RSTHggiG'--j9G',r   zdata,exp_datar   g?r   c                     [        SU 05      nUS   R                  [        5      US'   [        SU05      n[        R                  " X#5        g )Nr   )r   r   r	   r=   r   )rQ   rn   r   rB   s       r   test_numeric_embedded_arr_likesr      sD     
C;	BgmmJ'BsG#x)H"'r   c                      [        / SQ5      n [        U SS9n[        [        R                  [        R                  [        R                  /5      n[        R
                  " X5        g )N)r   r   cr   re   )r   r	   r/   nanr=   r>   )r-   rA   rB   s      r   test_all_nanr      sC    

!CH-Frvvrvvrvv./H6,r   c                     [        / SQ/ SQS.5      nU b  SU 0O0 n[        R                  " [        SS9   [	        U40 UD6  S S S 5        g ! , (       d  f       g = f)NrM   )456r   r   z	1-d arrayrc   )r   rg   rh   	TypeErrorr	   )r   r   r~   s      r   test_type_checkr      sK     
_=	>B#)#5h2F	y	42   
5	4	4s   A
Aval)rN   皙?i!N  c                 \    U(       a  U * OU n [        U" U 5      5      [        U 5      :X  d   eg r   r	   float)r   r   r#   s      r   test_scalarr      s(    3$cCin%s333r   c                 r   Ub  SU0O0 nU(       a  U * OU nU" U5      n[        U[        5      nU(       a7  US;   a1  Sn[        R                  " [        US9   [        U40 UD6  S S S 5        g US:X  a  U(       a  [        U5      OUn[        R                  " [        U40 UD6U5        g ! , (       d  f       g = f)Nr   Nr   #Integer out of range. at position 0rc   r   )	rs   r    rg   rh   ri   r	   r   r=   assert_almost_equal)	r%   r   r#   r   r~   r   val_is_stringrj   rB   s	            r   test_really_large_scalarr      s     $*#5h2F9*IC
C.CsC(M?23]]:S1s%f% 21 #)H"45:S
z#88(C	 21s   B((
B6c                    Ub  SU0O0 nU(       a  U * OU nU" U5      nSnU/X7/-  -   n[        U[        5      n	US:H  n
US;   aI  U	(       d  U(       a;  U	(       a  SnOSn[        R                  " [        US9   [        U40 UD6  S S S 5        g [        U40 UD6nU
(       a  U	(       a  [        U5      OUnU/nU(       aE  U
(       a&  UR                  [        R                  5        [        nO?UR                  U5        [        nO'[        U[        [        45      (       a  [        O[        n[        R                  " U[        R                  " XS95        g ! , (       d  f       g = f)	Nr   stringr   r   r   z-Unable to parse string "string" at position 1rc   r:   )rs   r    rg   rh   ri   r	   r   appendr/   r   r<   intr=   r   r0   )r%   r   r#   r'   r   r~   r   	extra_eltarrr   coercingrj   rA   exp_valrB   	exp_dtypes                   r   test_really_large_in_arrr     s    $*#5h2F9*IC
C.CI%-+-
-CsC(M!H m}7CAC]]:S1s%f% 21 C*6*!)m%*#9'!		*"	!+Gc5\!B!BI
vrxx'JK% 21s   7E
E"c                    Ub  SU0O0 n[        U(       a  U * OU 5      /nU(       a  UR                  SU 5        US;   a?  [        U5      nSU 3n[        R                  " [
        US9   [        U40 UD6  S S S 5        g [        U40 UD6nUS:X  a"  U V	s/ s H  n	[        U	5      PM     n
n	[        nOUn
[        n[        R                  " U[        R                  " XS95        g ! , (       d  f       g = fs  sn	f )Nr   r   r   z"Integer out of range. at position rc   r   r:   )r    insertr   rg   rh   ri   r	   r   r<   r=   r   r/   r0   )r%   r   r'   r   r~   r   r[   rj   rA   irB   r   s               r   #test_really_large_in_arr_consistentr   :  s     $*#5h2FV	z3
4C

1i  M"25':]]:S1s%f% 21 C*6*X*-.#Qa#H.IHI
vrxx'JK 21 /s   (C$C5$
C2zerrors,checker)r   z+Unable to parse string "fail" at position 0c                     U S:H  $ )Nfailr   r   s    r   r   r   ]  s    Q&[r   c                 .    [         R                  " U 5      $ r   )r/   isnanr   s    r   r   r   ^  s    RXXa[r   c                     Sn[        U[        5      (       a,  [        R                  " [        US9   [        X S9  S S S 5        g U" [        X S95      (       d   eg ! , (       d  f       g = f)Nr   rc   re   )rs   r    rg   rh   ri   r	   )r   checkerscalars      r   test_scalar_failr   Y  sU     F'3]]:W5v- 65 z&89999 65s   
A
A)rN      rR   rR   c                 B    Uu  p#U" U 5      n [        U 5      nU" X@5        g r   r	   )rQ   r3   r#   assert_equalrA   s        r   test_numeric_dtypesr   l  s%    4IT?DFr   zdata,exp)rK   23int64r:   )z1.5z2.7z3.4)      ?g@g333333@c                 N    Uu  p4[        U" U 5      5      nU" U5      nU" XV5        g r   r   )rQ   rt   r3   r#   r   rA   rB   s          r   test_strr   u  s+     5I	$(F~H"r   c                     Uu  p#[         R                  " SSU S9n[        U" U5      5      nU" UR                  5      nU" XV5        g )N20130101rR   )periodstz)pd
date_ranger	   asi8)tz_naive_fixturer3   r#   r   r)   rA   rB   s          r   test_datetime_liker     sA    4I
--
A2B
CC	#'F"H"r   c                     U u  p[         R                  " SSSS9n[        U" U5      5      nU" UR                  5      nU" XE5        g )Nz1 daysrR   D)r   freq)r   timedelta_ranger	   r   )r3   r#   r   r)   rA   rB   s         r   test_timedeltar     sB    4I


Xqs
;C	#'F"H"r   c                    Uu  p#[         R                  " SSSSS9nU" U5      n[        U[        5      (       d,  U R	                  [
        R                  R                  SS95        [        U5      nU" UR                  5      nU" Xg5        g )Nz2011-01rR   M )r   r   r+   z)Missing PeriodDtype support in to_numeric)reason)
r   period_rangers   r   applymarkerrg   markxfailr	   r   )r   r3   r#   r   r)   inprA   rB   s           r   test_periodr     sy    4I
//)QSr
BC
C.Cc5!!KK%PQ	
 _F"H"r   zerrors,expected)r   z!Invalid object type at position 0      $@r   r_   c                    [        SS/SS/5      n[        U[        5      (       a,  [        R                  " [
        US9   [        X S9  S S S 5        g [        X S9n[        R                  " X15        g ! , (       d  f       g = f)Nr   r   rU   r_   rc   re   )	r   rs   r    rg   rh   r   r	   r=   r>   )r   rB   r-   rA   s       r   test_non_hashabler     sg     4)S'*
+C(C  ]]9H5s* 65 C/
v0	 65s   
A22
B c                      / SQn SnSn[         R                  " [        US9   [        XS9  S S S 5        g ! , (       d  f       g = f)NrK   r   rR   zunsigned-integerz#invalid downcasting method providedrc   r7   rg   rh   ri   r	   )rQ   invalid_downcastrj   s      r   test_downcast_invalid_castr     s4    D)
/C	z	-43 
.	-	-	   
5
Ac                      / SQn SnSn[         R                  " [        US9   [        XS9  S S S 5        g ! , (       d  f       g = f)Nr   invalidzinvalid error value specifiedrc   re   r   )rQ   invalid_error_valuerj   s      r   test_errors_invalid_valuer     s4    D#
)C	z	-44 
.	-	-r   r   )z
1970-01-02z
1970-01-03z
1970-01-04zdatetime64[D]zkwargs,exp_dtyper7   r   unsignedUnsignedIntegerc                 v    [        U 40 UD6n[        R                  " / SQUS9n[        R                  " X45        g )Nr   r:   rw   )rQ   r~   r   rA   rB   s        r   test_downcast_basicr     s1    , ''Fxx	3H1r   signed_downcastr   c                     [         R                  " [         R                  S   S   5      n[         R                  " / SQUS9n[	        XS9n[
        R                  " XC5        g )NIntegerr   r   r:   r   )r/   r4   	typecodesr0   r	   r=   rx   )rQ   r   smallest_int_dtyperB   ry   s        r   test_signed_downcastr     sJ     ",,y"9!"<=xx	);<H
T
4C.r   c                      / SQn [         R                  " U [        S9nSn[        R                  " [
        US9   [        U SSS9nS S S 5        [        R                  " WU5        g ! , (       d  f       N&= f)N)foor   rR   r:   errors='ignore' is deprecatedrc   r
   r   r6   )r/   r0   r<   r=   assert_produces_warningFutureWarningr	   rx   )rQ   rB   rj   ry   s       r   !test_ignore_downcast_invalid_datar    sZ     DxxF+H
)C		#	#M	=hD 
>X. 
>	=s   A%%
A3c                      / SQn [         R                  " / SQ[         R                  S9n[        U SS9n[        R
                  " X!5        g )N)z-1r   rR   )r   rR   r:   r   r   )r/   r0   r   r	   r=   rx   )rQ   rB   ry   s      r   $test_ignore_downcast_neg_to_unsignedr    s7     Dxx
"((3H
TJ
/C.r   z7ignore:invalid value encountered in cast:RuntimeWarning)r5   r   r   zdata,expected)z1.1r   rR   )r   r   rR   )g     @i N  i  gR@iP  g     j@c                 B    [        XS9n[        R                  " X15        g Nr   )r	   r=   rx   )rQ   rB   r7   ry   s       r   )test_ignore_downcast_cannot_convert_floatr    s    " T
-C.r   zdowncast,expected_dtypec                 x    / SQn[         R                  " / SQUS9n[        X S9n[        R                  " XC5        g )N)256    )   r  r  r:   r   )r/   r0   r	   r=   rx   )r7   expected_dtyperQ   rB   ry   s        r   test_downcast_not8bitr  (  s1     Dxx~>H
T
-C.r   zdtype,downcast,min_maxint8int16int32uint8uint16uint32uint64c                 N    [        [        U5      US9nUR                  U :X  d   eg r  )r	   r   r4   )r4   r7   min_maxseriess       r   test_downcast_limitsr  5  s&    0 w(;F<<5   r   c                      [        S[        R                  " [        R                  5      R                  [        R
                  /[        R                  S9n [        U SS9nU R                  UR                  :X  d   eg )Ng     pAr:   r   r   )r   r/   finfofloat64maxr   r	   r4   )r  rA   s     r    test_downcast_float64_to_float32r  Q  sR    Z"**!5!9!9266B"**UF1F<<6<<'''r   zser,expectedl            c                 D    [        U SS9n[        R                  " X!5        g )Nr   r   )r	   r=   r>   )r-   rB   rA   s      r   test_downcast_uint64r!  Y  s     j1F6,r   )   ,  r   NaN     p;6$ r"  r#  r%  12345678901234567890
1234567890ITEMl   
>V3&Z
 iIc                 r    [        [        U 5      SS9n[        U[        S9n[        R                  " X#5        g )Nr   re   r:   )r	   r   r   r=   r>   )rQ   rn   rA   rB   s       r   test_coerce_uint64_conflictr+  k  s.    $ tX6Fhe,H6,r   )r   Unable to parse stringc                     [        / SQ5      n[        U[        5      (       a,  [        R                  " [
        US9   [        X S9  S S S 5        g [        X S9n[        R                  " X25        g ! , (       d  f       g = f)Nr&  rc   re   rr   )r   rt   r-   rA   s       r   test_non_coerce_uint64_conflictr.    s]     ?
@C#s]]:S1s* 21 C/
v+	 21s   
A//
A=dc1)r5   r   r   dc2c                 P    [         R                  " [        / U S9[        / US9SS9  g )Nr   F)check_dtype)r=   rx   r	   )r/  r0  s     r   test_downcast_emptyr3    s)    
 2$2$r   c                      [        SSS9n [        R                  " U 5      (       d   e[        SS[        R                  /5      n[        [        / SQ5      SS9n [
        R                  " X5        g )Nr  r   re       @   )3264r  )r	   r/   r   r   r   r=   r>   )rA   r-   s     r   ,test_failure_to_convert_uint64_string_to_NaNr9    sX    2F88F
"b"&&!
"C56xHF6'r   strrep).z243.164z245.968z249.585z259.745z265.742z272.567z279.196z280.366z275.034z271.351z272.889z270.627z280.828z290.383z308.153z319.945z336.0z344.09z351.385z356.178z359.82z361.03z367.701z380.812z387.98z391.749z391.171z385.97z385.345z386.121z390.996z399.734z413.073z421.532z430.221z437.092z439.746z446.01z451.191z460.463z469.779z472.025z479.49z474.864z467.54z471.978c                 <    [        U 5      nU[        U 5      :X  d   eg r   r   )r:  rA   s     r   test_precision_float_conversionr<    s!    j FU6]"""r   zvalues, expected)rK   r   NInt64)rK   r   rR   )rK   r         @)rN   r   r>  Float64)rK   Nr>  r>  )rK   r   z3.5c                 X    [        XS9n[        U5      n[        R                  " XB5        g r9   rm   )r1   nullable_string_dtyperB   srA   s        r   $test_to_numeric_from_nullable_stringrC    s%     	v3A]F6,r   c                     SS/n[        XS9n[        USS9n[        [        R                  S/SS9n[        R
                  " X45        g )Nr   rK   r:   r   re   rN   r=  )r   r	   r   NAr=   r>   )rA  r1   r-   rA   rB   s        r   +test_to_numeric_from_nullable_string_coercerF    sC    3ZF

5CH-Fruuaj0H6,r   c                     SS/n[        XS9nUR                  5       nSn[        R                  " [        US9   [        USS9nS S S 5        [        R                  " WU5        g ! , (       d  f       N&= f)Nr   rK   r:   r   rc   r
   re   )r   r   r=   r   r  r	   r>   )rA  r1   r-   rB   rj   rA   s         r   +test_to_numeric_from_nullable_string_ignorerH    s_    3ZF

5CxxzH
)C		#	#M	=C1 
>68, 
>	=s   A$$
A2z+data, input_dtype, downcast, expected_dtypeInt8r   i  Int16Float32iUInt64UInt8r  Int32c                     [         R                  " XS9n[        XBS9n[         R                  " XS9n[        R                  " XV5        g )Nr:   r   )r   r0   r	   r=   assert_extension_array_equal)rQ   input_dtyper7   r  r   rA   rB   s          r   test_downcast_nullable_numericrR    s8    : ((4
+C/Fxx3H##F5r   c                  .   [         R                  " SS[         R                  /SS9n [        U SS9n[         R                  " SS[         R                  /SS9n[        R
                  " X5        [         R                  U S'   [        R
                  " X5        g )NrN   r   r=  r:   r5   r   rI  )r   r0   rE  r	   r=   rP  )r   rA   rB   s      r   %test_downcast_nullable_mask_is_copiedrT  1  sm     ((Aq"%%=
0Ci0FxxAruuV4H##F5UUCF##F5r   c                  T    [        S5      n [        R                  " S5      nX:X  d   eg )Nz1.7e+308gv;w0B)r	   r/   r  )rA   rB   s     r   #test_to_numeric_scientific_notationrV  >  s&    
#Fzz'"Hr   g  PeBg      Gc                 \    [        U /5      n[        USS9n[        R                  " X!5        g )Nr   r   rm   )r   rB   rA   s      r   4test_to_numeric_large_float_not_downcast_to_float_32rX  E  s)     se}H73F6,r   z
val, dtype)rN   r=  r   r?  Tbooleanc                 x    [        U /[        S9n[        USS9n[        U /US9n[        R                  " X45        g )Nr:   numpy_nullabledtype_backendr;   )r   r4   r-   rA   rB   s        r   test_to_numeric_dtype_backendra  M  s;    
 #f
%C+;<Fse5)H6,r   )rY  rZ  r[  )rN   int64[pyarrow])r   float64[pyarrow])Tbool[pyarrow]c                     SU;   a  [         R                  " S5        SnOSn[        U S /[        S9n[	        X2S9n[        U [
        R                  /US9n[        R                  " XE5        g )NrE   r^  r:   r_  	rg   importorskipr   r<   r	   r   rE  r=   r>   )r   r4   r`  r-   rA   rB   s         r    test_to_numeric_dtype_backend_narh  X  s`     EI&!(
#tF
+C9FsBEEl%0H6,r   zval, dtype, downcast))rN   rI  r5   )r   rK  r   )rN   rI  r   )rN   int8[pyarrow]r5   )r   zfloat[pyarrow]r   )rN   ri  r   c                     SU;   a  [         R                  " S5        SnOSn[        U S /[        S9n[	        XCUS9n[        U [
        R                  /US9n[        R                  " XV5        g )NrE   r^  r:   r`  r7   rf  )r   r4   r7   r`  r-   rA   rB   s          r   )test_to_numeric_dtype_backend_downcastingrl  p  sb     EI&!(
#tF
+C8LFsBEEl%0H6,r   zsmaller, dtype_backendr^  zuint8[pyarrow]c                     US:X  a  [         R                  " S5        [        S[        R                  /SS9n[        X!SS9n[        S[        R                  /U S9n[        R                  " X45        g )NrE   rN   rL  r:   r   rk  rg   rg  r   r   rE  r	   r=   r>   )smallerr`  r-   rA   rB   s        r   .test_to_numeric_dtype_backend_downcasting_uintrp    s\     	!I&
!RUU8
,C:NFq"%%j0H6,r   )r=  rL  r?  r\  rb  zuint64[pyarrow]rc  rd  c                     SU ;   a  [         R                  " S5        [        S[        R                  /U S9n[        USS9n[        S[        R                  /U S9n[        R                  " X#5        g )NrE   rN   r:   r^  r_  rn  )r4   r-   rA   rB   s       r   .test_to_numeric_dtype_backend_already_nullablerr    s]     EI&
!RUU5
)C+;<Fq"%%j.H6,r   c                 &   [        / SQ5      nUR                  5       n[        R                  " [        SS9   [        XS9  S S S 5        Sn[        R                  " [        US9   [        XSS9nS S S 5        [        R                  " WU5        [        XSS9nU S	:X  a  S
nOSn[        [        R                  [        R                  [        R                  /US9n[        R                  " XB5        g ! , (       d  f       N= f! , (       d  f       N= f)N)r   r   r   r,  rc   r_  r   r
   )r`  r   r   rE   zdouble[pyarrow]r?  r:   )r   r   rg   rh   ri   r	   r=   r   r  r>   r/   r   )r`  r-   rB   rj   rA   r4   s         r   #test_to_numeric_dtype_backend_errorrt    s    

 CxxzH	z)A	B34 
C *C		#	#M	=CXN 
>68,JF	!!rvvrvvrvv.e<H6, 
C	B 
>	=s   
C1$D1
C?
Dc                      [        / SQ5      n Sn[        R                  " [        US9   [	        U SS9  S S S 5        g ! , (       d  f       g = f)Nr   zPdtype_backend numpy is invalid, only 'numpy_nullable' and 'pyarrow' are allowed.rc   numpyr_  rf   )r-   rj   s     r   test_invalid_dtype_backendrw    s<    

C	!  
z	-3g. 
.	-	-s	   =
Ac                     [         R                  " S5      n [        [        S5      [	        U R                  5       5      S9n[        USSS9n[        / SQ[	        U R                  5       5      S9n[        R                  " X#5        g )NrE   12xr:   r   )r   r`  )rN   r   N)
rg   rg  r   r\   r   r   r	   r   r=   r>   )par-   rA   rB   s       r   test_coerce_pyarrow_backendr{    s`    			Y	'B
eJryy{$;
<CHIFFl*RXXZ*@AH6,r   )nr   rv  r/   r   rg   pandas.util._test_decoratorsutil_test_decoratorstdpandasr   r   r   r   r   r   r	   pandas._testing_testingr=   fixturer   r   r    r#   r%   r'   assert_index_equalr>   rx   r3   r   parametrizer   r  rC   r   
skip_if_norP   r]   rk   r   filterwarningsro   ru   rz   r}   r   r   r   r0   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r4   float32charr   r   r   r  r  r  r  r  r  r  minr  r  r  r  r  r  r  r!  r+  r.  r3  r9  r<  rC  rF  rH  rE  rR  rT  rV  rX  ra  rh  rl  rp  rr  rt  rw  r{  r   r   r   <module>r     s       ) )    :; < e}% & S)
E/BC D ,.CDE F e}% & 	')>)>?	("*@*@A	,b.I.IJ  	grxx !)	4w6HI-- UFLLR]]95MNO c1X.- /- 
!	(( 	LM);	
	(	( #67(QrvvDV9WX PQ- R- A	)*	Cbff%&	 PQ
1 R
1/ 	*+	r"	"B'	22 WcNB#78- 9-  		c
	--"  ood#S)7??3+?EC[#s#	
 ((GOOD)3/
0#	6$c8JK	(	(- PQ! R! 04 14
 PQD RD" PQ$L R$LN PQL RL< @	()	() PQ: R: )c2661bff-E!FG H 	"((9G<=	 9:##### 6	6D!9c7345	62663/01 PQ	1 R	145 

;?S  
RXX
d	RXX&
g	 4 9 9:
j	!288BLL9J,KA,N#OP2(2 *Y,AB

;?S/ C/
// UV%FG	BJJ?@=HHA	
/ H W/ Xrxx0:ryy2IJ/	/ 	U277^//rww1C1CDE	)eBHHo115?3F3FGH	)eBHHo115?3F3FGH	)eBHHo115?3F3FGH	*uRXX22E"((O4G4GHI	:bii 0 4 4eBII6F6J6JKL	:bii 0 4 4eBII6F6J6JKL	:bii 0 4 4eBII6F6J6JKL	)eBGGn00%.2D2Dq2HIJ	)eBHHo115?3F3F3JKL	)eBHHo115?3F3F3JKL	)eBGGn0014eBHHo6I6IJK	)eBHHo11A5uRXX7J7JKL	)eBHHo11A5uRXX7J7JKL	:bhh 3 3U288_5H5H15LMN	:bii 0 4 4eBII6F6J6JQ6NOP	:bii 0 4 4eBII6F6J6JQ6NOP#,!-,!(  A*+,A*+299=	
--  8#rvvrvv';<	

 ;!:rvv6	
	-- 	6HIJ+ PQ, R,  @A @A B B( /2f#g2f# 	61a.@A	&':;	y89	&I>?	61bffc"2)DE	F;i@A
-
--- 1
Q)V,
ruuy)V4
sY	95
RUUWi0
sWi1
QIv.
((288

 
 1
$a	('9gF
Q(F+
sY&1
sY)4
RUUWh/
tgx1
((299

!
!A
%q	)8XxH
Q*g.
sY
G4
sY
I6
RUUWj'2
tgz73
b7J0
QGY/
S9gy1
QGY/
S9gy1/86986
6 x 89- :- E-- 

-

- 

-

-  #3Y"?@-	- 	---*/-r   