a
    Pf|                     @   sV   d dl Z d dlZd dlZd dlmZ d dlZd dlm	Z
 d dlmZ G dd dZdS )    N)using_pyarrow_string_dtype)IntervalArrayc                   @   s  e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd Zdd Z	dd Z
dd Zdd Zdd Zdd Zdd Zdd Zdd Zdd  Zd!d" Zejd#d$d%gd&d' Zd(d) Zd*d+ Zd,d- Zd.d/ Zd0d1 Zd2d3 Zejje d4d5ejd6e j!d7gd7d8gd9d:gfe j!d7d8gd7d8gd9d:d;gfgd<d= Z"ejd>g d?g d@fdAgdBgfgdCdD Z#dEdF Z$dGdH Z%ejdIg dJd;dKdLdJg dMfg dNdOdPdQdNg dRfgdSdT Z&ejdUg dJg dVfg dWg dXfgdYdZ Z'd[d\ Z(ejd]d%d$gd^d_ Z)ejd]d%d$gd`da Z*dbdc Z+ddde Z,e j-dfdgdhZ.didj Z/ejdkd$d%gdldm Z0ejdnd$d%gejdkd$d%gdodp Z1dqdr Z2dsdt Z3ejdudvd$d%gd$d%id%d%gfdwd:d;gdxdydzdxdygfd{d:d;gdxdydzdxdygfd|d}d~gdddddgfdd}d~gdddddgfdddgddOdddOgfe 4dwe5e 6d:d;e 6d;dKge 6d:d;e 6dxdyie5e 6dxdye 6d;dKgfe 4d|e5e 6dde 6ddge 6dde 6ddie5e 6dde 6ddgfe 7de j8dddge j8ddde j8dddie j8dddgfg	dd Z9dd Z:dd Z;dd Z<dd Z=ejje dd5ejdd%d$gdd Z>dd Z?ejdd;e@jAdgdd ZBdd ZCejddd{gdd ZDejdddgdd ZEdd ZFdS )TestSeriesReplacec                 C   s   t jg dtd}|dd }t jg dtd}t|| t td	dti}d|j
d< |dd }t tdtdtjg d	tdd
}|j
d d u sJ t|| t g d}|dd }t g d}|j
d d u sJ t|| d S )N)r   r    dtyper   )r   r   N)   r      )r	   r	   r   )        r
   N)r      r	   )
         ar   br   r   )r   r   r   NNr   N)pdSeriesobjectreplacetmassert_series_equal	DataFramenpZzerosastypeilocarrayassert_frame_equal)selfserresultexpecteddf r#   a/var/www/ai-form-bot/venv/lib/python3.9/site-packages/pandas/tests/series/methods/test_replace.pytest_replace_explicit_none   s(    
z,TestSeriesReplace.test_replace_explicit_nonec                 C   sp   t jd d t dgtd}|tjd i}t|| |j	tksDJ |tjd }t|| |j	tkslJ d S )Nz2021-12-16 17:31r   )
r   r   	Timestampr   r   r   nanr   r   r   )r   r   resr#   r#   r$   !test_replace_noop_doesnt_downcast*   s    z3TestSeriesReplace.test_replace_noop_doesnt_downcastc              	   C   sH  d}t tjd|}tj|dd< d|dd< |jtjgddd	}|d u sVJ |d}t	
|| |d
tj}tj||d
k< t	
|| t jttjd|t jd|dtd}tj|d d< d|dd< d|dd< d}t	jt|d$ |tjddgd}W d    n1 s&0    Y  |d d dk sJJ |dd dk sdJ |dd dk s~J t |d d  sJ t	jt|d( |tjdddddi}W d    n1 s0    Y  |d d dk sJ |dd dk sJ |dd dk s0J t |d d  sLJ t	jt|d( |tjddgg d}W d    n1 s0    Y  t	
|| t	jt|d( |jtjddgddd	}W d    n1 s0    Y  |d u sJ |d d dk sJ |dd dk s*J |dd dk sDJ d S )N2   r	   r         r   r   Tinplacer
   
2020-01-01periodsr      foobarr   r   !Downcasting behavior in `replace`matchr   r8   r9   )r   r   r   randomdefault_rngstandard_normalr'   r   fillnar   r   fabs
date_ranger   assert_produces_warningFutureWarningallisna)r   Nr   return_valueexprsmsgrs2r#   r#   r$   test_replace6   sR    
4888zTestSeriesReplace.test_replacec              	   C   s   t tjdtjg}t|tjd|d t tjdddtjd t j	g}t|tjd|d |
 }d|d< t|tjd| d S )Nr   r3   r4   r+   )r   r   r   r'   infr   r   r   r>   NaTcopy)r   r   Zfilledr#   r#   r$   test_replace_nan_with_infq   s    z+TestSeriesReplace.test_replace_nan_with_infc                 C   s   t |j}t|tjd|d d}t	j
t|d& |g dtjdg W d    n1 sf0    Y  |ddgtjdg}t|| t g d}|g dg d}t|t g d d S )	Nr   z:Replacement lists must match in length\. Expecting 3 got 2r6   r   r	   r   r   r	   r   r   r	   r   r+   )r+   r   r	   r   r   )r   r   indexr   r   r   r   r'   r>   pytestraises
ValueError)r   Zdatetime_seriesr   rI   r    r#   r#   r$   +test_replace_listlike_value_listlike_target{   s    4z=TestSeriesReplace.test_replace_listlike_value_listlike_targetc                 C   s   t dtjdddg}| }d}tjt|d |tjg}W d    n1 sT0    Y  t	|| t dtjdddg}| }tjt|d |tj}W d    n1 s0    Y  t	|| d S )Nr   r	   r   r+   PSeries.replace without 'value' and with non-dict-like 'to_replace' is deprecatedr6   )
r   r   r   r'   Zffillr   rA   rB   r   r   )r   r   r!   rI   r    r#   r#   r$   test_replace_gh5319   s    ,*z%TestSeriesReplace.test_replace_gh5319c                 C   sz   t t jddd}| }t d|jd< |t dt di}t|| |t dt d}t|| d S )N20130101r2   r0   Z20120101r	   Z20130103)	r   r   r@   rN   r&   locr   r   r   r   r   r!   r    r#   r#   r$   test_replace_datetime64   s    z)TestSeriesReplace.test_replace_datetime64c                 C   sf   t jddd}t t jt jdddg}|tjt jgt jj}t jt jj|gtd}t	
|| d S )Nz
2015/01/01UTC)tzr   )r   r&   r   rM   r   r   r'   minr   r   r   )r   tssr    r!   r#   r#   r$   test_replace_nat_with_tz   s
    z*TestSeriesReplace.test_replace_nat_with_tzc                 C   sf   t jddd}t |}||d |d i}t |d |d |d |d |d g}t|| d S )Nr   r2   r0   r   r   r	   r+   )r   Ztimedelta_ranger   r   r   r   )r   Ztdir   r    r!   r#   r#   r$   test_replace_timedelta_td64   s
    
(z-TestSeriesReplace.test_replace_timedelta_td64c              	   C   sp  t g d}d}tjt|d |g d}W d    n1 sD0    Y  t|t g d | }tjt|d" |jg ddd}W d    n1 s0    Y  |d u sJ t|t g d | }d}d	}tj	t
|db tjt|d$ |jg ddd
d}W d    n1 s(0    Y  |d u s@J W d    n1 sV0    Y  t|| d S )NrQ   rW   r6   rP   )r   r   r   r   r+   Tr-   zVInvalid fill method\. Expecting pad \(ffill\) or backfill \(bfill\)\. Got crash_cymbal4The 'method' keyword in Series.replace is deprecatedZcrash_cymbal)r.   method)r   r   r   rA   rB   r   r   rN   rS   rT   rU   )r   r   msg2r    ra   rF   rI   Zmsg3r#   r#   r$   test_replace_with_single_list   s(    ,04.z/TestSeriesReplace.test_replace_with_single_listc              	      s  t jtddd  fdd}dgdg }}|||  ||d |d   t g d	}dgd
g }}|||| t g d}ddgd
dg }}|||| t dddd
t dg}ddgd
t dg }}|||| t jg ddd}ddgd
dg }}|||| t t jdddd}|t|d |d |d gg d}t jg d|dd  	  td}t
|| d S )Nr2   int64r   c                    sL      } | |}|j| |dd}|d u s0J t|| t|| d S )NTr-   )rN   r   r   r   )Zto_repvalr!   scr    rF   r   r#   r$   check_replace   s    zATestSeriesReplace.test_replace_mixed_types.<locals>.check_replacer   g      @r   )r   r   r	         @r+   rm   )r   r   r	   rm   r   r+   r   r   r	   rY   )r   r   r	   rm   Tr   Tz1/1/2001z	1/10/2001Dfreq)      ?r	   r   )r   r   r   Zaranger&   r@   r   r   r   tolistr   r   )r   rl   trveZdrr    r!   r#   rk   r$   test_replace_mixed_types   s*    	("z*TestSeriesReplace.test_replace_mixed_typesc                 C   s*   t g d}|dd}t|| d S )NTFTZfunz
in-the-sunr   r   r   r   r   )r   ra   r    r#   r#   r$   #test_replace_bool_with_string_no_op  s    z5TestSeriesReplace.test_replace_bool_with_string_no_opc                 C   s8   t g d}|dd}t g d}t|| d S )Nrw   T2u)rz   Frz   rx   r   ra   r    r!   r#   r#   r$   test_replace_bool_with_string  s    z/TestSeriesReplace.test_replace_bool_with_stringc                 C   s>   t g d}|dd}t dgt| }t|| d S )Nrw   TF)r   r   r   lenr   r   r{   r#   r#   r$   test_replace_bool_with_bool  s    z-TestSeriesReplace.test_replace_bool_with_boolc                 C   s<   t g d}|ddd}t g d}t|| d S )Nrw   Zasdbyes)ZasdfT)r   Fr   rx   r{   r#   r#   r$   %test_replace_with_dict_with_bool_keys  s    z7TestSeriesReplace.test_replace_with_dict_with_bool_keysc                 C   s|   t jdd g|ddt j}t jt jt jg|d}t|| t jddg|ddt j}|jdt jdd t|| d S )Nr   r   r   Tr-   )r   r   r   NAr   r   )r   Zany_int_ea_dtyper    r!   r#   r#   r$   test_replace_Int_with_na  s    z*TestSeriesReplace.test_replace_Int_with_nac              	   C   s  d}t jttjd|t jd|dtd}tj	|d d< d|dd	< d
|dd< d}t
jt|d$ |tj	dd
gd}W d    n1 s0    Y  |d d dk sJ |dd	 dk sJ |dd dk sJ t |d d  sJ t
jt|d( |tj	dddd
di}W d    n1 s@0    Y  |d d dk sdJ |dd	 dk s~J |dd dk sJ t |d d  sJ t
jt|d( |tj	dd
gg d}W d    n1 s0    Y  t
|| t
jt|d( |jtj	dd
gddd}W d    n1 sF0    Y  |d u s^J |d d dk sxJ |dd	 dk sJ |dd dk sJ d S )Nr*   r	   r/   r0   r   r2   r3   r,   r   r4   r   r   r5   r6   r   r8   r9   r:   Tr-   )r   r   r   r?   r;   r<   r=   r@   r   r'   r   rA   rB   r   rC   rD   r   )r   rE   r   rI   rH   rJ   rF   r#   r#   r$   test_replace2$  s>    2888zTestSeriesReplace.test_replace2r.   TFc                 C   sV   t g d}t g d}|jg dg d|d}|rFt|| nt|| d S )NrP   r	   r   r+   r-   rx   )r   r.   r   r!   r(   r#   r#   r$   test_replace_cascadeO  s    z&TestSeriesReplace.test_replace_cascadec                 C   sL   t jddtjg|d}t jddtjg|d}|ddd}t|| d S )Nonetwor   12r   r   )r   r   r   r'   r   r   r   )r   Znullable_string_dtyper   r!   r    r#   r#   r$   +test_replace_with_dictlike_and_string_dtype\  s    z=TestSeriesReplace.test_replace_with_dictlike_and_string_dtypec                 C   s@   t td}t||i  t g }t||| d S )Nabcd)r   r   listr   r   r   )r   ra   Zempty_seriesr#   r#   r$    test_replace_with_empty_dictlikec  s    
z2TestSeriesReplace.test_replace_with_empty_dictlikec                 C   s:   t g d}|dtj}t g d}t|| d S NrP   r   r   r   r   r   r'   r   r   r{   r#   r#   r$   test_replace_string_with_numberk  s    z1TestSeriesReplace.test_replace_string_with_numberc                 C   s<   t ddg}t ddg}|ddd}t|| d S )Nr   r   )r   r   rx   )r   ra   r!   r    r#   r#   r$   (test_replace_replacer_equals_replacementr  s    z:TestSeriesReplace.test_replace_replacer_equals_replacementc                 C   s:   t g d}|dtj}t g d}t|| d S r   r   r{   r#   r#   r$    test_replace_unicode_with_numberz  s    z2TestSeriesReplace.test_replace_unicode_with_numberc                 C   s|   t g d}d}tjt|d" |ddgtj}W d    n1 sH0    Y  t dtjdtjdd	g}t|| d S )
N)r   r	   r   4r+   r2   r5   r6   r	   r   r   r   r+   r2   )	r   r   r   rA   rB   r   r   r'   r   )r   ra   rI   r    r!   r#   r#   r$   $test_replace_mixed_types_with_string  s    0z6TestSeriesReplace.test_replace_mixed_types_with_stringzcan't fill 0 in string)reasonzcategorical, numericAB)
categoriesr   r	   c                 C   s   t |}d}d}tjt|d  |ddd}W d    n1 sF0    Y  t |d}d|jjvrx|j	d}t
|| d S )Nr5   #with CategoricalDtype is deprecatedr6   r   r	   )r   r   category)r   r   r   rA   rB   r   r   catr   add_categoriesr   )r   Zcategoricalnumericr   rI   r    r!   r#   r#   r$   test_replace_categorical  s    

.z*TestSeriesReplace.test_replace_categoricalzdata, data_expr   r   c)r   r   r   r   r   c                 C   sn   t j|dd}d}tjt|d  |jdddd W d    n1 sF0    Y  t j|dd}t|| d S )	Nr   r   r   r6   r   r   T
to_replacevaluer.   r   r   r   rA   rB   r   r   )r   dataZdata_expr    rI   r!   r#   r#   r$    test_replace_categorical_inplace  s    .z2TestSeriesReplace.test_replace_categorical_inplacec           	      C   s  t jdddd}t |}|d}| }|jd}d|d< |j }|d dksZJ d}tj	t
|d	  ||d d}W d    n1 s0    Y  t|| |d dksJ d}tj	t
|d	$ |j|d dd
d}W d    n1 s0    Y  |d u sJ t|| |d }d}tj	t
|d	( |j|d |d d
d}W d    n1 sb0    Y  |d u szJ |d |d   kr|ksn J d S )N
2016-01-01r   
US/Pacificr1   r^   r   r3   r	   r   r6   Tr-   r   r   )r   r@   r   r   rN   r   r   Zremove_unused_categoriesr   rA   rB   r   r   )	r   Zdtira   r   r!   rI   r    rF   Zfirst_valuer#   r#   r$   test_replace_categorical_single  s0    


.28z1TestSeriesReplace.test_replace_categorical_singlec                 C   st   t g d}|dgdg}t g d}t|| t g d}|dgdg}t g d}t|| d S )NrQ   r   100000000000000000000)r   r   r	   r   r+   )r   r   100000000000000000001r   )r   r   r   rx   r{   r#   r#   r$   "test_replace_with_no_overflowerror  s    z4TestSeriesReplace.test_replace_with_no_overflowerrorzser, to_replace, exprP   r   r+   r   )r   r   3r   r   r   )r   r   r   c                 C   s.   t |}t |}||}t|| d S Nrx   )r   r   r   rG   seriesr!   r    r#   r#   r$   test_replace_commutative  s    


z*TestSeriesReplace.test_replace_commutativezser, exp)r   Tr   )xr	   r   )r   Tr   c                 C   s0   t |}|dd}t |}t|| d S )Nr	   Trx   )r   r   rG   r   r    r!   r#   r#   r$   test_replace_no_cast  s    

z&TestSeriesReplace.test_replace_no_castc              	   C   s   t g d}d}d}tjt|dL tjt|d |dd  W d    n1 sX0    Y  W d    n1 sv0    Y  d S )Nr   r   zc zZExpecting 'to_replace' to be either a scalar, array-like, dict or None, got invalid type.*rW   r6   c                 S   s   |   S r   )strip)r   r#   r#   r$   <lambda>      zCTestSeriesReplace.test_replace_invalid_to_replace.<locals>.<lambda>)	r   r   rS   rT   	TypeErrorr   rA   rB   r   )r   r   rI   rf   r#   r#   r$   test_replace_invalid_to_replace  s    z1TestSeriesReplace.test_replace_invalid_to_replaceframec                 C   s`   t g d}|r| }d}tjt|d  |jdgdd W d    n1 sR0    Y  d S )Nr   z4'to_replace' must be 'None' if 'regex' is not a boolr6   r   r3   )r   regex)r   r   to_framerS   rT   rU   r   )r   r   objrI   r#   r#   r$   test_replace_nonbool_regex  s    z,TestSeriesReplace.test_replace_nonbool_regexc                 C   sd   t jg tjd}|r| }|jdddd}|d u s8J |jdddd}t|| ||us`J d S )Nr   r+   r2   Tr-   F)r   r   r   float64r   r   r   assert_equal)r   r   r   r(   r#   r#   r$   test_replace_empty_copy  s    z)TestSeriesReplace.test_replace_empty_copyc                 C   s   t ddd|dg}ddd}d}d}tjt|d ||| W d    n1 sV0    Y  d}dd	d}d
}tjt|d ||| W d    n1 s0    Y  d S )Nr   r	   r   T)r   r	   r3   zASeries.replace cannot use dict-like to_replace and non-None valuer6   r4   z<Series.replace cannot use dict-value and non-None to_replace)r   r   rS   rT   rU   r   )r   Zfixed_now_tsr   r   r   rI   r#   r#   r$   "test_replace_only_one_dictlike_arg  s    
*
z4TestSeriesReplace.test_replace_only_one_dictlike_argc                 C   s2   |t jg ddd}|dd}t|| d S )NrP   Int64r   r   )r   r   r   r   r   )r   Zframe_or_seriesr   r    r#   r#   r$   test_replace_extension_other.  s    z.TestSeriesReplace.test_replace_extension_otherrk   c                 C   s  |  }d}tjt|d" |j|d dd}W d    n1 sB0    Y  tj|d |d gt|dd   |jd}t	|| d	}tjt|d" |j|d dd}W d    n1 s0    Y  t
||   | }tjt|d$ |j|d dd
d}	W d    n1 s0    Y  |	d u s2J t	|| tjt|d$ |j|d dd
d}
W d    n1 sx0    Y  |
d u sJ t
||   d S )Nrd   r6   r   pad)re   r   r	   r   z7The 'method' keyword in DataFrame.replace is deprecatedT)re   r.   )r   r   rA   rB   r   r   r   r   r   r   r   rN   )r   r   r"   Zmsg1r(   r!   rf   Zres_dfser2res2Zres_df2r#   r#   r$   _check_replace_with_method5  s&    0,044z,TestSeriesReplace._check_replace_with_methodc                 C   s0   t jddt jdg|d}t |}| | d S )Nr   r	   r+   r   )r   r   r   r   r   )r   Zany_numeric_ea_dtypeZarrr   r#   r#   r$   !test_replace_ea_dtype_with_methodN  s    
z3TestSeriesReplace.test_replace_ea_dtype_with_methodas_categoricalc                 C   s6   t jtd}t |}|r(|d}| | d S )Nr+   r   )r   ZIntervalIndexZfrom_breaksranger   r   r   )r   r   idxr   r#   r#   r$   !test_replace_interval_with_methodT  s
    

z3TestSeriesReplace.test_replace_interval_with_method	as_periodc                 C   sV   t jdddd}|r$|d d}t |}t j|jd< |rH|d}| | d S )Nr   r2   r   r   rn   r8   r   )	r   r@   Ztz_localizeZ	to_periodr   rM   r   r   r   )r   r   r   r   r   r#   r#   r$   %test_replace_datetimelike_with_method_  s    

z7TestSeriesReplace.test_replace_datetimelike_with_methodc                 C   sH   t g d}td}|j|didd}t g d}t|| d S )Nr   z^a$zTr   )r   r   r   )r   r   recompiler   r   r   )r   ra   r   r    r!   r#   r#   r$    test_replace_with_compiled_regexm  s
    
z2TestSeriesReplace.test_replace_with_compiled_regexc                 C   sh   t jddddddt jgdd}dddd	d
}|j|dd}t jddd	dddt jgdd}t|| d S )NAABBCCZDDEEr   stringr   zCC-REPL)r   r   r   r   Tr   r   r   r   r   r   r   )r   r   Zregex_mappingr    rG   r#   r#   r$   test_pandas_replace_nau  s    z(TestSeriesReplace.test_pandas_replace_naz,dtype, input_data, to_replace, expected_databoolrh   r   r   )r   r	   r   r   皙?皙@g333333$@g     4@)r   r   Float64r   r   r   r   r   rq   g@gffffff@g@g333333%@g4@Mz2020-05ro   z2020-06c                 C   s6   t j||d}||}t j||d}t|| d S )Nr   rx   )r   r   Z
input_datar   Zexpected_datar   r    r!   r#   r#   r$   test_replace_dtype  s    
z$TestSeriesReplace.test_replace_dtypec           
      C   s   t jddtjgdd}|ddd}t jddtjgdd}t|| t jdtjgdd}|dd	}t jd	tjgdd}t|| t jdd	gdd}|dt j}t jt jd	gdd}	t||	 d S )
Nr   r   r   r   r   r   r   r   r   )r   r   r   r'   r   r   r   r   )
r   r   r(   r!   r   r   Z	expected2Zser3Zres3Z	expected3r#   r#   r$   test_replace_string_dtype  s    z+TestSeriesReplace.test_replace_string_dtypec                 C   sD   t jddgdd}|ddgd}t jddgdd}t|| d S )Nabcdefr   r   zany other stringZxyzrx   r   r   r(   r!   r#   r#   r$   )test_replace_string_dtype_list_to_replace  s    z;TestSeriesReplace.test_replace_string_dtype_list_to_replacec                 C   sD   t jddgdd}|jdddd}t jddgdd}t|| d S )	Nr   r   r   r   .CTr   rx   r   r#   r#   r$   test_replace_string_dtype_regex  s    z1TestSeriesReplace.test_replace_string_dtype_regexc                 C   s  t jg dt  d}|ddij|jks0J |ddj|jksHJ |ddij|jksbJ |ddj|jkszJ |jddgddgd}|j|jksJ t jg d	t  d}|d
dij|jksJ |d
dj|jksJ |d
dij|jksJ |d
dj|jksJ tjtdd |d
di W d    n1 sR0    Y  tjtdd |d
d W d    n1 s0    Y  d S )N)rq          @gˡE@g@r   rq   	   g      "@r   g      $@r   r   )r   r	   r   r+   r   zInvalid valuer6   g      #@)	r   r   ZFloat64Dtyper   r   Z
Int64DtyperS   rT   r   )r   Zfloatsr(   Zintsr#   r#   r$   test_replace_nullable_numeric  s     .z/TestSeriesReplace.test_replace_nullable_numericzcan't fill 1 in stringr   c                 C   sj   t dg}t dg}d}tjt|d  |jdd|d}W d    n1 sP0    Y  t|| d S )N0r   r5   r6   )r   r   r   r   )r   r   r   r!   rI   r    r#   r#   r$   test_replace_regex_dtype_series  s    .z1TestSeriesReplace.test_replace_regex_dtype_seriesc                 C   sb   t jg d|d}t jg d|d}tt|j|j}||}|dddd}t|| d S )N)r   r   r   r   r   r	   r	   r	   r   )r   r	   r   r   r   r	   )	r   r   dictzipvaluesrR   r   r   r   )r   Zany_int_numpy_dtypeZlabsmapsZmap_dictr    r!   r#   r#   r$    test_replace_different_int_types  s    
z2TestSeriesReplace.test_replace_different_int_typesri   r   c                 C   s<   t d|g}||d }t jdd gtd}t|| d S )Nr   r   )r   r   r   r   r   r   )r   ri   r   r    r!   r#   r#   r$   %test_replace_value_none_dtype_numeric  s    z7TestSeriesReplace.test_replace_value_none_dtype_numericc                 C   s   t jdg di}|rtnd }tj|dd* |d dgtjg|d< W d    n1 s^0    Y  t jddtjdgi}t	|| t jdg di}|d d gtjg|d< t	|| t jdg di}|d 
tj|d< t	|| d S )	NZTest)0.5T0.6ZDowncastingr6   Tr   r   )r   Nr   )r   r   	from_dictrB   r   rA   r   r   r'   r   r>   )r   Zusing_infer_stringr"   warnr!   r#   r#   r$    test_replace_change_dtype_series  s    8z2TestSeriesReplace.test_replace_change_dtype_seriesr   r   c                 C   sf   t jddt jg|d}t jddt jg|d}|jddd}t|| |jdddd t|| d S )Nr   r   r   r	   r   Tr   r   )r   r   r   r!   r    r#   r#   r$   test_replace_na_in_obj_column  s    z/TestSeriesReplace.test_replace_na_in_obj_columnr   g      ?c                 C   s\   t |dg}t |t jg}|jdt jd}t|| |jdt jdd t|| d S )Nr   r   Tr   r   )r   ri   r   r!   r    r#   r#   r$   #test_replace_numeric_column_with_na  s    z5TestSeriesReplace.test_replace_numeric_column_with_nac                 C   sd   t jdgdd}| }|dd}t|| t jdgdd}| }|dd}t|| d S )Nr
   r   r   Frq   booleanT)r   r   rN   r   r   r   r[   r#   r#   r$   test_replace_ea_float_with_bool#  s    z1TestSeriesReplace.test_replace_ea_float_with_boolN)G__name__
__module____qualname__r%   r)   rK   rO   rV   rX   r\   rb   rc   rg   rv   ry   r|   r~   r   r   r   rS   markZparametrizer   r   r   r   r   r   r   Zxfailr   r   ZCategoricalr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   ZIntervalDtyper   ZIntervalZPeriodDtypeZPeriodr   r   r   r   r   r   r   r   r'   r   r   r   r   r   r#   r#   r#   r$   r      s   ;


+	+
	
	
 


	



	




r   )r   numpyr   rS   Zpandas._configr   Zpandasr   Zpandas._testingZ_testingr   Zpandas.core.arraysr   r   r#   r#   r#   r$   <module>   s   