a
    é´«j8‡  ã                &   @   sè  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 d dl	Z
d dl	mZmZmZ d dlmZ d dlmZ ejdd„ ƒZejd	d
„ ƒZej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gddgg¡d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&ej d.dd/g¡d0d1„ ƒZ'd2d3„ Z(ejjd4d5d6„ d7d6„ gd8d9gd:�d;d<„ ƒZ)d=d>„ Z*d?d@„ Z+dAdB„ Z,ejdCdD„ ƒZ-ejdEdF„ ƒZ.ejdGdH„ ƒZ/ejdIdJ„ ƒZ0ejdKdL„ ƒZ1ejdMdN„ ƒZ2ejdOdP„ ƒZ3ejdQdR„ ƒZ4ejdSdT„ ƒZ5ejdUdV„ ƒZ6ejdWdX„ ƒZ7ejdYdZ„ ƒZ8ejd[d\„ ƒZ9ejd]d^„ ƒZ:ejg d_¢d`�dadb„ ƒZ;dcdd„ Z<ej ded4ej=ej>dfœidej=fdgej>fdfœedej=ƒedgej>ƒdfœg¡dhdi„ ƒZ?djdk„ Z@ej ded4dldmgidldmdnœg¡dodp„ ƒZAej deddldmdnœidldmdnœdldmdqœdfœg¡drds„ ƒZBdtdu„ ZCej ded4ejDdvd6„ dfœidejDfdgdwd6„ fdfœedejDƒedgdxd6„ ƒdfœg¡dydz„ ƒZEej ded4ejDej=d{œid|ejDfd}ej=fdfœed|ejDƒed}ej=ƒdfœg¡d~d„ ƒZFej d€ddmd�gdld�gdfœgddggdmd�gdld�gdfœgg¡d‚dƒ„ ƒZGej deddmd�gidmd�gdld�gdfœg¡d„d…„ ƒZHd†d‡„ ZIej d4dˆgdld‰gddmidŠd‹dfœg¡dŒd�„ ƒZJdŽd�„ ZKd�d‘„ ZLd’d“„ ZMd”d•„ ZNej d–g d—¢¡d˜d™„ ƒZOdšd›„ ZPej dœd�dždŸg d ¢d¡d¢dg d£¢d¤d¥f
d¦d§d¨d©gdª dŸd¢d«g d¬¢d­d®f
d�dždŸg d ¢d¡d¢d¯g d°¢d±d²f
d�dždŸg d ¢d¡d³dg d´¢dµd¥f
g¡d¶d·„ ƒZQej d¸dmd¹dºd»gifdmd¼d½gd»gd¾œfdmejRd½gd»gd¾œfdŠd¹dºd¿gifdÀdŠejRdÁfdˆd¹dºd²gifdˆd¼dÂgd²gd¾œfdˆejRdÂgd²gd¾œfd‰d¹dºdÃgifd‰d¼dÄgdÃgd¾œfd‰ejRdÄgdÃgd¾œfdÅd¹dºd²gifdÅd¼dÂgd²gd¾œfdÅejRdÂgd²gd¾œfdÆd¹dºdÃgifdÆd¼dÄgdÃgd¾œfdÆejRdÄgdÃgd¾œfdld¹dºdÇgifdÈdlejRdÉfd‹d¹dºdÇgifdÊd‹ejRdËfd�d¹dºdÌgifdÍd�ejRdÎfdÏd¹dºdÐgifdÑdÏejRdÎfdÒd¹dºdÓgifdÔdÒejRdÎfg!¡dÕdÖ„ ƒZSej d¸d×dmd¼d½gfdmejRd½gfdØdÙdŠejRdÚfdÛdˆd¼dÂgfdˆejRdÂgfdÜd‰d¼dÄgfd‰ejRdÄgfdÝdÅd¼dÂgfdÅejRdÂgfdÞdÆd¼dÄgfdÆejRdÄgfg¡dßdà„ ƒZTej dág dâ¢¡dãdä„ ƒZUdådæ„ ZVdçdè„ ZWdédê„ ZXdS )ëé    )ÚdatetimeN)Úlib)ÚUnsupportedFunctionCall)Ú	DataFrameÚNamedAggÚSeries)Ú
date_rangec                   C   s   t tdddƒtdddƒdd�S )NéÕ  é   é
   ZMin)ÚstartÚendÚfreq)r   r   © r   r   úf/var/www/html/laksyashrimp/venv/lib/python3.9/site-packages/pandas/tests/resample/test_resample_api.pyÚdti   s    r   c                 C   s   t tj d¡ t| ƒ¡| ƒS )Né   )r   ÚnpÚrandomÚdefault_rngÚlen)r   r   r   r   Ú_test_series   s    r   c                 C   s   t ||t t| ƒ¡dœƒS )N©ÚAÚBÚC)r   r   Úaranger   )r   r   r   r   r   Ú
test_frame   s    r   c                 C   s<   |   d¡}dt|ƒv sJ ‚| j ddd�}dt|ƒv s8J ‚d S )NÚhziDatetimeIndexResampler [freq=<Hour>, axis=0, closed=left, label=left, convention=start, origin=start_day]ú
2000-01-01)ÚoriginzsDatetimeIndexResampler [freq=<Hour>, axis=0, closed=left, label=left, convention=start, origin=2000-01-01 00:00:00])ÚresampleÚstr)r   Úrr   r   r   Útest_str#   s    
ÿÿÿÿr$   c                 C   sh   |   d¡}| ¡ }t|tƒs J ‚t|ƒdks0J ‚|  ¡   d¡}| ¡ }t|tƒsTJ ‚t|ƒdksdJ ‚d S )Nr   éÙ   )r!   ÚmeanÚ
isinstancer   r   Úto_framer   )r   r#   Úresultr   r   r   Útest_api1   s    
r*   c                  C   sø   t tdddd�g d¢g d¢dœƒ d¡} td	d
d� ¡ tdd
d� ¡  }tjjdgd
 dgd
  |gddgd�}t ddgd dg dgd  d
g i|d�}d}tjt	|d��* |  
d¡ dd„ ¡dg }W d   ƒ n1 sÞ0    Y  t ||¡ d S )Nú
2016-01-01é   ÚW)r   Úperiodsr   )r
   r
   r   r   )é   é   é   é   )ÚdateÚgroupÚvalr3   z
2016-01-03r2   ©r.   z
2016-01-17r
   r   r4   ©Únamesr5   r/   r1   r0   ©Úindexz7DataFrameGroupBy.apply operated on the grouping columns©Úmatchc                 S   s   |   d¡ ¡ S )NÚ1D)r!   Úffill©Úxr   r   r   Ú<lambda>R   ó    z+test_groupby_resample_api.<locals>.<lambda>)r   r   Ú	set_indexÚtolistÚpdÚ
MultiIndexÚfrom_arraysÚtmÚassert_produces_warningÚFutureWarningÚgroupbyÚapplyÚassert_frame_equal)ÚdfÚir:   ÚexpectedÚmsgr)   r   r   r   Útest_groupby_resample_api=   s$    ýÿú
ÿÿ(,8rR   c                  C   sp   t ddgd tddd�tj d¡ d¡dœƒ} |  d	¡ d
¡ d¡ 	¡ }|  d
¡jdd	d� 	¡ }t
 ||¡ d S )Nr   r   r/   r+   r   r6   r   )ÚkeyÚdatesÚvaluesrT   rS   ÚD©Úon)r   r   r   r   r   Ústandard_normalrC   rK   r!   r&   rH   rM   ©rN   rP   r)   r   r   r   Útest_groupby_resample_on_apiV   s    

ýÿr[   c                  C   sÄ   t dddœtddd�d�} |  ¡ }| jdd	d
�}| dd„ ¡}t ||¡ |  d¡}| dd„ ¡}t ||¡ tj 	t 
ddg¡ d¡ d¡|jg¡|_| jddd
�}| dd„ ¡}t ||¡ d S )Nr
   r   ©r   r   Ú2000r   r6   r9   Z5DF©Z
group_keysc                 S   s   | S ©Nr   r?   r   r   r   rA   m   rB   z*test_resample_group_keys.<locals>.<lambda>c                 S   s   | S r_   r   r?   r   r   r   rA   r   rB   r   z
2000-01-06Únsr/   Tc                 S   s   | S r_   r   r?   r   r   r   rA   }   rB   )r   r   Úcopyr!   rL   rH   rM   rE   rF   rG   Úto_datetimeZas_unitÚrepeatr:   )rN   rP   Úgr)   r   r   r   Útest_resample_group_keysg   s     
þÿre   c                 C   sl   |  d¡}| ¡ | ¡  }| dd„ ¡}t ||¡ |   d¡}| ¡ | ¡  }| dd„ ¡}t ||¡ d S )Nr   c                 S   s   |   ¡ |  ¡  S r_   ©Úmaxr&   r?   r   r   r   rA   ‡   rB   ztest_pipe.<locals>.<lambda>c                 S   s   |   ¡ |  ¡  S r_   rf   r?   r   r   r   rA   �   rB   )r!   rg   r&   ÚpiperH   Úassert_series_equalrM   )r   r   r#   rP   r)   r   r   r   Ú	test_pipe�   s    

rj   c                 C   s”   |   d¡}t |jj| j¡ |   d¡d }|jj| jd ks@J ‚|   d¡d }t |jj| jddg ¡ |   d¡d }t |jj| jddg ¡ d S )Nr   r   r
   r\   r   )r!   rH   Zassert_index_equalZ_selected_objÚcolumnsÚname©r   r#   r   r   r   Útest_getitem‘   s    
rn   rS   rV   r   c                 C   sH   |  d¡}d}tjt|d�� ||   W d   ƒ n1 s:0    Y  d S )Nr   z^\"Columns not found: 'D'\"$r;   )r!   ÚpytestÚraisesÚKeyError)rS   r   rd   rQ   r   r   r   Útest_select_bad_cols    s    
rr   c                 C   s(   |   d¡}t |j ¡ |d  ¡ ¡ d S )Nr   r   )r!   rH   ri   r   Úsumrm   r   r   r   Útest_attribute_accessª   s    
rt   Úattr)ÚgroupsZngroupsÚindicesc                 C   sN   t dddd�}tt t|ƒ¡|d�}| d¡}t|| ƒ | ¡  t|| ƒ d S )Nú1/1/2012éd   Ús©r.   r   r9   Z30s)r   r   r   r   r   r!   Úgetattrr&   )ru   ÚrngÚtsÚrsr   r   r   Útest_api_compat_before_use¯   s    

r€   c                 C   sÄ   | }d|d< |  d¡}|ddg  ¡ }tj|j ¡ |j ¡ gdd�}t ||¡ |g d¢  ¡ }t 	d	¡}|rrd
}t
jt|d�� | ¡  W d   ƒ n1 sž0    Y  |jdd�}t ||¡ d S )NÚfoorV   r   r   r   r
   ©Zaxisr   z&agg function failed [how->mean,dtype->z-dtype 'str' does not support operation 'mean'r;   T©Únumeric_only)r!   r&   rE   Úconcatr   r   rH   rM   ÚreÚescapero   rp   Ú	TypeError)r   Úusing_infer_stringrN   r#   r)   rP   rQ   r   r   r   Útests_raises_on_nuisance¿   s    

&rŠ   c                  C   s`   t dddd�} ttjt| ƒdd�| d�}| d¡ ¡ }tg d	¢t d
ddd�d�}t ||¡ d S )Nrx   ry   rz   r{   Úint64©Údtyper9   Z20s)r   é   é(   é<   éP   ú2012-01-01 00:00:00r/   ©r   r.   )	r   r   r   r   r   r!   ÚasfreqrH   ri   )r}   r~   r)   rP   r   r   r   Ú'test_downsample_but_actually_upsamplingÑ   s    þr•   c                  C   st   t dddd�} tt t| ƒ¡| d�}|jg d¢ }| d¡ ¡  ¡ }tg d¢t	j
g d	¢d
dd�d�}t ||¡ d S )Nrx   ry   rz   r{   r9   )r   r
   r   é   r/   r1   é   é   é   é   é   Ú2s)g      à?g      @g      @ç      @r�   ç      &@rž   g      .@ç      0@rŸ   rŸ   rŸ   ç      9@r    r    g      >@)r’   z2012-01-01 00:00:02z2012-01-01 00:00:04z2012-01-01 00:00:06z2012-01-01 00:00:08z2012-01-01 00:00:10z2012-01-01 00:00:12z2012-01-01 00:00:14z2012-01-01 00:00:16z2012-01-01 00:00:18z2012-01-01 00:00:20z2012-01-01 00:00:22z2012-01-01 00:00:24z2012-01-01 00:00:26z2012-01-01 00:00:28z2012-01-01 00:00:30zdatetime64[ns])r�   r   )r   r   r   r   r   Zilocr!   r&   r>   rE   ZDatetimeIndexrH   ri   )r}   r~   Zts2r)   rP   r   r   r   Ú*test_combined_up_downsampling_of_irregularÝ   s    ìí*r¡   c                 C   s<   |   d¡}|  tjdd�¡ d¡}| d¡}t ||¡ d S )NÚ20min©r   r&   )r!   rK   rE   ÚGrouperÚ	transformrH   ri   )r   r#   rP   r)   r   r   r   Útest_transform_series  s    

r¦   rX   r3   c                 C   s    t tdddƒtdddƒdd�}d|_ttj d¡ d¡td	ƒ|d
�}| t	j
dd�¡ d¡}| dkrx|jdd�}| ¡ }|jd| d�}| d¡}t ||¡ d S )Nr	   r
   r   rV   r£   r3   r   ©r   r   ÚAB©rk   r:   r¢   r&   T)ZdroprW   )r   r   rl   r   r   r   r   ÚlistrK   rE   r¤   r¥   Úreset_indexr!   rH   rM   )rX   r:   rN   rP   r#   r)   r   r   r   Útest_transform_frame  s    ÿ
r¬   c               	   C   sD  t dddd�} ttjt| ƒdd�| d�}| d¡}| ¡ }d	}tjt	|d
�� |j
dd�}W d   ƒ n1 sn0    Y  t ||¡ | ¡ }tjt	|d
�� |j
dd�}W d   ƒ n1 s¼0    Y  t ||¡ d}tjt|d
��J tjt	|d
�� | 
d¡ W d   ƒ n1 �s0    Y  W d   ƒ n1 �s60    Y  d S )Nrx   r   rœ   r{   r‹   rŒ   r9   rz   z+DatetimeIndexResampler.fillna is deprecatedr;   r>   )ÚmethodÚbfillzTInvalid fill method\. Expecting pad \(ffill\), backfill \(bfill\) or nearest\. Got 0r   )r   r   r   r   r   r!   r>   rH   rI   rJ   Zfillnari   r®   ro   rp   Ú
ValueError)r}   r~   r#   rP   rQ   r)   Zmsg2r   r   r   Útest_fillna.  s"    
**ÿr°   Úfuncc                 C   s   | j ddd�S )Nr¢   Fr^   ©r!   r?   r   r   r   rA   K  rB   rA   c                 C   s   | j tjdd�dd�S )Nr¢   r£   Fr^   ©rK   rE   r¤   r?   r   r   r   rA   L  rB   r!   rK   )Úidsc                 C   s&   | |ƒ}|  dd„ ¡}t ||¡ d S )Nc                 S   s   | S r_   r   r?   r   r   r   rA   S  rB   z0test_apply_without_aggregation.<locals>.<lambda>)rL   rH   ri   )r±   r   Útr)   r   r   r   Útest_apply_without_aggregationH  s    
r¶   c                 C   s>   | j dd�jddd�}|d  dd„ ¡}t ||  d¡¡ d S )Nr�   )rl   r¢   Fr^   c                 S   s   | S r_   r   r?   r   r   r   rA   Y  rB   z1test_apply_without_aggregation2.<locals>.<lambda>)r(   r!   rL   rH   ri   Úrename)r   Úgroupedr)   r   r   r   Útest_apply_without_aggregation2W  s    r¹   c                  C   sz   t tj d¡ d¡tdddd�g d¢d�} |  d	¡}d
}tjt	|d��  | 
dddœ¡ W d   ƒ n1 sl0    Y  d S )Nr   )éè  r–   rx   rz   rº   r“   r   ©r:   rk   Ú3minz'Column\(s\) \['r1', 'r2'\] do not existr;   r&   rs   ©Úr1Úr2©r   r   r   r   rY   r   r!   ro   rp   rq   Úagg©rN   r#   rQ   r   r   r   Útest_agg_consistency]  s    ý
rÃ   c                  C   sz   t tj d¡ d¡tdddd�ddgd	�} |  d
¡}d}tjt	|d��  | 
dddœ¡ W d   ƒ n1 sl0    Y  d S )Nr   )rº   r   rx   rz   rº   r“   r
   Úar»   r¼   z#Column\(s\) \[2, 'b'\] do not existr;   r&   rs   )r   ÚbrÀ   rÂ   r   r   r   Ú'test_agg_consistency_int_str_column_mixm  s    ý
rÆ   c                  C   s(   t tdddƒtdddƒdd�} d| _| S )Nr	   r
   r   rV   r£   r3   )r   r   rl   r9   r   r   r   r:   €  s    r:   c                 C   s$   t tj d¡ d¡tdƒ| d�}|S )Nr   r§   r¨   r©   )r   r   r   r   rª   )r:   Úframer   r   r   rN   ‡  s    ÿrN   c                 C   s   |   ¡ S r_   )r«   ©rN   r   r   r   Údf_col�  s    rÉ   c                 C   s*   |   ¡ }tjjtdƒ|gddgd�|_|S )Nr   r:   r3   r7   )ra   rE   rF   rG   Úranger:   )rÉ   r:   Údf_multr   r   r   rË   ”  s
    ÿrË   c                 C   s   |   d¡d  ¡ S ©NÚ2Dr   ©r!   r&   rÈ   r   r   r   Úa_mean�  s    rÏ   c                 C   s   |   d¡d  ¡ S rÌ   ©r!   ÚstdrÈ   r   r   r   Úa_std¢  s    rÒ   c                 C   s   |   d¡d  ¡ S rÌ   ©r!   rs   rÈ   r   r   r   Úa_sum§  s    rÔ   c                 C   s   |   d¡d  ¡ S ©NrÍ   r   rÎ   rÈ   r   r   r   Úb_mean¬  s    rÖ   c                 C   s   |   d¡d  ¡ S rÕ   rÐ   rÈ   r   r   r   Úb_std±  s    r×   c                 C   s   |   d¡d  ¡ S rÕ   rÓ   rÈ   r   r   r   Úb_sum¶  s    rØ   c                 C   s
   |   d¡S )NrÍ   r²   rÈ   r   r   r   Údf_resample»  s    rÙ   c                 C   s   | j ddd�S )NrÍ   r3   rW   r²   )rÉ   r   r   r   Údf_col_resampleÀ  s    rÚ   c                 C   s   | j ddd�S )NrÍ   r3   ©Úlevelr²   )rË   r   r   r   Údf_mult_resampleÅ  s    rÝ   c                 C   s   |   tjdd�¡S )NrÍ   r£   r³   rÈ   r   r   r   Údf_grouper_resampleÊ  s    rÞ   )rÙ   rÚ   rÝ   rÞ   )Úparamsc                 C   s   |   | j¡S r_   )ZgetfixturevalueÚparam)Úrequestr   r   r   ÚcasesÏ  s    râ   c                 C   sØ   t j||||gdd�}t j ddgddgg¡|_d}d|jjjv rˆ| d	  ¡ }| d	  	¡ }	t j||	|gdd�}t j g d
¢ddgg¡|_t
jt|d��" |  tjtj	g¡}
W d   ƒ n1 s¾0    Y  t
 |
|¡ d S )Nr
   r‚   r   r   r&   rÑ   úusing SeriesGroupBy.[mean|std]rË   r3   )r3   r   r   r;   )rE   r…   rF   Zfrom_productrk   ÚnodeZcallspecÚidr&   rÑ   rH   rI   rJ   Ú	aggregater   rM   )râ   rÏ   rÒ   rÖ   r×   rá   rP   rQ   Z	date_meanZdate_stdr)   r   r   r   Ú!test_agg_mixed_column_aggregationÖ  s    ÿ0rç   rÁ   r\   r   c                 C   sh   d}t j||gdd�}tjt|d��  | jf i |¤Ž}W d   ƒ n1 sJ0    Y  tj||dd� d S )Nrã   r
   r‚   r;   T©Z
check_like)rE   r…   rH   rI   rJ   ræ   rM   )râ   rÏ   r×   rÁ   rQ   rP   r)   r   r   r   Ú#test_agg_both_mean_std_named_resultç  s
    	.ré   c                 C   sF   t j||gdd�}t j ddg¡|_|  dddgi¡}t ||¡ d S )Nr
   r‚   ©r   r&   ©r   rÑ   r   r&   rÑ   ©rE   r…   rF   Úfrom_tuplesrk   ræ   rH   rM   )râ   rÏ   rÒ   rP   r)   r   r   r   Ú#test_agg_both_mean_std_dict_of_list÷  s    rî   r&   rs   )r&   rs   c                 C   s@   t j||gdd�}ddg|_| d jf i |¤Ž}t ||¡ d S )Nr
   r‚   r&   rs   r   )rE   r…   rk   ræ   rH   rM   )râ   rÏ   rÔ   rÁ   rP   r)   r   r   r   Útest_agg_both_mean_sumþ  s    
rï   )Zmean2Zsum2c                 C   sD   d}t jtjj|d�� |  |¡ W d   ƒ n1 s60    Y  d S )Núnested renamer is not supportedr;   )ro   rp   rE   ÚerrorsÚSpecificationErrorræ   ©râ   rÁ   rQ   r   r   r   Ú(test_agg_dict_of_dict_specificationerror  s    rô   c                 C   sT   t j||||gdd�}t j g d¢¡|_|  ddgddgdœ¡}tj||dd� d S )	Nr
   r‚   )rê   rë   ©r   r&   ©r   rÑ   r&   rÑ   r\   Trè   rì   )râ   rÏ   rÒ   rÖ   r×   rP   r)   r   r   r   Útest_agg_dict_of_lists  s    ÿr÷   c                 C   s   t j| dd�S ©Nr
   )Zddof©r   rÑ   r?   r   r   r   rA   $  rB   c                 C   s   t j| dd�S rø   rù   r?   r   r   r   rA   %  rB   c                 C   s   t j| dd�S rø   rù   r?   r   r   r   rA   &  rB   c                 C   s‚   d}| d   dd„ ¡}tj| d  ¡ |gdd�}tjt|d��  | jf i |¤Ž}W d   ƒ n1 sd0    Y  tj||d	d
� d S )Nzusing SeriesGroupBy.sumr   c                 S   s   t j| dd�S rø   rù   r?   r   r   r   rA   ,  rB   z&test_agg_with_lambda.<locals>.<lambda>r   r
   r‚   r;   Trè   )	rL   rE   r…   rs   rH   rI   rJ   rÁ   rM   )râ   rÁ   rQ   ZrcustomrP   r)   r   r   r   Útest_agg_with_lambda!  s    
.rú   )Úresult1Úresult2rû   rü   c                 C   sN   d}t jt|d��( | ddg jf i |¤Ž W d   ƒ n1 s@0    Y  d S )Nz1Column\(s\) \['result1', 'result2'\] do not existr;   r   r   ©ro   rp   rq   rÁ   ró   r   r   r   Útest_agg_no_column3  s    	rþ   z	cols, aggrÑ   c           
      C   s\   t j||||gdd�}t j g d¢¡|_|d ur:| | }n| }| |¡}	tj|	|dd� d S )Nr
   r‚   ))r   rs   rë   rõ   rö   Trè   )rE   r…   rF   rí   rk   rÁ   rH   rM   )
râ   ÚcolsrÁ   rÔ   rÒ   rÖ   r×   rP   Úobjr)   r   r   r   Ú"test_agg_specificationerror_nestedA  s    ÿ

r  c                 C   sH   d}t jtjj|d�� | d  |¡ W d   ƒ n1 s:0    Y  d S )Nrð   r;   r   )ro   rp   rE   rñ   rò   rÁ   ró   r   r   r   Ú"test_agg_specificationerror_series^  s    r  c                 C   sT   d}t jt|d��. | dg  ddgddgdœ¡ W d   ƒ n1 sF0    Y  d S )Nz Column\(s\) \['B'\] do not existr;   r   rs   rÑ   r&   r\   rý   )râ   rQ   r   r   r   Ú)test_agg_specificationerror_invalid_namesi  s    r  Úminrg   ÚprodÚmedianc              	   C   sÂ   t tdddƒtdddƒdd�}d|_ttj d¡ d¡td	ƒ|d
�j}d}t	j
t|d��V |jddd�}tjtdd�� | | ¡ W d   ƒ n1 s–0    Y  W d   ƒ n1 s´0    Y  d S )Nr	   r
   r   rV   r£   r3   r   r§   r¨   r©   ú-DataFrame.resample with axis=1 is deprecated.r;   ÚMEr‚   z"axis other than 0 is not supported)r   r   rl   r   r   r   r   rª   ÚTrH   rI   rJ   r!   ro   rp   ÚNotImplementedErrorrÁ   )r±   r:   rN   Úwarning_msgÚresr   r   r   Útest_multi_agg_axis_1_raisesq  s    ÿÿr  c               	   C   sÎ  t tdddƒtdddƒdd�} d| _ttj d¡ d¡td	ƒ| d
�}| ¡ }| 	¡ }t
jjtdƒ|jgddgd�|_| d¡}||jddd�|jddd�| t
jdd�¡g}d}|D ]X}tjt
jj|d��0 | dddgidddgidœ¡ W d   ƒ q´1 �s0    Y  q´|D ]¶}tjt
jj|d��8 |ddg  dddgidddgidœ¡ W d   ƒ n1 �sh0    Y  tjt
jj|d��0 | dddgidddgidœ¡ W d   ƒ n1 �s¼0    Y  �qd S )Nr	   r
   r   rV   r£   r3   r   r§   r¨   r©   r:   r7   rÍ   rW   rÛ   rð   r;   r   r&   rs   r   r½   ÚrarÑ   Úrbr\   )r   r   rl   r   r   r   r   rª   r«   ra   rE   rF   rG   rÊ   r:   r!   rK   r¤   ro   rp   rñ   rò   ræ   rÁ   )r:   rN   rÉ   rË   r#   râ   rQ   rµ   r   r   r   Útest_agg_nested_dicts…  s6    ÿÿ
üBÿ$r  c                  C   s¢   t ddddƒdddœt ddddƒdddœt ddddƒd	d
dœg} t| ƒ d¡}d}tjt|d��. | d¡ dgdgdgdœ¡ W d   ƒ n1 s”0    Y  d S )Niá  r0   r
   r   g      ð?g       @)Údtr@   Úyr   g      @g      ø?r  z Column\(s\) \['z'\] do not existr;   Ú30minr&   r  rs   )r@   r  Úz)r   r   rC   ro   rp   rq   r!   rÁ   )ÚdatarN   rQ   r   r   r   Ú&test_try_aggregate_non_existing_column§  s    ýr  c                  C   sà   t dg d¢itdddd�d�} dd
d„}ddd„}d}tjt|d��, |  d¡j||gdddd� W d   ƒ n1 sv0    Y  |  d¡j||gddd�}t ddgddgddggtdddd�tj 	ddg¡d�}t
 ||¡ d S )Nr@   )r
   r   r–   ú
2020-01-01r–   rV   r{   r9   r
   r   c                 S   s   | | | S r_   r   )r@   rÄ   Úcr   r   r   Úfoo1¼  s    z/test_agg_list_like_func_with_args.<locals>.foo1r   c                 S   s   | | | S r_   r   )r@   rÅ   r  r   r   r   Úfoo2¿  s    z/test_agg_list_like_func_with_args.<locals>.foo2z/foo1\(\) got an unexpected keyword argument 'b'r;   r,   )rÅ   r  )r  r2   é	   r   )r@   r  )r@   r  r»   )r
   r   )r   r   )r   r   ro   rp   rˆ   r!   rÁ   rE   rF   rí   rH   rM   )rN   r  r  rQ   r)   rP   r   r   r   Ú!test_agg_list_like_func_with_args¶  s    ÿ

:ýr  c                  C   s¢  t tdddƒtdddƒdd�} tjt| ƒtjd�}t| |dœtjj	|| gdd	gd
�d�}td|i| d�}d}t
jt|d�� |jddd� W d   ƒ n1 sž0    Y  d}t
jt|d��  |jddd	d� W d   ƒ n1 sà0    Y  d}t
jt|d��" |jdddgd� W d   ƒ n1 �s&0    Y  d}t
jt|d��" |jdddgd� W d   ƒ n1 �sl0    Y  d}t
jt|d��" |jdd	d� ¡  W d   ƒ n1 �s²0    Y  t
jt|d��" |jddd� ¡  W d   ƒ n1 �sô0    Y  | d¡ ¡ }d|j_|jddd� ¡ }t ||¡ d	|j_t
jtdd��" |jdd	d� ¡  W d   ƒ n1 �sr0    Y  |jdd	d�jdd�}t ||¡ d S )Nr	   r
   r   rV   r£   rŒ   )r3   rÄ   ÚvÚdr7   r9   rÄ   z\Only valid with DatetimeIndex, TimedeltaIndex or PeriodIndex, but got an instance of 'Index'r;   rÍ   rÛ   z2The Grouper cannot specify both a key and a level!r3   )rX   rÜ   zunhashable type: 'list'rW   z#\"Level \['a', 'date'\] not found\"z|Upsampling from level= or on= selection is not supported, use \.set_index\(\.\.\.\) to explicitly set index to datetime-likez$datetime64 type does not support sumTrƒ   )r   r   r   r   r   r‹   r   rE   rF   rG   ro   rp   rˆ   r!   r¯   rq   r”   rs   r:   rl   rH   rM   )r:   r}   rN   Zdf_exprQ   Úexpr)   r   r   r   Útest_selection_api_validationÏ  sF    þÿ,.22ÿ222r   Úcol_name)Út2Zt2xZt2qZT_2MZt2pZt2mZt2m1ZT2Mc                 C   s~   t ttdƒƒtddddd�| gd�}| d¡ dg¡}t g d	¢tdd
ddd�tj| gdggdgdggd�d�}t 	||¡ d S )NéÈ   z
2017-01-01Z15minzEurope/Berlin)r   r   r.   Útzr»   Z1dr&   )g     ÀG@g     ða@g     ph@rV   r–   r   )ZlevelsÚcodes)
r   rª   rÊ   r   r!   ræ   rE   rF   rH   rM   )r!  rN   r)   rP   r   r   r   Ú*test_agg_with_datetime_index_list_agg_func  s    	
ÿûýr&  c                  C   s¼   t dddd�} t | ¡}|jdd� t|| d�}| d¡}tt d	¡t d	¡g| d d d
… d�}| d¡}t	 
||¡ | d¡}t	 
||¡ | d¡}t	 
||¡ | d¡}t	 
||¡ d S )Nr  z
2020-01-02Z1hr£   F)Úwriter9   r=   r   é   ÚlastÚfirstrg   r  )r   r   Z
zeros_likeZsetflagsr   r!   rE   Ú	TimestamprÁ   rH   ri   )r:   ZarrZserr   rP   r)   r   r   r   Útest_resample_agg_readonly  s    

&



r,  zLstart,end,freq,data,resample_freq,origin,closed,exp_data,exp_end,exp_periodsz2000-10-01 23:30:00z2000-10-02 00:26:00Z7min)	r   r–   r0   r  é   r˜   é   é   r(  Z17minr   )r   r.  é   é?   z20001002 00:26:00r,   z20200101 8:26:35z20200101 9:31:58Z77sr
   é3   Úright)
r
   r0   r/   r0   r/   r0   r/   r0   r/   r0   z2020-01-01 09:30:45r   Úleft)r   r.  r0  é'   r(  z20001002 00:43:00r/   Zend_day)r–   r˜   é-   r6  z2000-10-02 00:29:00c
                 C   sT   t | ||d�}
t||
d�}|j|||d� ¡ }t|t |||	d�d�}t ||¡ d S )Nr£   r9   )r    Úclosed)r   r   r.   )r   r   r!   rs   rH   ri   )r   r   r   r  Zresample_freqr    r7  Zexp_dataZexp_endZexp_periodsr}   r~   r  rP   r   r   r   Útest_end_and_end_day_origin5  s    Aþr8  z#method, numeric_only, expected_dataTÚnumrš   FZ
cat_1cat_2©Úcatr9  ry   )r  Fúcan't multiply sequencer<  Úcat_1rŽ   Úcat_2r*  r)  g      )@)r&   FúCould not convertr?  )r  Fú-Cannot convert \['cat_1' 'cat_2'\] to numericr@  gH€”6%@)rÑ   Fú!could not convert string to floatrA  Úvarg      \@)rB  FrA  Úsemg      @)rC  FrA  c                 C   s,  t dddd�}t dddd�}tdd	gd
dgdœ|d�}| d¡}|tju rPi }nd|i}t|| ƒ}	t|tƒ�r| dv ržt}
t	 
d| › d�¡}|rÄd| › d�}n&| dv r¼|r¼t}
d| › d�}nt}
|}tj|
|d�� |	f i |¤Ž}W d   ƒ n1 sö0    Y  n&|	f i |¤Ž}t||d�}t ||¡ d S )Nú
2018-01-01r   rV   r{   ú
2018-12-31r
   ÚYEr=  r>  r/   rŽ   r:  r9   r„   )rB  r&   r  r  zagg function failed [how->z,dtype->z(dtype 'str' does not support operation 'ú')rs   rÑ   rC  r;   )r   r   r!   r   Ú
no_defaultr|   r'   r"   rˆ   r†   r‡   r¯   ro   rp   rH   rM   )r­   r„   Úexpected_datar‰   r:   Úexpected_indexrN   Ú	resampledÚkwargsr±   ÚklassrQ   Ú_r)   rP   r   r   r   Útest_frame_downsample_method‚  s0    ,


.rO  )rs   Tr   )r  Tr   )r  Fr   r   )r  Tr   )rg   Tr   )r*  Tr   )r)  Tr   c                 C   s0  t dddd�}t dddd�}tdd	g|d
�}| d¡}|tju rDi nd|i}t|| ƒ}	|r¬|tjur¬d| › �}
tjt|
d�� |	f i |¤Ž W d   ƒ n1 s 0    Y  n€| dk�rt	 
d¡}
|rÈd}
tjt|
d�� |	f i |¤Ž W d   ƒ n1 sú0    Y  n&|	f i |¤Ž}t||d
�}t ||¡ d S )NrD  r   rV   r{   rE  r
   rF  r=  r>  r9   r„   z1Cannot use numeric_only=True with SeriesGroupBy\.r;   r  z&agg function failed [how->prod,dtype->z-dtype 'str' does not support operation 'prod')r   r   r!   r   rH  r|   ro   rp   rˆ   r†   r‡   rH   ri   )r­   r„   rI  r‰   r:   rJ  rN   rK  rL  r±   rQ   r)   rP   r   r   r   Útest_series_downsample_methodÌ  s&    


.

.rP  zmethod, raises))rs   T)r  T)r  T)rg   T)r*  F)r)  F)r  F)r&   T)rÑ   T)rB  T)rC  F)ZohlcF)ZnuniqueFc           
   	   C   sJ  t dddd�}tg d¢|d�}| d¡}d}t|| ƒ}d	}d
}d| › �}	|rÈtjt|	d��\ tjt	|d��. |g |¢d‘d‘d‘d‘R Ž  W d   ƒ n1 sž0    Y  W d   ƒ n1 s¼0    Y  n~tjt|	d��^ tjt
|d��. |g |¢d‘d‘d‘d‘R Ž  W d   ƒ n1 �s0    Y  W d   ƒ n1 �s<0    Y  d S )NZ20180101r–   r   r{   )r   r,   r0   r9   r  r   z-numpy operations are not valid with resample.ztoo many arguments passed inz2Passing additional args to DatetimeIndexResampler.r;   r
   r   r,   )r   r   r!   r|   rH   rI   rJ   ro   rp   r   rˆ   )
r­   rp   r:   rN   rK  Úargsr±   Ú	error_msgZerror_msg_typeZwarn_msgr   r   r   Útest_args_kwargs_depr   s    


\rS  c                  C   sÐ   t tdddƒtdddƒdd�} d| _ttj d¡ d¡td	ƒ| d
�j}d}t	j
t|d�� |jddd� W d   ƒ n1 s|0    Y  |j}d}t	j
t|d�� |jddd� W d   ƒ n1 sÂ0    Y  d S )Nr	   r
   r   rV   r£   r3   r   r§   r¨   r©   r  r;   r  r‚   z_The 'axis' keyword in DataFrame.resample is deprecated and will be removed in a future version.r   )r   r   rl   r   r   r   r   rª   r	  rH   rI   rJ   r!   )r:   rN   r  r   r   r   Útest_df_axis_param_depr(  s    ÿ,ÿrT  c                 C   sD   d}t jt|d�� | jddd� W d   ƒ n1 s60    Y  d S )Nz\The 'axis' keyword in Series.resample is deprecated and will be removed in a future version.r;   r   r   r‚   )rH   rI   rJ   r!   )r   r  r   r   r   Útest_series_axis_param_depr>  s    ÿrU  c                  C   sF   t t g d¢¡d�} t t g d¢¡d�}|  d¡ ¡ }t ||¡ d S )N)ú2018-01-01 00:00:00z2018-01-01 12:00:00ú2018-01-02 00:00:00r9   )rV  z2018-01-01 08:00:00z2018-01-01 16:00:00rW  Z8h)r   rE   rb   r!   r&   rH   rM   rZ   r   r   r   Útest_resample_emptyG  s    ÿÿÿÿ
rX  )Yr   r†   Únumpyr   ro   Zpandas._libsr   Zpandas.errorsr   ZpandasrE   r   r   r   Zpandas._testingZ_testingrH   Zpandas.core.indexes.datetimesr   Zfixturer   r   r   r$   r*   rR   r[   re   rj   rn   ÚmarkZparametrizerr   rt   r€   rŠ   r•   r¡   r¦   r¬   r°   r¶   r¹   rÃ   rÆ   r:   rN   rÉ   rË   rÏ   rÒ   rÔ   rÖ   r×   rØ   rÙ   rÚ   rÝ   rÞ   râ   rç   r&   rÑ   ré   rî   rï   rô   r÷   rs   rú   rþ   r  r  r  r  r  r  r  r   r&  r,  r8  rH  rO  rP  rS  rT  rU  rX  r   r   r   r   Ú<module>   s  



	
7
þú














ÿ
ýþ
ÿ
þþþ

	ýþ

ýþ
þûþþ
ÿ
ÿ
"5ÿ
ööööÛþ5






ßý'
#





îþ
þ
	