o
    �¨Êh@ ã                   @   sV  d dl mZ d dlmZmZ d dlmZ d dlZd dlZd dl	Z	d dl
mZ d dlmZmZmZ d dlm  mZ d dlmZ d dlZd dlmZ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	Z&G d
d„ dƒZ'G dd„ dƒZ(dd„ Z)dZ*dZ+G dd„ dƒZ,G dd„ dƒZ-d"dd„Z.e	j/ 0de1dfdg¡d"dd„ƒZ2dd„ Z3G d d!„ d!ƒZ4dS )#é    )Ú
namedtuple)ÚdatetimeÚ	timedelta©ÚDecimalN)ÚiNaT)ÚInvalidIndexErrorÚPerformanceWarningÚSettingWithCopyError)Ú
is_integer)ÚCategoricalÚ	DataFrameÚDatetimeIndexÚIndexÚ
MultiIndexÚSeriesÚ	TimestampÚ
date_rangeÚisnaÚnotnaÚto_datetimezBslice indices must be integers or None or have an __index__ methodc                	   @   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
ej dg d¢g d¢g d¢g¡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/d0„ Zd1d2„ Zd3d4„ Zd5d6„ Zd7d8„ Ze j!d9d:„ ƒZ"d;d<„ Z#d=d>„ Z$d?d@„ Z%e j!dAdB„ ƒZ&dCdD„ Z'e j!dEdF„ ƒZ(dGdH„ Z)dIdJ„ Z*dKdL„ Z+dMdN„ Z,dOdP„ Z-dQdR„ Z.dSdT„ Z/dUdV„ Z0dWdX„ Z1dYdZ„ Z2d[d\„ Z3d]d^„ Z4d_d`„ Z5dadb„ Z6dcdd„ Z7ej dedfdgg¡dhdi„ ƒZ8djdk„ Z9dldm„ Z:dndo„ Z;dpdq„ Z<drds„ Z=dtdu„ Z>dvdw„ Z?dxdy„ Z@dzd{„ ZAd|d}„ ZBd~d„ ZCd€d�„ ZDd‚dƒ„ ZEd„d…„ ZFd†d‡„ ZGej Hdˆ¡ej d‰eIjJeIjJ KdŠ¡eIjJ Kd‹¡g¡dŒd�„ ƒƒZLdŽd�„ ZMd�d‘„ ZNej d’d“d”d•gfd–d—d•gfg¡d˜d™„ ƒZOe j!dšd›„ ƒZPdœd�„ ZQej dždŸdŸgeIjReIjRgg¡d d¡„ ƒZSej dždŸeIjRg¡d¢d£„ ƒZTej d¤eUeVeWjXg¡d¥d¦„ ƒZYd§d¨„ ZZej d©d•gd•g¡ej dªi d«d—ig¡d¬d­„ ƒƒZ[ej dªi d®d•ig¡d¯d°„ ƒZ\d±d²„ Z]d³d´„ Z^dµd¶„ Z_ej d©dfd·g¡ej d¸e`d¹g¡dºd»„ ƒƒZaej d¼dgdfg¡ej d©d½d½gg¡d¾d¿„ ƒƒZbej dÀecjdd—fecjedÁfg¡dÂdÃ„ ƒZfdŸS )ÄÚTestDataFrameIndexingc                 C   s¾   |d d… }t |jƒdksJ ‚| ¡ D ]\}}t |jƒdks J ‚t |j|j¡ q|j ¡ D ]\}}|| d us:J ‚q.d|vsAJ ‚tjtdd�� |d  W d   ƒ d S 1 sXw   Y  d S )Né   Úrandom©Úmatch)	ÚlenÚindexÚitemsÚtmÚassert_index_equalÚ_seriesÚpytestÚraisesÚKeyError)ÚselfÚfloat_frameÚslÚ_ÚseriesÚkey© r+   ú[/var/www/html/env/lib/python3.10/site-packages/pandas/tests/frame/indexing/test_indexing.pyÚtest_getitem+   s   
"ÿz"TestDataFrameIndexing.test_getitemc                 C   sl   |}t g d¢|d�}tg d¢g d¢g|d�}|d }tddgdd	ggt ddg|d�d�}tj||d
d� d S )N©é   r   r/   ©Údtype©r/   é   é   ©é   é   é   ©Úcolumnsr/   r4   r6   r8   T©Úcheck_exact©r   r   r   Úassert_frame_equal)r%   Úany_numeric_dtyper1   ÚidxÚdfÚresultÚexpectedr+   r+   r,   Ú6test_getitem_numeric_should_not_fallback_to_positional<   s   $zLTestDataFrameIndexing.test_getitem_numeric_should_not_fallback_to_positionalc                 C   s˜   |  ¡ }tj d¡ t|ƒ¡|d< tj d¡ t|ƒ¡}||d< tjtt	 
d¡d�� | d¡ W d   ƒ n1 s:w   Y  |d }t ||j¡ d S )Nr3   z$10z@awesome_domainz'df["$10"]'r   z	df["$10"])ÚcopyÚnpr   Údefault_rngÚstandard_normalr   r"   r#   r$   ÚreÚescapeÚ__getitem__r   Úassert_numpy_array_equalÚvalues)r%   r&   rA   ÚadÚresr+   r+   r,   Útest_getitem2E   s   ÿz#TestDataFrameIndexing.test_getitem2c                 C   s`   |}t g d¢|d�}tg d¢g d¢g|d�}d|d< tg d¢g d	¢g|d�}tj||d
d� d S )Nr.   r0   r2   r5   r9   é
   r/   )rQ   r3   rQ   )rQ   r7   rQ   Tr;   r=   )r%   r?   r1   r@   rA   rC   r+   r+   r,   Ú6test_setitem_numeric_should_not_fallback_to_positionalR   s   zLTestDataFrameIndexing.test_setitem_numeric_should_not_fallback_to_positionalc                 C   sü   d|d< |ddg }||ddg< t j|d |d dd� t j|d |d dd� d}tjt|d�� |ddg |dg< W d   ƒ n1 sEw   Y  tt|jƒd	 ƒ}d
t|ƒ› dt|ƒ› d�}tjt|d�� ||d< W d   ƒ d S 1 sww   Y  d S )NÚfooÚEÚAÚBF©Úcheck_namesz"Columns must be same length as keyr   r/   zLength of values \(z$\) does not match length of index \(z\))r   Úassert_series_equalr"   r#   Ú
ValueErrorÚranger   r   )r%   r&   ÚdataÚmsgÚnewcolumndatar+   r+   r,   Útest_setitem_list[   s"   ÿÿÿ
"ÿz'TestDataFrameIndexing.test_setitem_listc                 C   sÐ   t dtdƒddgtd�}ddg|jdddgf< |j|jd ddgf }tddg|jtdd�}t ||¡ d	 |d< |d< d
dg|j|jd ddgf< |j|jd ddgf }td
dg|jdd�}t ||¡ d S )Nr   r4   Útt1Útt2)r   r:   r1   r/   r3   )r1   ÚnameÚ0Ú1Ú2©rb   )	r   r[   ÚintÚlocr   r   r:   r   rY   ©r%   rA   rB   rC   r+   r+   r,   Útest_setitem_list2n   s   z(TestDataFrameIndexing.test_setitem_list2c                    sú  |j d }|j |k}| t¡}|j | }|| }t ||j ¡ tjtdd�� ||d d…   W d   ƒ n1 s9w   Y  || }	t |	|¡ tjtdd�� ||  W d   ƒ n1 s^w   Y  t	||j ƒ}|| }	t |	|¡ t 
t¡� | |j d d d… ¡}|| }	t |	|¡ W d   ƒ n1 s˜w   Y  |||fD ]X}
|
 ¡ ‰ |
|
dk }t‡ fdd„ˆ jD ƒˆ j ˆ jd	�}|
jD ]}||vrÎ|
| ||< qÂ|j|
jd
�}tj||dd� |
jD ]}|| j|| jkrù|| j|
| jksùJ ‚qáq¢d S )NrQ   zItem wrong lengthr   éÿÿÿÿzBoolean array expectedr   c                    s*   i | ]}|t  ˆ | d kˆ | t j¡“qS ©r   )rF   ÚwhereÚnan)Ú.0Úc©r\   r+   r,   Ú
<dictcomp>§   s   * z>TestDataFrameIndexing.test_getitem_boolean.<locals>.<dictcomp>©r   r:   r9   F)Úcheck_dtype)r   ÚastypeÚobjectr   r    r"   r#   rZ   r>   r   Úassert_produces_warningÚUserWarningÚreindexÚ_get_numeric_datar   r:   r1   )r%   Úmixed_float_frameÚmixed_int_frameÚdatetime_frameÚdÚindexerÚindexer_objÚsubindexÚsubframeÚsubframe_objrA   ÚbifÚbifwrp   r+   rq   r,   Útest_getitem_boolean|   sZ   



ÿ
ÿýýý
€
€þìz*TestDataFrameIndexing.test_getitem_booleanc                 C   s@  |  ¡ }d|d< |d  d¡|d< |d   ¡ |d< d|d< |d  d¡|d< |d   ¡ |d< ||dk }|j}tt d	¡gd
 t d¡gd  t d¡gd  g d¢d�}t ||¡ d|j|j	dd… ddgf< ||dk }|j}tt d	¡gd
 t d¡g t d	¡g t d¡g t d	¡g g d¢d�}t ||¡ d S )Nr/   rT   Úint32ÚE1ÚFÚint64ÚF1r   Úfloat64r6   r3   )rU   rV   ÚCÚDrT   rˆ   r‰   r‹   ©r   r4   )
rE   ru   Údtypesr   rF   r1   r   rY   rh   r   )r%   r}   rA   ÚcastedrB   rC   r+   r+   r,   Útest_getitem_boolean_casting·   sD   ÿþü
ÿ
þ
ý
üúz2TestDataFrameIndexing.test_getitem_boolean_castingÚlst©TFT)TTT)FFFc                 C   s>   t t d¡ dd¡ƒ}|| }|j|j|  }t ||¡ d S )Né   r4   r6   )r   rF   ÚarangeÚreshaperh   r   r   r>   )r%   r“   rA   rB   rC   r+   r+   r,   Útest_getitem_boolean_listÙ   s   z/TestDataFrameIndexing.test_getitem_boolean_listc                 C   s`   t j d¡ d¡}t| ¡ g d¢d�}||dk   d7  < ||dk   d7  < t |j|¡ d S )Nr3   ©r7   r7   )rU   rV   r�   rŽ   rT   r9   r   r/   )	rF   r   rG   rH   r   rE   r   Úassert_almost_equalrM   )r%   ÚarrrA   r+   r+   r,   Útest_getitem_boolean_iaddâ   s
   z/TestDataFrameIndexing.test_getitem_boolean_iaddc                 C   s>   t t ddg¡dgtg ƒd�}t g t¡}||  d||< d S )Nr   r/   rU   ©r:   r   )r   rF   Úemptyr   ÚarrayÚbool)r%   ÚblahÚkr+   r+   r,   Útest_boolean_index_empty_cornerì   s   z5TestDataFrameIndexing.test_boolean_index_empty_cornerc                 C   s‚   t tj d¡ d¡g d¢g d¢d�}|jd d… }|j|jd d…  }t 	||¡ |jddg }|jt
ddgƒ }t 	||¡ d S )	Nr3   )r6   r4   )r/   rQ   r�   rT   r2   rs   rk   r/   rQ   )r   rF   r   rG   rH   Úilocrh   r   r   r>   r   ri   r+   r+   r,   Útest_getitem_ix_mixed_integerö   s   ýz3TestDataFrameIndexing.test_getitem_ix_mixed_integerc                 C   s~   t dg d¢g d¢g d¢dœg d¢d�}|dg }|jd d …dgf }t ||¡ |d	g }|jd d …d
gf }t ||¡ d S )N)ç      ø?gš™™™™™@gš™™™™™	@ç      @)é   é   é$   é(   )rQ   é   é+   é"   )r   rQ   r   é   )Úrnaéüÿÿr   éè  r9   r²   r4   r±   r/   ©r   r¤   r   r>   ri   r+   r+   r,   Útest_getitem_ix_mixed_integer2  s   üù
	
z4TestDataFrameIndexing.test_getitem_ix_mixed_integer2c                 C   sP   t  |j|d ¡ d}tjt|d�� |j W d   ƒ d S 1 s!w   Y  d S )NrU   z6'DataFrame' object has no attribute 'NONEXISTENT_NAME'r   )r   rY   rU   r"   r#   ÚAttributeErrorÚNONEXISTENT_NAME)r%   r&   r]   r+   r+   r,   Útest_getattr  s
   "ÿz"TestDataFrameIndexing.test_getattrc                 C   s0   t dditdƒd�}d|_|jdk ¡ sJ ‚d S )NÚfoobarr/   rQ   r�   r7   )r   r[   r¸   Úall©r%   rA   r+   r+   r,   Útest_setattr_column  s   z)TestDataFrameIndexing.test_setattr_columnc           
      C   sÖ  |d d d d… }||d< d|v sJ ‚t |ƒdksJ ‚t |ƒdks#J ‚t t |jtjgd f¡¡}t||jdd�}t 	|d |¡ |d }||d< tj	||d dd	� tj
 d¡ t |ƒ¡}||d
< |d
 |k ¡ smJ ‚d|d< |d dk ¡ s{J ‚d|d< |d dk ¡ s‰J ‚d|d< |d dk ¡ s—J ‚|d d… }d}	|s£|rªddg|d< ntjt|	d�� ddg|d< W d   ƒ n1 sÂw   Y  |rÓ|d jdksÒJ ‚n
|d jtjksÝJ ‚|d ddgk ¡ séJ ‚d S )NrU   r3   Úcol5é   r¯   ©r   rb   Úcol6FrW   Úcol9r7   Úcol7g…ëQ¸	@Úcol0rS   Úcol8zC\nA value is trying to be set on a copy of a slice from a DataFramerd   re   Úcol10r   Ústring)r   rF   ÚravelÚcolumn_stackrM   rn   r   r   r   rY   r   rG   rH   r¹   r"   r#   r
   r1   Úobject_)
r%   r&   Úusing_copy_on_writeÚwarn_copy_on_writeÚusing_infer_stringr)   Úexpr›   Úsmallerr]   r+   r+   r,   Útest_setitem#  s>   ÿz"TestDataFrameIndexing.test_setitemc                 C   sb   t ddggƒ}tj|jd< t tjtjggƒ}t ||¡ t ddggƒ}tj|jd< t ||¡ d S )Nr   )r   rF   rn   r¤   r   r>   rh   ©r%   rA   rC   r+   r+   r,   Útest_setitem2V  s   z#TestDataFrameIndexing.test_setitem2c           	      C   sB  |  ¡ }|j  ¡ }d||d dk< d||d d …df dk< t |j|¡ |d dk}| |jd d d… ¡}d||< d||d d …df dk< t |j|¡ d||dk< d||dk< t |j|¡ d||dk< d||dk< t |j|¡ d||d d… dk < t |d d… |d d… dk d¡ t |j|¡ d||d d d… dk< d||dk< t |j|¡ d	}tj	t
|d
�� d||d < W d   ƒ n1 sÆw   Y  |  ¡ }|t |¡k}tj||t |¡k< |j  ¡ }tj||j< t||j|jd�}t ||¡ |d ||t |¡k< t ||j|jd ¡ t||j|jd�}t ||¡ d S )Nr6   rU   r   rk   r/   r7   r3   r4   z;Must pass DataFrame or 2-d ndarray with boolean values onlyr   rs   )rE   rM   r   rš   ry   r   rF   Úputmaskr"   r#   Ú	TypeErrorÚabsrn   r   r:   r>   )	r%   r&   rA   rM   r)   r]   Údf_origÚmaskrC   r+   r+   r,   Útest_setitem_booleana  sJ   
"ÿ
z*TestDataFrameIndexing.test_setitem_booleanc                 C   s  |d   d¡|d< |d jtjksJ ‚d|d< |d jtjks!J ‚t t|ƒ¡|d< t|d jjtjƒs6J ‚d|d< d|d< |d jtjksHJ ‚d|d< d|d< |d jtj	ksZJ ‚d|d< |d jtjkshJ ‚d	|d< |d jtjksvJ ‚d|d< |d jtj	ks„J ‚d S )
NrŽ   Úi8r   rV   ÚbarrS   ç      @Ú	somethingr3   )
ru   r1   rF   rŠ   r–   r   Ú
issubclassÚtypeÚintegerrŒ   )r%   r&   r+   r+   r,   Útest_setitem_cast•  s$   z'TestDataFrameIndexing.test_setitem_castc                 C   s®  t g d¢g d¢dœt d¡d�}|d= g d¢|d< d|v sJ ‚t|jƒdks(J ‚d|d	< d
|d< d|d< d|t ¡ < d|t ¡ < t |jd�}d
|d	< d|d< t|jƒdksWJ ‚|jj	tj
ks`J ‚d|d< |d j	tjksnJ ‚d|d< |d j	tjks|J ‚d|d	< d|d	 jd ks‹J ‚t t d¡d�}d|d	< d|d
< |d
= d|d
< |r®|d
 j	dks­J ‚n
|d
 j	tj
ks¸J ‚g d¢|d< |rË|d j	dksÉJ ‚d S |d j	tj
ksÕJ ‚d S )N)ç      ð?ç       @ç      @©ÚaÚbrp   )rV   r�   r4   r�   rV   r3   Ú	beginningrU   rS   rT   rØ   rŽ   Údateç      @r/   r�   rß   r   rÅ   ©rd   re   Ú3Ú	coercible)r   rF   r–   r   r:   r   Únowr   rM   r1   rÈ   rŠ   rŒ   r¤   )r%   r&   rË   rA   Údmr+   r+   r,   Útest_setitem_corner²  sB    z)TestDataFrameIndexing.test_setitem_cornerc                 C   sˆ   g d¢dgd  t j d¡ d¡dœ}t|ƒ}||d dk j}d|j|dgf< d	|j|d
gf< |jd dks9J ‚|jd d	ksBJ ‚d S )N)r¸   rØ   r¸   r¸   é   r3   r   )ÚtitleÚcruftrï   rØ   r   rð   )r/   rï   )r/   rð   )rF   r   rG   r   r   rh   )r%   r\   rA   Úixr+   r+   r,   Útest_setitem_corner2â  s   þz*TestDataFrameIndexing.test_setitem_corner2c                 C   sÌ   t tdƒtdƒd�}tdd„ tdƒD ƒtdƒd�}tg d¢tdƒd�}t d¡|d< t|jƒdks3J ‚||d< t|jƒdks@J ‚||d	< t|jƒdksMJ ‚|rZ|d	 jd
ksXJ ‚d S |d	 jtjksdJ ‚d S )Nr4   rs   c                 S   s   g | ]}t d ƒ‘qS )r/   r   )ro   r(   r+   r+   r,   Ú
<listcomp>ö  s    z<TestDataFrameIndexing.test_setitem_ambig.<locals>.<listcomp>r�   )rS   ÚbzrÚbazr   r/   r3   rÅ   )	r   r[   r   rF   Úonesr   r:   r1   rÈ   )r%   rË   rì   Úcoercable_seriesÚuncoercable_seriesr+   r+   r,   Útest_setitem_ambigñ  s   z(TestDataFrameIndexing.test_setitem_ambigc                 C   sz   |d |d < |s
d nt j}tj|jd d …df |d dd� tj|jd d …|f |d dd� tj|| |d dd� d S )NrU   rk   FrW   )rF   rn   r   rY   r¤   rh   )r%   r&   rË   r*   r+   r+   r,   Útest_setitem_None  s   ÿÿz'TestDataFrameIndexing.test_setitem_Nonec                 C   sN   t g d¢g d¢g d¢dœƒ}| ¡ }|j ¡ |j|j ¡ df< t ||¡ d S )Nrè   )Ú11Ú22Ú33)Ú111Ú222Ú333râ   rã   )r   rE   rã   rh   rä   r   r   r>   )r%   rA   rB   r+   r+   r,   Ú&test_loc_setitem_boolean_mask_allfalse  s   ÿz<TestDataFrameIndexing.test_loc_setitem_boolean_mask_allfalsec                 C   sZ   t tj d¡ d¡ƒ}|jd dd…  tj|jd dd…< t|jd dd… ƒj 	¡ s+J ‚d S )Nr3   ©rQ   r7   é   )
r   rF   r   rG   rH   r¤   rn   r   rM   r¹   rº   r+   r+   r,   Ú&test_getitem_fancy_slice_integers_step  s   "z<TestDataFrameIndexing.test_getitem_fancy_slice_integers_stepc                 C   sp  t tj d¡ d¡tdddƒd�}| ¡ }d|jdd…< |jdd… dkj 	¡ s*J ‚| ¡ }d|jdd	…< |jdd	… dkj 	¡ sCJ ‚|jdd
… }|j
dd	… }| g d¢¡}t ||¡ t ||¡ |jttdƒƒttddƒƒd d d…   }tjtdd�� |j
dd	…  W d   ƒ n1 s’w   Y  tjtdd�� d|j
dd	…< W d   ƒ d S 1 s±w   Y  d S )Nr3   r  r   r   r�   r6   rQ   r4   r¨   r8   )r6   r8   r  rQ   r7   rk   z^3$r   )r   rF   r   rG   rH   r[   rE   r¤   rM   r¹   rh   ry   r   r>   Úlistr"   r#   r$   )r%   rA   ÚcprB   Úresult2rC   Údf2r+   r+   r,   Ú,test_getitem_setitem_integer_slice_keyerrors$  s*   ÿ*ÿ"ÿzBTestDataFrameIndexing.test_getitem_setitem_integer_slice_keyerrorsc                 C   sä   |j d d …dd …f }|d jtjksJ ‚| ¡ }|j d d …dd …f }t |d j|d j¡s2J ‚t |¡� d|j	d d …df< W d   ƒ n1 sKw   Y  |sj|d dk 
¡ s\J ‚t |d j|d j¡ d S t ||¡ d S )NéýÿÿÿrŽ   r�   ç      @r6   )r¤   r1   rF   rŒ   rE   Úshares_memoryÚ_valuesr   Úassert_cow_warningrh   r¹   r>   )r%   r&   Úfloat_string_framerÉ   rÊ   ÚslicedÚoriginalr+   r+   r,   Útest_fancy_getitem_slice_mixedA  s   ÿz4TestDataFrameIndexing.test_fancy_getitem_slice_mixedc                 C   sÂ   t tdƒtddd�d�}|jddg \}}|j||… }|||… }|dd… }t ||¡ t ||¡ | ¡ }d|j||…< | ¡ }d|||…< | ¡ }d|dd…< t ||¡ t ||¡ d S )	Nr   z
2020-01-01©Úperiodsr�   r7   rQ   r¨   r   )r   r[   r   r   rh   r   r>   rE   )r%   rA   ÚstartÚendrB   r  rC   r+   r+   r,   Ú"test_getitem_setitem_non_ix_labelsY  s   z8TestDataFrameIndexing.test_getitem_setitem_non_ix_labelsc                 C   s˜   t tj d¡ d¡ƒ}|j|jdkd d …f }| dg¡}t 	||¡ t tj d¡ d¡ƒ}|j|jdk|j
dkf }|jdgdgd�}t 	||¡ d S )Nr3   ©r4   r3   r   r/   rs   )r   rF   r   rG   rH   rh   r   ry   r   r>   r:   )r%   rA   ÚrsÚxpr+   r+   r,   Útest_ix_multi_takem  s   z(TestDataFrameIndexing.test_ix_multi_takec                 C   sP   |}|j }|jD ]}|| }|jd d d… D ]}|||f || ks$J ‚qqd S )Nr7   )rh   r:   r   )r%   r&   Úfrñ   ÚcolÚtsr@   r+   r+   r,   Útest_getitem_fancy_scalary  s   
ÿþz/TestDataFrameIndexing.test_getitem_fancy_scalarc           
      C   sŠ   |}|  ¡ }|j}t|jƒD ]4\}}||  |jd d d… D ]#}|j |¡}tj d¡ 	¡ }	|	|j
||f< |	|||f< t ||¡ qqd S )Nr7   r3   )rE   rh   Ú	enumerater:   r   Úget_locrF   r   rG   rH   r¤   r   r>   )
r%   r&   r  rC   rñ   Újr  r@   ÚiÚvalr+   r+   r,   Útest_setitem_fancy_scalarƒ  s   úþz/TestDataFrameIndexing.test_setitem_fancy_scalarc                 C   s  |}|j }|jddgd�}|d d …g d¢f }t ||¡ |j|jdd… ddgd�}||jdd… g d¢f }t ||¡ |j|jd k}|j|j| d	�}|| }t ||¡ ||d d …f }t ||¡ |||jd
d … f }|j|j| ddgd�}t ||¡ d S )NrV   rŽ   r9   )FTFTr7   rQ   rs   é   r�   r3   r�   )rh   ry   r   r>   r   r:   )r%   r&   r  rñ   rC   rB   Úboolvecr+   r+   r,   Útest_getitem_fancy_boolean”  s"   z0TestDataFrameIndexing.test_getitem_fancy_booleanc                 C   s¸   |  ¡ }|  ¡ }|j  ¡ }|d dk}d|j|< d||j< t||j|jd�}t ||¡ |  ¡ }|  ¡ }|j  ¡ }d|j|ddgf< d||jd d…f< t||j|jd�}t ||¡ d S )NrU   r   ç        rs   rV   r3   )rE   rM   rh   r   r   r:   r   r>   )r%   r&   ÚframerC   rM   rÕ   r+   r+   r,   Útest_setitem_fancy_boolean«  s   



z0TestDataFrameIndexing.test_setitem_fancy_booleanc                 C   sp   |j g d¢ }|j|jg d¢  }t ||¡ |j d d …g d¢f }|jd d …|jg d¢ f }t ||¡ d S )N)r/   r6   r&  )r3   r   r/   )r¤   rh   r   r   r>   r:   )r%   r&   rB   rC   r+   r+   r,   Útest_getitem_fancy_intsÀ  s   z-TestDataFrameIndexing.test_getitem_fancy_intsc                 C   st   |d d d d… dk}|j | }|j |d d d…  }t ||¡ | ¡ }| ¡ }d|j |< d|j |< t ||¡ d S )NrU   rk   r/   r   )rh   r   r>   rE   )r%   r&   rÕ   rB   rC   r  r+   r+   r,   Ú'test_getitem_setitem_boolean_misalignedÉ  s   


z=TestDataFrameIndexing.test_getitem_setitem_boolean_misalignedc                 C   s®   t tj d¡ d¡ƒ}t g d¢¡}t ddg¡}|j||f }|jddgdgf }t ||¡ | 	¡ }d|jt g d¢¡t ddg¡f< d|jddgdgf< t ||¡ d S )	Nr3   r  r”   FTr   r/   r7   )
r   rF   r   rG   rH   rŸ   rh   r   r>   rE   )r%   rA   Úk1Úk2rB   rC   r+   r+   r,   Ú"test_getitem_setitem_boolean_multi×  s   "z8TestDataFrameIndexing.test_getitem_setitem_boolean_multic                 C   s"  t g d¢ƒ}ttj d¡ d¡|d�}|jdd… }| g d¢¡}t 	||¡ t
|ƒdks/J ‚|jdd… }| ddg¡}tj	||d	d
� t
|ƒdksMJ ‚|jdd… }| ddg¡}t 	||¡ t
|ƒdksiJ ‚|jdd… }|jdd… }t 	||¡ |jdd… }d}tjt|d�� |dd… }W d   ƒ n1 sžw   Y  t 	||¡ t g d¢ƒ}ttj d¡ d¡|d�}d}tjt|d�� |jdd…  W d   ƒ n1 s×w   Y  |jdd… }| dg¡}t 	||¡ t
|ƒdks÷J ‚| ¡ }tjttd�� d|jdd…< W d   ƒ n	1 �sw   Y  tjt|d�� |jdd… dk}W d   ƒ n	1 �s6w   Y  |j ¡ �sCJ ‚|jdd… |jdd… kj ¡ �sWJ ‚| ¡ }d|jdd…< |jdd… dkj ¡ �sqJ ‚|jdd… |jdd… kj ¡ �s…J ‚|jdd… }|}t 	||¡ t
|ƒdk�s�J ‚|jdd… }| g d¢¡}t 	||¡ t
|ƒdk�sºJ ‚|jdd… }| dg¡}t 	||¡ t
|ƒdk�sÖJ ‚|jdd… }| g d¢¡}t 	||¡ t
|ƒdk�sóJ ‚| ¡ }d|jdd…< |jdd… }|dkj ¡ �sJ ‚d S )N)r¦   r3   r4   r6   r7   r3   r™   r�   r¦   r6   )r¦   r3   r4   r6   r7   F)Úcheck_index_typer  rç   r/   r   z3The behavior of obj\[i:j\] with a float-dtype indexr   )rß   rÙ   ç      @r§   rç   zPcannot do positional indexing on Index with these indexers \[1.0\] of type floatrß   gš™™™™™ñ?)rÙ   r2  r§   rç   g
×£p=
@)r   r   rF   r   rG   rH   rh   ry   r   r>   r   r¤   rw   ÚFutureWarningr"   r#   rÒ   rE   Ú
_slice_msgrM   r¹   )r%   Úusing_array_managerr   rA   rB   rC   r]   r  r+   r+   r,   Ú!test_getitem_setitem_float_labelsæ  s†   ÿÿÿÿÿ((z7TestDataFrameIndexing.test_getitem_setitem_float_labelsc                 C   s.  t tj d¡ d¡g d¢g d¢d�}tdƒ|d< |j}tt d¡gd	 t d
¡g g d¢d�}t	 
||¡ t	jtdd�� t|jd< W d   ƒ n1 sLw   Y  t|jd ƒrZJ ‚|d jtjksdJ ‚|jd tksmJ ‚tj|jd< t|jd ƒs|J ‚tj|jdd d …f< t|jdd d …f ƒ ¡ r•J ‚d S )Nr3   ©r7   r4   )rã   rä   rp   r~   Úe)rS   rØ   rõ   rs   Ú20010102Ú	timestamprŒ   r4   zdatetime64[s])rS   rØ   rõ   r:  r�   ú%Setting an item of incompatible dtyper   )rä   r:  )rp   r:  r~   rp   )r   rF   r   rG   rH   r   r�   r   r1   r   rY   rw   r3  r   rh   r   rÈ   rn   r¹   ri   r+   r+   r,   Ú)test_setitem_single_column_mixed_datetime?  s0   ýþÿý"z?TestDataFrameIndexing.test_setitem_single_column_mixed_datetimec                 C   sú   t g d¢tdddƒdddtdddƒtdddƒgdœƒ}t d	td
ƒtdƒd�}tj|d< tdddƒ|jd< tjt	dd�� d|jd< W d   ƒ n1 sKw   Y  d|jddgdf< t
 dt
 d¡gdt
 d¡gg¡}||jddgddgf< t ||¡ d S )N)r   r   r   r   é   é   iÜ  r/   ÚxÚyiÝ  iÞ  ©rã   rä   r   Úabr8   r�   rä   ©r   rä   r;  r   )r/   rä   ©r?  r@  r3   r4   r=  z2013-01-01T00:00:00r>  z2014-01-01T00:00:00r6   r7   rã   )r   r   r  r[   ÚpdÚNaTrh   r   rw   r3  rF   rŸ   Ú
datetime64r>   )r%   rC   rA   rU   r+   r+   r,   Útest_setitem_mixed_datetimea  s6   


úþÿ
ÿýþÿz1TestDataFrameIndexing.test_setitem_mixed_datetimec                 C   sn   |j |jd d… ddgf }|j|j |jd d …ddgf< |j |jdd … ddgf j}|j}t ||¡ d S ©Nr3   rU   rV   éþÿÿÿ)rh   r   rM   r   rš   ©r%   r&   ÚpiecerB   rC   r+   r+   r,   Útest_setitem_frame_float�  s
   z.TestDataFrameIndexing.test_setitem_frame_floatc                 C   s~   |  ¡ }tddgddgg|jdd… ddgd	�}|jtd dƒ ddgf}||j|< t |j|jdd… ddgf j|j¡ d S )
Nrß   rà   rá   r  r   r3   rU   rV   rs   )rE   r   r   Úslicerh   r   rš   rM   ©r%   r  r  rL  r*   r+   r+   r,   Útest_setitem_frame_mixedˆ  s    ÿ
,z.TestDataFrameIndexing.test_setitem_frame_mixedc                 C   sž   |  ¡ }tddgddgddgddggt|jd	d
… ƒddg ddgd�}|jtd d
ƒ ddgf}||j|< t |j|jd	d
… ddgf j|jd	d
… ¡ d S )Nrß   rà   rá   r  rç   g      @g      @g       @r   r3   rS   rØ   rU   rV   rs   )	rE   r   r  r   rN  rh   r   rš   rM   rO  r+   r+   r,   Ú'test_setitem_frame_mixed_rows_unaligned”  s   ý
(ÿz=TestDataFrameIndexing.test_setitem_frame_mixed_rows_unalignedc                 C   sŠ   |  ¡ }|j|jd d… dgf }|jdd … |_|jtdd ƒ ddgf}||j|< tj|d< t |j|jdd … ddgf j|j¡ d S )Nr3   rU   rJ  rV   )	rE   rh   r   rN  rF   rn   r   rš   rM   rO  r+   r+   r,   Ú&test_setitem_frame_mixed_key_unaligned¢  s   

,z<TestDataFrameIndexing.test_setitem_frame_mixed_key_unalignedc                 C   st   |  ¡ }|j|jd d… ddgf }|jtdd ƒ ddgf}|j|j|< t |j|jdd … ddgf j|j¡ d S rI  )rE   rh   r   rN  rM   r   rš   rO  r+   r+   r,   Ú test_setitem_frame_mixed_ndarray¬  s
   ,z6TestDataFrameIndexing.test_setitem_frame_mixed_ndarrayc                 C   s²   t g d¢g d¢gg d¢d�}| ¡ }tjtdd�� |jd d …ddgf d	 |jd d …ddgf< W d   ƒ n1 s:w   Y  |jddgd�}|d	7 }|d
 |d
< t ||¡ d S )N)r/   r3   rS   )r4   r6   rØ   ©rU   rV   r�   r9   úincompatible dtyper   rU   rV   ç      à?r�   )r   rE   r   rw   r3  rh   ry   r>   )r%   rA   r  rC   r+   r+   r,   Útest_setitem_frame_upcast´  s   .ÿz/TestDataFrameIndexing.test_setitem_frame_upcastc                 C   s†   |j |jd d… ddgf }|jdd … |_ddg|_||j |jdd … ddgf< |j |jdd … ddgf j}|j}t ||¡ d S rI  )rh   r   r:   rM   r   rš   rK  r+   r+   r,   Útest_setitem_frame_align¿  s   
z.TestDataFrameIndexing.test_setitem_frame_alignc                 C   sˆ   t tj d¡ d¡g d¢d�}|jd }|d d… }t ||¡ |jd }|jddg }t ||¡ |jd }|jd	 }t 	||¡ d S )
Nr3   r7  ©rS   rS   rØ   rõ   rØ   r�   rS   rØ   r6   rõ   r4   )
r   rF   r   rG   rH   rh   r   r>   r¤   rY   ri   r+   r+   r,   Ú"test_getitem_setitem_ix_duplicatesÈ  s   þ



z8TestDataFrameIndexing.test_getitem_setitem_ix_duplicatesc                 C   s¤   t tj d¡ d¡g d¢d�}|jdg }|jddg }t ||¡ |j|d dk }||d dk }t ||¡ |j|d dk }||d dk }t ||¡ d S )	Nr3   r7  rY  r�   rØ   r6   r/   r   )	r   rF   r   rG   rH   rh   r¤   r   r>   )r%   rA   rB   rÌ   r+   r+   r,   Ú+test_getitem_ix_boolean_duplicates_multipleÛ  s   þzATestDataFrameIndexing.test_getitem_ix_boolean_duplicates_multipleÚ
bool_valueTFc                 C   s”   t dg d¢iƒ}|› d�}tjt|d�� |j|  W d   ƒ n1 s$w   Y  d}tjt|d�� d|j|< W d   ƒ d S 1 sCw   Y  d S )Nrã   r2   z7: boolean label can not be used without a boolean indexr   z.cannot use a single bool to index into setitemr   )r   r"   r#   r$   rh   )r%   r\  rA   Úmessager]   r+   r+   r,   Ú%test_getitem_setitem_ix_bool_keyerrorî  s   
ÿ"ÿz;TestDataFrameIndexing.test_getitem_setitem_ix_bool_keyerrorc                 C   s¢   d|d< t |d jjttjfƒsJ ‚|j|jd df }t|ƒs"J ‚t	ddgiƒ}d|d< |jd }t|ƒs8J ‚t
dgd	gdd
�}|jd	gdf }t ||¡ d S )Nr/   rT   r7   rã   g®Gáz®ó?iš  rä   rC  r   rf   )rÛ   r1   rÜ   rg   rF   rÝ   rh   r   r   r   r   r   rY   )r%   r&   rB   rA   rC   r+   r+   r,   Ú"test_single_element_ix_dont_upcastû  s   
z8TestDataFrameIndexing.test_single_element_ix_dont_upcastc                 C   s¤   t t d¡ dd¡tdddƒd�}d}tjt|d	�� |jd
d„   W d   ƒ n1 s,w   Y  tjt|d	�� d|jdd„ < W d   ƒ d S 1 sKw   Y  d S )Nr«   rQ   r6   r   r   r3   r�   zcallable with ilocr   c                 S   ó   dS ©Nrl   r+   ©r(   r+   r+   r,   Ú<lambda>  ó    zMTestDataFrameIndexing.test_iloc_callable_tuple_return_value.<locals>.<lambda>r/   c                 S   r`  ra  r+   rb  r+   r+   r,   rc    rd  )	r   rF   r–   r—   r[   r   rw   r3  r¤   )r%   rA   r]   r+   r+   r,   Ú%test_iloc_callable_tuple_return_value  s   "ÿ"ÿz;TestDataFrameIndexing.test_iloc_callable_tuple_return_valuec                 C   s¾   t tj d¡ d¡tdddƒd�}|jd }|jd }t 	||¡ |jd }|jd }t 	||¡ |jt
ddƒ }|jdd	… }t ||¡ |jg d
¢ }| |jg d
¢ ¡}t ||¡ d S )Nr3   ©rQ   r6   r   r   r�   r/   r6   r  r>  ©r/   r3   r6   r8   )r   rF   r   rG   rH   r[   r¤   rh   r   rY   rN  r>   ry   r   ©r%   rA   rB   rÌ   rC   r+   r+   r,   Útest_iloc_row  s   ÿ



z#TestDataFrameIndexing.test_iloc_rowc                 C   sØ   t tj d¡ d¡tdddƒd�}| ¡ }|jtddƒ }t 	|d |d ¡s)J ‚|d  ¡ }t
 |¡� d|jd d …df< W d   ƒ n1 sHw   Y  |sbd|jdd…< t 	|d |d ¡sbJ ‚t
 |d |¡ d S )	Nr3   rf  r   r   r�   r6   r  r)  )r   rF   r   rG   rH   r[   rE   r¤   rN  r  r   r  rh   r  rY   )r%   rÉ   rÊ   rA   r  ÚsubsetÚexp_colr+   r+   r,   Útest_iloc_row_slice_view-  s   ÿÿz.TestDataFrameIndexing.test_iloc_row_slice_viewc                 C   sø   t tj d¡ d¡tdddƒd�}|jd d …df }|jd d …df }t 	||¡ |jd d …df }|jd d …df }t 	||¡ |jd d …t
ddƒf }|jd d …dd	…f }t ||¡ |jd d …g d
¢f }|j|jg d
¢ d�}t ||¡ d S )Nr3   ©r6   rQ   r   r   r9   r/   r6   r  r>  rg  )r   rF   r   rG   rH   r[   r¤   rh   r   rY   rN  r>   ry   r:   rh  r+   r+   r,   Útest_iloc_colC  s   ÿz#TestDataFrameIndexing.test_iloc_colc                 C   s"  t tj d¡ d¡tdddƒd�}| ¡ }|jd d …tddƒf }|sk|skt 	|d j
|d j
¡s3J ‚t |¡� d|jd d …df< W d   ƒ n1 sLw   Y  |d dk ¡ s[J ‚t 	|d j
|d j
¡siJ ‚d S |r{t 	|d j
|d j
¡s{J ‚d|d< |d dk ¡ s‰J ‚t ||¡ d S )	Nr3   rm  r   r   r9   r6   r  r)  )r   rF   r   rG   rH   r[   rE   r¤   rN  r  r  r   r  rh   r¹   r>   )r%   r5  rÉ   rÊ   rA   r  rj  r+   r+   r,   Útest_iloc_col_slice_viewZ  s"   ÿÿ z.TestDataFrameIndexing.test_iloc_col_slice_viewc                 C   sÌ   t tdddd�tdddd�d�}|jdtdddd�d�}td|dd	gd
�}t g d¢¡}d|j|| df< tg d¢g d¢dœ|d�}t ||¡ td|dd	gd
�}|j|| df  d7  < t ||¡ d S )Niá  r/   )ÚyearÚmonthÚdayr7   )r  r  )rh   Úitemr   rU   rV   rs   )FFFFFTr8   )r   r   r   r   r8   r8   )r   r   r   r   r   r   ©rU   rV   r�   )	r   r   Úinsertr   rF   rŸ   rh   r   r>   )r%   ÚtrangerA   Úbool_idxrC   r+   r+   r,   Útest_loc_duplicatesx  s   þÿz)TestDataFrameIndexing.test_loc_duplicatesc                 C   s|   t tdddd�dd�}td|iƒ}|g d¢ |d< t |d |¡ td|iƒ}|g d¢ |jg d¢df< t |d |¡ d S )	Nz
2015-01-01r4   Úutc)r  ÚtzÚdatesrf   )r/   r   r3   )r   r/   r3   )r   r   r   r   rY   rh   )r%   ÚcolumnrA   r+   r+   r,   Ú4test_setitem_with_unaligned_tz_aware_datetime_column“  s   zJTestDataFrameIndexing.test_setitem_with_unaligned_tz_aware_datetime_columnc                 C   s†  t dd�}ttddd�d�}tjd| gd dd�|d	< tjd
| gd dd�|jd d …df< tjd| gd dd�|j|jd d… df< tjd| gd dd�|jd d …df< tjd| gd dd�|j|jd d… df< t d¡|d< tjd| gd dd�|j|jd d… df< tddd�|j|jd d …df< t d¡|d< |j	}t
t d¡gd t d¡gd
  tdƒd�}t ||¡ d S )Nr/   )ÚhoursÚ20130101r6   r  r�   úm8[ns]r0   rU   r3   rV   r4   r�   rŽ   r7   rT   rF  r‰   r8   rk   r
  ÚGÚHztimedelta64[ns]zdatetime64[ns]ÚABCDEFGH)r   r   r   rF   rŸ   rh   r   Útimedelta64rG  r�   r   r1   r  r   rY   )r%   Úone_hourrA   rB   rC   r+   r+   r,   Ú,test_loc_setitem_datetimelike_with_inference   s"   
&,&,, þzBTestDataFrameIndexing.test_loc_setitem_datetimelike_with_inferencec                 C   s"  t tjtjtjtjtjdœtjdtjdddœtjtjdtjtjdœtjtjtjtjtjdœdtjtjtjtjdœddddddœdœƒ}| ¡ }d||d	k< | ¡ }d|jd
< d|jd< d|jd< d|jd< t ||¡ d|d< d}tjt	|d�� d||d	k< W d   ƒ d S 1 sŠw   Y  d S )N)é#   r«   r­   é1   é2   gj”B’zâÔ?g% tŽÙ?gÂ’Øk‘Ò?gŠ†øãÖåÕ?r   r/   )r   r/   r3   r4   r6   r@  g333333Ó?)r«   r/   )rˆ  r/   )r‰  r/   )r‡  r6   ÚtestrS   z1not supported between instances|unorderable typesr   )
r   rF   rn   rE   rh   r   r>   r"   r#   rÒ   )r%   rA   r  rC   r]   r+   r+   r,   Ú#test_getitem_boolean_indexing_mixed¶  sJ   ûûûèÿ



"ÿz9TestDataFrameIndexing.test_getitem_boolean_indexing_mixedc                 C   s:  t jddgddggd dgd�}tg d¢g d¢g|tddgd	d
�d�}tjtdd�� |d d …df  W d   ƒ n1 s<w   Y  ttdƒd	d
�}t ddgddggddgddggd dgd�}tddgddgg||d�}|jd d …t	d ƒdff }t
 ||¡ d}ttdƒd	d
�}tddg||d�}|d }t
 ||¡ d S )Nr?  r@  r   r/   rp   ©Únames)r/   r/   r3   r3   )r4   r4   r6   r6   r#  rf   r�   rN  r   r3   )ÚlevelsÚcodesr�  r4   r6   )r?  r   r¾   )r   Úfrom_productr   r   r"   r#   r   r[   rh   rN  r   r>   r   rY   )r%   ÚmiÚdgr   r:   rC   rB   rb   r+   r+   r,   Útest_type_error_multiindexä  s&   ÿÿ"ÿz0TestDataFrameIndexing.test_type_error_multiindexc                 C   sh   t t d¡tj t d¡¡d�}|jd d …df }|d }t 	||¡ |j
d d …df }t 	||¡ d S )N©r4   r6   r7   r9   r   rV  )r   rF   rö   rE  ÚIntervalIndexÚfrom_breaksr–   r¤   r   rY   rh   )r%   rA   rC   rO   r+   r+   r,   Ú,test_getitem_interval_index_partial_indexingý  s   ÿzBTestDataFrameIndexing.test_getitem_interval_index_partial_indexingc                 C   sZ   t ddgtd�}t d¡t d¡dœ|jd< t t d¡gt d¡gdœƒ}t ||¡ d S )Nrã   rä   )r:   r1   )r3   )r3   r3   rA  r   )r   rv   rF   Úzerosrh   r   r>   rÏ   r+   r+   r,   Ú test_setitem_array_as_cell_value  s   z6TestDataFrameIndexing.test_setitem_array_as_cell_valuec                 C   s¶   t dg d¢idd�}| ¡ }|jd d …d d d…f |jd d …< t ||¡ tjj 	|jd d …d d d…f ¡|jd d …< t ||¡ |j
d d …d d …f  ¡ |j
d d …< t ||¡ d S )NrU   r2   ÚInt64r0   rk   )r   rE   rM   rh   r   r>   rE  ÚcoreÚarraysÚNumpyExtensionArrayr¤   )r%   rA   Úorigr+   r+   r,   Ú$test_iloc_setitem_nullable_2d_values  s   ",$z:TestDataFrameIndexing.test_iloc_setitem_nullable_2d_valuesc                 C   s2   t tjdtd�ƒ}t |d ¡|d< |dg  d S )N©r/   r/   r0   r   )r   rF   rž   rv   Ú
empty_likerº   r+   r+   r,   Ú,test_getitem_segfault_with_empty_like_object  s   zBTestDataFrameIndexing.test_getitem_segfault_with_empty_like_objectz.ignore:Setting a value on a view:FutureWarningÚnullúM8[ns]r€  c                 C   s¬  t dg d¢i|d�}|d  ¡ }|j}d g d¢¡}tjt|d�� ||d< W d   ƒ n1 s0w   Y  tjt|d�� ||g|d d…< W d   ƒ n1 sOw   Y  tjt|d�� ||d< W d   ƒ n1 sjw   Y  tjt|d�� ||g|d d…< W d   ƒ n1 s‰w   Y  tjt|d�� ||jd< W d   ƒ n1 s¥w   Y  tjt|d�� ||g|jd d…< W d   ƒ n1 sÅw   Y  tjt|d�� ||jd	< W d   ƒ n1 sáw   Y  tjt|d�� ||g|jd d…df< W d   ƒ n	1 �sw   Y  | ¡ }| ¡ |d
< tjt|d�� ||jd	< W d   ƒ n	1 �s+w   Y  tjt|d�� ||g|jd d…df< W d   ƒ d S 1 �sOw   Y  d S )NrU   r2   r0   ú|)z@timedelta64\[ns\] cannot be converted to (Floating|Integer)Dtypez?datetime64\[ns\] cannot be converted to (Floating|Integer)Dtypez 'values' contains non-numeric NAz1Invalid value '.*' for dtype (U?Int|Float)\d{1,2}r   r   r3   ©r   r   rV   )r   rE   r  Újoinr"   r#   rÒ   r¤   )r%   r£  Úany_numeric_ea_dtyperA   Úserr›   r]   r  r+   r+   r,   Ú.test_setting_mismatched_na_into_nullable_fails&  sL   ÿ
ÿÿ
ÿÿÿÿÿÿÿ$ÿzDTestDataFrameIndexing.test_setting_mismatched_na_into_nullable_failsc                 C   sL   t dgtg dd�d�}d|jd< t ddgitdgdd�d�}t ||¡ d S )Nrä   rã   rf   r�   r/   r   r�   )r   r   rh   r   r>   rÏ   r+   r+   r,   Ú+test_loc_expand_empty_frame_keep_index_name[  s   
zATestDataFrameIndexing.test_loc_expand_empty_frame_keep_index_namec                 C   sX   t dgtjg g d¢d�d�}d|jd< t ddgitjdgg d¢d�d�}t ||¡ d S )Nr~   râ   rŒ  r�   rS   r2   r�   ©r   r   Úfrom_tuplesrh   r   r>   rÏ   r+   r+   r,   Ú+test_loc_expand_empty_frame_keep_midx_namesb  s   ÿ
þzATestDataFrameIndexing.test_loc_expand_empty_frame_keep_midx_namesz	val, idxr)r?  rã   r?  rã   )r/   rã   r/   c                 C   s†   t dddgiƒ}tjtdd�� t d|dgiddgd�|jd d …|f< W d   ƒ n1 s-w   Y  t dtj|giƒ}t ||¡ d S )Nrã   r/   r3   r;  r   r¨   r�   )r   r   rw   r3  rh   rF   rn   r>   )r%   Úidxrr$  rA   rC   r+   r+   r,   Útest_loc_setitem_rhs_framen  s   ÿ(ýz0TestDataFrameIndexing.test_loc_setitem_rhs_framec                 C   sT   t ddgd�}| ¡ }|d d … }tjddgtjd�|jd d …df< t ||¡ d S )Nrã   rä   r9   r/   r3   r0   r   )r   rE   rF   rŸ   rŒ   r¤   r   r>   )r%   rÊ   rA   rC   Úviewr+   r+   r,   Ú$test_iloc_setitem_enlarge_no_warning‚  s
   "z:TestDataFrameIndexing.test_iloc_setitem_enlarge_no_warningc                 C   s¾   t ddddœtjddgddggddgd�d	�}d
g}d|d< d|j|df< |j|df  |j|ddgf  d|j|df< |j|df }tdtjdgdggddgd�dd� }}t ||¡ d S )NTr/   rÙ   )Úbool_colrã   rä   r3   Úidx1Úidx2rŒ  r�   r   r4   rp   r   rã   rä   r½   r¾   )r   r   Úfrom_arraysrh   r   r   rY   )r%   rA   r@   rB   rC   r+   r+   r,   Ú(test_loc_internals_not_updated_correctly‹  s"   
þ
ýz>TestDataFrameIndexing.test_loc_internals_not_updated_correctlyr$  Nc                 C   sP   t dg d¢idd�}||jdgd d …f< t dtjddgidd�}t ||¡ d S ©Nrã   râ   rÅ   r0   r   rä   rp   ©r   r¤   rE  ÚNAr   r>   ©r%   r$  rA   rC   r+   r+   r,   Ú test_iloc_setitem_string_list_na¢  s   z6TestDataFrameIndexing.test_iloc_setitem_string_list_nac                 C   sN   t dg d¢idd�}||jdd d …f< t dtjddgidd�}t ||¡ d S r¸  r¹  r»  r+   r+   r,   Útest_iloc_setitem_string_naª  s   z1TestDataFrameIndexing.test_iloc_setitem_string_naÚfuncc                 C   sP   t dg d¢idd�}d|jd d …|dgƒf< t dg d¢idd�}t ||¡ d S )Nrã   r2   rš  r0   r7   r   )r7   r7   r7   r³   )r%   r¾  rA   rC   r+   r+   r,   Ú/test_iloc_setitem_ea_null_slice_length_one_list²  s   zETestDataFrameIndexing.test_iloc_setitem_ea_null_slice_length_one_listc                 C   s€   t tjddgg d¢gddgd�d�}td|jjƒ}|dd	d
gd�}|j|d d …f }t tjddgddgd�d�}t 	||¡ d S )NrU   rV   râ   ÚfirstÚsecondrŒ  r�   ÚIndexerrã   rä   )rÀ  rÁ  )rU   rã   )rU   rä   )
r   r   r�  r   r   r�  rh   r­  r   r>   )r%   rA   Úindexer_tupler¯  rB   rC   r+   r+   r,   Útest_loc_named_tuple_for_midxº  s   ÿÿÿÿz3TestDataFrameIndexing.test_loc_named_tuple_for_midxr   r  rä   c                 C   sh   t dtdƒtdƒgi|¥ƒ}|d tjdd� |jdg|f< t dtdƒtdƒgi|¥ƒ}t ||¡ d S )Nrã   z
2022-12-29z
2022-12-30r/   )Údaysz
2022-12-31)r   r   rE  Ú	Timedeltarh   r   r>   )r%   r  r   rA   rC   r+   r+   r,   Útest_set_2d_casting_date_to_intË  s   ÿ ÿz5TestDataFrameIndexing.test_set_2d_casting_date_to_intrb   c                 C   sZ   d}t i |¥t|ƒt|ƒdœ¥ƒ}| ¡ }|ddg |j|dg ddgf< t ||¡ d S )Nrî   rD  r?  r@  T)r   r[   rE   rh   r   r>   )r%   r  ÚnrA   rC   r+   r+   r,   Ú1test_loc_setitem_reordering_with_all_true_indexerØ  s
    zGTestDataFrameIndexing.test_loc_setitem_reordering_with_all_true_indexerc                 C   sn   t ddgd�}| ¡ }t dgd�}t d ¡� ||jd d …df< W d   ƒ n1 s*w   Y  t ||¡ d S )Nrã   rä   r9   )r   rE   r   rw   rh   r>   )r%   rA   rC   Úrhsr+   r+   r,   Útest_loc_rhs_empty_warningá  s   ÿz0TestDataFrameIndexing.test_loc_rhs_empty_warningc                 C   s‚   t g d¢g d¢gƒ}tddgdd�}tdgdd�}|j||f }t ddggdgd	�}t ||¡ |j|j|jf }t ||¡ d S )
N©r   r/   r3   r4   r6   ©r7   r8   r&  r  é	   r   r/   rš  r0   r7   r8   r�   )r   r   r¤   r   r>   rM   )r%   rA   r   Úrow_indexerrB   rC   r+   r+   r,   Útest_iloc_ea_series_indexerê  s   z1TestDataFrameIndexing.test_iloc_ea_series_indexerc                 C   s²   t g d¢g d¢gƒ}tdtjgdd�}d}tjt|d�� |jd d …|f  W d   ƒ n1 s0w   Y  tjt|d�� |jd d …|jf  W d   ƒ d S 1 sRw   Y  d S )NrÌ  rÍ  r   rš  r0   zcannot convertr   )	r   r   rE  rº  r"   r#   rZ   r¤   rM   )r%   rA   r   r]   r+   r+   r,   Ú#test_iloc_ea_series_indexer_with_naö  s   ÿ"ÿz9TestDataFrameIndexing.test_iloc_ea_series_indexer_with_na)Tr1   Úbooleanc                 C   s°   t jtg d¢|d�tg d¢|d�gddgd�}tdg d¢i|d	�}t tt|tƒ¡� |j	| }W d   ƒ n1 s:w   Y  tdd
dgit
ddgd|d�d	�}t ||¡ d S )N)TTFFr0   )TFTFrã   rä   rŒ  rp   )r/   r3   r4   r6   r�   r/   r3   TF)rb   r1   )r   r¶  r   r   r   Úmaybe_produces_warningr	   Ú
isinstanceÚtuplerh   r   r>   )r%   r1   r   ÚmidxrA   rB   rC   r+   r+   r,   Útest_loc_bool_multiindex   s   þûÿÿz.TestDataFrameIndexing.test_loc_bool_multiindexry  ræ   c                 C   sl   t ttdddƒtdddƒg|d�ddgdœƒ}|jdd	�}||d
  }|d |j|d
 |f< t ||¡ d S )Niæ  r/   r   r¬   )ry  TF)ræ   Úupdate)ÚdeeprØ  ræ   )r   r   r   rE   rh   r   r>   )r%   ry  r   rA   rC   Ú	update_dfr+   r+   r,   Ú2test_loc_datetime_assignment_dtype_does_not_change  s   ÿüÿzHTestDataFrameIndexing.test_loc_datetime_assignment_dtype_does_not_changezindexer, idxr3   c                 C   sˆ   t dtjgdtjgdtjggtd�}t dtjgdtjggƒ}|||ƒd |…d d …f< t dtjgdtjgdtjggtd�}t ||¡ d S )Nrd   re   ré   r0   r/   r3   )r   rF   rn   rv   r   r>   )r%   r   r@   rA   rÊ  rC   r+   r+   r,   Ú"test_setitem_value_coercing_dtypes'  s
   $$z8TestDataFrameIndexing.test_setitem_value_coercing_dtypes)gÚ__name__Ú
__module__Ú__qualname__r-   rD   rP   rR   r_   rj   r†   r’   r"   ÚmarkÚparametrizer˜   rœ   r£   r¥   r´   r·   r»   rÎ   rÐ   rÖ   rÞ   rí   rò   rù   rú   r  r  r	  ÚtdÚskip_array_manager_invalid_testr  r  r  r  r%  r(  r+  r,  r-  r0  r6  r<  rH  rM  rP  rQ  rR  rS  rW  rX  rZ  r[  r^  r_  re  ri  rl  rn  ro  rx  r}  r†  r‹  r“  r—  r™  rŸ  r¢  ÚfilterwarningsrE  rF  Úto_numpyrª  r«  r®  r°  r²  r·  rº  r¼  r½  r  r   rF   rŸ   r¿  rÄ  rÇ  rÉ  rË  rÐ  rÑ  r    r×  rÛ  r   rh   r¤   rÜ  r+   r+   r+   r,   r   *   sä    		;"ÿ


340




	Y" 
	
	.
ÿ1üþ
	




	
r   c                   @   s   e Zd Zdd„ ZdS )ÚTestDataFrameIndexingUInt64c              	   C   s>  t t d¡g d¢dœtjd�}|d  d¡}d|jvsJ ‚||d< t |d t|dd�¡ d	|jvs4J ‚d|d	< ||d	< t |d	 t|d	d�¡ |d	= | 	¡ }tj
td
d�� tj|jd< tj|jd< W d   ƒ n1 smw   Y  |d }t t|ƒtg d¢dd�¡ t |jtt d¡t d¡t d¡gg d¢d�¡ d S )Nr4   )l            l           l   
        rt  r0   rU   rS   r�   rf   rŽ   rU  r   r   ©r/   r3   rV   r”   Úuint64ÚOrT  r�   )r   rF   r–   rè  Úrenamer:   r   rY   r   rE   rw   r3  rE  rF  r¤   r   r�   r1   )r%   rA   r@   r  rB   r+   r+   r,   rÎ   2  s6   þþþþz(TestDataFrameIndexingUInt64.test_setitemN)rÝ  rÞ  rß  rÎ   r+   r+   r+   r,   ræ  1  s    ræ  c                 C   s€  t ddgtddd�tjddd�dœƒ}|jd }t|jd tƒs"J ‚t|jd tjƒs-J ‚|j	d }t|jd tƒs<J ‚t|jd tjƒsGJ ‚|j
ddd�}t|jd tƒsXJ ‚t|jd tjƒscJ ‚| rgd S |j}| ¡  | d¡j}t|d tƒs}J ‚t|d tjƒs‡J ‚|j|jd  }|jd	ks–J ‚| d
¡}t|tƒs¢J ‚|j|jd  }|jdks±J ‚| d
¡}t|tjƒs¾J ‚d S )Nr/   r3   Ú2000r  z1 DayrT  r   )Úaxisr¤  r¦  r€  )r   r   rE  Útimedelta_rangerh   rÔ  rM   r   rÆ  r¤   ÚxsÚ_mgrÚ_rebuild_blknos_and_blklocsÚfast_xsrŸ   ÚblocksÚblknosr1   Úiget)r5  rA   r©  Úmgrr›   Úblkr$  r+   r+   r,   Ú/test_object_casting_indexing_wraps_datetimelikeU  s<   
ýÿ



r÷  zFCannot setitem on a Categorical with a new category( \(.*\))?, set thezCCannot set a Categorical with another, without identical categoriesc                   @   s8  e Zd Zejdd„ ƒZejdd„ ƒZejdd„ ƒZejdd„ ƒZejd	d
„ ƒZ	ej
 dejejg¡dd„ ƒZej
 dejejejejg¡dd„ ƒZej
 dejejg¡dd„ ƒZej
 dejejg¡dd„ ƒZej
 dejejg¡dd„ ƒZej
 dejejg¡dd„ ƒZej
 dejejejg¡dd„ ƒZdd„ ZdS )ÚTestLocILocDataFrameCategoricalc                 C   ó>   t g d¢ddgd�}tg d¢ƒ}g d¢}t||dœ|d�}|S )	N)rã   rã   rã   rã   rã   rã   rã   rã   rä   ©Ú
categories©Úhr#  r"  r¢   ÚlÚmrÈ  ©r/   r/   r/   r/   r/   r/   r/   ©ÚcatsrM   r�   ©r   r   r   )r%   r  r@   rM   rž  r+   r+   r,   rž  …  s
   z$TestLocILocDataFrameCategorical.origc                 C   rù  )	N©rã   rã   rä   rã   rã   rã   rã   rã   rä   rú  rü  )r/   r/   r3   r/   r/   r/   r/   r  r�   r  )r%   Úcats1r´  Úvalues1Úexp_single_rowr+   r+   r,   r  �  ó
   z.TestLocILocDataFrameCategorical.exp_single_rowc                 C   rù  )	N©rã   rã   rä   rä   rã   rã   rã   rã   rä   rú  rü  )r/   r/   r3   r3   r/   r/   r/   r  r�   r  )r%   Úcats2rµ  Úvalues2Úexp_multi_rowr+   r+   r,   r  –  s
   z-TestLocILocDataFrameCategorical.exp_multi_rowc                 C   rù  )	Nr	  rã   rä   rú  rü  r   r  r�   r  )r%   Úcats3Úidx3Úvalues3Úexp_parts_cats_colr+   r+   r,   r     r  z2TestLocILocDataFrameCategorical.exp_parts_cats_colc                 C   rù  )	Nr  rã   rä   rú  rü  r   r  r�   r  )r%   Úcats4Úidx4Úvalues4Úexp_single_cats_valuer+   r+   r,   r  ©  s   
ÿz5TestLocILocDataFrameCategorical.exp_single_cats_valuer   c                 C   s®   |  ¡ }tddƒ}|tju rtddƒ}ddgddgg||ƒ|d d …f< t ||¡ |  ¡ }tjttd�� ddgddgg||ƒ|d d …f< W d   ƒ d S 1 sPw   Y  d S )Nr3   r6   r"  r¢   rä   r   rp   )	rE   rN  r   rh   r>   r"   r#   rÒ   Úmsg1)r%   rž  r  r   rA   r*   r+   r+   r,   Ú#test_loc_iloc_setitem_list_of_lists´  s   


 ""ÿzCTestLocILocDataFrameCategorical.test_loc_iloc_setitem_list_of_listsc                 C   sˆ   |  ¡ }d}|tjtjfv r|jd |jd f}d||ƒ|< t ||¡ tjt	t
d�� d||ƒ|< W d   ƒ d S 1 s=w   Y  d S )N)r3   r   r3   r   rä   r   rp   )rE   r   rh   Úatr   r:   r>   r"   r#   rÒ   r  )r%   rž  r  r   rA   r*   r+   r+   r,   Ú7test_loc_iloc_at_iat_setitem_single_value_in_categoriesÄ  s   "ÿzWTestLocILocDataFrameCategorical.test_loc_iloc_at_iat_setitem_single_value_in_categoriesc                 C   sJ   |  ¡ }|jdk}d}|tju r|j| }d||ƒ||f< t ||¡ d S )Nr"  r   rä   )rE   r   r   rh   r:   r>   )r%   rž  r  r   rA   rÕ   r*   r+   r+   r,   Ú5test_loc_iloc_setitem_mask_single_value_in_categories×  s   


zUTestLocILocDataFrameCategorical.test_loc_iloc_setitem_mask_single_value_in_categoriesc                 C   s�   |  ¡ }d}|tju r|jd }ddg||ƒ|d d …f< t ||¡ tjttd�� ddg||ƒ|d d …f< W d   ƒ d S 1 sAw   Y  d S )Nr3   rä   r   rp   )	rE   r   rh   r   r>   r"   r#   rÒ   r  )r%   rž  r  r   rA   r*   r+   r+   r,   Ú2test_loc_iloc_setitem_full_row_non_categorical_rhsæ  s   

"ÿzRTestLocILocDataFrameCategorical.test_loc_iloc_setitem_full_row_non_categorical_rhsc           	      C   s  |  ¡ }tddƒdf}|tju rtddƒ|jd f}tddgddgd�}|||ƒ|< t ||¡ ttd	ƒtd
ƒd�}tj	t
td�� |||ƒ|< W d   ƒ n1 sRw   Y  ttdƒtd
ƒd�}tj	t
td�� |||ƒ|< W d   ƒ d S 1 szw   Y  d S )Nr3   r6   r   r"  r¢   rä   rã   rú  ÚbbÚabcr   Úcc)rE   rN  r   rh   r:   r   r>   r  r"   r#   rÒ   Úmsg2)	r%   rž  r  r   rA   r*   ÚcompatÚsemi_compatÚincompatr+   r+   r,   Ú1test_loc_iloc_setitem_partial_col_categorical_rhsù  s   
ý"þzQTestLocILocDataFrameCategorical.test_loc_iloc_setitem_partial_col_categorical_rhsc                 C   s”   |  ¡ }tddƒdf}|tju rtddƒ|jd f}ddg||ƒ|< t ||¡ tjtt	d�� ddg||ƒ|< W d   ƒ d S 1 sCw   Y  d S )	Nr3   r6   r   r"  r¢   rä   r   rp   )
rE   rN  r   rh   r:   r>   r"   r#   rÒ   r  )r%   rž  r  r   rA   r*   r+   r+   r,   Ú)test_loc_iloc_setitem_non_categorical_rhs  s   
"ÿzITestLocILocDataFrameCategorical.test_loc_iloc_setitem_non_categorical_rhsc                 C   sv   t ddd� t¡}tdg d¢i|d�}|jjtksJ ‚|tju r'||ƒd }n
||ƒd d …df }|jjtks9J ‚d S )NÚ2012r4   r  r   r2   r�   )r   ru   rv   r   r   r1   r   Úgetitem)r%   r   r@   rA   r©  r+   r+   r,   Ú-test_getitem_preserve_object_index_with_dates*  s   
zMTestLocILocDataFrameCategorical.test_getitem_preserve_object_index_with_datesc                 C   s\   t dgdggtjddgdgd�d�}t dggtjdgdgd�d�}|jd }t ||¡ d S )	Nr   r/   )rã   )rä   rÀ  rŒ  )r\   r   rã   r¬  )r%   rA   rC   rB   r+   r+   r,   Ú test_loc_on_multiindex_one_level9  s   
þÿ
z@TestLocILocDataFrameCategorical.test_loc_on_multiindex_one_levelN)rÝ  rÞ  rß  r"   Úfixturerž  r  r  r  r  rà  rá  r   rh   r¤   r  r  Úiatr  r  r  r"  r#  r%  r&  r'  r+   r+   r+   r,   rø  „  s4    


	









rø  c                   @   s,  e Zd Zej ddhddidhdfddidfddhfdddifg¡dd„ ƒZej ddhddidhdfdfddidfdfddhfdddifg¡dd	„ ƒZej ddhddidhdfddidfddhfdddifg¡d
d„ ƒZej ddhddidhdfdfddidfdfddhfdddifg¡dd„ ƒZ	dS )ÚTestDeprecatedIndexersr*   r/   rã   c                 C   sZ   t ddgddggddgd�}tjtdd	�� |j|  W d   ƒ d S 1 s&w   Y  d S ©
Nr/   r3   r4   r6   rã   rä   r9   úas an indexer is not supportedr   ©r   r"   r#   rÒ   rh   ©r%   r*   rA   r+   r+   r,   Ú$test_getitem_dict_and_set_deprecatedG  ó   "ÿz;TestDeprecatedIndexers.test_getitem_dict_and_set_deprecatedr3   rç  c                 C   sf   t ddgddggddgt ddg¡d	�}tjtd
d�� |j|  W d   ƒ d S 1 s,w   Y  d S ©Nr/   r3   r4   r6   rã   rä   rç  r”  r�   r,  r   ©r   r   r­  r"   r#   rÒ   rh   r.  r+   r+   r,   Ú/test_getitem_dict_and_set_deprecated_multiindexP  ó   ý"ÿzFTestDeprecatedIndexers.test_getitem_dict_and_set_deprecated_multiindexc                 C   sZ   t ddgddggddgd�}tjtdd	�� d|j|< W d   ƒ d S 1 s&w   Y  d S r+  r-  r.  r+   r+   r,   Ú$test_setitem_dict_and_set_disallowede  r0  z;TestDeprecatedIndexers.test_setitem_dict_and_set_disallowedc                 C   sf   t ddgddggddgt ddg¡d	�}tjtd
d�� d|j|< W d   ƒ d S 1 s,w   Y  d S r1  r2  r.  r+   r+   r,   Ú/test_setitem_dict_and_set_disallowed_multiindexn  r4  zFTestDeprecatedIndexers.test_setitem_dict_and_set_disallowed_multiindexN)
rÝ  rÞ  rß  r"   rà  rá  r/  r3  r5  r6  r+   r+   r+   r,   r*  F  s>    2ÿ

úþ

2ÿ

úþr*  Úreturnc                  C   s�   t ddgiƒ} d| j| d dkdf< t dgdgdœƒ}t | |¡ t ddgiƒ} dd„ }|| j| d dkdf< t dg|gdœƒ}t | |¡ d S )Nr?  r/   rd   r@  rD  c                 S   s   | S )Nr+   )r?  r+   r+   r,   rc  �  rd  z4test_adding_new_conditional_column.<locals>.<lambda>)r   rh   r   r>   )rA   rC   Úvaluer+   r+   r,   Ú"test_adding_new_conditional_column„  s   r9  )r1   Úinfer_stringF)ústring[pyarrow_numpy]Tc                 C   s    t  d¡ tddgddgdœƒ}t d|¡� d|j|d	 dkd
f< W d   ƒ n1 s,w   Y  tddgddgdtdƒgdœƒ dd| dœ¡}t 	||¡ d S )NÚpyarrowr/   r3   r4   r6   rA  úfuture.infer_stringrd   rã   rp   rn   râ   rŠ   )
r"   Úimportorskipr   rE  Úoption_contextrh   Úfloatru   r   r>   )r1   r:  rA   rC   r+   r+   r,   Ú.test_adding_new_conditional_column_with_string“  s   
	ÿ 
ÿrA  c                  C   s”   t  d¡ tddgiƒ} t dd¡� d| j| d dkdf< W d   ƒ n1 s(w   Y  tdgtdgdd	�d
œtddgtd	�d�}t	 
| |¡ d S )Nr<  r?  r/   r=  Trd   r@  r;  r0   rD  r9   )r"   r>  r   rE  r?  rh   r   r   rv   r   r>   )rA   rC   r+   r+   r,   Ú test_add_new_column_infer_string§  s   
ÿþrB  c                
   @   sð   e Zd Zdd„ Zddddeje d¡e d¡gZ	ddge
dd	ƒg d
¢e
dddƒgZej de	d	de d	¡e d	¡g ¡ej de¡dd„ ƒƒZej de	dde d¡g ¡ej de¡dd„ ƒƒZej de	dg ¡ej de¡dd„ ƒƒZdS )ÚTestSetitemValidationc                 C   s¤   d}t  |¡}| ¡ }tj||d�� ||j|df< | ¡ }W d   ƒ n1 s(w   Y  tj||d�� ||j|df< | ¡ }W d   ƒ d S 1 sKw   Y  d S )Nz3Setting an item of incompatible dtype is deprecatedr   r   rã   )rI   rJ   rE   r   rw   r¤   rh   )r%   rA   Úinvalidr   Úwarnr]   Úorig_dfr+   r+   r,   Ú_check_setitem_invalid·  s   

þ
"þz,TestSetitemValidation._check_setitem_invalidy      ð?       @ÚTruerd   z1.0rF  r   r/   ©TFFNrD  rß   r   c                 C   s(   t dg d¢idd�}|  |||t¡ d S )Nrã   rI  r    r0   ©r   rG  r3  )r%   rD  r   rA   r+   r+   r,   Ú#test_setitem_validation_scalar_boolÒ  s   z9TestSetitemValidation.test_setitem_validation_scalar_boolTr¦   c                 C   sN   t dg d¢i|d�}t|ƒr|tjurt |¡sd }nt}|  ||||¡ d S )Nrã   r2   r0   )r   r   rE  rF  rF   Úisnatr3  rG  )r%   rD  Úany_int_numpy_dtyper   rA   rE  r+   r+   r,   Ú"test_setitem_validation_scalar_intÚ  s
   z8TestSetitemValidation.test_setitem_validation_scalar_intc                 C   s(   t dg d¢i|d�}|  |||t¡ d S )Nrã   )r/   r3   Nr0   rJ  )r%   rD  Úfloat_numpy_dtyper   rA   r+   r+   r,   Ú$test_setitem_validation_scalar_floatä  s   z:TestSetitemValidation.test_setitem_validation_scalar_float)rÝ  rÞ  rß  rG  rE  rF  rF   rG  r„  Ú_invalid_scalarsrN  Ú	_indexersr"   rà  rá  rŠ   rŒ   rK  rN  rP  r+   r+   r+   r,   rC  ´  s,    ù"	ÿrC  )r7  N)5Úcollectionsr   r   r   Údecimalr   rI   ÚnumpyrF   r"   Úpandas._libsr   Úpandas.errorsr   r	   r
   Úpandas.util._test_decoratorsÚutilÚ_test_decoratorsrâ  Úpandas.core.dtypes.commonr   ÚpandasrE  r   r   r   r   r   r   r   r   r   r   r   Úpandas._testingÚ_testingr   r4  r   ræ  r÷  r  r  rø  r*  r9  rà  rá  rv   rA  rB  rC  r+   r+   r+   r,   Ú<module>   sX    4            $+ C
>þþ