
    dg                         d dl Zd dlZd dlmc 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          Zd Zd Zej                            dd	d
g          d             ZdS )    N)
Categorical	DataFrameDatetimeIndexNaTPeriodIndexSeriesTimedeltaIndex	Timestamp
date_rangeto_datetime)_check_mixed_floatc                      e Zd Zd Zej        d             Zd Zd Zd Z	d Z
d Zd Zd	 Zd
 Zd Zd Zd Zd Zd Zd Zej                            dg dddgg          d             Zd Zej                            dddej        dg          d             Zd Zd Zd Zd Z d Z!d  Z"ej                            d!e#e$g          d"             Z%ej                            d!e#e$g          d#             Z&d$ Z'd% Z(d& Z)d' Z*d( Z+d) Z,d* Z-d+ Z.d, Z/d- Z0d. Z1d/ Z2ej3        ej                            dd0d0d0d1g          d2                         Z4d3 Z5d4 Z6d5S )6
TestFillNAc                    t          t          j        gdz  t          t	          d          t          gt          j        ddgd          }g d|_        |d d          }|                    ddid	           t          d
gdz  dt	          d          dgg dd          }g d|_        t          j        ||           |s5t          j	        |j
        d d df         |j
        d d df                   sJ t          j	        |j
        d d df         |j
        d d df                   rJ |s5t          j	        |j
        d d df         |j
        d d df                   sJ d S d S )N      foo   ABC)r   r   r   r   Tinplace       @)r   r   r   r   )r   npnanr   r
   columnsfillnatmassert_frame_equalshares_memoryiloc)selfusing_copy_on_writedforigexpecteds        b/var/www/html/t/fyr/venv311/lib/python3.11/site-packages/pandas/tests/frame/methods/test_fillna.py*test_fillna_dict_inplace_nonunique_columnsz5TestFillNA.test_fillna_dict_inplace_nonunique_columns   s   6(Q,c9Q<<%=RVUTUDVWW
 
 %__
!!!u
		3(D	))) %!)1illA"6]]]KK
 
 +??
b(+++ # 	D#BGAAAqDM49QQQT?CCCCC#BGAAAqDM49QQQT?CCCCC" 	D#BGAAAqDM49QQQT?CCCCC	D 	DCC    c                    t          j        dt           j                  }t          |d          }|d                             dd           |r3t          j        |d d df                                                   sJ n$|d d df         dk                                    sJ t          |j        j	                  dk    sJ t          j
        |j        |          sJ d S )	N)(   2   F)copyr   Tr   r   )r   fullr   r   r   isnanalllen_mgrarraysr"   values)r$   r%   arrr&   s       r)   test_fillna_on_column_viewz%TestFillNA.test_fillna_on_column_view.   s     gh''s''' 	1R&&& 	+8C1I&&**,,,,,,1IO((***** 27>""a''''	3///////r+   c                    |}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                                    sJ |                    d          }t          j        |j        |j        d d         df                                                   sJ |j        |j        dd          df         |j        |j        d         df         k                                    sJ d}t          j        t          |          5  |                                 d d d            n# 1 swxY w Y   d	}t          j        t          |          5  |                    dd
           d d d            d S # 1 swxY w Y   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   r3   r2   pytestraises
ValueError)r$   datetime_frametfzero_filledpaddedmsgs         r)   test_fillna_datetimezTestFillNA.test_fillna_datetime?   s<   $&Frx|S !%'Vrx}c!"$++A.. 1"1" 5s :;q@EEGGGGG&&e&44x
6<#3S#89::>>@@@@@Jv|BCC(#-.&*V\"=Ms=R2SS
#%%	 	 	 8]:S111 	$ 	$!!###	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$8]:S111 	5 	5!!!G!444	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5s$   E44E8;E8GGGc                     |}t           j        |j        |j        dd         df<   t           j        |j        |j        dd          df<   |                    d           |                    d	           d S )
Nr;      r   r   r   valuer=   r>   )r   r   rC   rD   r   )r$   float_string_framemfs      r)   test_fillna_mixed_typez!TestFillNA.test_fillna_mixed_typeT   so    (*rx"~u$%&(frx~s"#
			
			r+   c                     |                     g d          }t          j        |j        |j        dd          df<   |                    d          }t          |dd i           |                    d	
          }t          |dd i           d S )N)r   r   Dr   rP   r   r   rQ   r   dtyper=   r>   )reindexr   r   rC   rD   r   r   )r$   mixed_float_framerT   results       r)   test_fillna_mixed_floatz"TestFillNA.test_fillna_mixed_float\   s    &&&??&(frx~s"###6#t5555%((6#t555555r+   c                     t          dg          }dD ]9}|j                            |d           |j                            |           :d S )NxrX   )r=   backfillTr?   r   r>   )r   r`   r   )r$   r&   ms      r)   test_fillna_emptyzTestFillNA.test_fillna_emptyf   s^    u%%%$ 	" 	"ADKKq$K///DKKqK!!!!	" 	"r+   c                 j   t          ddt          j        dgddt          j        dgddt          j        dgg          }|                    ddi          }t          g dg dg dg          }t	          j        ||           |                    ddid	
          }t	          j        ||           |J d S )Nabcr   r   )rf   rf   r   rf   )rg   rg   r   rg   )rh   rh   r   rh   Tr   r   r   r   r   r    r!   )r$   r&   r]   r(   return_values        r)   test_fillna_different_dtypez&TestFillNA.test_fillna_different_dtypem   s    3$sC&=S"&RU?VW
 
 Au:&&###%;%;%;=S=S=ST
 
 	fh///yy!UTy::
b(+++#####r+   c                 h   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	<   |                    dd
          }t          j	        ||           d S )N
   r   r      r   r;   i  )r   r   )r   r   r   limit)
r   r   randomrandnr   r#   r/   r   r    r!   r$   r&   r(   r]   s       r)   test_fillna_limit_and_valuez&TestFillNA.test_fillna_limit_and_value}   s    ryr1--..&!Q&!Q7799!d!d3a((
fh/////r+   c                 t   t          t          t          d          gt          d          t          gd          }|                                }|d                             |j        |j        d         df                   |d<   |                    d|d         i          }t          j        ||           d S )Nz2014-1-1z2013-1-1)DateDate2rv   r   rw   rQ   )	r   r   r
   r/   r   rC   rD   r    r!   rs   s       r)   test_fillna_datelikezTestFillNA.test_fillna_datelike   s     i
334#J//5 
 
 7799#F+2226"(1+w:N3OPP&"W+!677
fh/////r+   c                    t          dt          d          t          gi          }t          dt          d          t          d          gi          }t          j        |                    d          |           t          dt          t          d          gi          }t          dt          d          t          d          gi          }t          j        |                    d          |           d S )Nr   z2012-11-11 00:00:00+01:00r=   r>   bfill)r   r
   r   r    r!   r   )r$   r&   exps      r)   test_fillna_tzawarezTestFillNA.test_fillna_tzaware   s     i(CDDcJKLL9::9::
 
 	biiui55s;;;c9-H#I#IJKLL9::9::
 
 	biiwi77=====r+   c                    t          t          ddd          ddt          j        t          j        gd          }|                    d	          }t          t          ddd          g d
d          }t          j        ||           d S )N20130101   z
US/Eastern)periodstzr   r   r   r   r=   r>   )      ?r   r   r   )r   r   r   r   r   r    r!   r$   r&   r]   r(   s       r)   $test_fillna_tzaware_different_columnz/TestFillNA.test_fillna_tzaware_different_column   s     
A,GGGBFBF+ 
 
 %((
A,GGG))) 
 
 	fh/////r+   c                    t          dddt          j        gg d          }ddt          j        dg}t          ||d	          }t          g d
g d          }g d}t          ||d	          }t          g dg d          }ddt          j        g}t          ||d	          }	t          ddgg d          }
ddg}t          |
|d	          }|                    ddd	          }t          j        ||           d}t          j        t          |          5  |                    ddd	           d d d            n# 1 swxY w Y   |                    d          }t          j        ||           |
                    dg          }t          j        ||	           |
                                }t          j        ||           t          t          j        dt          j        gddg          }t          |g dd	          }t          g dddg          }t          |g dd	          }|                    d          }t          j        ||           d S )Nr   r   r   r   r   r   )
categoriesrf   rg   dcatsvals)r   r   r   r   )rf   rg   rg   r   rQ   z3Cannot setitem on a Categorical with a new categoryr@   r   rh   r=   r>   r   )subset)rf   rg   rf   )r   r   r   r   r   r    r!   rE   rF   	TypeErrordropna)r$   catr   r&   cat2vals2df_exp_fillcat3vals3df_exp_drop_catscat4vals4df_exp_drop_allresrL   rh   cat_expdf_exps                     r)   test_na_actions_categoricalz&TestFillNA.test_na_actions_categorical   s   1aBF+			BBBS"&#&T2233<<<III>>>$$$u = =>>999;;;c26"$dE%B%BCCAq6iii888c
#T5$A$ABB iiq#66i77
c;///C]9C000 	6 	6IIQ44I555	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 iiui%%
c;/// iixi((
c#3444iikk
c?333 bf-3*EEE9995566ooo3*EEEGYYY??@@iinn
c6*****s   EEEc                 L   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          }t          j        ||           |j                            t          j                  }t          j	        ||j                   |j
                            t          j                  }t          j	        ||j
                   t          dddt          t          g          }	t          d	t          |	          i          }t          j        |                    t          
          |           t          dddt          t          gd          }	t          d	t          |	          i          }t          j        |                    t          
          |           t          dddt          t          g          }	t          d	t          |	          i          }t          j        |                    t          
          |           d S )Nr   r   r   )r   r   r   categoryrY   z2011-01-01 09:00z2016-01-01 23:45rf   rQ   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&   medianr   v_expr   r]   idxs
             r)   test_fillna_categorical_nanz&TestFillNA.test_fillna_categorical_nan   s    261bf-..262626233S1122 bf5566ii(IIIu==ZPPP
c6***''
vrw///''
vrw///!35GcR
 
 [--.//
biici22B7779iCECPPP[--.//
biici22B777h(CEFF[--.//
biici22B77777r+   c                 z   t          ddt          j        gi          }|                    dd          }t          dddgi          }t	          j        ||           t          ddt          j        gi          }|                    ddid          }t          dddgi          }t	          j        ||           d S )Nrf   r   r   inferdowncastr   ri   r   s       r)   test_fillna_downcastzTestFillNA.test_fillna_downcast  s     c26]+,,1w//cAq6]++
fh/// c26]+,,C8g66cAq6]++
fh/////r+   c                 |     |g dd          }|                     dd          }t          j        ||           d S )Nr   objectrY    Fr   )r   r    assert_equal)r$   frame_or_seriesobjr]   s       r)   test_fillna_downcast_falsez%TestFillNA.test_fillna_downcast_false  sG    oiiix888B//
$$$$$r+   c                 0    |g dt           j                  }|                    dt          j        t           j                            }|                    t           j                  }t          j        ||           |                    t           j                  }|                    dd          }|}t          j        ||           |                    dt          j        t           j                            }t          j        ||           d S )Nr   rY   r   r   r   )	r   int64r   rZ   int32astyper    r   float64)	r$   r   r   r   r(   obj2res2	expected2res3s	            r)   test_fillna_downcast_noopz$TestFillNA.test_fillna_downcast_noop%  s     oiiirx888jj"(););j<<::bh''
X&&&zz"*%%{{57{33	
i((({{528BH+=+={>>
h'''''r+   r   )r   r   r   r   c                 $   t          t          j        ddg|          }t          j        d           5  |                    ddi          }d d d            n# 1 swxY w Y   |                                }d|d<   t          j        ||           d S )Nr   r   rD   r   r           )r   r   r   r    assert_produces_warningr   r/   r!   )r$   r   r&   r]   r(   s        r)   -test_fillna_dictlike_value_duplicate_colnamesz8TestFillNA.test_fillna_dictlike_value_duplicate_colnames8  s     rvaVW==='-- 	) 	)YYQx((F	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 7799
fh/////s   AAAc                    t          g dg d          }|j        }t          t          j        d          gdz  g d          }t          j        ||           |                    d          }t          dg dg d          }t          j        ||           t          t          d          d	d
gd          }|                    d          }t          dt          d          d	d
g          }t          j        ||           d S )Nr   )r   r   r   r   r;   r   r   r;   rD   r   r   r   r   r   )rD   r   rZ   r   )
r   dtypesr   r   rZ   r    r   r   r!   ranger   s       r)   test_fillna_dtype_conversionz'TestFillNA.test_fillna_dtype_conversionC  s   ___oooFFF28H--.2///JJJ
vx0001QoooOOO
fh/// U1XXSzKKK5!!U%((S#JGGG
fh/////r+   r   r   r   r   c                     t          dt          j        gddgd          }|                    t          j        |          }|                    |          }t          j        ||           d S )Nr   r   r   r   )r   r   r   replacer   r    r!   )r$   r   r&   r(   r]   s        r)   *test_fillna_dtype_conversion_equiv_replacez5TestFillNA.test_fillna_dtype_conversion_equiv_replaceT  s^    a[Sz::;;::bfc**3
fh/////r+   c                    t          ddt          j        gt          dd          g dg ddt          d	d          
          }|                    d          }t          g dt          dd          g dg ddt          d	d          
          }t          j        ||           t          ddt          j        gt          d          t          d          t          gg dg ddt          d	d          
          }|                    d          }t          g dt          d          t          d          dgg dg ddt          d	d          
          }t          j        ||           d S )Nr0   r~   r   )r   )r   barN)foo2bar2Nr   r   r   rW   20130110r   ?)r0   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   s       r)   test_fillna_datetime_columnsz'TestFillNA.test_fillna_datetime_columns[  s   "bf%
A666)))+++	  Z333
 
 
 3"]]
A666(((***	  Z333
 
 
 	fh///"bf%--y/F/FL)))+++	  Z333
 
 
 3"]]--y/F/FL(((***	  Z333
 
 
 	fh/////r+   c                    t           j        |j        |j        d d         df<   t           j        |j        |j        dd          df<   t	          j        |                                |                    d                     d S )Nr;   r   r<   rB   r>   )r   r   rC   rD   r    r!   rB   r   r$   rH   s     r)   
test_ffillzTestFillNA.test_ffill      <>F>/3S89=?V>/4c9:
  ""N$9$9$9$I$I	
 	
 	
 	
 	
r+   c                    t           j        |j        |j        d d         df<   t           j        |j        |j        dd          df<   t	          j        |                                |                    d                     d S )Nr;   r   r<   rz   r>   )r   r   rC   rD   r    r!   rz   r   r   s     r)   
test_bfillzTestFillNA.test_bfill  r   r+   c                 |   t          j        d          }t          t           j                            dd          |          }|d d                             |dd          }|d d                             |                              d          }t           j        |j        d	d <   t          j
        ||           |d
d                              |dd          }|d
d                              |                              d          }t           j        |j        d d<   t          j
        ||           d S Nrm   r   r   r   r=   r;   )r?   rp   r>   r   ra   r   r   aranger   rq   rr   r[   r   r   r#   r    r!   r$   rD   r&   r]   r(   s        r)   test_frame_pad_backfill_limitz(TestFillNA.test_frame_pad_backfill_limit  s   	"ryr1--U;;;BQBe1==bqb6>>%((//u/==Vbcc
fh///BCCzCCbcc7??5))00
0CCFbqb
fh/////r+   c                    t          j        d          }t          t           j                            dd          |          }|d d                             |          }|                    dd          }|d d                             |                              d          }t           j        |j        d	d <   t          j
        ||           |d
d                              |          }|                    dd          }|d
d                              |                              d          }t           j        |j        d d<   t          j
        ||           d S r   r   r   s        r)   test_frame_fillna_limitz"TestFillNA.test_frame_fillna_limit  s1   	"ryr1--U;;;BQB&&e155bqb6>>%((//u/==Vbcc
fh///BCC''j::bcc7??5))00
0CCFbqb
fh/////r+   c                     t          t          j                            dd                              t
                              }|                    t          j                   d S )Nrm   r   )r   r   rq   rr   r   intr   r   )r$   r&   s     r)   test_fillna_skip_certain_blocksz*TestFillNA.test_fillna_skip_certain_blocks  sK     ryr1--44S99:: 			"&r+   typec                     t          t          j                            dd                                        |          }d}t          j        t          |          5  |                    dd           d d d            d S # 1 swxY w Y   d S )Nrm   r   zLimit must be greater than 0r@   r   r<   ro   	r   r   rq   rr   r   rE   rF   rG   r   r$   r   r&   rL   s       r)   test_fillna_positive_limitz%TestFillNA.test_fillna_positive_limit  s    ryr1--..55d;;,]:S111 	# 	#IIarI"""	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	#   BB
Bc                     t          t          j                            dd                                        |          }d}t          j        t          |          5  |                    dd           d d d            d S # 1 swxY w Y   d S )Nrm   r   zLimit must be an integerr@   r   g      ?ro   r   r   s       r)   test_fillna_integer_limitz$TestFillNA.test_fillna_integer_limit  s    ryr1--..55d;;(]:S111 	$ 	$IIasI###	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$r   c                 z   t          t          j                            dd                    }t          j        |j        d ddf<   t          j        |j        dd df<   |                    d          }||usJ |                    dd	           t          j        ||           |                    ddid	          }|J t          j        |j        d ddf<   t          j        |j        dd df<   |                    d
          }||usJ |                    d
d           t          j        ||           d S )Nrm   r   r   r   r   rQ   TrR   r   rB   r>   rb   )	r   r   rq   rr   r   rC   r   r    r!   r$   r&   r(   s      r)   test_fillna_inplacezTestFillNA.test_fillna_inplace  s8   ryr1--..rr1urssAv9919%%r!!!!
		4	(((
b(+++99Aq64988rr1urssAv99G9,,r!!!!
		$	///
b(+++++r+   c           	         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          j        ||           |                    dddd          }|                    |                                          }|                    |                                                                          }t          j        ||           t          j
        t          d          5  |                    |                    d          d           d d d            d S # 1 swxY w Y   d S )Nr   r   r   r   rf   rg   rh   r   r;   )rf   rg   rf   rg   rn   )rf   rg   r   zcolumn by columnr@   )axis)r   r   r   r   r/   r    r!   maxto_dictrE   rF   NotImplementedErrorr   s       r)   test_fillna_dict_seriesz"TestFillNA.test_fillna_dict_series  s   faBFBF3Arvrv.faAq) 
 
 ++,,7799 ,,Q// ,,Q//
fh/// 3344 26688$$99RVVXX--//00
fh/// ].6HIII 	) 	)IIbffQiiaI(((	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	)s   +F==GGc           	      T   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                    }t          t          j        dd	d
dgg ddgdz  dt          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                    }t          j        ||           d S )Nr   r   r   r   r   VWXYZr   rm   rO      r-   )r.   <   F   P   Z   r   r;   )rf   rg   r   VWXuZr   r   r   r   listr   r    r!   )r$   r&   df2r]   r(   s        r)   test_fillna_dataframez TestFillNA.test_fillna_dataframe  s7   faBFBF3Arvrv.faAq) 
 w--
 
 
 fb"b"-)))w{ 
 w--
 
 
 3 faBFB/Arvr*faAq) 
 w--
 
 
 	fh/////r+   c                    t           j                            dd          }t           j        |d d d d df<   t	          |          }|                    dd          }|j                            d          j        }t          j        ||           |	                    dd	d
           |                    dd          }|
                    t                                        dd          }t          j        ||           d S )Nrm   r   rB   r   )r?   r   r=   r>      r   r;   )r   rq   rr   r   r   r   Tr    r!   insertr   float)r$   r8   r&   r]   r(   s        r)   test_fillna_columnszTestFillNA.test_fillna_columns&  s    ioob"%%fAAAsssFs^^'224;;e;,,.
fh///
		!UA'2299U##**'*BB
fh/////r+   c                     t          j        t          d          5  |                    d           d d d            d S # 1 swxY w Y   d S )Nffilr@   r>   )rE   rF   rG   r   )r$   float_frames     r)   test_fillna_invalid_methodz%TestFillNA.test_fillna_invalid_method4  s    ]:V444 	. 	.f---	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	.s   A  AAc                 .   d}t          j        t          |                    d                    5  |                    ddg           d d d            n# 1 swxY w Y   t          j        t          |                    d                    5  |                    d           d d d            n# 1 swxY w Y   d}t          j        t          |          5  |j        d d d	f                             |           d d d            d S # 1 swxY w Y   d S )
NzA"value" parameter must be a scalar or dict, but you passed a "{}"r  r@   r   r   tuple)r   r   zP"value" parameter must be a scalar, dict or Series, but you passed a "DataFrame"r   )rE   rF   r   formatr   r#   )r$   r  rL   s      r)   test_fillna_invalid_valuez$TestFillNA.test_fillna_invalid_value8  s   Q]9CJJv,>,>??? 	' 	'1v&&&	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' ]9CJJw,?,?@@@ 	' 	'v&&&	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	'# 	 ]9C000 	7 	7QQQT"))+666	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7s5   AAAB00B47B4%D

DDc                 R   d t          ddd          D             }t          j                            dd          }t	          t          d          ||          }|                    d          }|j                                        |j                                        k    sJ d S )	Nc                 2    g | ]}d t          |          z   S )zCOL.)str).0is     r)   
<listcomp>z9TestFillNA.test_fillna_col_reordering.<locals>.<listcomp>I  s"    999AQ999r+   r;   r   r0   rO   )rD   r   datarB   r>   )r   r   rq   randr   r   r   tolist)r$   colsr  r&   filleds        r)   test_fillna_col_reorderingz%TestFillNA.test_fillna_col_reorderingH  s    99q!R999y~~b!$$U2YY4@@@'**z  ""fn&;&;&=&=======r+   c                    |}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                                    sJ |d= |                    g           }|                    d          }d S )	Nr;   rO   r   rP   r   r   rQ   rX   )r   r   rC   rD   r   r3   r[   )r$   r  rS   rT   r  empty_floatr]   s          r)   test_fill_cornerzTestFillNA.test_fill_cornerO  s    (*rx"~u$%&(frx~s"##***33
6<"-u45:??AAAAAu%!))")55 ##!#,,r+   c                     t          ddt          j        gi          }|                    ddiddi          }t          dddgi          }t	          j        ||           d S )Ncol1r   r   r   r   ri   r   s       r)   test_fillna_downcast_dictz$TestFillNA.test_fillna_downcast_dict]  sg    BF,--FA;&'1BCCfq!f-..
fh/////r+   c           	      D   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d	d
          }|                    dd	d
          }t          t          g dd          ddt          j        dgt          j        d	t          j        t          j        gt          g dd          dg d          }t          t          g dd          t          g dd          d	d	t          j        d	gt          g dd          dg d          }t          j        ||           t          j        ||           d S )Nr   r   r   r   r   r;   ABCDrX   d   r   rR   rp   )r(  r   r(  r(  r   rY   )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]   result2r(   r   s         r)   "test_fillna_with_columns_and_limitz-TestFillNA.test_fillna_with_columns_and_limitd  s   BFA&Arvq!+BFA&	 LL
 
 
 A66))#Q)77...i@@@BFA&fc26262LLL	:::	  ,,
 
 
 ...i@@@NNN)<<<3,LLL	:::	  ,,
 
 
	 	fh///
gy11111r+   c                     t          t          dd g          t          dd g          d          }|                                }|                    t          j        d           t          j        ||           d S )Nz
2018-05-30z
2018-09-30)date1date2Tr   )r   r   r/   r   r   r   r    r!   r   s      r)   test_fillna_datetime_inplacez'TestFillNA.test_fillna_datetime_inplace  s{    $lD%9::$lD%9:: 
 
 7799
		"&$	'''
b(+++++r+   c           	         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d	d
          }||usJ |                    dd	dd           t          j        ||           d S )Nr   r   r   r   r   r;   r'  rX   r(  r)  T)r   rR   rp   r   r  r   s      r)   0test_fillna_inplace_with_columns_limit_and_valuez;TestFillNA.test_fillna_inplace_with_columns_limit_and_value  s    BFA&Arvq!+BFA&	 LL
 
 
 99!3a988r!!!!
		q1d	;;;
b(+++++r+   r0   r`   yc                 v   t          t          j        dgt          j        dgd          }|                                }|d d          }|                    |d           t          ddgddgd          }t          j        ||           |rt          j        ||           d S t          j        ||           d S )Nr   r2  Tr   r0   r         )r   r   r   r/   r   r    r!   )r$   r   r%   r&   df_origresult_viewr(   s          r)   test_inplace_dict_update_viewz(TestFillNA.test_inplace_dict_update_view  s     bfa[{;;<<''))e
		#t	$$$B9D!9==>>
b(+++ 	9!+w77777!+x88888r+   c           
         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
          }|                    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
          }t	          j        ||           d S )Nr;   r   rm   rn   r      r   r      )r$  col2col3col4r.   )rp   r   )      @g      @g      (@      I@r   r@  r   )g      $@r?  r   r@  )r@        @r   g      2@rX   ri   r   s       r)   )test_single_block_df_with_horizontal_axisz4TestFillNA.test_single_block_df_with_horizontal_axis  s    Arvr262BFBFAq1RVQ1-Arvr2	 
 
 2QQ//&&&dBFC(rvsC(&&&&&& 544	
 	
 	
 	fh/////r+   c                 
   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          j        |                    ddi          |           t          j        |                    dd	d
          |           t          g dg dddt          j        gd          }t          j        |                    d	dd          |           d S )Nr   rA  r   ))r`   rf   r`   rg   )r3  rh   )r5  r   rA  )r   r   r5  r`   r0   r   )r`   rD  )r   r   g       )rD  r`   )r   r   r   r    r!   r   )r$   pdfr(   s      r)   "test_fillna_with_multi_index_framez-TestFillNA.test_fillna_with_multi_index_frame  s*   VS#. #rv. #rv. 
 
 ,,,,,, #rv. 
 
 	cjj#r33X>>>
cjjrr)B)BCCXNNN,,,,,, #rv. 
 
 	cjjbr)B)BCCXNNNNNr+   N)7__name__
__module____qualname__r*   td&skip_array_manager_not_yet_implementedr9   rM   rU   r^   rd   rk   rt   rx   r|   r   r   r   r   r   r   rE   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/  r1  skip_array_manager_invalid_testr8  rB  rF   r+   r)   r   r      s~       D D D. .0 0 /.0 5 5 5*     6 6 6" " "$ $ $ 
0 
0 
00 0 0> > >20 0 0$(+ (+ (+T"8 "8 "8H0 0 0% % %( ( (& [Y3*(EFF0 0 GF00 0 0" [URBFC$8990 0 :90*0 *0 *0X
 
 

 
 
0 0 0 0 0 0$   [Vc5\22# # 32# [Vc5\22$ $ 32$, , ,,) ) )8!0 !0 !0F0 0 0. . .7 7 7 > > >- - -0 0 0"2 "2 "2H
, 
, 
,, , ,$ '[URr););$<==9 9 >= ('90 0 0.O O O O Or+   r   c                     t          g dg dg dgg d          } |                     dd          }|                    d	          }|                                                                                                d	k    sJ d S )
N)r   r   r   r   )r   r   r   r   )r   r   r   rA  )i1i2i3f1rX   rQ  rR  r   r   )r   pivotr   isnasum)r&   df_nonconsolr]   s      r)   !test_fillna_nonconsolidated_framerY    s    	NNNNNN	

 )((
 
 
B 88$855L  ##F;;==""$$))))))r+   c                      t          d d gd d ggddg          } t          j        d          5  |                     dddd	           d d d            n# 1 swxY w Y   t          ddgddggddg          }t          j        | |           d S )
Nr   r   rX   Fr   r   r   Tr   )r   r    r   r   r!   )r&   r(   s     r)   test_fillna_nones_inplacer[    s    	
d|$c

 
 
B 
	#E	*	* 8 8
		aa(($	7778 8 8 8 8 8 8 8 8 8 8 8 8 8 8 1a&1a&)C:>>>H"h'''''s   AAAfuncr=   ra   c                     t          dg di          }t          j        t                    5   t	          ||                        d d d            d S # 1 swxY w Y   d S )Nrf   r   )r   r    r   FutureWarninggetattr)r\  r&   s     r)   test_pad_backfill_deprecatedr`    s     
C#	$	$B		#M	2	2  D                 s   AAA)numpyr   rE   pandas.util._test_decoratorsutil_test_decoratorsrJ  pandasr   r   r   r   r   r   r	   r
   r   r   pandas._testing_testingr    pandas.tests.frame.commonr   r   rY  r[  rL  rM  r`  rO  r+   r)   <module>ri     sg        ) ) ) ) ) ) ) ) )                              8 8 8 8 8 8PO PO PO PO PO PO PO POf* * *
( 
( 
( %!455  65  r+   