a
    é´«j=(  ã                   @   s‚   d dl Z d dlZd dlZd dlZd dlZd dlmZmZm	Z	m
Z
mZmZ d dlmZ G dd„ dƒZej deeeg¡dd„ ƒZdS )é    N)Ú	DataFrameÚIndexÚSeriesÚ
date_rangeÚperiod_rangeÚtimedelta_rangec                   @   s&  e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ Zej	 
deedƒd dd�edd„ edƒD ƒƒeg d¢d ƒeddd�edddd�eddd�ee d¡ejd�ee d¡ejd�ee d¡ejd�eddgƒedd„ edƒD ƒƒej eddƒ¡ej eg d ¢dƒ¡g¡d!d"„ ƒZej	 
d#eed�ed$gƒg¡d%d&„ ƒZd'd(„ Zd)d*„ Zd+d,„ Z d-d.„ Z!d/d0„ Z"d1d2„ Z#d3d4„ Z$ej	 
d5d6eg¡d7d8„ ƒZ%ej	 
d5d9d:g¡d;d<„ ƒZ&d=d>„ Z'd?d@„ Z(dAdB„ Z)ej	 
dCg dD¢¡dEdF„ ƒZ*dGdH„ Z+dIdJ„ Z,ej	 -dK¡ej	 
dLg dM¢¡ej	 
d5e.e/e0eg¡dNdO„ ƒƒƒZ1d9S )PÚTestSeriesMiscc                 C   s@   t tdƒƒ}dt|ƒv sJ ‚dt|ƒvs,J ‚dt|ƒvs<J ‚d S )NÚabcdÚstrÚdtÚcat©r   ÚlistÚdir©ÚselfÚs© r   ú[/var/www/html/laksyashrimp/venv/lib/python3.9/site-packages/pandas/tests/series/test_api.pyÚtest_tab_completion   s    z"TestSeriesMisc.test_tab_completionc                 C   sD   t tddd�ƒ}dt|ƒv s J ‚dt|ƒvs0J ‚dt|ƒvs@J ‚d S )Nú1/1/2015é   ©Úperiodsr   r
   r   )r   r   r   r   r   r   r   Útest_tab_completion_dt   s    z%TestSeriesMisc.test_tab_completion_dtc                 C   sD   t tdƒdd�}dt|ƒv s J ‚dt|ƒv s0J ‚dt|ƒvs@J ‚d S )NZabbcdÚcategory©Údtyper   r
   r   r   r   r   r   r   Útest_tab_completion_cat#   s    z&TestSeriesMisc.test_tab_completion_catc                 C   sJ   t tddd�ƒ d¡}dt|ƒv s&J ‚dt|ƒvs6J ‚dt|ƒv sFJ ‚d S )Nr   r   r   r   r   r
   r   )r   r   Úastyper   r   r   r   r   Útest_tab_completion_cat_str+   s    z*TestSeriesMisc.test_tab_completion_cat_strc                 C   sJ   g d¢}t tdƒƒ d¡}tdd„ |j ¡ D ƒƒ}t |tt|ƒƒ¡ d S )N)Ú
categoriesÚcodesZorderedZset_categoriesZadd_categoriesZremove_categoriesZrename_categoriesZreorder_categoriesZremove_unused_categoriesZ
as_orderedZas_unorderedZaabbcder   c                 S   s   h | ]}|  d ¡s|’qS )Ú_)Ú
startswith)Ú.0Úrr   r   r   Ú	<setcomp>C   ó    zFTestSeriesMisc.test_tab_completion_with_categorical.<locals>.<setcomp>)	r   r   r   Úsortedr   Ú__dir__ÚtmÚassert_almost_equalÚset)r   Z
ok_for_catr   Úresultsr   r   r   Ú$test_tab_completion_with_categorical2   s    z3TestSeriesMisc.test_tab_completion_with_categoricalÚindexÚabr   r   r   c                 C   s   g | ]}t |ƒ‘qS r   )r
   ©r%   Úir   r   r   Ú
<listcomp>J   r(   zTestSeriesMisc.<listcomp>é
   )ÚfooÚbarZbazé   z
2020-01-01r   ÚD)r   Úfreqz1 dayTFc                 C   s   g | ]}d |› �‘qS )Úar   r2   r   r   r   r4   S   r(   ée   ÚABCDZEFGH)r   é   r8   é   c                 C   sh   t |td�}t|ƒ}t|jjdd�ƒD ]<\}}|dk rVt|tƒrb| ¡ rb||v sbJ ‚q&||vs&J ‚q&d S )N©r0   r   r   )Úleveléd   )	r   Úobjectr   Ú	enumerater0   ÚuniqueÚ
isinstancer
   Úisidentifier)r   r0   r   Zdir_sr3   Úxr   r   r   Útest_index_tab_completionF   s     z(TestSeriesMisc.test_index_tab_completionÚserr>   c                 C   s>   d}t jt|d�� t|ƒ W d   ƒ n1 s00    Y  d S )Nzunhashable type: 'Series'©Úmatch)ÚpytestÚraisesÚ	TypeErrorÚhash©r   rJ   Úmsgr   r   r   Útest_not_hashableb   s    z TestSeriesMisc.test_not_hashablec                 C   s   t  |j|¡ d S ©N)r+   Zassert_contains_allr0   )r   Údatetime_seriesr   r   r   Útest_containsh   s    zTestSeriesMisc.test_containsc                 C   sj   t ddtjgƒ}t |jdd�|jdd�¡ | ¡  d¡dksBJ ‚| d¡dksTJ ‚| d¡dksfJ ‚d S )Nr>   r8   Úrows)Zaxisr0   r?   r   )	r   ÚnpÚnanr+   Úassert_series_equalZdropnaÚsumZ_get_axis_numberZ_get_axis_namer   r   r   r   Útest_axis_aliask   s
    zTestSeriesMisc.test_axis_aliasc                 C   s   t  tj¡sJ ‚d S rT   )ÚpydocÚgetdocr   r0   )r   r   r   r   Útest_class_axisr   s    zTestSeriesMisc.test_class_axisc                 C   sR   t tj d¡ d¡g d¢tddd�d�}dd	„ }| |¡}| ¡ }t 	||¡ d S )
Nr8   )éè  r?   )ÚAÚBÚCz1/1/2000r`   r   )Úcolumnsr0   c                 S   s   | |   ¡  S rT   )Úidxmax)rH   r   r   r   Úf   s    z-TestSeriesMisc.test_ndarray_compat.<locals>.f)
r   rX   ÚrandomÚdefault_rngÚstandard_normalr   ÚapplyÚmaxr+   rZ   )r   Ztsdfrf   ÚresultÚexpectedr   r   r   Útest_ndarray_compatw   s    
ý
z"TestSeriesMisc.test_ndarray_compatc                 C   sF   t tj d¡ d¡ƒ}t t |¡ƒ}t dtdƒdd�}t ||¡ d S )Nr8   r5   r>   Úfloat64r@   )	r   rX   rg   rh   ri   Z	ones_likeÚranger+   rZ   )r   r   rl   rm   r   r   r   Útest_ndarray_compat_like_func†   s    z,TestSeriesMisc.test_ndarray_compat_like_funcc                 C   sj   t tj d¡ d¡ƒ}tjtdd�� |jdd�}W d   ƒ n1 sF0    Y  t 	||j
jdd�¡ d S )Nr8   r5   zravel is deprecatedrK   ÚF)Úorder)r   rX   rg   rh   ri   r+   Úassert_produces_warningÚFutureWarningZravelr,   Úvalues©r   r   rl   r   r   r   Útest_ndarray_compat_ravel�   s    *z(TestSeriesMisc.test_ndarray_compat_ravelc                 C   s   t td�}|jsJ ‚d S )Nr   )r   rC   Úempty)r   Zs_emptyr   r   r   Útest_empty_method”   s    
z TestSeriesMisc.test_empty_methodr   Úint64c                 C   s   t dg|d�}|jrJ ‚d S )Nr>   r@   )r   ry   )r   r   Zfull_seriesr   r   r   Útest_empty_method_full_series˜   s    z,TestSeriesMisc.test_empty_method_full_seriesNZInt64c                 C   s"   t tdƒ|d�}|jdksJ ‚d S )Né	   r   )r   rp   Úsize)r   r   r   r   r   r   Útest_integer_series_size�   s    z'TestSeriesMisc.test_integer_series_sizec                 C   sF   t ddgdd�}|ji ksJ ‚d|jd< |d }|jddiksBJ ‚d S )Nr   r>   Úabc)ÚnameÚversion)r   Úattrsrw   r   r   r   Ú
test_attrs£   s
    
zTestSeriesMisc.test_attrsc                 C   sL   t td�}d}tjt|dd�� t |¡ W d   ƒ n1 s>0    Y  d S )Nr   zSeries._data is deprecatedF)rL   Zcheck_stacklevel)r   rC   r+   rt   ÚDeprecationWarningÚinspectÚ
getmembersrQ   r   r   r   Útest_inspect_getmembersª   s    
ÿz&TestSeriesMisc.test_inspect_getmembersc                 C   st   t dddd�}ttj d¡jdd�|d�}d|jvs8J ‚d	}tjt	|d
�� |j
 W d   ƒ n1 sf0    Y  d S )Nr   r5   Z1s)Ústartr   r:   r8   )r~   )r0   r6   z&'Series' object has no attribute 'foo'rK   )r   r   rX   rg   rh   ÚnormalÚ__dict__rM   rN   ÚAttributeErrorr6   )r   ZtdirJ   rR   r   r   r   Útest_unknown_attribute³   s    z%TestSeriesMisc.test_unknown_attributeÚop)ÚyearÚdayÚsecondÚweekdayc                 C   sH   d|› d�}t jt|d�� t||ƒ W d   ƒ n1 s:0    Y  d S )Nz"'Series' object has no attribute 'ú'rK   )rM   rN   rŒ   Úgetattr)r   rŽ   rU   rR   r   r   r   Ú&test_datetime_series_no_datelike_attrs¼   s    z5TestSeriesMisc.test_datetime_series_no_datelike_attrsc                 C   s>   t ddddœƒ}|jdksJ ‚|jdks,J ‚|jdks:J ‚d S )NéÐ  r>   r5   ©r�   Úmonthr�   )r   r�   r˜   r�   )r   rJ   r   r   r   Ú)test_series_datetimelike_attribute_accessÃ   s    z8TestSeriesMisc.test_series_datetimelike_attribute_accessc                 C   sL   t ddddœƒ}d}tjt|d�� |j W d   ƒ n1 s>0    Y  d S )Nr–   r>   r5   r—   z*'Series' object has no attribute 'weekday'rK   )r   rM   rN   rŒ   r’   rQ   r   r   r   Ú1test_series_datetimelike_attribute_access_invalidÊ   s    z@TestSeriesMisc.test_series_datetimelike_attribute_access_invalidz4ignore:Downcasting object dtype arrays:FutureWarningzkernel, has_numeric_only)$)ZskewT)ÚvarT)ÚallF)ÚprodT)ÚanyF)ZidxminF)ÚquantileF)re   F)ÚminT)ZsemT)ÚmeanT)ZnuniqueF)rk   T)r[   T)ÚcountF)ZmedianT)ZstdT)ZbackfillF)ZrankT)Z
pct_changeF)ZcummaxF)ÚshiftF)ÚdiffF)ZcumsumF)ZcumminF)ZcumprodF)ÚfillnaF)ÚffillF)ÚpadF)ZbfillF)ÚsampleF)ÚtailF)ÚtakeF)ÚheadF)ÚcovF)ÚcorrFc           
      C   s|  t g d¢|d�}|dkr |f}nn|dkr0|f}n^|dkr@|f}nN|dkrNd}n@|dkr\d	}n2|dkrjd
}n$|dkr|dgf}n|dkrŠd}nd}t||ƒ}|sÞd}tjt|d�� ||ddiŽ W d   ƒ n1 sÒ0    Y  nš|tu �r4d|› d�}tjt|d�� ||ddiŽ W d   ƒ n1 �s(0    Y  nD||ddiŽ}||ddiŽ}	t|	t ƒ�rjt ||	¡ n||	k�sxJ ‚d S )N)r   r>   r>   r   Zcorrwithr­   r¬   Znth)r   r¥   )T)r¦   rª   r   rŸ   )g      à?r   zP(got an unexpected keyword argument 'numeric_only'|too many arguments passed in)rK   Znumeric_onlyTzSeries.z2 does not allow numeric_only=True with non-numericF)	r   r”   rM   rN   rO   rC   rF   r+   rZ   )
r   ZkernelZhas_numeric_onlyr   rJ   ÚargsÚmethodrR   rl   rm   r   r   r   Útest_numeric_onlyÐ   sB    -

ÿ.
0z TestSeriesMisc.test_numeric_only)2Ú__name__Ú
__module__Ú__qualname__r   r   r   r    r/   rM   ÚmarkÚparametrizer   r   rp   r   r   r   rX   ZarangeZuint64r{   ro   ÚpdZ
MultiIndexÚfrom_tuplesÚziprI   r   rC   rS   rV   r\   r_   rn   rq   rx   rz   r|   r   r„   rˆ   r�   r•   r™   rš   ÚfilterwarningsÚboolÚintÚfloatr°   r   r   r   r   r      sd   


óþ




		

þ)r   Ú	converterc                 C   sH   t  t¡�* | tdgƒƒ| dƒks&J ‚W d   ƒ n1 s:0    Y  d S )Nr>   )r+   rt   ru   r   )r½   r   r   r   Útest_float_int_deprecated'  s    r¾   )r†   r]   ÚnumpyrX   rM   Zpandasr¶   r   r   r   r   r   r   Zpandas._testingZ_testingr+   r   r´   rµ   r»   r¼   Úcomplexr¾   r   r   r   r   Ú<module>   s      