a
    oÝEbÄ¡  ã                   @   s@  d dl m Z  d dlZd dlZd dlm  mZ d dlm	Z
 d dlmZmZmZ d dlmZmZmZ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 m!Z!m"Z"m#Z#m$Z$m%Z% d dl&m'Z( d dl)m*Z* d dl+m,Z, G d	d
„ d
ƒZ-G dd„ dƒZ.G dd„ dƒZ/G dd„ dƒZ0G dd„ dƒZ1G dd„ dƒZ2G dd„ dƒZ3dS )é    )ÚdatetimeN)Ú	_registry)Úis_categorical_dtypeÚis_interval_dtypeÚis_object_dtype)ÚCategoricalDtypeÚDatetimeTZDtypeÚIntervalDtypeÚPeriodDtype)ÚCategoricalÚ	DataFrameÚDatetimeIndexÚIndexÚIntervalÚIntervalIndexÚ
MultiIndexÚNaTÚPeriodÚPeriodIndexÚSeriesÚ	TimestampÚcutÚ
date_rangeÚnotnaÚperiod_range)ÚSparseArray)ÚBDayc                   @   s  e Zd Zdd„ Zej dg d¢¡dd„ ƒZdd„ Zd	d
„ Z	dd„ Z
dd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zej ded ƒed!ƒfed"d#d$�ed%d&ƒfed'd(d)�ed(d)�fg¡d*d+„ ƒZej d,d-d.„ ejD ƒd/d0g ¡d1d2„ ƒZd3d4„ Zej d5g d6¢¡d7d8„ ƒZej d5g d6¢¡d9d:„ ƒZ d;d<„ Z!d=d>„ Z"d?d@„ Z#ej dg dA¢¡dBdC„ ƒZ$ej dDdEdEgg¡dFdG„ ƒZ%dHdI„ Z&dJdK„ Z'ej dLg dM¢g dN¢g¡dOdP„ ƒZ(dQdR„ Z)dSdT„ Z*dUdV„ Z+dWdX„ Z,dYdZ„ Z-ej d[g d\¢g d]¢d^fg d_¢g d]¢d^fg d`¢g d]¢d^fg da¢g db¢dcfg dd¢g de¢dffg dg¢g de¢dhfg¡didj„ ƒZ.dkdl„ Z/ej dmg dn¢doe0g dp¢g dp¢g dp¢gg dn¢dq�fdrdsgdodtge0g du¢g dv¢g dw¢gg dn¢dq�fg dx¢e1j2g dy¢e1j3dz�e0g dy¢g dy¢g dy¢gg dx¢dq�fg d{¢g dy¢g d|¢g d}¢ge0g d~¢g d¢g d€¢gg dn¢dq�fg d�¢e1j2g dy¢g d|¢g d}¢ge1j3dz�e0g d‚¢g dƒ¢g d„¢gg dn¢dq�fd…drge0dodtgd†d‡gdˆd‰ggd…drgdq�e0g dŠ¢g d‹¢g dŒ¢gg dx¢dq�fg¡d�dŽ„ ƒZ4d�d�„ Z5d‘d’„ Z6d“d”„ Z7d•d–„ Z8d—d˜„ Z9e:j;d™dš„ ƒZ<d›S )œÚTestDataFrameSetItemc                 C   sv   G dd„ dt ƒ}dg}t|ƒ}tddgi|d�}d|d< d	||d
ƒ< tddgddg|d
ƒd	gi|d�}t ||¡ d S )Nc                   @   s   e Zd ZdS )z@TestDataFrameSetItem.test_setitem_str_subclass.<locals>.mystringN)Ú__name__Ú
__module__Ú__qualname__© r!   r!   úh/home/ja/django-apps/lartica_env/lib/python3.9/site-packages/pandas/tests/frame/indexing/test_setitem.pyÚmystring1   s   r#   z2020-10-22 01:21:00+00:00Úaé   ©Úindexé   Úbé   Úc)Ústrr   r   ÚtmZassert_equal)Úselfr#   Údatar'   ÚdfÚexpectedr!   r!   r"   Útest_setitem_str_subclass/   s    "z.TestDataFrameSetItem.test_setitem_str_subclassÚdtype)Úint32Úint64Úfloat32Úfloat64c                 C   s:   t j t|ƒ¡}t j||d�||< || jj|ks6J ‚d S )N©r3   )ÚnpÚrandomÚrandnÚlenÚarrayr3   Úname)r.   r3   Úfloat_frameÚarrr!   r!   r"   Útest_setitem_dtype<   s    z'TestDataFrameSetItem.test_setitem_dtypec                 C   s8   t j t|ƒd¡}||ddg< t |ddg j|¡ d S )Nr(   ÚAÚB)r9   r:   r;   r<   r-   Zassert_almost_equalÚvalues)r.   r?   r/   r!   r!   r"   Útest_setitem_list_not_dataframeC   s    z4TestDataFrameSetItem.test_setitem_list_not_dataframec              	   C   s  t g d¢g d¢dœtg d¢dd�d�}tg d¢tg d	¢dd�d
d�}d}tjt|d��F tjtdd�� ||d< W d   ƒ n1 s„0    Y  W d   ƒ n1 s¢0    Y  t t	j
 ddd¡g d¢d�}d}tjt|d��& | ddg¡ ¡ |d< W d   ƒ n1 �s0    Y  d S )N©r%   r(   r*   )ÚdÚeÚf)ÚbarZbaz©r$   r)   r+   Úfoo©r>   r&   )ÚgÚhÚiÚj)r$   r)   r+   r$   Zfiz©r'   r>   z/cannot reindex on an axis with duplicate labels©Úmatchz
non-uniqueZnewcolr   r(   )é   rU   ©r$   r)   r+   rG   ©Úcolumnsz6incompatible index of inserted column with frame indexr)   r+   Úgr)r   r   r   ÚpytestÚraisesÚ
ValueErrorr-   Úassert_produces_warningÚFutureWarningr9   r:   ÚrandintÚ	TypeErrorÚgroupbyÚcount)r.   r0   ÚserÚmsgr!   r!   r"   Útest_setitem_error_msmgsH   s"    þýDz-TestDataFrameSetItem.test_setitem_error_msmgsc                 C   sh   d}d}t t|ƒd�}tj |¡}t|ƒD ]}|||< q*t t ||¡ ||¡t|ƒd�}t ||¡ d S )Né
   é   r&   )	r   Úranger9   r:   r;   ÚrepeatZreshaper-   Úassert_frame_equal)r.   ÚNÚKr0   Znew_colrP   r1   r!   r!   r"   Útest_setitem_benchmark`   s    
 z+TestDataFrameSetItem.test_setitem_benchmarkc                 C   sB  t tj dd¡t d¡g d¢d�}| dd|d ¡ | dd	|d
 ¡ |d  d¡|d< |j}tt 	d¡gd t 	d¡g g d¢d�}t
 ||¡ |d  d¡|d< |j}tt 	d¡gd t 	d¡gd  g d¢d�}t
 ||¡ |d  d¡|d< |j}tt 	d¡gd t 	d¡gd  t 	d¡g g d¢d�}t
 ||¡ d S )Nrg   r*   )r+   r)   r$   ©r'   rX   r   rL   r$   r(   rJ   r+   r6   Úxr7   )rL   r+   rJ   r)   r$   ro   r&   rU   r4   Úy)rL   r+   rJ   r)   r$   ro   rp   )r   r9   r:   r;   ÚarangeÚinsertÚastypeÚdtypesr   r3   r-   Úassert_series_equal)r.   r0   Úresultr1   r!   r!   r"   Útest_setitem_different_dtypek   s4    ÿþþ*þz1TestDataFrameSetItem.test_setitem_different_dtypec                 C   sL   t g d¢d�}|j|d< g d¢|d< t dg d¢ig d¢d�}t ||¡ d S )N©rB   rC   ÚCr&   ÚX©ro   rp   Úz)r/   r'   )r   r'   r-   rj   ©r.   r0   Úexpr!   r!   r"   Útest_setitem_empty_columnsŽ   s
    
z/TestDataFrameSetItem.test_setitem_empty_columnsc                 C   sF   t dddd�}tt t|ƒ¡d�}||d< |d jt d¡ksBJ ‚d S )Nz1/1/2000 00:00:00z1/1/2000 1:59:50Z10s)Úfreqr&   rB   úM8[ns])r   r   r9   rq   r<   r3   )r.   Úrngr0   r!   r!   r"   Ú%test_setitem_dt64_index_empty_columns–   s    z:TestDataFrameSetItem.test_setitem_dt64_index_empty_columnsc                 C   sR   t tdƒd�}tddd�|d< t tddd�ggd g d¢dgd�}t ||¡ d S )	Nr*   r&   Z20130101ÚUTC©ÚtzÚnow©r   r%   r(   rn   )r   rh   r   r-   rj   ©r.   r0   r1   r!   r!   r"   Ú$test_setitem_timestamp_empty_columns�   s    ÿz9TestDataFrameSetItem.test_setitem_timestamp_empty_columnsc                 C   sz   t  g d¢g d¢¡}ttdƒdgd�}dt|ƒ› dt|ƒ› d�}tjt|d	�� ||d
< W d   ƒ n1 sl0    Y  d S )N)r   r%   r%   r   r%   r(   rK   rf   rJ   rW   zLength of values \(z$\) does not match length of index \(z\)rS   rL   )r   Z
from_codesr   rh   r<   rZ   r[   r\   )r.   Úcatr0   rd   r!   r!   r"   Ú2test_setitem_wrong_length_categorical_dtype_raises§   s    ÿÿzGTestDataFrameSetItem.test_setitem_wrong_length_categorical_dtype_raisesc                 C   sJ   t g d¢g d¢dœƒ}tg d¢ƒ}||d< t|dd�}t |d |¡ d S )NrK   ©ç      ð?ç       @ç      @©Zc_1Zn_1©r   r   r%   Ú
new_columnrM   )r   r   r   r-   ru   )r.   r0   Zsp_arrayr1   r!   r!   r"   Útest_setitem_with_sparse_value³   s
    z3TestDataFrameSetItem.test_setitem_with_sparse_valuec                 C   s^   t g d¢g d¢dœƒ}ttg d¢ƒg d¢d�}||d< ttg d¢ƒdd	�}t |d |¡ d S )
NrK   r�   r‘   r’   )r(   r%   r   r&   r“   )r%   r   r   rM   )r   r   r   r-   ru   )r.   r0   Z	sp_seriesr1   r!   r!   r"   Ú(test_setitem_with_unaligned_sparse_value¼   s
    z=TestDataFrameSetItem.test_setitem_with_unaligned_sparse_valuec                 C   s8   t ddƒg}tg ƒ}||d< td|iƒ}t ||¡ d S )Nz2003-12ÚDr$   )r   r   r-   rj   )r.   r/   rv   r1   r!   r!   r"   Ú#test_setitem_period_preserves_dtypeÄ   s
    z8TestDataFrameSetItem.test_setitem_period_preserves_dtypec                 C   s¦   t tg d¢dd�tg d¢td�tg d¢td�dœƒ}t tg dd�tg td�tg td�dœƒ}tg d¢ƒD ],\}}t|ƒt|ƒt|ƒdœ|j|jd < qht ||¡ d S )Nrˆ   r5   r8   rF   rK   r   )	r   r   ÚfloatÚ	enumerateÚintÚlocÚshaper-   rj   )r.   r1   r0   Úidxr)   r!   r!   r"   Ú"test_setitem_dict_preserves_dtypesÎ   s    ýÿ


ýÿ&z7TestDataFrameSetItem.test_setitem_dict_preserves_dtypesz	obj,dtypez2020-01ÚMr   rg   )ÚleftÚrightr5   r¡   z
2011-01-01z
US/Easternr…   c                 C   sH   t g d¢t|gd |d�dœƒ}t dg d¢iƒ}||d< t ||¡ d S )NrF   r*   r8   )r�   Úobjr�   r¢   )r   r   r-   rj   )r.   r¢   r3   r1   r0   r!   r!   r"   Útest_setitem_extension_typesâ   s     z1TestDataFrameSetItem.test_setitem_extension_typesÚea_namec                 C   s   g | ]}t |jtƒs|j‘qS r!   )Ú
isinstancer>   Úproperty)Ú.0r3   r!   r!   r"   Ú
<listcomp>ø   s   ýzTestDataFrameSetItem.<listcomp>zdatetime64[ns, UTC]z	period[D]c                 C   s8   t dgƒ}dg||< t ddg|dgiƒ}t ||¡ d S )Nr   r%   ©r   r-   rj   )r.   r¤   rv   r1   r!   r!   r"   Útest_setitem_with_ea_nameö   s    

z.TestDataFrameSetItem.test_setitem_with_ea_namec                 C   s�   t jddgdd�}t|ƒ ¡ }||d< tdd gdd gdœdd�}t ||¡ t jddgdd�}||d< tdd gdd gdœdd�}t ||¡ d S )	Nr%   Znatúdatetime64[ns]r8   Únew)r   r¬   zdatetime64[s]g    eÍÍA)r9   r=   r   Zto_framer   r-   rj   )r.   Zdata_nsrv   r1   Zdata_sr!   r!   r"   Ú6test_setitem_dt64_ndarray_with_NaT_and_diff_time_units	  s    zKTestDataFrameSetItem.test_setitem_dt64_ndarray_with_NaT_and_diff_time_unitsÚunit)rO   ÚmÚsÚmsr–   rŸ   ÚYc                 C   sŒ   d}t  d|› d�¡}t j|t jd� |¡}| d¡}tdt  |¡it  |¡d�}|||< || jt  d¡ksrJ ‚|| j|k ¡ sˆJ ‚d S )	Néd   úM8[ú]r8   r«   Úintsr&   r�   ©	r9   r3   rq   r5   Úviewrs   r   rD   Úall©r.   r®   Únr3   ÚvalsZex_valsr0   r!   r!   r"   Ú-test_frame_setitem_datetime64_col_other_units  s    
zBTestDataFrameSetItem.test_frame_setitem_datetime64_col_other_unitsc                 C   sŽ   d}t  d|› d�¡}t j|t jd� |¡}| d¡}tdt  |¡it  |¡d�}t j|t jd� d¡|d	< ||d	< |d	 j|k ¡ sŠJ ‚d S )
Nr³   r´   rµ   r8   r«   r¶   r&   r�   Údatesr·   rº   r!   r!   r"   Ú6test_frame_setitem_existing_datetime64_col_other_units'  s    
zKTestDataFrameSetItem.test_frame_setitem_existing_datetime64_col_other_unitsc           
      C   s  |}|d   d¡}||d< t |d t|dd�¡ d|d< ||d< t |d t|dd�¡ |d= |jjd }|jjd }t ||¡ |jj}|jj}|d u s°t	|ƒt	|ƒks°J ‚| 
¡ }t|jd< t|jd	< |d }	t t|	ƒtg d
¢dd�¡ t |j|j¡ d S )NrC   rL   ry   rM   r–   r%   r(   )r%   r%   ©r%   r(   )TFT)Úrenamer-   ru   r   Ú_mgrZarraysZassert_extension_array_equalÚ_dataÚbaseÚidÚcopyr   Úilocr   rt   )
r.   Ztimezone_framer0   r�   Úv1Úv2Zv1baseZv2baseÚdf2rv   r!   r!   r"   Útest_setitem_dt64tz8  s(    

z(TestDataFrameSetItem.test_setitem_dt64tzc                 C   s”   t dddd�}ttj dd¡|d�}||d< t|d ƒ}tj||dd	� |jdksVJ ‚|jdksdJ ‚| 	¡  
d¡}t|jtƒs‚J ‚t |j|¡ d S )
Nz1/1/2000rg   r'   )Úperiodsr>   r*   r&   r   F©Zcheck_names)r   r   r9   r:   r;   r   r-   Úassert_index_equalr>   Zreset_indexZ	set_indexr¥   r'   r   )r.   r‚   r0   Úrsr!   r!   r"   Útest_setitem_periodindexW  s    z-TestDataFrameSetItem.test_setitem_periodindexc                 C   sÀ   t g d¢g d¢dœƒ}t ddgddgddgg¡}||ddg< t g d¢g d¢g d	¢g d
¢dœƒ}|d  |j¡|d< |d  |j¡|d< |d j|jksœJ ‚|d j|jks°J ‚t ||¡ d S )N)ÚoneÚtwoÚthreerF   ©r$   r)   r%   r*   rg   r+   rG   ©r%   r*   rg   ©r%   r%   r%   rV   )r   r9   r=   rs   r3   r-   rj   ©r.   r0   r@   r1   r!   r!   r"   Ú'test_setitem_complete_column_with_arraye  s    üÿz<TestDataFrameSetItem.test_setitem_complete_column_with_array)Úf8Úi8Úu8c                 C   sl   t g d¢|d�}ttj dd¡|d�}g d¢|d< t g d¢td�}|dkrZt g d	¢td�}t |j|¡ d S )
NrF   r8   r*   rW   rK   F)r%   r(   r*   FrÙ   )rŽ   r�   r�   F)	r   r   r9   r:   r;   Úobjectr-   rÎ   rX   )r.   r3   Úcolsr0   Zexpected_colsr!   r!   r"   Ú$test_setitem_bool_with_numeric_indexx  s    z9TestDataFrameSetItem.test_setitem_bool_with_numeric_indexÚindexerrC   c                 C   sb   t ddgd�}t dddgiƒ}|||< t tjgd ddgdœƒ}|d  d¡|d< t ||¡ d S )NrB   rC   rW   r%   r(   ©rB   rC   rÜ   )r   r9   Únanrs   r-   rj   )r.   rß   r0   Úotherr1   r!   r!   r"   Ú#test_setitem_frame_length_0_str_key†  s    z8TestDataFrameSetItem.test_setitem_frame_length_0_str_keyc              	   C   sþ   g d¢d }t tdƒ|d�}d|jd< d|jd d …df< d	|d
< t g d¢tjddtjddgtjddtjddggdd�}|rÀ||_|d
  d¡|d
< |d  d¡|d< tjj	dd�}|j
 |¡ n.|d  tj¡|d< |d  tj¡|d< ||_t ||¡ d S )Nrx   r(   r*   rn   )r   r*   )r   rB   )r%   rU   rC   ©r(   rg   ry   )r   r%   r(   r*   rU   rg   r%   rU   rg   rÜ   r8   r5   z2Both 'A' columns get set with 3 instead of 0 and 3©Úreason)r   rh   r›   r9   rá   rX   rs   rZ   ÚmarkÚxfailÚnodeZ
add_markerr5   r-   rj   )r.   Úusing_array_managerÚrequestrÝ   r0   r1   rç   r!   r!   r"   Ú$test_setitem_frame_duplicate_columns�  s0    
ýú	ÿz9TestDataFrameSetItem.test_setitem_frame_duplicate_columnsc                 C   s¦   g d¢d }t tdƒ|d�}tjtdd�� d|dg< W d   ƒ n1 sJ0    Y  |jd d …d d…f }tjtdd�� d|dg< W d   ƒ n1 s˜0    Y  d S )	Nrx   r(   r*   rn   ú"Columns must be same length as keyrS   )r   r*   rg   rB   )r   rh   rZ   r[   r\   rÇ   )r.   rÝ   r0   rÊ   r!   r!   r"   Ú2test_setitem_frame_duplicate_columns_size_mismatch´  s    (zGTestDataFrameSetItem.test_setitem_frame_duplicate_columns_size_mismatchrÝ   rK   )r$   r$   r$   c                 C   sf   t g d¢g|d�}t ddggddgd�}d}tjt|d�� ||d	< W d   ƒ n1 sX0    Y  d S )
NrF   rW   rf   é   rG   rH   rí   rS   r$   ©r   rZ   r[   r\   )r.   rÝ   r0   Úrhsrd   r!   r!   r"   Ú#test_setitem_df_wrong_column_number¿  s
    z8TestDataFrameSetItem.test_setitem_df_wrong_column_numberc                 C   sŒ   t g d¢gg d¢d�}t g d¢gg d¢d�}||ddg< t g d¢gg d¢d�}t ||¡ ||ddg< t g d¢gg d	¢d�}t ||¡ d S )
NrF   ©r$   r)   r)   rW   ©rf   rï   é   r$   r)   r+   )rf   rï   rõ   rf   )r$   r)   r)   r+   r©   )r.   r0   rñ   r1   r!   r!   r"   Ú/test_setitem_listlike_indexer_duplicate_columnsÈ  s    zDTestDataFrameSetItem.test_setitem_listlike_indexer_duplicate_columnsc                 C   sn   t g d¢gg d¢d�}t ddggddgd�}d}tjt|d	�� ||ddg< W d   ƒ n1 s`0    Y  d S )
NrF   ró   rW   rf   rï   r$   r)   rí   rS   rð   )r.   r0   rñ   rd   r!   r!   r"   Ú@test_setitem_listlike_indexer_duplicate_columns_not_equal_lengthÔ  s
    zUTestDataFrameSetItem.test_setitem_listlike_indexer_duplicate_columns_not_equal_lengthc                 C   sº  t dtdƒiƒ}t|d dƒ}t|jjtƒs0J ‚||d< t |¡|d< |j	|d< t |j	¡|d< | 
t¡|d< t|d jƒs€J ‚t|d jjƒs”J ‚t|d jƒs¦J ‚t|d jjƒsºJ ‚t|d ƒsÊJ ‚t|d ƒsÚJ ‚t|d ƒsêJ ‚d	d
„ }t ||jƒ||jƒ¡ tj||jƒ||jƒdd� tj||jƒ||jƒdd� tj||jƒ||jƒdd� t |d |d ¡ tj|d |d dd� t |d |d ¡ tj|d |d dd� d S )NrB   rf   rg   rC   ry   r–   ÚEÚFc                 S   s   t t | ¡ƒS ©N)r   r9   r=   ©ro   r!   r!   r"   Ú<lambda>û  ó    z=TestDataFrameSetItem.test_setitem_intervals.<locals>.<lambda>FrÍ   )r   rh   r   r¥   r‹   Ú
categoriesr   r9   r=   rD   rs   rÜ   r   r3   r   r   r-   rÎ   rC   ry   r–   ru   )r.   r0   rc   r+   r!   r!   r"   Útest_setitem_intervalsÜ  s0    
z+TestDataFrameSetItem.test_setitem_intervalsc                 C   s\   t dttdƒƒ d¡iƒ}|jj ddg¡|_t dtddgƒ ddg¡iƒ}t 	||¡ d S )NrO   ÚmnÚcategoryr»   r¯   )
r   r   Úlistrs   rO   r‹   Zreorder_categoriesr   r-   rj   r‰   r!   r!   r"   Útest_setitem_categorical	  s    ÿz-TestDataFrameSetItem.test_setitem_categoricalc                 C   sD   t g dd�}tdg|d�}g |d< tdg|d�}t |j|j¡ d S )Nr�   rM   rB   ©rX   r'   )r   r   r-   rÎ   r'   )r.   r'   rv   r1   r!   r!   r"   Ú test_setitem_with_empty_listlike  s
    z5TestDataFrameSetItem.test_setitem_with_empty_listlikezcols, values, expected)ry   r–   r–   r$   ©r%   r(   r*   rU   rU   )r–   ry   r–   r$   )ry   rC   rC   r$   )ry   rC   r$   rF   r*   )rC   ry   r$   )r*   r(   r%   r%   )ry   r$   rC   r(   c                 C   s8   t |g|d�}|d |d< |d jd }||ks4J ‚d S )NrW   r$   r   )r   rD   )r.   rÝ   rD   r1   r0   rv   r!   r!   r"   Útest_setitem_same_column  s    z-TestDataFrameSetItem.test_setitem_same_columnc                 C   s   g d¢ddgg d¢f}t  |¡}tddd�}tj dd	t|ƒt|ƒf¡}t|||d
�}|jj	 
¡ |d d d …  }}tj |¡ |d j|d d d…f |d< t |d |d ¡ tj |¡ |d j||f |d< t |d |d ¡ tj |¡ |d j||f |d< t |d |d ¡ d S )N)ÚjimÚjoeÚjolieÚfirstÚlast)r    Úcenterr¡   Z20141006é   )rÌ   r%   iè  r  éÿÿÿÿr
  r  )r
  r  )r	  r  )r
  r  )r	  r  )r   Zfrom_productr   r9   r:   r_   r<   r   r'   rD   rÆ   Úshuffler›   r-   rj   )r.   ÚitrÝ   r'   r¼   r0   rP   rQ   r!   r!   r"   Útest_setitem_multi_index,  s    
z-TestDataFrameSetItem.test_setitem_multi_indexzcolumns,box,expected)rB   rC   ry   r–   é   )r  r  r  r  rW   ry   r–   é   )r%   r(   r  r  )r*   rU   r  r  ©rg   é   r  r  rx   )r  r  é	   r8   )rC   ry   r–   rô   )é   é   é   )r%   r  r  r  )r*   rf   rï   rõ   )rg   r  r  r  )ry   rB   r–   )r  r(   r  r  )rï   rU   rf   rõ   )r  r  r  r  rB   r  rf   rï   rõ   )r  r(   r  )r  rU   rf   )rï   r  rõ   c                 C   s:   t ddgddgddggddgd	�}|||< t ||¡ d S )
Nr%   r(   r*   rU   rg   r  rB   rC   rW   r©   )r.   rX   Úboxr1   r0   r!   r!   r"   Ú!test_setitem_list_missing_columnsD  s    3"z6TestDataFrameSetItem.test_setitem_list_missing_columnsc                 C   sF   t t|d |d ƒƒ}||d< |d }t||jdd�}t ||¡ d S )NrB   rC   ÚtuplesrR   )r  Úzipr   r'   r-   ru   )r.   r?   r  rv   r1   r!   r!   r"   Útest_setitem_list_of_tuples{  s
    z0TestDataFrameSetItem.test_setitem_list_of_tuplesc                 C   sT   t g d¢g d¢dœƒ}dd„ dD ƒ}d|j|< t g d¢g d	¢dœƒ}t ||¡ d S )
NrF   ©rU   rg   r  rÔ   c                 s   s   | ]
}|V  qd S rú   r!   ©r§   ro   r!   r!   r"   Ú	<genexpr>†  rý   zCTestDataFrameSetItem.test_setitem_iloc_generator.<locals>.<genexpr>rÀ   r%   rÖ   ©rU   r%   r%   ©r   rÇ   r-   rj   ©r.   r0   rß   r1   r!   r!   r"   Útest_setitem_iloc_generatorƒ  s
    
z0TestDataFrameSetItem.test_setitem_iloc_generatorc                 C   sX   t g d¢g d¢dœƒ}dd„ dD ƒ}d|j|df< t g d¢g d¢dœƒ}t ||¡ d S )	NrF   r   rÔ   c                 s   s   | ]
}|V  qd S rú   r!   r!  r!   r!   r"   r"  �  rý   zSTestDataFrameSetItem.test_setitem_iloc_two_dimensional_generator.<locals>.<genexpr>rÀ   r%   r#  r$  r%  r!   r!   r"   Ú+test_setitem_iloc_two_dimensional_generator‹  s
    z@TestDataFrameSetItem.test_setitem_iloc_two_dimensional_generatorc                 C   s”   t ddd�}t|d�}t d|tjd�|d< t d|dd�|d< t d	|dd�|d	< t d
|tjd�|d
< |j}t tjtttjgtdƒd�}t 	||¡ d S )NrÅ   ZS24)r>   r3   r&   r$   )r>   r'   r3   r)   ZS64r+   rG   Úabcd)
r   r   r9   Zuint32Zuint8rt   rÜ   r  r-   ru   )r.   r'   r0   rv   r1   r!   r!   r"   Ú(test_setitem_dtypes_bytes_type_to_object’  s    
z=TestDataFrameSetItem.test_setitem_dtypes_bytes_type_to_objectc                 C   s†   t ddgddgdœƒ dddœ¡}td|jd	�}|d
 |j|d
f< |d |j|df< t ddgddgdœƒ dddœ¡}t ||¡ d S )Nr*   rU   rg   r  rÔ   r5   ZInt64Fr&   r$   r)   )r   rs   r   r'   r›   r-   rj   )r.   rv   Úmaskr1   r!   r!   r"   Ú test_boolean_mask_nullable_int64ž  s    ÿÿz5TestDataFrameSetItem.test_boolean_mask_nullable_int64c                 C   sŽ   t t d¡t d¡dœt d¡d�}t d¡}t t d¡d�}||d< t t¡� t |¡|d< W d   ƒ n1 st0    Y  t ||¡ d S )Nrf   )únp-arrayú	np-matrixr&   )rf   r%   r,  r-  )	r   r9   Úonesrq   r-   r]   ÚPendingDeprecationWarningZmatrixrj   )r.   r1   r$   r0   r!   r!   r"   Útest_setitem_npmatrix_2d¬  s    ÿ
,z-TestDataFrameSetItem.test_setitem_npmatrix_2dN)=r   r   r    r2   rZ   rç   ÚparametrizerA   rE   re   rm   rw   r   rƒ   rŠ   rŒ   r”   r•   r—   rž   r   r
   r   r	   r   r   r£   Úea_registryrt   rª   r­   r½   r¿   rË   rÐ   rØ   rÞ   rã   rì   rî   rò   rö   r÷   rÿ   r  r  r  r  r   r9   r=   r5   r  r  r&  r'  r)  r+  ÚtdZ&skip_array_manager_not_yet_implementedr0  r!   r!   r!   r"   r   .   sê   
#
	

þýþ
	þøþ




	$
-	úþ
þý	þý	 ýþý	 þý	 ÿýÚþ1
r   c                   @   s@   e Zd Zejdd„ ƒZejdd„ ƒZdd„ Zdd„ Zd	d
„ Z	dS )ÚTestSetitemTZAwareValuesc                 C   s   t ddgdd�}| d¡}|S )Nz2013-1-1 13:00z2013-1-2 14:00rC   rM   z
US/Pacific)r   Útz_localize)r.   Znaiver�   r!   r!   r"   r�   À  s    
zTestSetitemTZAwareValues.idxc                 C   s.   t tj| ¡ dd�dd�}|j|jks*J ‚|S )NrÜ   r8   rC   rM   )r   r9   r=   Útolistr3   )r.   r�   r1   r!   r!   r"   r1   Æ  s    z!TestSetitemTZAwareValues.expectedc                 C   sª   t tj dd¡dgd�}||d< t t¡�&}|jdddgd�|d< W d   ƒ n1 sV0    Y  d	}|t|d j	ƒv szJ ‚|d }t
| d
¡ d ¡dd�}t ||¡ d S )Nr(   r%   rB   rW   rC   Fr   )Zkeep_tzr'   z(do 'idx.tz_convert(None)' before callingr„   rM   )r   r9   r:   r;   r-   r]   r^   Z	to_seriesr,   Úmessager   Z
tz_convertr5  ru   )r.   r�   r1   r0   r¯   rd   rv   Úcompr!   r!   r"   Útest_setitem_dt64seriesÌ  s    4z0TestSetitemTZAwareValues.test_setitem_dt64seriesc                 C   s8   t tj dd¡dgd�}||d< |d }t ||¡ d S ©Nr(   r%   rB   rW   rC   )r   r9   r:   r;   r-   ru   ©r.   r�   r1   r0   rv   r!   r!   r"   Útest_setitem_datetimeindexÚ  s    z3TestSetitemTZAwareValues.test_setitem_datetimeindexc                 C   s<   t tj dd¡dgd�}| ¡ |d< |d }t ||¡ d S r:  )r   r9   r:   r;   Zto_pydatetimer-   ru   r;  r!   r!   r"   Ú.test_setitem_object_array_of_tzaware_datetimesã  s    zGTestSetitemTZAwareValues.test_setitem_object_array_of_tzaware_datetimesN)
r   r   r    rZ   Zfixturer�   r1   r9  r<  r=  r!   r!   r!   r"   r4  ¿  s   

	r4  c                   @   sD   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S )Ú!TestDataFrameSetItemWithExpansionc                 C   sl   t g d¢g d¢dœƒ}|d }t ddgddgdd	gg¡|d
dg< d|jd< tg d¢dd�}t ||¡ d S )NrF   )rU   rU   r  rÔ   r$   gš™™™™™¹?gš™™™™™É?g333333Ó?gš™™™™™Ù?ç      à?r+   rG   r³   )r   r   )r³   r(   r*   rM   )r   r9   r=   rÇ   r   r-   ru   )r.   r0   rc   r1   r!   r!   r"   Útest_setitem_listlike_viewsî  s    $
z=TestDataFrameSetItemWithExpansion.test_setitem_listlike_viewsc                 C   sL   t ddgddggƒ}ddg|d< t g d¢g d	¢gg d
¢d�}t ||¡ d S )Nr%   r(   r*   rU   rg   r  ú0 - Name)r%   r(   rg   )r*   rU   r  )r   r%   rA  rW   r©   r‰   r!   r!   r"   Ú.test_setitem_string_column_numpy_dtype_raisingþ  s    zPTestDataFrameSetItemWithExpansion.test_setitem_string_column_numpy_dtype_raisingc                 C   sb   t g d¢dd�}ttdƒƒ|jd d …df< t dtjtjgdtjtjggg d¢d�}t ||¡ d S )	Nró   r7   ©rX   r3   r(   r$   r   r%   rW   )r   r  rh   r›   r9   rá   r-   rj   r‰   r!   r!   r"   Ú'test_setitem_empty_df_duplicate_columns  s     ÿzITestDataFrameSetItemWithExpansion.test_setitem_empty_df_duplicate_columnsc           	      C   s<  t dtjtj ddd¡dd�iƒ}tdd„ tddd	ƒD ƒƒ}|jdgd
d�}t|j	tddd	ƒd|d�}|j
}||d< t|ƒ |j}tt d¡t|dd�gddgd�}t ||¡ ||d< t|ƒ |j}tt d¡t|dd�t|dd�gg d¢d�}t ||¡ |d }|d }t |jj|¡ d|_t | ¡ | ¡ ¡ d S )NÚvaluer   i'  r³   r4   r8   c                 S   s   g | ]}|› d |d › �‘qS )z - ió  r!   )r§   rP   r!   r!   r"   r¨     rý   zcTestDataFrameSetItemWithExpansion.test_setitem_with_expansion_categorical_dtype.<locals>.<listcomp>iô  T)ZbyZ	ascendingi)  F)r¡   Úlabelsr–   )rþ   Zorderedr&   rø   )rE  r–   rø   )r   r9   r=   r:   r_   r   rh   Úsort_valuesr   rE  rD   r,   rt   r   r3   r   r-   ru   Zassert_categorical_equalrÂ   r>   Z
sort_index)	r.   r0   rF  rc   r‹   rv   r1   Zresult1Zresult2r!   r!   r"   Ú-test_setitem_with_expansion_categorical_dtype  s>    ÿþ

ýúzOTestDataFrameSetItemWithExpansion.test_setitem_with_expansion_categorical_dtypec                 C   s2   t ƒ }d|d< t dgd� tj¡}t ||¡ d S )Nr%   rL   rW   )r   rs   r9   r5   r-   rj   r‰   r!   r!   r"   Útest_setitem_scalars_no_index;  s    z?TestDataFrameSetItemWithExpansion.test_setitem_scalars_no_indexc                 C   sL   d|j vsJ ‚|d |d< d|j v s(J ‚|d }|d }tj||dd� d S )Nrà   rB   FrÍ   )rX   r-   ru   )r.   r?   rv   r1   r!   r!   r"   Útest_setitem_newcol_tuple_keyB  s    ýz?TestDataFrameSetItemWithExpansion.test_setitem_newcol_tuple_keyc                 C   sX   t ddtƒ d�}t|tdƒd�}tdddƒ}t|ƒ}tj||< t || ¡ 	¡ sTJ ‚d S )	Nz1/1/2012z2/1/2012)ÚstartÚendr€   rf   r  iÜ  rï   r%   )
r   r   r   rh   r   r   r9   rá   Úisnanr¹   )r.   rX   r/   ÚtÚtsr!   r!   r"   Ú#test_frame_setitem_newcol_timestampN  s    
zETestDataFrameSetItemWithExpansion.test_frame_setitem_newcol_timestampN)
r   r   r    r@  rB  rD  rH  rI  rJ  rP  r!   r!   r!   r"   r>  í  s   	-r>  c                   @   sÜ   e Zd Zdd„ Zej dejej	g¡ej de
ejeejg¡ej dg d¢¡dd„ ƒƒƒZej de
ejeejg¡ej dg d¢¡d	d
„ ƒƒZej dejej	g¡ej de
ejeejg¡ej dg d¢¡dd„ ƒƒƒZdS )ÚTestDataFrameSetItemSlicingc                 C   sH   t t d¡ƒ}d|dd …< t d¡}d|dd …< t |ƒ}t ||¡ d S )N)r³   r%   r%   éüÿÿÿ)r   r9   Zzerosr-   rj   r×   r!   r!   r"   Útest_setitem_slice_positionY  s    
z7TestDataFrameSetItemSlicing.test_setitem_slice_positionrß   r  r»   rF   c                 C   sp   t g d¢gg d¢g|  g d¢d�}|g d¢ƒ||ƒdd …< t g d¢gg d¢g|  g d¢d�}t ||¡ d S ©NrÕ   ©r(   rU   r  rK   rW   rô   r%   r©   ©r.   r»   r  rß   r0   r1   r!   r!   r"   Ú+test_setitem_slice_indexer_broadcasting_rhsb  s    $$zGTestDataFrameSetItemSlicing.test_setitem_slice_indexer_broadcasting_rhsc                 C   sx   t g d¢gg d¢g|  g d¢d�}|g d¢ƒ|jttd|d ƒƒ< t g d¢gg d¢g|  g d¢d�}t ||¡ d S rT  )r   rÇ   r  rh   r-   rj   )r.   r»   r  r0   r1   r!   r!   r"   Ú*test_setitem_list_indexer_broadcasting_rhsl  s    $ $zFTestDataFrameSetItemSlicing.test_setitem_list_indexer_broadcasting_rhsc                 C   s|   t g d¢g d¢gg d¢g|  g d¢d�}|g d¢ƒ||ƒdd …< t g d¢gg d¢g|d   g d¢dd	�}t ||¡ d S )
NrÕ   r{   rU  rK   rW   rô   r%   rÜ   rC  r©   rV  r!   r!   r"   Ú0test_setitem_slice_broadcasting_rhs_mixed_dtypesu  s    "ÿýzLTestDataFrameSetItemSlicing.test_setitem_slice_broadcasting_rhs_mixed_dtypesN)r   r   r    rS  rZ   rç   r1  r-   ÚsetitemrÇ   r   r9   r=   r  ÚpdrW  rX  rY  r!   r!   r!   r"   rQ  X  s   	rQ  c                   @   s   e Zd Zdd„ Zdd„ ZdS )ÚTestDataFrameSetItemCallablec                 C   sL   t g d¢g d¢dœƒ}g d¢|dd„ < t g d¢g d¢dœƒ}t ||¡ d S )Nr  r  rà   )rï   rõ   r  r  c                 S   s   dS )NrB   r!   rû   r!   r!   r"   rü   Š  rý   zDTestDataFrameSetItemCallable.test_setitem_callable.<locals>.<lambda>r©   r}   r!   r!   r"   Útest_setitem_callable‡  s    z2TestDataFrameSetItemCallable.test_setitem_callablec                 C   sL   dd„ }t ddgddggƒ}|||dk< t d|g|dggƒ}t ||¡ d S )Nc                 S   s   | d S )Nr%   r!   rû   r!   r!   r"   Úinc‘  s    zETestDataFrameSetItemCallable.test_setitem_other_callable.<locals>.incr  r%   r   r©   )r.   r^  r0   r1   r!   r!   r"   Útest_setitem_other_callable�  s
    z8TestDataFrameSetItemCallable.test_setitem_other_callableN)r   r   r    r]  r_  r!   r!   r!   r"   r\  †  s   r\  c                   @   sö   e Zd Zejejjddd„ dd„ gddgd�dd	„ ƒƒZejj	d
d�ej de
ejeg¡dd„ ƒƒZej de
ejeg¡dd„ ƒZej dejejg¡dd„ ƒZdd„ Zej dddg¡ej di ddgiddgig¡dd„ ƒƒZd d!„ Zd"d#„ Zd$S )%ÚTestDataFrameSetItemBooleanMaskÚ	mask_typec                 C   s   | t  | ¡d kS ©Nr(   )r9   Úabs©r0   r!   r!   r"   rü   Ÿ  rý   z(TestDataFrameSetItemBooleanMask.<lambda>c                 C   s   | t  | ¡d kjS rb  )r9   rc  rD   rd  r!   r!   r"   rü   Ÿ  rý   Z	dataframer=   )Úidsc                 C   sL   |  ¡ }||ƒ}|  ¡ }tj||< |  ¡ }tj|jt |¡< t ||¡ d S rú   )rÆ   r9   rá   rD   r=   r-   rj   )r.   ra  r?   r0   r*  rv   r1   r!   r!   r"   Útest_setitem_boolean_maskœ  s    	
z9TestDataFrameSetItemBooleanMask.test_setitem_boolean_maskz1Currently empty indexers are treated as all Falserå   r  c                 C   s|   t dgdgdgdœƒ}|tkr,|g dd�}n|g ƒ}d}tjt|d��" dg|j|dgf< W d   ƒ n1 sn0    Y  d S )	Nr$   r%   rK   rÜ   r8   z@Must have equal len keys and value when setting with an iterablerS   r)   )r   r   rZ   r[   r\   r›   )r.   r  r0   rß   rd   r!   r!   r"   Ú:test_setitem_loc_empty_indexer_raises_with_non_empty_value°  s    zZTestDataFrameSetItemBooleanMask.test_setitem_loc_empty_indexer_raises_with_non_empty_valuec                 C   sz   t dgdgdgdœƒ}|dgƒ}d|d  |j|dgf< t dgdgdgdœƒ}t ||¡ d|j|dgf< t ||¡ d S )	Nr$   r%   rK   Frf   r+   r)   r  )r   r›   r-   rj   )r.   r  r0   rß   r1   r!   r!   r"   Ú1test_setitem_loc_only_false_indexer_dtype_changed½  s    
zQTestDataFrameSetItemBooleanMask.test_setitem_loc_only_false_indexer_dtype_changedrß   c                 C   sT   t g d¢g d¢dœƒ}| ¡ }|d dk}||ƒ|  d¡||ƒ|< t ||¡ d S )N)r%   rU   r(   r*   r  rÔ   r$   r*   )r   rÆ   rG  r-   rj   )r.   rß   r0   r1   r*  r!   r!   r"   Ú"test_setitem_boolean_mask_aligningË  s
    zBTestDataFrameSetItemBooleanMask.test_setitem_boolean_mask_aligningc                 C   sö   t g d¢ddgd�}tg d¢ƒ}g d¢}t||dœ|d�}t g d	¢g d
¢d�}tg d¢ƒ}g d¢}t||dœ|d�}| ¡ }	tjtdd��( |	d jjg d
¢dd�}
W d   ƒ n1 s¸0    Y  |
d u sÎJ ‚|d dk}ddg||< t 	||	¡ d S )N)r$   r$   r)   r)   r$   r$   r$   r$   r)   )rþ   )rO   rP   rQ   ÚkÚlr¯   r»   )r%   r%   r(   r(   r%   r%   r%   )ÚcatsrD   r&   )r$   r$   r+   r+   r$   r$   r$   rK   )r%   r%   r*   r*   r%   r%   r%   F)Zcheck_stacklevelrl  T)Zinplacer+   r(   )
r   r   r   rÆ   r-   r]   r^   r‹   Zset_categoriesrj   )r.   Zcats2Zidx2Zvalues2Zexp_multi_rowZcatsfZidxfZvaluesfr0   Z	exp_fancyZreturn_valuer*  r!   r!   r"   Útest_setitem_mask_categoricalÔ  s&    ÿ
ÿ$z=TestDataFrameSetItemBooleanMask.test_setitem_mask_categoricalr3   r˜   r5   Úkwargsr'   r%   rX   rB   c                 C   s:   ||d< t f i |¤Ž}| ¡ }d|||k< t ||¡ d S )Nr3   é/   ©r   rÆ   r-   rj   )r.   r3   rn  r0   rÊ   r!   r!   r"   Ú%test_setitem_empty_frame_with_booleanð  s
    zETestDataFrameSetItemBooleanMask.test_setitem_empty_frame_with_booleanc                 C   sì   t tdƒƒ}g d¢}t||tjg d¢g d¢g d¢gtd�d�}t||t t|ƒt|ƒf¡d�}t||tjg d¢g d¢g d	¢gtd�d�}d
||d| k< t 	||¡ t
jtdd��& d
||jd d
… dk< W d   ƒ n1 sÞ0    Y  d S )Nr*   rx   )ç        r?  rŽ   )ç      ø?r�   g      @)r�   g      @g      @r8   )r'   rX   r/   )rs  r�   r  )r  r  r  r  r�   zItem wrong lengthrS   r(   )r  rh   r   r9   r=   r˜   r.  r<   r-   rj   rZ   r[   r\   r'   )r.   r�   rÝ   Zdf1rÊ   r1   r!   r!   r"   Útest_setitem_boolean_indexingû  s&    ÿý ýz=TestDataFrameSetItemBooleanMask.test_setitem_boolean_indexingc                 C   sd   t ddgddgddœƒ}| ¡ }tddgdd	�}t d
ddgiddgd�|j|d
gf< t ||¡ d S )Nr%   r(   r*   rU   r$   rK   Fr+   rM   r)   rg   r  r   r&   )r   rÆ   r   r›   r-   rj   )r.   r0   r1   rß   r!   r!   r"   Ú-test_loc_setitem_all_false_boolean_two_blocks  s
    $zMTestDataFrameSetItemBooleanMask.test_loc_setitem_all_false_boolean_two_blocksN)r   r   r    r3  Zskip_array_manager_invalid_testrZ   rç   r1  rf  rè   r  r9   r=   r   rg  rh  r-   rZ  r›   ri  rm  rq  rt  ru  r!   r!   r!   r"   r`  ›  s(   ý

	r`  c                   @   sø   e Zd Zdd„ Zej dddg¡dd„ ƒZdd	„ Zej d
de	j
dgdggdd�dgdggg¡dd„ ƒZej d
de	 
dgdgg¡dgdggg¡dd„ ƒZej dddgejddgejjddd�d�g¡ej dddedƒedƒfdg¡dd„ ƒƒZd S )!Ú%TestDataFrameSetitemCopyViewSemanticsc                 C   sP   d|j vsJ ‚|d  ¡ }||d< tj|d dd…< t|dd… ƒ ¡ sLJ ‚d S )Nrø   rB   rg   rf   )rX   rÆ   r9   rá   r   r¹   )r.   r?   r°   r!   r!   r"   Útest_setitem_always_copy  s
    z>TestDataFrameSetitemCopyViewSemantics.test_setitem_always_copyÚconsolidateTFc                 C   sî   t g d¢g d¢dœg d¢d�}| ddtj¡ |sh|rT| ¡  t|jjƒdkshJ ‚nt|jjƒdkshJ ‚|d j}d	|j	dd …df< t
tjtjd	d	g|jdd
�}t |d |¡ t ||j¡ t ||d j¡sÔJ ‚|sê|d j|u sêJ ‚d S )N)gš™™™™™ñ?gÍÌÌÌÌÌ @gÍÌÌÌÌÌ@gffffff@)gffffff@gffffff@gffffff@g333333 @)ro   rp   )r   r%   r(   r*   r&   r(   r|   r%   é*   rR   )r   rr   r9   rá   Z_consolidate_inplacer<   rÂ   ÚblocksZ_valuesr›   r   r'   r-   ru   Zassert_numpy_array_equalrD   Zshares_memory)r.   rx  rê   r0   Zzvalsr1   r!   r!   r"   Ú#test_setitem_partial_column_inplace$  s"    ÿ
zITestDataFrameSetitemCopyViewSemantics.test_setitem_partial_column_inplacec                 C   sf   ddgd }t ddg|d�}| ¡ }|d d … }d|d< t g d¢g|d	�}t ||¡ t ||¡ d S )
NrB   rC   r(   rr  r   rn   rä   )rr  r(   rr  rg   rW   rp  )r.   rÝ   r0   Údf_copyÚdf_viewr1   r!   r!   r"   Ú*test_setitem_duplicate_columns_not_inplaceC  s    zPTestDataFrameSetitemCopyViewSemantics.test_setitem_duplicate_columns_not_inplacerE  r%   r5   r8   c           	      C   sl   ddg}t dddg|d�}| ¡ }|d d … }||dg< t ddgddgg|d�}t ||¡ t ||¡ d S )NrB   rC   r   r%   rn   rW   rp  )	r.   rE  rê   rë   rÝ   r0   r|  r}  r1   r!   r!   r"   Ú#test_setitem_same_dtype_not_inplaceO  s    
zITestDataFrameSetitemCopyViewSemantics.test_setitem_same_dtype_not_inplacerŽ   c                 C   sl   ddg}t dddg|d�}| ¡ }|d d … }||dg< t ddgddgg|d�}t ||¡ t ||¡ d S )NrB   rC   r   r%   rn   rŽ   rW   rp  )r.   rE  rÝ   r0   r|  r}  r1   r!   r!   r"   Ú2test_setitem_listlike_key_scalar_value_not_inplace^  s    
zXTestDataFrameSetitemCopyViewSemantics.test_setitem_listlike_key_scalar_value_not_inplacerß   r$   z+Boolean indexer incorrectly setting inplace)ræ   Ústrict)Zmarkszvalue, set_value)r%   rg   )rŽ   g      @z
2020-12-31z
2021-12-31rÔ   c                 C   s@   t d|iddgd�}| ¡ }|d d … }|||< t ||¡ d S )Nr$   r   r%   r&   rp  )r.   rE  Ú	set_valuerß   r0   r1   r¸   r!   r!   r"   Ú"test_setitem_not_operating_inplacek  s
    zHTestDataFrameSetitemCopyViewSemantics.test_setitem_not_operating_inplaceN)r   r   r    rw  rZ   rç   r1  r{  r~  r9   r=   r  r€  Úparamrè   r   rƒ  r!   r!   r!   r"   rv    s@   
$ÿ
(
þþýþüþ	rv  )4r   Únumpyr9   rZ   Zpandas.util._test_decoratorsÚutilZ_test_decoratorsr3  Zpandas.core.dtypes.baser   r2  Zpandas.core.dtypes.commonr   r   r   Zpandas.core.dtypes.dtypesr   r   r	   r
   Zpandasr[  r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   Zpandas._testingZ_testingr-   Zpandas.core.arraysr   Zpandas.tseries.offsetsr   r   r4  r>  rQ  r\  r`  rv  r!   r!   r!   r"   Ú<module>   s0   H     .k. 