o
    թZhl                     @   s  d dl Zd dlZd dlmZ d dlm  mZ d dl	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 dlmZ G dd dZdd Zd	d
 Zejdddgdd Zejdejejdejejejdejejg	ejejdddddejejg	dddifejejdejejejdejejg	ejejddejejdejejg	ddddfejejdejejejdejejg	ejejdejejejdddg	dddifejejdejejejdejejg	ejejdejejejddejg	ddddfejejejejejejejgejejejejejejejgddddfe de dddddfejejdejejejdejejg	ejejdddddejejg	dddifejejdejejejdejejg	ejejdejejddejejg	ddddfejejdejejejdejejg	dddejejejdejejg	dddifejejdejejejdejejg	ejddejejejdejejg	ddddff
dd Z!dS )    N)using_pyarrow_string_dtype)
Categorical	DataFrameDatetimeIndexNaTPeriodIndexSeriesTimedeltaIndex	Timestamp
date_rangeto_datetime)_check_mixed_floatc                   @   s  e Zd Zdd Zejdd Zdd Zej	j
e dd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#g d$d%d%ggd&d' Zd(d) Zej	d*d+d,ejd-gd.d/ Zd0d1 Zd2d3 Z d4d5 Z!d6d7 Z"d8d9 Z#d:d; Z$ej	d<e%e&gd=d> Z'ej	d<e%e&gd?d@ Z(dAdB Z)dCdD Z*dEdF Z+dGdH Z,dIdJ Z-dKdL Z.dMdN Z/ej	j
e dddOdP Z0dQdR Z1dSdT Z2dUdV Z3dWdX Z4ej5ej	d*dYdYdYdZgd[d\ Z6d]d^ Z7d_d` Z8daS )b
TestFillNAc                 C   sJ  t tjgd ttdtgtjddgd}g d|_|d d  }t| |jddidd	 W d    n1 s9w   Y  t d
gd dtddgg dd}g d|_t	|| |sst
|jd d df |jd d df ssJ t
|jd d df |jd d df rJ |st
|jd d df |jd d df sJ d S d S )N      foo   ABC)r   r   r   r   Tinplace       @)r   r   r   r   )r   npnanr   r
   columnstmassert_cow_warningfillnaassert_frame_equalshares_memoryiloc)selfusing_copy_on_writewarn_copy_on_writedforigexpected r)   ]/var/www/html/lang_env/lib/python3.10/site-packages/pandas/tests/frame/methods/test_fillna.py*test_fillna_dict_inplace_nonunique_columns   s(   $

,,,z5TestFillNA.test_fillna_dict_inplace_nonunique_columnsc                 C   s   t dt j}t|dd}|r<t  |d jddd W d    n1 s'w   Y  t |d d df  s;J n.tj	t
dd	 |d jddd W d    n1 sWw   Y  |d d df dk sjJ t|jjd
kstJ t |j|s}J d S )N)(   2   F)copyr   Tr   zinplace methodmatchr   )r   fullr   r   r   Zraises_chained_assignment_errorr   isnanallassert_produces_warningFutureWarninglenZ_mgrZarraysr!   values)r#   r$   arrr&   r)   r)   r*   test_fillna_on_column_view4   s   
 z%TestFillNA.test_fillna_on_column_viewc                 C   s~  |}t j|j|jd d df< t j|j|jdd  df< |d}|j|jd d df dk s3J d}tjt|d |jdd}W d    n1 sMw   Y  t 	|j|jd d df  seJ |j|jdd  df |j|jd df k sJ d	}t
jt|d |  W d    n1 sw   Y  d
}t
jt|d |jddd W d    d S 1 sw   Y  d S )N   r   r   ,DataFrame.fillna with 'method' is deprecatedr0   padmethodz'Must specify a fill 'value' or 'method'z(Cannot specify both 'value' and 'method'ffill)r   r   locindexr   r4   r   r5   r6   r3   pytestraises
ValueError)r#   datetime_frametfZzero_filledmsgpaddedr)   r)   r*   test_fillna_datetimeG   s*   
$&*
"zTestFillNA.test_fillna_datetimezcan't fill 0 in string)reasonc                 C   s   |}t j|j|jdd df< t j|j|jdd  df< |jdd d}tjt|d	 |jd
d W d    d S 1 s=w   Y  d S )Nr;      r   r   r   valuer=   r0   r>   r?   )r   r   rB   rC   r   r   r5   r6   )r#   float_string_framemfrI   r)   r)   r*   test_fillna_mixed_type^   s   "z!TestFillNA.test_fillna_mixed_typec                 C   s   |j g dd}tj|j|jdd  df< |jdd}t|dd id d	}tjt	|d
 |jdd}W d    n1 s=w   Y  t|dd id d S )N)r   r   Dr   rN   r   r   rO   r   dtyper=   r0   r>   r?   )
reindexr   r   rB   rC   r   r   r   r5   r6   )r#   Zmixed_float_framerR   resultrI   r)   r)   r*   test_fillna_mixed_floati   s   z"TestFillNA.test_fillna_mixed_floatc              	   C   sx   |rt d tdgd}dD ]*}d}tjt|d |jj|dd |jj|d	 W d    n1 s4w   Y  qd S )
Nz9condition is unnecessary complex and is deprecated anywayxrU   )r>   backfillz)Series.fillna with 'method' is deprecatedr0   Tr@   r   r?   )rD   skipr   r   r5   r6   r[   r   )r#   r$   r&   mrI   r)   r)   r*   test_fillna_emptyu   s   
zTestFillNA.test_fillna_emptyc                 C   s  t ddtjdgddtjdgddtjdgg}|r7tjtdd |ddi}W d    n1 s1w   Y  n|ddi}t g dg d	g d
g}t|| |rttjtdd |jddidd}W d    n1 snw   Y  n	|jddidd}t|| |d u sJ d S )NabcDowncastingr0   r   r   )ra   ra   r   ra   )rb   rb   r   rb   )rc   rc   r   rc   Tr   r   r   r   r   r5   r6   r   r    )r#   using_infer_stringr&   rY   r(   return_valuer)   r)   r*   test_fillna_different_dtype   s*   &z&TestFillNA.test_fillna_different_dtypec                 C   sx   t tjdd}tj|jdddf< tj|jdddf< | }d|jd< d|jd	< |jdd
d}t	
|| d S )Nr   )
   r      r   r   r;   i  )r   r   )r   r   r   limit)r   r   randomdefault_rngstandard_normalr   r"   r.   r   r   r    r#   r&   r(   rY   r)   r)   r*   test_fillna_limit_and_value   s   

z&TestFillNA.test_fillna_limit_and_valuec                 C   sl   t ttdgtdtgd}| }|d |j|jd df |d< |jd|d id}t|| d S )Nz2014-1-1z2013-1-1)DateDate2rr   r   rs   rO   )	r   r   r
   r.   r   rB   rC   r   r    rp   r)   r)   r*   test_fillna_datelike   s   

"zTestFillNA.test_fillna_datelikec                 C   s   t dtdtgi}t dtdtdgi}d}tjt|d |jdd}W d    n1 s0w   Y  t|| t dttdgi}t dtdtdgi}d}tjt|d |jdd}W d    n1 skw   Y  t|| d S )Nr   z2012-11-11 00:00:00+01:00r=   r0   r>   r?   bfill)r   r
   r   r   r5   r6   r   r    )r#   r&   exprI   resr)   r)   r*   test_fillna_tzaware   s4   zTestFillNA.test_fillna_tzawarec                 C   s   t tddddddtjtjgd}d}tjt|d	 |jd
d}W d    n1 s,w   Y  t tddddg dd}t|| d S )N20130101   z
US/Eastern)periodstzr   r   r   r   r=   r0   r>   r?   )      ?r   r   r   )	r   r   r   r   r   r5   r6   r   r    r#   r&   rI   rY   r(   r)   r)   r*   $test_fillna_tzaware_different_column   s   z/TestFillNA.test_fillna_tzaware_different_columnc                 C   s  t dddtjgg dd}ddtjdg}t||d	}t g d
g dd}g d}t||d	}t g dg dd}ddtjg}t||d	}	t ddgg dd}
ddg}t|
|d	}|jddd	d}t|| d}tjt	|d |jddd	d W d    n1 sw   Y  d}tj
t|d |jdd}W d    n1 sw   Y  t|| |jdgd}t||	 | }t|| t tjdtjgddgd}t|g dd	}t g dddgd}t|g dd	}|d}t|| d S )Nr   r   r   r   r   r   )
categoriesra   rb   dcatsvals)r   r   r   r   )ra   rb   rb   r   rO   z3Cannot setitem on a Categorical with a new categoryr0   rz   rc   r=   r>   r?   r   )Zsubset)ra   rb   ra   )r   r   r   r   r   r   r    rD   rE   	TypeErrorr5   r6   Zdropna)r#   catr   r&   cat2Zvals2Zdf_exp_fillZcat3Zvals3Zdf_exp_drop_catsZcat4Zvals4Zdf_exp_drop_allrw   rI   rc   Zcat_expdf_expr)   r)   r*   test_na_actions_categorical   sB   
z&TestFillNA.test_na_actions_categoricalc           
      C   sb  t tjdtjg}t tjtjtjg}t||d}tdtjd}||}tjtjtjg}tg d|ddd}t|| |jtj}t	||j |j
tj}t	||j
 tdddttg}	td	t |	i}t|jtd
| tdddttgdd}	td	t |	i}t|jtd
| tdddttg}	td	t |	i}t|jtd
| d S )Nr   r   r   )r   r   r   categoryrV   z2011-01-01 09:00z2016-01-01 23:45ra   rO   z2011-01M)freqz1 daysz2 days)r   r   r   r   r   r   r   r    r   assert_series_equalr   r   r   r   r	   )
r#   r   valr&   Zmedianrw   Zv_expr   rY   idxr)   r)   r*   test_fillna_categorical_nan  s.   
z&TestFillNA.test_fillna_categorical_nanc                 C   s   t ddtjgi}d}tjt|d |jddd}W d    n1 s$w   Y  t dddgi}t|| t ddtjgi}tjt|d |jddidd}W d    n1 s[w   Y  t dddgi}t|| d S )	Nra   r~   z.The 'downcast' keyword in fillna is deprecatedr0   r   inferZdowncastr   re   r   r)   r)   r*   test_fillna_downcast6  s   zTestFillNA.test_fillna_downcastc                 C   s`   |g ddd}d}t jt|d |jddd}W d    n1 s#w   Y  t || d S )	Nr   objectrV    The 'downcast' keyword in fillnar0    Fr   )r   r5   r6   r   assert_equal)r#   frame_or_seriesobjrI   rY   r)   r)   r*   test_fillna_downcast_falseG  s   z%TestFillNA.test_fillna_downcast_falsec           
      C   s  |g dt jd}d}tjt|d |jdt t jd}W d    n1 s(w   Y  |t j}t	|| |t j
}tjt|d |jddd}W d    n1 sXw   Y  |}t	|| tjt|d |jdt t jd}	W d    n1 sw   Y  t	|	| d S )Nr   rV   r   r0   r   r   r   )r   int64r   r5   r6   r   rW   Zint32astyper   float64)
r#   r   r   rI   rw   r(   obj2Zres2	expected2Zres3r)   r)   r*   test_fillna_downcast_noopO  s"   z$TestFillNA.test_fillna_downcast_noopr   )r   r   r   r   c                 C   sl   t tjddg|d}td  |ddi}W d    n1 s!w   Y  | }d|d< t|| d S )Nr   r   rC   r   r           )r   r   r   r   r5   r   r.   r    )r#   r   r&   rY   r(   r)   r)   r*   -test_fillna_dictlike_value_duplicate_colnamesi  s   z8TestFillNA.test_fillna_dictlike_value_duplicate_colnamesc                 C   s$  t g dg dd}|j}ttdgd g dd}t|| d}tjt|d |	d	}W d    n1 s:w   Y  t d	g dg dd}t
|| t td
ddgdd}|rztjtdd |	d}W d    n1 stw   Y  n|	d}t dtd
ddgd}t
|| d S )Nr   )r   r   r   rz   r;   r   r   r;   rC   Downcasting object dtype arraysr0   r   r   r   r   r   )rC   r   rW   rd   r   )r   Zdtypesr   r   rW   r   r   r5   r6   r   r    range)r#   rf   r&   rY   r(   rI   r)   r)   r*   test_fillna_dtype_conversiont  s&   
z'TestFillNA.test_fillna_dtype_conversionr   r   r   r~   c                 C   s@   t dtjgddgd}|tj|}||}t|| d S )Nr   r~   r   r}   )r   r   r   replacer   r   r    )r#   r   r&   r(   rY   r)   r)   r*   *test_fillna_dtype_conversion_equiv_replace  s   
z5TestFillNA.test_fillna_dtype_conversion_equiv_replacec                 C   s  t ddtjgtdddg dg ddtd	ddd
}|d}t g dtdddg dg ddtd	ddd
}t|| t ddtjgtdtdtgg dg ddtd	ddd
}|d}t g dtdtddgg dg ddtd	ddd
}t|| d S )Nr/   ry   r   )r{   )r   barN)foo2bar2Nr   r   r   rT   Z20130110r   ?)r/   r   r   )r   r   r   )r   r   r   z
2013-01-01z
2013-01-02)	r   r   r   r   r   r   r    r
   r   r#   r&   rY   r(   r)   r)   r*   test_fillna_datetime_columns  sH   



	

	


	
	z'TestFillNA.test_fillna_datetime_columnsc                 C      t j|j|jd d df< t j|j|jdd  df< d}tjt|d |jdd}W d    n1 s4w   Y  t|	 | d S )Nr;   r   r<   r=   r0   rA   r?   )
r   r   rB   rC   r   r5   r6   r   r    rA   r#   rG   rI   Zaltr)   r)   r*   
test_ffill  s   zTestFillNA.test_ffillc                 C   r   )Nr;   r   r<   r=   r0   ru   r?   )
r   r   rB   rC   r   r5   r6   r   r    ru   r   r)   r)   r*   
test_bfill  s   zTestFillNA.test_bfillc                 C   s$  t d}tt jdd|d}|d d j|ddd}d}tjt	|d	 |d d |j
dd
}W d    n1 s?w   Y  t j|jdd < t|| |dd  j|ddd}tjt	|d	 |dd  |j
dd
}W d    n1 s}w   Y  t j|jd d< t|| d S )Nri   r   ri   rz   r   r>   r;   r@   rl   r=   r0   r?   r   r\   r   r   Zaranger   rm   rn   ro   rX   r   r5   r6   r   r   r"   r    r#   rC   r&   rY   rI   r(   r)   r)   r*   test_frame_pad_backfill_limit  s   
z(TestFillNA.test_frame_pad_backfill_limitc                 C   s  t d}tt jdd|d}|d d |}d}tjt	|d |j
ddd	}W d    n1 s6w   Y  tjt	|d |d d |j
dd
}W d    n1 sZw   Y  t j|jdd < t|| |dd  |}tjt	|d |j
ddd	}W d    n1 sw   Y  tjt	|d |dd  |j
dd
}W d    n1 sw   Y  t j|jd d< t|| d S )Nri   r   r   r   r=   r0   r>   r;   r   r?   r   r   r\   r   r   r   r)   r)   r*   test_frame_fillna_limit  s*   
z"TestFillNA.test_frame_fillna_limitc                 C   s,   t tjddt}|tj d S )Nr   r   )	r   r   rm   rn   ro   r   intr   r   )r#   r&   r)   r)   r*   test_fillna_skip_certain_blocks  s   z*TestFillNA.test_fillna_skip_certain_blockstypec                 C   b   t tjdd|}d}tjt|d |j	ddd W d    d S 1 s*w   Y  d S )Nr   r   zLimit must be greater than 0r0   r   r<   rk   
r   r   rm   rn   ro   r   rD   rE   rF   r   r#   r   r&   rI   r)   r)   r*   test_fillna_positive_limit  
   "z%TestFillNA.test_fillna_positive_limitc                 C   r   )Nr   r   zLimit must be an integerr0   r   g      ?rk   r   r   r)   r)   r*   test_fillna_integer_limit  r   z$TestFillNA.test_fillna_integer_limitc                 C   sL  t tjdd}tj|jd ddf< tj|jdd df< |jdd}||us+J |jdd	d
 t	|| |jddid	d
}|d u sGJ tj|jd ddf< tj|jdd df< d}tj
t|d |jdd}W d    n1 suw   Y  ||usJ tj
t|d |jdd	d W d    n1 sw   Y  t	|| d S )Nr   r   rz   r   r   r   rO   TrP   r   r=   r0   rA   r?   r]   )r   r   rm   rn   ro   r   rB   r   r   r    r5   r6   )r#   r&   r(   rI   r)   r)   r*   test_fillna_inplace  s(   zTestFillNA.test_fillna_inplacec                 C   s  t tjddtjtjgdddtjtjgtjddddgd}|ddd}| }|d	 d|d	< |d
 d|d
< t|| |dddd}|| }||  }t|| t	j
tdd |j|ddd W d    d S 1 s}w   Y  d S )Nr   r   r   rz   ra   rb   rc   r   r;   )ra   rb   ra   rb   rj   )ra   rb   r   zcolumn by columnr0   )axis)r   r   r   r   r.   r   r    maxto_dictrD   rE   NotImplementedErrorr   r)   r)   r*   test_fillna_dict_series,  s$   "z"TestFillNA.test_fillna_dict_seriesc                 C   s   t tjddtjtjgdddtjtjgtjddddgdtdd}t tjdd	d
dgg ddgd dtdd}||}t tjddtjdgdddtjdgtjddddgdtdd}t|| d S )Nr   r   r   rz   r   ZVWXYZr   ri   rM      r,   )r-   <   F   P   Z   r   r;   )ra   rb   r   ZVWXuZr   r   r   r   listr   r   r    )r#   r&   Zdf2rY   r(   r)   r)   r*   test_fillna_dataframeH  s.   

		z TestFillNA.test_fillna_dataframec                 C   sX  t jdd}t j|d d d d df< t|}d}tjt|d |j	ddd}W d    n1 s4w   Y  tjt|d |j
j	dd	j
}W d    n1 sSw   Y  t|| |d
dd tjt|d |j	ddd}W d    n1 s~w   Y  tjt|d |tj	ddd}W d    n1 sw   Y  t|| d S )Nr   )ri   ri   r=   r0   rA   r   )r@   r   r>   r?      r   r;   )r   rm   rn   ro   r   r   r   r5   r6   r   Tr    insertr   float)r#   r9   r&   rI   rY   r(   r)   r)   r*   test_fillna_columnsk  s&   zTestFillNA.test_fillna_columnsc                 C   s@   t jtdd |jdd W d    d S 1 sw   Y  d S )NZffilr0   r?   )rD   rE   rF   r   )r#   float_framer)   r)   r*   test_fillna_invalid_method~  s   "z%TestFillNA.test_fillna_invalid_methodc                 C   s   d}t jt|dd |ddg W d    n1 sw   Y  t jt|dd |d W d    n1 s=w   Y  d}t jt|d |jd d d	f | W d    d S 1 scw   Y  d S )
NzA"value" parameter must be a scalar or dict, but you passed a "{}"r   r0   r   r   tuple)r   r   zP"value" parameter must be a scalar, dict or Series, but you passed a "DataFrame"r   )rD   rE   r   formatr   r"   )r#   r   rI   r)   r)   r*   test_fillna_invalid_value  s   "z$TestFillNA.test_fillna_invalid_valuec                 C   s   dd t dddD }tjdd}tt d||d	}d
}tjt|d |jdd}W d    n1 s7w   Y  |j	
 |j	
 ksHJ d S )Nc                 S   s   g | ]}d t | qS )zCOL.)str).0ir)   r)   r*   
<listcomp>  s    z9TestFillNA.test_fillna_col_reordering.<locals>.<listcomp>r;   r   r/   r   )rM   r;   rM   )rC   r   datar=   r0   rA   r?   )r   r   rm   rn   r   r   r5   r6   r   r   tolist)r#   colsr   r&   rI   filledr)   r)   r*   test_fillna_col_reordering  s   z%TestFillNA.test_fillna_col_reorderingc                 C   s   |}t j|j|jdd df< t j|j|jdd  df< |jdd}|j|jdd df dk s4J |d= |jg djdd d S )	Nr;   rM   r   rN   r   r   rO   rU   )r   r   rB   rC   r   r4   rX   )r#   r   rQ   rR   r   r)   r)   r*   test_fill_corner  s   $zTestFillNA.test_fill_cornerc                 C   sz   t ddtjgi}d}tjt|d |jddiddid}W d    n1 s(w   Y  t dddgi}t|| d S )Ncol1r   r   r0   r   r   r   re   r   r)   r)   r*   test_fillna_downcast_dict  s   z$TestFillNA.test_fillna_downcast_dictc                 C   s  t tjdtjdgddtjdgtjtjtjdgtjdtjdggtdd}|jdd	dd
}|jdd	dd
}t tg dddddtjdgtjd	tjtjgtg ddddg dd}t tg dddtg dddd	d	tjd	gtg ddddg dd}t|| t|| d S )Nr   r   r   rz   r   r;   ABCDrU   d   r   rP   rl   )r   r   r   r   r   rV   )r   r   r;   rz   r   )r   r   r   r   r   )r   rz   r   r   )r   r   r   r   r   r   r   r    )r#   r&   rY   Zresult2r(   r   r)   r)   r*   "test_fillna_with_columns_and_limit  s8   		
z-TestFillNA.test_fillna_with_columns_and_limitc                 C   sF   t tdd gtdd gd}| }|jtjdd t|| d S )Nz
2018-05-30z
2018-09-30)Zdate1Zdate2Tr   )r   r   r.   r   r   r   r   r    r#   r&   r(   r)   r)   r*   test_fillna_datetime_inplace  s   

z'TestFillNA.test_fillna_datetime_inplacec                 C   s   t tjdtjdgddtjdgtjtjtjdgtjdtjdggtdd}|jdd	dd
}||us2J |jdd	ddd t|| d S )Nr   r   r   rz   r   r;   r   rU   r   r   T)r   rP   rl   r   r   r   r)   r)   r*   0test_fillna_inplace_with_columns_limit_and_value  s   
z;TestFillNA.test_fillna_inplace_with_columns_limit_and_valuer/   r[   yc                 C   s   t tjdgtjdgd}| }|d d  }t| |j|dd W d    n1 s.w   Y  t ddgddgd}t|| |rNt|| d S t|| d S )Nr   r   Tr   r/   r         )r   r   r   r.   r   r   r   r    )r#   r   r$   r%   r&   Zdf_origZresult_viewr(   r)   r)   r*   test_inplace_dict_update_view  s   z(TestFillNA.test_inplace_dict_update_viewc              	   C   s   t ddtjdtjgdtjtjddgdtjdddgtjddtjd	gd
}|jdddd}t g dddtjdgdtjddgg dg dgg d
d}t|| d S )Nr;   r   ri   rj   r      r   r      )r   Zcol2Zcol3Zcol4r-   )rl   r   )      @      @g      (@      I@r   r   r~   )g      $@r   r   r   )r         @r   g      2@rU   )r   r   r   r   r   r    r   r)   r)   r*   )test_single_block_df_with_horizontal_axis  s$   
z4TestFillNA.test_single_block_df_with_horizontal_axisc                 C   s   t tjddgddtjgddtjgd}t g dg dddtjgd}t|ddi| t|dd	d
| t g dg dddtjgd}t|d	dd| d S )Nr   r   r~   ))r[   ra   r[   rb   )r   rc   )r   r   r   )r~   r   r   r[   r/   r   )r[   r  )r~   r   g       )r  r[   )r   r   r   r   r    r   )r#   Zpdfr(   r)   r)   r*   "test_fillna_with_multi_index_frame  s*   




z-TestFillNA.test_fillna_with_multi_index_frameN)9__name__
__module____qualname__r+   tdZ&skip_array_manager_not_yet_implementedr:   rK   rD   markZxfailr   rS   rZ   r`   rh   rq   rt   rx   r   r   r   r   r   r   parametrizer   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   Zskip_array_manager_invalid_testr   r   r  r)   r)   r)   r*   r      sh    


,$


,	


#	

$r   c                  C   sV   t g dg dg dgg dd} | jddd}|d	}|   d	ks)J d S )
N)r   r   r   r~   )r   r   r   r   )r   r   r   r   )i1i2Zi3f1rU   r	  r
  r   r   )r   Zpivotr   Zisnasum)r&   Zdf_nonconsolrY   r)   r)   r*   !test_fillna_nonconsolidated_frame9  s   
r  c                  C   s   t d d gd d ggddgd} d}tjt|d | jdddd	d
 W d    n1 s,w   Y  t ddgddggddgd}t| | d S )Nr   r   rU   r   r0   r   r   r}   Tr   )r   r   r5   r6   r   r    )r&   rI   r(   r)   r)   r*   test_fillna_nones_inplaceH  s   r  funcr>   r\   c                 C   sL   t dg di}tt t||   W d    d S 1 sw   Y  d S )Nra   r   )r   r   r5   r6   getattr)r  r&   r)   r)   r*   test_pad_backfill_deprecatedV  s   "r  z#data, expected_data, method, kwargsr   rj   r   r   rA   
limit_areaZinsider   )r  rl   Zoutsider;   ru   c                 C   s4   t | }t |}t||di |}t|| d S )Nr)   )r   r  r   r    )r   Zexpected_datar@   kwargsr&   r(   rY   r)   r)   r*   test_ffill_bfill_limit_area^  s   Cr  )"numpyr   rD   Zpandas._configr   Zpandas.util._test_decoratorsutilZ_test_decoratorsr  Zpandasr   r   r   r   r   r   r	   r
   r   r   Zpandas._testingZ_testingr   Zpandas.tests.frame.commonr   r   r  r  r  r  r  r   r   r  r)   r)   r)   r*   <module>   s    0      '
"" "" "" "" A