a
    nÝEb!Z  ã                   @   sÄ  d Z ddlmZmZmZ ddlZddlZddlmZ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 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ƒZ!G dd„ dƒZ"dd„ Z#ej$ %deddgƒeeddd�ƒeeddd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/d0d1„ Z0d2d3„ Z1d4d5„ Z2d6d7„ Z3d8d9„ Z4ej$ %d:d;d<g¡d=d>„ ƒZ5G d?d@„ d@ƒZ6dS )AzJ
Series.__getitem__ test classes are organized by the type of key passed.
é    )ÚdateÚdatetimeÚtimeN)Ú
conversionÚ	timezones)Ú	is_scalar)	ÚCategoricalÚ	DataFrameÚDatetimeIndexÚIndexÚSeriesÚ	TimestampÚ
date_rangeÚperiod_rangeÚtimedelta_range)ÚIndexingError)ÚBDayc                   @   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
dd„ Zej dddg¡dd„ ƒZej dddg¡dd„ ƒZdd„ Zdd „ Zd!d"„ Zd#d$„ Zd%d&„ Zd'S )(ÚTestSeriesGetitemScalarsc                 C   s>   t dgd tg d¢ƒd�}|d dks*J ‚|d dks:J ‚d S )Né   é   )ÚaÚbÚcç      ð?©Úindexr   r   )r   r   ©ÚselfÚser© r   úi/home/ja/django-apps/lartica_env/lib/python3.9/site-packages/pandas/tests/series/indexing/test_getitem.pyÚ&test_getitem_object_index_float_string'   s    z?TestSeriesGetitemScalars.test_getitem_object_index_float_stringc                 C   sn   t g d¢g d¢dd�}|d }|dks*J ‚t ddgddgdd�}t g d¢g d¢dd�}|d }t ||¡ d S )	N)©r   r   ©é   r$   )é   r%   )ç        gš™™™™™¹?çš™™™™™É?Zfoo)r   Únamer&   r"   r#   )r&   r&   r'   )r   ÚtmÚassert_series_equal©r   r   ÚresultÚexpectedr   r   r    Ú$test_getitem_float_keys_tuple_values-   s    z=TestSeriesGetitemScalars.test_getitem_float_keys_tuple_valuesc                 C   sB   t ddgt d¡t d¡gd�}|jd }|| }|dks>J ‚d S )Nr   r$   ÚOÚi8r   )r   ÚnpÚdtyper   )r   r   Úkeyr,   r   r   r    Ú test_getitem_unrecognized_scalar<   s     
z9TestSeriesGetitemScalars.test_getitem_unrecognized_scalarc                 C   sZ   t t dd¡t dd¡d�}d}tjt|d�� |d  W d   ƒ n1 sL0    Y  d S )Né   é
   r   z2index -11 is out of bounds for axis 0 with size 10©Úmatchiõÿÿÿ)r   r)   Zrands_arrayÚpytestÚraisesÚ
IndexError)r   r   Úmsgr   r   r    Ú#test_getitem_negative_out_of_boundsG   s    z<TestSeriesGetitemScalars.test_getitem_negative_out_of_boundsc                 C   sB   d}t jt|d�� |t|ƒ  W d   ƒ n1 s40    Y  d S )Nz3index \d+ is out of bounds for axis 0 with size \d+r7   )r9   r:   r;   Úlen©r   Údatetime_seriesr<   r   r   r    Ú%test_getitem_out_of_bounds_indexerrorN   s    z>TestSeriesGetitemScalars.test_getitem_out_of_bounds_indexerrorc                 C   sF   t g td�}tjtdd�� |d  W d   ƒ n1 s80    Y  d S )N©r2   z-1r7   éÿÿÿÿ©r   Úobjectr9   r:   ÚKeyErrorr   r   r   r    Ú4test_getitem_out_of_bounds_empty_rangeindex_keyerrorT   s    zMTestSeriesGetitemScalars.test_getitem_out_of_bounds_empty_rangeindex_keyerrorc                 C   s  t tj d¡g d¢d�}tjtdd�� |d  W d   ƒ n1 sD0    Y  tjtdd�� |d  W d   ƒ n1 sz0    Y  t tj d¡g d	¢d�}tjtdd�� |d  W d   ƒ n1 sÈ0    Y  tjtdd�� |d  W d   ƒ n1 sþ0    Y  d S )
Né   )r   r   r   r   r$   r$   r   z^5$r7   r5   z^'c'$r   )r$   r$   r   r   r   r   )r   r1   ÚrandomÚrandnr9   r:   rF   r   r   r   r    Ú%test_getitem_keyerror_with_int64index[   s    &&&z>TestSeriesGetitemScalars.test_getitem_keyerror_with_int64indexc                 C   s"   t  d¡}|| |d ksJ ‚d S ©Nr5   )r1   Úint64)r   r@   Úidxr   r   r    Útest_getitem_int64m   s    
z+TestSeriesGetitemScalars.test_getitem_int64c                 C   s8   t tdƒttdƒƒd�}|ttdƒƒ }t ||¡ d S )Nr5   r   ©r   ÚrangeÚlistr)   r*   ©r   r   r,   r   r   r    Útest_getitem_full_rangeq   s    z0TestSeriesGetitemScalars.test_getitem_full_rangeÚtzstrzEurope/Berlinzdateutil/Europe/Berlinc                 C   sh   t  |¡}tddd|d�}t||jd�}td|d�}tdd	d
ddƒ}t ||¡}|| || ksdJ ‚d S )Nz2012-12-24 16:00z2012-12-24 18:00ÚH)ÚstartÚendÚfreqÚtz)r   Údataz2012-12-24 17:00)rZ   iÜ  é   é   é   r   )	r   Zmaybe_get_tzr   r   Úhourr   r   r   Zlocalize_pydatetime)r   rU   rZ   r   ÚtsZtime_pandasÚdtZtime_datetimer   r   r    Útest_getitem_pydatetime_tzz   s    
ÿz3TestSeriesGetitemScalars.test_getitem_pydatetime_tzrZ   z
US/Easternzdateutil/US/Easternc                 C   sB   t dd|d�}ttj t|ƒ¡|d�}|d }t ||d ¡ d S )Nú1/1/2000r6   ©ÚperiodsrZ   r   ú1/3/2000r$   )r   r   r1   rI   rJ   r>   r)   Úassert_almost_equal)r   rZ   Úrngr   r,   r   r   r    Ú test_string_index_alias_tz_awareˆ   s    z9TestSeriesGetitemScalars.test_string_index_alias_tz_awarec                 C   sn   t dddd�}ttj t|ƒ¡|d�}|jdk|jdk@ }|tddƒ }|| }|j	 
d ¡|_	t ||¡ d S )Nrc   z1/5/2000Z5min©rY   r   é	   é   )r   r   r1   rI   rJ   r>   r_   Úminuter   r   Ú
_with_freqr)   r*   )r   rh   r`   Úmaskr,   r-   r   r   r    Útest_getitem_time_object�   s    z1TestSeriesGetitemScalars.test_getitem_time_objectc                 C   sJ   t tdƒtdƒgƒ}tddg|d�}|jd }||d  }||ksFJ ‚d S )Nz
12-31-1999z
12-31-2000r   r$   r   r   )r   r   r   Úiloc)r   Zcatsr   r-   r,   r   r   r    Ú%test_getitem_scalar_categorical_index�   s
    
z>TestSeriesGetitemScalars.test_getitem_scalar_categorical_indexc                 C   sv   t g d¢t g d¢¡d�}|d dks*J ‚|dg }|jdd … }t ||¡ |g d¢ }t ||jd d d… ¡ d S )N©r   r   r   )r$   r   r   r   r   r   rC   ©r   r   r$   )r   ÚpdZCategoricalIndexrq   r)   r*   )r   r   Úresr-   Úres2r   r   r    Ú8test_getitem_numeric_categorical_listlike_matches_scalar¦   s    
zQTestSeriesGetitemScalars.test_getitem_numeric_categorical_listlike_matches_scalarc                 C   sB   t g d¢tg d¢dd�d�}| d¡dks.J ‚|d dks>J ‚d S )Nrs   ©r   r$   r%   ÚcategoryrB   r   r%   r   )r   r   Úgetr   r   r   r    Ú/test_getitem_integer_categorical_not_positionalµ   s    zHTestSeriesGetitemScalars.test_getitem_integer_categorical_not_positionalc                 C   sÎ   t dddd�}tt t|ƒ¡|d�}d}| |¡}|dks>J ‚|| }||jd ksXJ ‚d}tjt	|d	�� | d
¡ W d   ƒ n1 sŠ0    Y  tjt	|d	�� |d
  W d   ƒ n1 sÀ0    Y  d S )Nú1 day 10:11:12Úhéô  ©rY   re   r   z6 days, 23:11:12é…   z!^Timedelta\('50 days 00:00:00'\)$r7   z50 days)
r   r   r1   Úaranger>   Úget_locrq   r9   r:   rF   )r   rh   r   r3   Úindexerr,   r<   r   r   r    Ú$test_getitem_str_with_timedeltaindex»   s    
(z=TestSeriesGetitemScalars.test_getitem_str_with_timedeltaindexN)Ú__name__Ú
__module__Ú__qualname__r!   r.   r4   r=   rA   rG   rK   rO   rT   r9   ÚmarkÚparametrizerb   ri   rp   rr   rx   r|   r…   r   r   r   r    r   &   s$   	

	r   c                   @   sæ   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ Zej	 
d¡dd„ ƒZej	 deedddƒdƒg d¢geedddƒdƒdggeedddƒdƒg gededddƒƒg d¢gededddƒƒdggg¡dd„ ƒZdd„ Zdd„ Zdd„ ZdS )ÚTestSeriesGetitemSlicesc                 C   sB   t ddƒ}| ¡ }|d }t ddd�}t||d�}t ||¡ d S )Nz1/1/2008z1/1/2009Z2008z
2008-01-01z
2008-12-31)rW   rX   r   )r   Z	to_seriesr   r)   r*   )r   Zarrr   r,   rh   r-   r   r   r    Ú1test_getitem_partial_str_slice_with_datetimeindexÎ   s    
zITestSeriesGetitemSlices.test_getitem_partial_str_slice_with_datetimeindexc                 C   sp   t g d¢ƒ}ttj t|ƒ¡|d�}|dd … }|dd … }t ||¡ |dd… }|dd… }t ||¡ d S )N)rc   ú1/2/2000r�   rf   z1/4/2000r   r�   r   rf   r   )r
   r   r1   rI   rJ   r>   r)   r*   )r   rN   r`   r,   r-   r   r   r    Ú-test_getitem_slice_strings_with_datetimeindexÙ   s    ÿzETestSeriesGetitemSlices.test_getitem_slice_strings_with_datetimeindexc                 C   sš   t dddd�}tt t|ƒ¡|d�}|dd… }|jdd	… }t ||¡ |dd … }|jdd … }t ||¡ |d d… }|jd d	… }t ||¡ d S )
Nr}   r~   r   r€   r   z5 dayz6 dayéV   é†   ©r   r   r1   r‚   r>   rq   r)   r*   ©r   rh   r   r,   r-   r   r   r    Ú2test_getitem_partial_str_slice_with_timedeltaindexè   s    zJTestSeriesGetitemSlices.test_getitem_partial_str_slice_with_timedeltaindexc                 C   sŽ   t dddd�}tt t|ƒ¡|d�}|dd … }|jdd … }t ||¡ |dd … }|jdd … }t ||¡ |d	 }||jd
 ksŠJ ‚d S )Nr}   ÚuséÐ  r€   r   r   z1 day 10:11:12.001iè  z1 days, 10:11:12.001001ié  r‘   r’   r   r   r    Ú<test_getitem_partial_str_slice_high_reso_with_timedeltaindexø   s    zTTestSeriesGetitemSlices.test_getitem_partial_str_slice_high_reso_with_timedeltaindexc                 C   sd   t jtdd��" |d d …tjf }W d   ƒ n1 s60    Y  |jd d …tjf }t  ||¡ d S ©Nz&Support for multi-dimensional indexingr7   )r)   Úassert_produces_warningÚFutureWarningr1   ZnewaxisÚvaluesrg   )r   r@   r,   r-   r   r   r    Útest_getitem_slice_2d  s    ÿ0z-TestSeriesGetitemSlices.test_getitem_slice_2dz&ignore:Using a non-tuple:FutureWarningc                 C   s~   t dddd�}ttj d¡|d�}tddd ƒg}t t¡� || }W d   ƒ n1 sX0    Y  ||d	  }t 	||¡ d S )
NZ20090415Z20090519Z2Brj   é   r   rH   é   r   )
r   r   r1   rI   rJ   Úslicer)   r˜   r™   r*   )r   r   Úsr„   r,   r-   r   r   r    Útest_getitem_median_slice_bug  s    &z5TestSeriesGetitemSlices.test_getitem_median_slice_bugzslc, positionsiâ  r   Nrt   iã  r$   iä  r   c                 C   s8   t g d¢tg d¢ƒƒ}|| }| |¡}t ||¡ d S )Nrt   )z
2019-01-01z2019-01-01T06:00:00z
2019-01-02)r   r
   Ztaker)   r*   )r   ZslcZ	positionsr   r,   r-   r   r   r    Útest_getitem_slice_date"  s    
þ
z/TestSeriesGetitemSlices.test_getitem_slice_datec                 C   sŒ   d}t jt|jdd�d�� |dd…  W d   ƒ n1 s<0    Y  t jt|jdd�d�� |dd…  W d   ƒ n1 s~0    Y  d S )	NzUcannot do slice indexing on DatetimeIndex with these indexers \[{key}\] of type floatz4\.0)r3   r7   ç      @g      $@z4\.5g      @)r9   r:   Ú	TypeErrorÚformatr?   r   r   r    Útest_getitem_slice_float_raises6  s    ÿ*z7TestSeriesGetitemSlices.test_getitem_slice_float_raisesc                 C   st   t tdƒttdƒƒd�}|dd … }t ||¡ |dd … }t ||dd … ¡ |d d… }t ||d d… ¡ d S )Nr6   r   iôÿÿÿiùÿÿÿr%   r   rP   rS   r   r   r    Útest_getitem_slice_bugA  s    z.TestSeriesGetitemSlices.test_getitem_slice_bugc                 C   sN   t tj d¡g d¢d�}|d d… }t |jd d… g d¢d�}t ||¡ d S )Né   )r$   r   rH   r§   r6   r\   é   é   r   r   )r$   r   rH   r§   )r   r1   rI   rJ   rš   r)   r*   r+   r   r   r    Útest_getitem_slice_integersL  s    z3TestSeriesGetitemSlices.test_getitem_slice_integers)r†   r‡   rˆ   rŒ   rŽ   r“   r–   r›   r9   r‰   Úfilterwarningsr    rŠ   rž   r   r¡   r¥   r¦   rª   r   r   r   r    r‹   Í   s(   

ûþ


r‹   c                   @   s’   e Zd Zej deeje	e
g¡dd„ ƒZdd„ Zej deeje	g¡dd„ ƒZej deeje	g¡ej dejejejg¡d	d
„ ƒƒZdd„ ZdS )ÚTestSeriesGetitemListLikeÚboxc                 C   s`   t ddgƒ}t dgtd�}||ƒ}d}tjt|d�� ||  W d   ƒ n1 sR0    Y  d S )NÚAÚBÚCrB   zANone of \[Index\(\['C'\], dtype='object'\)\] are in the \[index\]r7   rD   )r   r­   r   r3   r<   r   r   r    Útest_getitem_no_matchesU  s    z1TestSeriesGetitemListLike.test_getitem_no_matchesc                 C   sf   t tdddd�ƒ}|ddg }t tjddd�tjd	dd�gddgd
d�}t ||¡ |jd
ksbJ ‚d S )Nz
2000-01-01r6   ÚD)re   rY   r$   r   ú
2000-01-03rj   z
2000-01-05z	Period[D]©r   r2   )r   r   ru   ZPeriodr)   r*   r2   )r   r   r,   Úexpr   r   r    Ú*test_getitem_intlist_intindex_periodvaluesa  s    ýzDTestSeriesGetitemListLike.test_getitem_intlist_intindex_periodvaluesc                 C   sb   t ddd� d ¡}tj |¡}ttt|ƒƒ|d�}|jd d… }|dgƒ}|| }t	 
||¡ d S )Nr³   r%   ©re   r   r   r   )r   rn   ru   ZIntervalIndexZfrom_breaksr   rQ   r>   rq   r)   r*   )r   r­   ÚdtiÚiir   r-   r3   r,   r   r   r    Ú*test_getitem_intlist_intervalindex_non_intm  s    
zDTestSeriesGetitemListLike.test_getitem_intlist_intervalindex_non_intr2   c                 C   s�   t tdƒƒ |¡}tddd�}tj ||g¡}ttt|ƒƒd d d… |d�}|dgƒ}t	j
tdd	�� ||  W d   ƒ n1 s‚0    Y  d S )
Nr   r³   r%   r·   rC   r   r5   Ú5r7   )r   rQ   Úastyper   ru   Z
MultiIndexZfrom_productr   r>   r9   r:   rF   )r   r2   r­   rN   r¸   Úmir   r3   r   r   r    Ú-test_getitem_intlist_multiindex_numeric_levely  s    
zGTestSeriesGetitemListLike.test_getitem_intlist_multiindex_numeric_levelc                 C   sŽ   t g d¢ƒ}tjdg|d�}tjtdd�� ||  W d   ƒ n1 sH0    Y  tjtdd�� |j|  W d   ƒ n1 s€0    Y  d S )Nry   r   rB   Ú4r7   )r   r1   Úarrayr9   r:   rF   Úloc)r   Zany_unsigned_int_numpy_dtyper   r3   r   r   r    Útest_getitem_uint_array_key†  s    &z5TestSeriesGetitemListLike.test_getitem_uint_array_keyN)r†   r‡   rˆ   r9   r‰   rŠ   rR   r1   rÀ   r   r   r±   r¶   rº   rM   Úfloat64Zuint64r¾   rÂ   r   r   r   r    r¬   T  s   

r¬   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 )ÚTestGetitemBooleanMaskc                 C   sH   |}||  ¡ k}|t|ƒ }|| }t ||¡ t |j|j| ¡ d S )N)ÚmedianrR   r)   r*   Úassert_index_equalr   )r   Ústring_seriesr   ro   r,   r-   r   r   r    Útest_getitem_boolean’  s    z+TestGetitemBooleanMask.test_getitem_booleanc                 C   s  t g tjd�}d|j_|| ¡  }|jjdks2J ‚|jtjksBJ ‚t ddgƒ}t ttg dd�d�}|t g td� }t	 
||¡ d}tjt|d��  |t g td�  W d   ƒ n1 s¶0    Y  tjt|d��" |t d	gtd�  W d   ƒ n1 sö0    Y  d S )
NrB   Z
index_namer®   r¯   rM   )r2   r   úsUnalignable boolean Series provided as indexer \(index of the boolean Series and of the indexed object do not matchr7   T)r   r1   rM   r   r(   Zisnar2   rE   r   r)   r*   r9   r:   r   Úbool)r   r   r-   r,   r<   r   r   r    Útest_getitem_boolean_emptyœ  s    ÿ.z1TestGetitemBooleanMask.test_getitem_boolean_emptyc           
      C   sä   |}||  ¡ k}| t¡}|| }|| }t ||¡ | ¡ }| ¡ }d||< d||< t ||¡ tj|dd…< d}	tj	t
|	d�� ||  W d   ƒ n1 s 0    Y  tj	t
|	d�� d||< W d   ƒ n1 sÖ0    Y  d S )Nr5   r6   z=Cannot mask with non-boolean array containing NA / NaN valuesr7   )rÅ   r¼   rE   r)   r*   Úcopyr1   Únanr9   r:   Ú
ValueError)
r   rÇ   r   ro   Zomaskr,   r-   Ús2Úcopr<   r   r   r    Útest_getitem_boolean_object¶  s"    
&z2TestGetitemBooleanMask.test_getitem_boolean_objectc                 C   sh   t dddd�}t g d¢¡}t|jƒ}|| }|jjjd u s@J ‚ttdƒƒ}|| }|jjd u sdJ ‚d S )Nz
2016-01-01r   z
US/Pacificrd   )TTFF)r   r1   rÀ   r   Ú_dataZ_valuesÚbaserQ   )r   r¸   r3   r   rv   Zser2rw   r   r   r    Ú test_getitem_boolean_dt64_copiesÑ  s    
z7TestGetitemBooleanMask.test_getitem_boolean_dt64_copiesc                 C   s’   |}|j dtƒ d�| ¡ k}d}tjt|d�� ||  W d   ƒ n1 sL0    Y  tjt|d�� |j|  W d   ƒ n1 s„0    Y  d S )Nr   rj   rÉ   r7   )Úshiftr   rÅ   r9   r:   r   rÁ   )r   r@   r`   Zmask_shiftedr<   r   r   r    Útest_getitem_boolean_cornerà  s    ÿ&z2TestGetitemBooleanMask.test_getitem_boolean_cornerc                 C   s0   |  ¡ }||dk }||dk }t ||¡ d S )Nr   )Zsort_valuesr)   r*   )r   rÇ   ZorderedÚselrµ   r   r   r    Ú$test_getitem_boolean_different_orderî  s    z;TestGetitemBooleanMask.test_getitem_boolean_different_orderc                 C   s~   t dddd�}tjt|ƒtd�}d|dd…< || }|dd… }|j|jksPJ ‚t ||¡ d|d	< || }|jd u szJ ‚d S )
Nrc   z3/1/2000r¯   rj   rB   Tr6   é   é   )r   r1   Zzerosr>   rÊ   rY   r)   rÆ   )r   rh   ro   Zmaskedr-   r   r   r    Ú-test_getitem_boolean_contiguous_preserve_freqõ  s    zDTestGetitemBooleanMask.test_getitem_boolean_contiguous_preserve_freqN)
r†   r‡   rˆ   rÈ   rË   rÑ   rÔ   rÖ   rØ   rÛ   r   r   r   r    rÄ   ‘  s   
rÄ   c                   @   s   e Zd Zdd„ ZdS )ÚTestGetitemCallablec                 C   s~   t dtdƒd�}|dd„  }||jd ks.J ‚|dd„  }|jddg }t ||¡ |d	d„  }|jg d
¢ }t ||¡ d S )Nr   ÚABCDr   c                 S   s   dS )Nr®   r   ©Úxr   r   r    Ú<lambda>	  ó    z;TestGetitemCallable.test_getitem_callable.<locals>.<lambda>r®   c                 S   s   ddgS )Nr®   r¯   r   rÞ   r   r   r    rà     rá   r¯   c                 S   s   g d¢S )N)TFTTr   rÞ   r   r   r    rà     rá   )r   r$   r%   )r   rR   rÁ   r)   r*   rq   r+   r   r   r    Útest_getitem_callable  s    z)TestGetitemCallable.test_getitem_callableN)r†   r‡   rˆ   râ   r   r   r   r    rÜ     s   rÜ   c                 C   sN   dd„ | D ƒ}| | }| t | dkƒ }| | dk }t ||¡ t ||¡ d S )Nc                 s   s   | ]}|d kV  qdS )r   Nr   )Ú.0rß   r   r   r    Ú	<genexpr>  rá   z)test_getitem_generator.<locals>.<genexpr>r   )Úiterr)   r*   )rÇ   Úgenr,   Zresult2r-   r   r   r    Útest_getitem_generator  s    rç   Úseriesr   z
2012-01-01r$   r·   ZCETrd   c                 C   sd   t jtdd��  | d d …d f }W d   ƒ n1 s40    Y  t | ¡d d …d f }t  ||¡ d S r—   )r)   r˜   r™   r1   ZasarrayZassert_numpy_array_equal)rè   r,   r-   r   r   r    Útest_getitem_ndim_deprecated  s    	þ.ré   c                 C   sR   | }|d }d}t jt|d��  |ddd…f  W d   ƒ n1 sD0    Y  d S )Nr®   z\(2000, slice\(3, 4, None\)\)r7   r•   r%   r   )r9   r:   r£   )Z/multiindex_year_month_day_dataframe_random_dataÚdfr   r<   r   r   r    Ú4test_getitem_multilevel_scalar_slice_not_implemented1  s
    rë   c                  C   sf   t tdƒƒ} td| d�}t| | d�}d}tjt|d�� ||dk  W d   ƒ n1 sX0    Y  d S )Nr6   r   zWIndexing a Series with DataFrame is not supported, use the appropriate DataFrame columnr7   r5   )rR   rQ   r   r	   r9   r:   r£   )rh   r   rê   r<   r   r   r    Útest_getitem_dataframe_raises=  s    ÿrì   c                  C   sF   t tdƒƒ} t g d¢¡}t g d¢ƒ| |< t g d¢ƒ}t | |¡ d S )Nr6   )r$   r   rk   )r6   é   r\   )
r   r   r6   r%   rí   r5   rH   r�   r§   r\   )r   rQ   r1   rÀ   r)   r*   )r   rN   r-   r   r   r    Ú'test_getitem_assignment_series_aligmentI  s
    rî   c                  C   sÄ   t g d¢g d¢d�} tjtdd�� | d   W d   ƒ n1 s@0    Y  tjtdd�� | j d ¡ W d   ƒ n1 sz0    Y  tjtdd�� | jj d ¡ W d   ƒ n1 s¶0    Y  d S )N)r$   r5   rH   r§   )g       @r¢   r¢   g      @r   ÚNoner7   )r   r9   r:   rF   r   rƒ   Z_engine©r   r   r   r    Ú9test_getitem_duplicate_index_mistyped_key_raises_keyerrorS  s    &*rñ   c                  C   s:   t tdƒƒ} tdƒf}| | }| |d  }t ||¡ d S )Nr5   r%   r   )r   rQ   rž   r)   r*   )r   r3   r,   r-   r   r   r    Ú,test_getitem_1tuple_slice_without_multiindex`  s
    
rò   c                 C   sX   | | dk }|j | j ksJ ‚| g d¢ }|j | j ks8J ‚| dd… }|j | j ksTJ ‚d S )Nr   )r   r$   r   r5   r6   )r(   )r@   r,   r   r   r    Útest_getitem_preserve_namei  s    ró   c                  C   s¦   t tj d¡ttdddƒƒd�} g d¢}t g d¢¡}tjt	dd�� | |  W d   ƒ n1 sb0    Y  tjt	dd�� | |  W d   ƒ n1 s˜0    Y  d S )	Nr6   r   rÙ   r$   r   )r   r$   r5   r�   r§   znot in indexr7   )
r   r1   rI   rJ   rR   rQ   rÀ   r9   r:   rF   )r   ZindsZarr_indsr   r   r    Ú test_getitem_with_integer_labelst  s     &rô   c                 C   sN   | j d tƒ  }d}tjt|d�� | |  W d   ƒ n1 s@0    Y  d S )Nr   z,Timestamp\('1999-12-31 00:00:00', freq='B'\)r7   )r   r   r9   r:   rF   )r@   Údr<   r   r   r    Útest_getitem_missing€  s    rö   c                 C   st   | g d¢ }|g d¢ }| j d |j d ks0J ‚|j d |j d ksHJ ‚| d |d ks\J ‚|d |d kspJ ‚d S )Nry   r$   r   r   )rÇ   Zobject_seriesZslice1Zslice2r   r   r    Útest_getitem_fancyˆ  s    r÷   c                 C   s   | d }t |tjƒsJ ‚d S rL   )Ú
isinstancer1   rÃ   )r@   Úvaluer   r   r    Útest_getitem_box_float64‘  s    rú   c                  C   s8   t tdƒg d¢d�} t| d ƒs$J ‚| d dks4J ‚d S )Nr5   )r   r   r   r   r   r   r   r   )r   rQ   r   )Úobjr   r   r    Útest_getitem_unordered_dup–  s    rü   c                  C   sH   t tdƒg d¢tjd�} t ddgddgtjd�}| d }t ||¡ d S )Nr5   )r®   r®   r¯   r°   r°   r´   r%   r   r°   )r   rQ   r1   rM   r)   r*   )r   r-   r,   r   r   r    Útest_getitem_dupsœ  s    rý   c                  C   s‚   t tdƒtg d¢ƒd�} | d }| jddg }t ||¡ t t¡� | j 	| d¡}W d   ƒ n1 sh0    Y  t ||¡ d S )Nr5   )r   r   r   r   r   r   r   r   r%   )
r   rQ   r   rq   r)   r*   r˜   r™   r   Ú	get_value)r   r,   r-   r   r   r    Útest_getitem_categorical_str£  s    ,rÿ   c                  C   s"   t dg d¢d�} | d d d…  d S )Nr   )r   r   r   r   r   r   rC   )r   rð   r   r   r    Ú+test_slice_can_reorder_not_uniquely_indexed°  s    r   Ú
index_valsZaabcdZaadcbc                 C   s,   t tdƒt| ƒd�}|d }|dks(J ‚d S )Nr5   r   r%   )r   rQ   rR   )r  rŸ   r,   r   r   r    Ú0test_duplicated_index_getitem_positional_indexerµ  s    r  c                   @   sL   e Zd Zej ddhddig¡dd„ ƒZej ddhddig¡dd„ ƒZdS )ÚTestGetitemDeprecatedIndexersr3   r   c                 C   sB   t g d¢ƒ}t t¡� ||  W d   ƒ n1 s40    Y  d S )Nry   ©r   r)   r˜   r™   ©r   r3   r   r   r   r    Ú$test_getitem_dict_and_set_deprecated¾  s    zBTestGetitemDeprecatedIndexers.test_getitem_dict_and_set_deprecatedc                 C   sB   t g d¢ƒ}t t¡� d||< W d   ƒ n1 s40    Y  d S )Nry   r   r  r  r   r   r    Ú$test_setitem_dict_and_set_deprecatedÅ  s    zBTestGetitemDeprecatedIndexers.test_setitem_dict_and_set_deprecatedN)r†   r‡   rˆ   r9   r‰   rŠ   r  r  r   r   r   r    r  ½  s   
r  )7Ú__doc__r   r   r   Únumpyr1   r9   Zpandas._libs.tslibsr   r   Zpandas.core.dtypes.commonr   Zpandasru   r   r	   r
   r   r   r   r   r   r   Zpandas._testingZ_testingr)   Zpandas.core.indexingr   Zpandas.tseries.offsetsr   r   r‹   r¬   rÄ   rÜ   rç   r‰   rŠ   ré   rë   rì   rî   rñ   rò   ró   rô   rö   r÷   rú   rü   rý   rÿ   r   r  r  r   r   r   r    Ú<module>   sV   , ( =t	
ýþ

		
