U
    ¾mœdÎg  ã                   @   s¦   d dl Zd dl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dS )é    N)
Ú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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"d#gd"d"gg¡d$d%„ ƒZd&d'„ Zej d(d)d*ejd+g¡d,d-„ ƒZd.d/„ Zd0d1„ Zd2d3„ Zd4d5„ Z d6d7„ Z!d8d9„ Z"ej d:e#e$g¡d;d<„ ƒZ%ej d:e#e$g¡d=d>„ ƒZ&d?d@„ Z'dAdB„ Z(dCdD„ Z)dEdF„ Z*dGdH„ Z+dIdJ„ Z,dKdL„ Z-dMdN„ Z.dOdP„ Z/dQdR„ Z0dSdT„ Z1dUdV„ Z2ej3ej d(dWdWdWdXœg¡dYdZ„ ƒƒZ4d[d\„ Z5d]d^„ Z6d_S )`Ú
TestFillNAc                 C   s&  t tjgd ttdƒtgtjddgdœƒ}dddg|_|d d … }|jddidd� t d	gd dtdƒdgdddgdœƒ}dddg|_t ||¡ |sÂt 	|j
d d …d
f |j
d d …d
f ¡sÂt‚t 	|j
d d …df |j
d d …df ¡rît‚|�s"t 	|j
d d …df |j
d d …df ¡�s"t‚d S )Né   é   Úfooé   )ÚAÚBÚCr   T©Úinplaceç       @r   )r   ÚnpÚnanr   r	   ÚcolumnsÚfillnaÚtmÚassert_frame_equalÚshares_memoryÚilocÚAssertionError)ÚselfÚusing_copy_on_writeÚdfÚorigÚexpected© r&   ú_/home/sam/Atlas/atlas_env/lib/python3.8/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�}|d jddd� |rPt  |d d …df ¡ ¡ slt‚n|d d …df dk ¡ slt‚t|j	j
ƒdks€t‚t  |j|¡s’t‚d S )	N)é(   é2   F)Úcopyr   éÿÿÿÿTr   r   )r   Úfullr   r   r   ÚisnanÚallr    ÚlenZ_mgrZarraysr   Úvalues)r!   r"   Úarrr#   r&   r&   r'   Útest_fillna_on_column_view.   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 ¡ sft‚|jdd�}t  |j|jd d… df ¡ ¡ s˜t‚|j|jdd … df |j|jd df k ¡ sÌt‚d}tj	t
|d�� | ¡  W 5 Q R X d	}tj	t
|d�� |jdd
d� W 5 Q R X d S )Né   r   éûÿÿÿr   Úpad©Úmethodz'Must specify a fill 'value' or 'method'©Úmatchz(Cannot specify both 'value' and 'method'Úffill)r   r   ÚlocÚindexr   r/   r    r.   ÚpytestÚraisesÚ
ValueError)r!   Údatetime_frameÚtfZzero_filledÚpaddedÚmsgr&   r&   r'   Útest_fillna_datetime?   s    
$&*ÿ
zTestFillNA.test_fillna_datetimec                 C   sT   |}t j|j|jdd… df< t j|j|jdd … df< |jdd� |jdd	� d S )
Nr4   é   r   éöÿÿÿr   r   ©Úvaluer6   r7   )r   r   r<   r=   r   )r!   Úfloat_string_frameÚmfr&   r&   r'   Útest_fillna_mixed_typeT   s
    z!TestFillNA.test_fillna_mixed_typec                 C   sh   |j dddgd�}tj|j|jdd … df< |jdd�}t|dd id	� |jd
d�}t|dd id	� d S )Nr   r   ÚD©r   rG   r   rH   r   ©Údtyper6   r7   )Úreindexr   r   r<   r=   r   r   )r!   Zmixed_float_framerK   Úresultr&   r&   r'   Útest_fillna_mixed_float\   s    z"TestFillNA.test_fillna_mixed_floatc                 C   s8   t dgd�}dD ]"}|jj|dd� |jj|d� qd S )NÚxrN   )r6   ÚbackfillT©r8   r   r7   )r   rT   r   )r!   r#   Úmr&   r&   r'   Útest_fillna_emptyf   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ƒ}| ddi¡}t ddddgddddgddddggƒ}t ||¡ |jddidd�}t ||¡ |d ks–t‚d S )NÚaÚbÚcr   r   Tr   )r   r   r   r   r   r   r    )r!   r#   rR   r%   Zreturn_valuer&   r&   r'   Útest_fillna_different_dtypem   s    &ÿ ÿz&TestFillNA.test_fillna_different_dtypec                 C   st   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 )Né
   r   r   é   r   r4   iç  )r   r   )r   r   r   ©Úlimit)
r   r   ÚrandomÚrandnr   r   r+   r   r   r   ©r!   r#   r%   rR   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ÚDate2re   r   rf   rH   )	r   r   r	   r+   r   r<   r=   r   r   rc   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ƒ}t |jdd�|¡ t dttdƒgiƒ}t dtdƒtdƒgiƒ}t |jdd�|¡ d S )Nr   z2012-11-11 00:00:00+01:00r6   r7   Úbfill)r   r	   r   r   r   r   )r!   r#   Úexpr&   r&   r'   Útest_fillna_tzaware˜   s$    þÿÿþÿÿzTestFillNA.test_fillna_tzawarec                 C   s`   t tdddd�ddtjtjgdœƒ}|jdd	�}t tdddd�d
dddgdœƒ}t ||¡ d S )NÚ20130101é   z
US/Eastern)ÚperiodsÚtzr   r   ©r   r   r6   r7   ç      ð?r   )r   r
   r   r   r   r   r   ©r!   r#   rR   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dddgd�}ddtjdg}t||dœƒ}t ddddgdddgd�}ddddg}t||dœƒ}t dddgdddgd�}ddtjg}t||dœƒ}	t ddgdddgd�}
ddg}t|
|dœƒ}|jdddœd	�}t ||¡ d
}tjt	|d�� |jdddœd	� W 5 Q R X |jdd�}t ||¡ |j
dgd�}t ||	¡ | 
¡ }t ||¡ t tjdtjgddgd�}t|dddgdœƒ}t dddgddgd�}t|dddgdœƒ}| d¡}t ||¡ d S )Nr   r   r   )Ú
categoriesrY   rZ   Úd©ÚcatsÚvalsrH   z3Cannot setitem on a Categorical with a new categoryr9   rl   r[   r6   r7   rv   )Zsubset)r   r   r   r   r   r   r   r>   r?   Ú	TypeErrorZdropna)r!   Úcatrw   r#   Úcat2Zvals2Zdf_exp_fillZcat3Zvals3Zdf_exp_drop_catsZcat4Zvals4Zdf_exp_drop_allÚresrD   r[   Zcat_expÚdf_expr&   r&   r'   Útest_na_actions_categoricalÃ   s:    
z&TestFillNA.test_na_actions_categoricalc           
      C   sd  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dddg|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   ru   r   ÚcategoryrO   z2011-01-01 09:00z2016-01-01 23:45rY   rH   z2011-01ÚM)Úfreqz1 daysz2 days)r   r   r   r   r   r   r   r   rv   Úassert_series_equalrw   r   r   r   r   )
r!   ry   Úvalr#   Zmedianr{   Zv_expr|   rR   Úidxr&   r&   r'   Útest_fillna_categorical_naní   s.    
ÿz&TestFillNA.test_fillna_categorical_nanc                 C   s€   t ddtjgiƒ}|jddd�}t dddgiƒ}t ||¡ t ddtjgiƒ}|jddidd�}t dddgiƒ}t ||¡ d S )NrY   rp   r   Úinfer©Zdowncastr   ©r   r   r   r   r   r   rq   r&   r&   r'   Útest_fillna_downcast  s    zTestFillNA.test_fillna_downcastc                 C   s0   |dddgdd�}|j ddd�}t ||¡ d S )	Nr   r   r   ÚobjectrO   Ú Fr†   )r   r   Úassert_equal)r!   Úframe_or_seriesÚobjrR   r&   r&   r'   Útest_fillna_downcast_false  s    z%TestFillNA.test_fillna_downcast_falsec           	      C   s’   |dddgt jd�}|jdt  t j¡d�}| t j¡}t ||¡ | t j¡}|jddd�}|}t ||¡ |jdt  t j¡d�}t ||¡ d S )Nr   r   r   rO   r   r†   r…   )	r   Úint64r   rP   Zint32Úastyper   r‹   Úfloat64)	r!   rŒ   r�   r{   r%   Úobj2Zres2Ú	expected2Zres3r&   r&   r'   Útest_fillna_downcast_noop%  s    z$TestFillNA.test_fillna_downcast_noopr   r   r   c              	   C   sX   t tjddg|d�}t d ¡� | ddi¡}W 5 Q R X | ¡ }d|d< t ||¡ d S )Nr   r   ©r=   r   r   ç        )r   r   r   r   Úassert_produces_warningr   r+   r   )r!   r   r#   rR   r%   r&   r&   r'   Ú-test_fillna_dictlike_value_duplicate_colnames8  s    z8TestFillNA.test_fillna_dictlike_value_duplicate_colnamesc                 C   sÊ   t dddgdddddgd	�}|j}tt d
¡gd dddddgd�}t ||¡ | d¡}t ddddgdddddgd	�}t ||¡ t t	dƒddgdd�}| d¡}t dt	dƒddgd	�}t ||¡ d S )Nr   r   r   r   r   r   rl   r4   r•   r‰   ©r=   r‘   )r=   r   rP   r   )
r   Zdtypesr   r   rP   r   r�   r   r   Úrangerq   r&   r&   r'   Útest_fillna_dtype_conversionC  s    "

z'TestFillNA.test_fillna_dtype_conversionr‚   rŠ   r   rp   c                 C   s@   t dtjgddgdœƒ}| tj|¡}| |¡}t ||¡ d S )Nr   rp   r   ro   )r   r   r   Úreplacer   r   r   )r!   r‚   r#   r%   rR   r&   r&   r'   Ú*test_fillna_dtype_conversion_equiv_replaceT  s    
z5TestFillNA.test_fillna_dtype_conversion_equiv_replacec                 C   s   t ddtjgtddd�ddd gdd	d gd
œtddd�d�}| d¡}t dddgtddd�dddgdd	dgd
œtddd�d�}t ||¡ t ddtjgtdƒtdƒtgddd gdd	d gd
œtddd�d�}| d¡}t dddgtdƒtdƒdgdddgdd	dgd
œtddd�d�}t ||¡ d S )Nr,   éþÿÿÿrk   r   )rm   r   ÚbarZfoo2Zbar2©r   r   r   rM   Z20130110r™   ú?z
2013-01-01z
2013-01-02)	r   r   r   r
   r   r   r   r	   r   rq   r&   r&   r'   Útest_fillna_datetime_columns[  sH    

ü
ù	

ü
ù	
ü
ù	
ü
ù	z'TestFillNA.test_fillna_datetime_columnsc                 C   sP   t j|j|jd d… df< t j|j|jdd … df< t | ¡ |jdd�¡ d S )Nr4   r   r5   r;   r7   )r   r   r<   r=   r   r   r;   r   ©r!   rA   r&   r&   r'   Ú
test_ffill‡  s     
ÿzTestFillNA.test_ffillc                 C   sP   t j|j|jd d… df< t j|j|jdd … df< t | ¡ |jdd�¡ d S )Nr4   r   r5   rh   r7   )r   r   r<   r=   r   r   rh   r   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 d…  |¡jdd�}t j|jd	d …< t	 
||¡ |d
d … j|ddd�}|d
d …  |¡jdd�}t j|jd d…< t	 
||¡ d S ©Nr]   rl   r™   r   r6   r4   )r8   r`   r7   éýÿÿÿrž   rU   r   ©r   Zaranger   ra   rb   rQ   r   r   r   r   r   ©r!   r=   r#   rR   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…  |¡}|jddd�}|d d…  |¡jdd�}t j|jd	d …< t	 
||¡ |d
d …  |¡}|jddd�}|d
d …  |¡jdd�}t j|jd d…< t	 
||¡ d S 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]   rl   )r   r   ra   rb   r�   Úintr   r   )r!   r#   r&   r&   r'   Útest_fillna_skip_certain_blocks¹  s    z*TestFillNA.test_fillna_skip_certain_blocksÚtypec              	   C   sH   t tj dd¡ƒ |¡}d}tjt|d�� |jddd� W 5 Q R X d S )Nr]   rl   zLimit must be greater than 0r9   r   r5   r_   ©	r   r   ra   rb   r�   r>   r?   r@   r   ©r!   r®   r#   rD   r&   r&   r'   Útest_fillna_positive_limitÁ  s    z%TestFillNA.test_fillna_positive_limitc              	   C   sH   t tj dd¡ƒ |¡}d}tjt|d�� |jddd� W 5 Q R X d S )Nr]   rl   zLimit must be an integerr9   r   g      à?r_   r¯   r°   r&   r&   r'   Útest_fillna_integer_limitÉ  s    z$TestFillNA.test_fillna_integer_limitc                 C   sè   t tj dd¡ƒ}tj|jd d…df< tj|jdd …df< |jdd�}||k	sRt‚|jddd	� t 	||¡ |jddidd	�}|d ksŠt‚tj|jd d…df< tj|jdd …df< |jd
d�}||k	sÊt‚|jd
dd� t 	||¡ d S )Nr]   rl   r   éüÿÿÿr   r   rH   T©rI   r   r;   r7   rV   )
r   r   ra   rb   r   r<   r   r    r   r   ©r!   r#   r%   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 5 Q R X d S )Nr   r   r   rl   ©rY   rZ   r[   r   r4   )rY   rZ   rY   rZ   r^   )rY   rZ   rt   zcolumn by columnr9   )Úaxis)r   r   r   r   r+   r   r   ÚmaxÚto_dictr>   r?   ÚNotImplementedErrorrq   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dddddg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   rl   r·   ZVWXYZr™   r]   rF   é   r)   r*   é<   éF   éP   éZ   rŸ   r4   )rY   rZ   r   ZVWXuZ)r   r   r   Úlistr   r   r   )r!   r#   Zdf2rR   r%   r&   r&   r'   Útest_fillna_dataframe  s.    ýú
ýú	
ýú	z TestFillNA.test_fillna_dataframec                 C   s˜   t j dd¡}t j|d d …d d d…f< t|ƒ}|jddd�}|jjdd�j}t ||¡ | 	dd	d
¡ |jddd�}| 
t¡jddd�}t ||¡ d S )Nr]   r   r;   r   )r8   r¸   r6   r7   é   r   r4   )r   ra   rb   r   r   r   ÚTr   r   Úinsertr�   Úfloat)r!   r2   r#   rR   r%   r&   r&   r'   Útest_fillna_columns&  s    zTestFillNA.test_fillna_columnsc              	   C   s*   t jtdd�� |jdd� W 5 Q R X d S )NZffilr9   r7   )r>   r?   r@   r   )r!   Úfloat_framer&   r&   r'   Útest_fillna_invalid_method4  s    z%TestFillNA.test_fillna_invalid_methodc              	   C   s–   d}t jt| d¡d�� | ddg¡ W 5 Q R X t jt| d¡d�� | d¡ W 5 Q R X d}t jt|d�� |jd d …d	f  |¡ W 5 Q R X d S )
NzA"value" parameter must be a scalar or dict, but you passed a "{}"rÂ   r9   r   r   Útuple)r   r   zP"value" parameter must be a scalar, dict or Series, but you passed a "DataFrame"r   )r>   r?   rx   Úformatr   r   )r!   rÉ   rD   r&   r&   r'   Útest_fillna_invalid_value8  s    ÿz$TestFillNA.test_fillna_invalid_valuec                 C   s^   dd„ t dddƒD ƒ}tj dd¡}tt dƒ||d�}|jdd	�}|j ¡ |j ¡ ksZt‚d S )
Nc                 S   s   g | ]}d t |ƒ ‘qS )zCOL.)Ústr)Ú.0Úir&   r&   r'   Ú
<listcomp>I  s     z9TestFillNA.test_fillna_col_reordering.<locals>.<listcomp>r4   r   r,   rF   )r=   r   Údatar;   r7   )	rš   r   ra   Zrandr   r   r   Útolistr    )r!   ÚcolsrÒ   r#   Úfilledr&   r&   r'   Útest_fillna_col_reorderingH  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 ¡ sht‚|d= |jg d�}|jdd�}d S )	Nr4   rF   r   rG   r   r   rH   rN   )r   r   r<   r=   r   r/   r    rQ   )r!   rÉ   rJ   rK   rÕ   Zempty_floatrR   r&   r&   r'   Útest_fill_cornerO  s    $zTestFillNA.test_fill_cornerc                 C   sH   t ddtjgiƒ}|jddiddid�}t dddgiƒ}t ||¡ d S )NÚcol1r   r   r�   r†   r‡   rq   r&   r&   r'   Útest_fillna_downcast_dict]  s    z$TestFillNA.test_fillna_downcast_dictc              	   C   s2  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d	dd	d	gdd�ddtjdgtjd	tjtjgtddddgdd�dœddddgd�}t td	dd	d	gdd�tddd	dgdd�d	d	tjd	gtddddgdd�dœddddgd�}t ||¡ t ||¡ d S )Nr   r   r   rl   r   r4   ÚABCDrN   éd   ©r¸   rI   r`   r‘   rO   r    r™   )r   r   r   rÂ   r   r   r   r   )r!   r#   rR   Zresult2r%   r“   r&   r&   r'   Ú"test_fillna_with_columns_and_limitd  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'   Ú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
�}||k	sdt‚|jdd	ddd� t ||¡ d S )Nr   r   r   rl   r   r4   rÚ   rN   rÛ   rÜ   T)r¸   rI   r`   r   )r   r   r   rÂ   r   r    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,   ©rT   Úyc                 C   s€   t tjdgtjdgdœƒ}| ¡ }|d d … }|j|dd� t ddgddgdœƒ}t ||¡ |rpt ||¡ nt ||¡ d S )Nr   rà   Tr   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 ddddgddtjdgdtjddgddddgddddggddddgd�}t ||¡ d S )Nr4   r   r]   r^   r   é   r   r   é   )rØ   Úcol2Úcol3Úcol4r*   )r`   r¸   g      @g      @g      (@g      I@r–   rp   g      $@r   ç      @g      2@rØ   ræ   rç   rè   rN   r‡   rq   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 dddgdddgddtjgdœƒ}t | ddi¡|¡ t | ddd	œ¡|¡ t dddgddd
gddtjgdœƒ}t | dddœ¡|¡ d S )Nr   ré   rp   ))rT   rY   ©rT   rZ   )rá   r[   râ   rT   r,   rž   )rT   rë   g       À)rë   rT   )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)7Ú__name__Ú
__module__Ú__qualname__r(   ÚtdZ&skip_array_manager_not_yet_implementedr3   rE   rL   rS   rX   r\   rd   rg   rj   rr   r}   r„   rˆ   rŽ   r”   r>   ÚmarkÚ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      sb   

*$


,

#$r   c                  C   sf   t ddddgddddgddddggddd	d
gd�} | jddd�}| d¡}| ¡  ¡  ¡ dksbt‚d S )Nr   rp   r   r   r   ré   Úi1Úi2Zi3Úf1rN   r•   r   )r   Zpivotr   ZisnaÚsumr    )r#   Zdf_nonconsolrR   r&   r&   r'   Ú!test_fillna_nonconsolidated_frameé  s    


ý
ú
r÷   c               	   C   sr   t d d gd d ggddgd�} t d¡� | jdddœdd	� W 5 Q R X t ddgddggddgd�}t | |¡ d S )
Nr   r   rN   Fr   r   ro   Tr´   )r   r   r—   r   r   )r#   r%   r&   r&   r'   Útest_fillna_nones_inplaceø  s    þrø   Úfuncr6   rU   c              	   C   s8   t ddddgiƒ}t t¡� t|| ƒƒ  W 5 Q R X d S )NrY   r   r   r   )r   r   r—   ÚFutureWarningÚgetattr)rù   r#   r&   r&   r'   Útest_pad_backfill_deprecated  s    rü   )Únumpyr   r>   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'   Ú<module>   s   0     X