o
    7?eN                     @   sr  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,dCdD Z-dEdF Z.ejd4dGgdHdIgddJidKdLdMgdNdO Z/dPdQ Z0dRdS Z1dTdU Z2dVdW Z3ejdXg dYdZd[ Z4d\d] Z5ejd^d_d`dag dbdcdddg dedfdgf
dhdidjdkgdl dadddmg dndodpf
d_d`dag dbdcdddqg drdsdtf
d_d`dag dbdcdudg dvdwdgf
gdxdy Z6ejdzg dJd{d|d}gifdJd~dgd}gdfdJej7dgd}gdfdKd{d|dgifddKej7dfdGd{d|dtgifdGd~dgdtgdfdGej7dgdtgdfdId{d|dgifdId~dgdgdfdIej7dgdgdfdd{d|dtgifdd~dgdtgdfdej7dgdtgdfdd{d|dgifdd~dgdgdfdej7dgdgdfdHd{d|dgifddHej7dfdLd{d|dgifddLej7dfdd{d|dgifddej7dfdd{d|dgifddej7dfdd{d|dgifddej7dfdd Z8ejdzddJd~dgfdJej7dgfdddKej7dfddGd~dgfdGej7dgfddId~dgfdIej7dgfddd~dgfdej7dgfddd~dgfdej7dgfgdd Z9ejdg ddd Z:dd Z;dd Z<dd Z=d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   h/home/www/facesmatcher.com/pyenv/lib/python3.10/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 sJ 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sJ |   d}| }t|ts*J t|dks2J 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dd dg }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   indexc                 S   s   |  d S )N1D)r!   ffillxr   r   r   <lambda>P       z+test_groupby_resample_api.<locals>.<lambda>)r   r   	set_indextolistpd
MultiIndexfrom_arraysgroupbyapplytmassert_frame_equal)dfir:   expectedr)   r   r   r   test_groupby_resample_api=   s    
(,rM   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valuesrO   rN   Don)r   r   r   r   r   standard_normalrA   rF   r!   r&   rH   rI   rJ   rL   r)   r   r   r   test_groupby_resample_on_apiT   s   

rV   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|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 Nr   r=   r   r   r   r?   k       z*test_resample_group_keys.<locals>.<lambda>c                 S   rZ   r[   r   r=   r   r   r   r?   p   r\   r   z
2000-01-06r/   Tc                 S   rZ   r[   r   r=   r   r   r   r?   x   r\   )r   r   copyr!   rG   rH   rI   rC   rD   rE   to_datetimerepeatr:   )rJ   rL   gr)   r   r   r   test_resample_group_keyse   s   
ra   c                 C   sl   | d}| |  }|dd }t|| |  d}| |  }|dd }t|| d S )Nr   c                 S      |   |   S r[   maxr&   r=   r   r   r   r?          ztest_pipe.<locals>.<lambda>c                 S   rb   r[   rc   r=   r   r   r   r?      re   )r!   rd   r&   piperH   assert_series_equalrI   )r   r   r#   rL   r)   r   r   r   	test_pipe|   s   

rh   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
   rW   r   )r!   rH   Zassert_index_equalZ_selected_objcolumnsnamer   r#   r   r   r   test_getitem   s   
rl   rN   rQ   r   c                 C   sJ   | d}d}tjt|d ||   W d    d S 1 sw   Y  d S )Nr   z^\"Columns not found: 'D'\"$match)r!   pytestraisesKeyError)rN   r   r`   msgr   r   r   test_select_bad_cols   s
   

"rs   c                 C   s(   |  d}t|j |d   d S )Nr   r   )r!   rH   rg   r   sumrk   r   r   r   test_attribute_access   s   
ru   attr)groupsZngroupsindicesc                 C   sN   t dddd}ttt||d}|d}t||  |  t||  d S )N1/1/2012d   Sr.   r   r9   Z30s)r   r   r   r   r   r!   getattrr&   )rv   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	}t
jt|d
 |  W d    n1 sKw   Y  |jdd}t|| d S )NfoorQ   r   r   r   r
   Zaxisr   z-agg function failed [how->mean,dtype->object]rm   Tnumeric_only)r!   r&   rC   concatr   r   rH   rI   reescapero   rp   	TypeError)r   rJ   r#   r)   rL   rr   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 )Nry   rz   r{   r|   int64dtyper9   Z20s)r      (   <   P   2012-01-01 00:00:00r/   r   r.   )	r   r   r   r   r   r!   asfreqrH   rg   )r~   r   r)   rL   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 )Nry   rz   r{   r|   r9   )r   r
   r      r/   r1                  Z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]2S)r   r   )r   r   r   r   r   Zilocr!   r&   r<   rC   ZDatetimeIndexrH   rg   )r~   r   Zts2r)   rL   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!   rF   rC   Grouper	transformrH   rg   )r   r#   rL   r)   r   r   r   test_transform_series  s   

r   rS   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r<|jdd}| }|jd| d}|d}t|| d S )Nr	   r
   r   rQ   r   r3   r   r   r   ABri   r:   r   r&   T)ZdroprR   )r   r   rj   r   r   r   r   listrF   rC   r   r   reset_indexr!   rH   rI   )rS   r:   rJ   rL   r#   r)   r   r   r   test_transform_frame  s   
r   c               	   C   sR  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 s7w   Y  t|| | }tjt	|d
 |j
dd}W d    n1 s^w   Y  t|| d}tjt|d
- tjt	|d
 |
d W d    n1 sw   Y  W d    d S W d    d S 1 sw   Y  d S )Nry   r   r   r|   r   r   r9   sz+DatetimeIndexResampler.fillna is deprecatedrm   r<   )methodbfillzTInvalid fill method\. Expecting pad \(ffill\), backfill \(bfill\) or nearest\. Got 0r   )r   r   r   r   r   r!   r<   rH   assert_produces_warningFutureWarningZfillnarg   r   ro   rp   
ValueError)r~   r   r#   rL   rr   r)   Zmsg2r   r   r   test_fillna'  s.   
"r   funcc                 C   s   | j dddS )Nr   FrY   )r!   r=   r   r   r   r?   D  r@   r?   c                 C   s   | j tjddddS )Nr   r   FrY   )rF   rC   r   r=   r   r   r   r?   E  s    r!   rF   )Zidsc                 C   s&   | |}| dd }t|| d S )Nc                 S   rZ   r[   r   r=   r   r   r   r?   L  r\   z0test_apply_without_aggregation.<locals>.<lambda>)rG   rH   rg   )r   r   tr)   r   r   r   test_apply_without_aggregationA  s   
r   c                 C   s>   | j ddjddd}|d dd }t|| d d S )Nr   )rj   r   FrY   c                 S   rZ   r[   r   r=   r   r   r   r?   R  r\   z1test_apply_without_aggregation2.<locals>.<lambda>)r(   r!   rG   rH   rg   rename)r   groupedr)   r   r   r   test_apply_without_aggregation2P  s   r   c                  C   s|   t tjddtddddg dd} | d	}d
}tjt	|d |
ddd W d    d S 1 s7w   Y  d S )Nr   )  r   ry   r{   r   r   r   r:   ri   3Tz'Column\(s\) \['r1', 'r2'\] do not existrm   r&   rt   r1r2r   r   r   r   rT   r   r!   ro   rp   rq   aggrJ   r#   rr   r   r   r   test_agg_consistencyV  s   
"r   c                  C   s|   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    d S 1 s7w   Y  d S )Nr   )r   r   ry   r{   r   r   r
   ar   r   z#Column\(s\) \[2, 'b'\] do not existrm   r&   rt   )r   br   r   r   r   r   'test_agg_consistency_int_str_column_mixf  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  }|d  }|d  }	|d  }
|d  }t
j|||	|
gdd}t
jddgddgg|_d}|D ]y}||d k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 sw   Y  t|| qtjt|d |tjtjg}W d    n	1 sw   Y  t|| qt
j||
gdd}|D ]}tjt|d |tjtjd}W d    n	1 s:w   Y  tj||dd tjt|d |jdtjfdtjfd}W d    n	1 sgw   Y  tj||dd tjt|d |jtdtjtdtjd}W d    n	1 sw   Y  tj||dd qt
j||gdd}t
jddg|_|D ]}|dddgi}t|| qt
j||gdd}ddg|_|D ]!}|d ddg}t|| |d jddd}t|| qd}|D ]'}tj t
j!j"|d |ddddi W d    n	1 s#w   Y  qt
j|||	|gdd}t
jg d |_|D ]+}tj t
j!j"|d |dddddd!d W d    n	1 sew   Y  q@t
j|||	|
gdd}t
jg d"|_|D ]}|ddgddgd}tj||dd qt
j|||	|gdd}t
jg d#|_d S )$Nr	   r
   r   rQ   r   r3   r   r   r   r   r:   r7   2DrR   levelr   r   r   r&   stdzusing SeriesGroupBy.[mean|std])r3   r   r   rm   rW   TZ
check_liker   r&   r   r   rt   )r&   rt   nested renamer is not supported)r   r   rt   )r   mean2)r   sum2)r   r   )r   r   r   r&   r   r   ))r   r   r&   )r   r   rt   )r   r   r&   )r   r   rt   )#r   r   rj   r   r   r   r   r   r   r]   rC   rD   rE   ranger:   r!   rF   r   r&   r   rt   r   Zfrom_productri   rH   r   r   	aggregaterI   r   from_tuplesro   rp   errorsSpecificationError)r:   rJ   df_coldf_multr#   casesZa_meanZa_stdZa_sumZb_meanZb_stdZb_sumrL   rr   r   Z	date_meanZdate_stdexpr)   r   r   r   test_aggy  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 ]}tjt|d |tjdd d}W d    n1 syw   Y  |d dd }	t
j|d  |	gdd}
tj||
dd tjt|d |jdtjfddd fd}W d    n1 sw   Y  tj||
dd tjt|d |jtdtjtddd d}W d    n1 sw   Y  tj||
dd qZt
j|d  |d  |d  |d  gdd}
t
jg d|
_d}|D ]}}tjt |d |ddg tjtjd W d    n	1 sDw   Y  tjt |d |ddg jd tjfd!tjfd W d    n	1 smw   Y  tjt |d |ddg jtd tjtd!tjd W d    n	1 sw   Y  q!t
j|d  |d ! |d  |d ! gdd}
t
jg d"|
_|D ]}|d#d$gd%d$gd}tj||
dd q|D ]}|ddg d#d$gd%d$gd}tj||
dd qd&}|D ]P}tjt
j"j#|d |d dd#d$gi W d    n	1 s!w   Y  tjt
j"j#|d |d d#d$gd%d$gd W d    n	1 sIw   Y  qd'}|D ]*}tjt |d |dg d#d$gd%d$gd W d    n	1 sxw   Y  qTd S )(Nr	   r
   r   rQ   r   r3   r   r   r   r   r:   r7   r   rR   r   zusing SeriesGroupBy.sumrm   c                 S      t j| ddS Nr
   )Zddofr   r   r=   r   r   r   r?     r@   ztest_agg_misc.<locals>.<lambda>rW   r   c                 S   r   r   r   r=   r   r   r   r?     r@   r   r   Tr   c                 S   r   r   r   r=   r   r   r   r?     r@   c                 S   r   r   r   r=   r   r   r   r?     r@   ))result1r   )r   r   )result2r   )r   r   z1Column\(s\) \['result1', 'result2'\] do not exist)r   r   r   r   )r   r   r   r   rt   r   r&   r   z Column\(s\) \['B'\] do not exist)$r   r   rj   r   r   r   r   r   r   r]   rC   rD   rE   r   r:   r!   rF   r   rH   r   r   r   rt   rG   r   rI   r   r&   r   ri   ro   rp   rq   r   r   r   )r:   rJ   r   r   r#   r   rr   r   r)   ZrcustomrL   r   r   r   test_agg_misc  s   
,$,  r   minr&   rd   rt   prodmedianrW   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4 |jddd}tjtdd ||  W d    n1 sKw   Y  W d    d S W d    d S 1 scw   Y  d S )Nr	   r
   r   rQ   r   r3   r   r   r   r   -DataFrame.resample with axis=1 is deprecated.rm   Mr   z"axis other than 0 is not supported)r   r   rj   r   r   r   r   r   TrH   r   r   r!   ro   rp   NotImplementedErrorr   )r   r:   rJ   warning_msgresr   r   r   test_multi_agg_axis_1_raisesK  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 ]+}tjt
jj|d |dddgidddgid W d    n1 sw   Y  qZ|D ]X}tjt
jj|d |ddg dddgidddgid W d    n1 sw   Y  tjt
jj|d |dddgidddgid W d    n1 sw   Y  qd S )Nr	   r
   r   rQ   r   r3   r   r   r   r   r:   r7   r   rR   r   r   rm   r   r&   rt   r   r   rar   rbrW   )r   r   rj   r   r   r   r   r   r   r]   rC   rD   rE   r   r:   r!   rF   r   ro   rp   r   r   r   r   )r:   rJ   r   r   r#   r   rr   r   r   r   r   test_agg_nested_dicts_  sB   
""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    d S 1 sKw   Y  d S )Ni  r0   r
   r   g      ?g       @)dtr>   yr   g      @g      ?r   z Column\(s\) \['z'\] do not existrm   Z30Tr&   r   rt   )r>   r   z)r   r   rA   ro   rp   rq   r!   r   )datarJ   rr   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 s;w   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   rQ   r|   r9   r
   r   c                 S      | | | S r[   r   )r>   r   cr   r   r   foo1     z/test_agg_list_like_func_with_args.<locals>.foo1r   c                 S   r   r[   r   )r>   r   r   r   r   r   foo2  r   z/test_agg_list_like_func_with_args.<locals>.foo2z/foo1\(\) got an unexpected keyword argument 'b'rm   r,   )r   r   )r   r2   	   r   )r>   r   )r>   r   r   )r
   r   )r   r   )r   r   ro   rp   r   r!   r   rC   rD   r   rH   rI   )rJ   r   r   rr   r)   rL   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 sOw   Y  d}t
jt|d |jddd	d W d    n1 spw   Y  d}t
jt|d |jdddgd W d    n1 sw   Y  d}t
jt|d |jdddgd W d    n1 sw   Y  d}t
jt|d |jdd	d  W d    n1 sw   Y  t
jt|d |jddd  W d    n1 sw   Y  |d }d|j_|jddd }t|| d	|j_t
jtdd |jdd	d  W d    n	1 s5w   Y  |jdd	djdd}t|| d S )Nr	   r
   r   rQ   r   r   )r3   r   vdr7   r9   r   z\Only valid with DatetimeIndex, TimedeltaIndex or PeriodIndex, but got an instance of 'Index'rm   r   r   z2The Grouper cannot specify both a key and a level!r3   )rS   r   zunhashable type: 'list'rR   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   rC   rD   rE   ro   rp   r   r!   r   rq   r   rt   r:   rj   rH   rI   )r:   r~   rJ   Zdf_exprr   r   r)   r   r   r   test_selection_api_validation  sT   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@rQ   r   r   )Zlevelscodes)
r   r   r   r   r!   r   rC   rD   rH   rI   )r  rJ   r)   rL   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firstrd   r   )r   r   Z
zeros_likeZsetflagsr   r!   rC   	Timestampr   rH   rg   )r:   ZarrZserr   rL   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  r  '   r  z20001002 00:43:00r/   Zend_day)r   r   -   r  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!   rt   rH   rg   )r   r   r   r   Zresample_freqr    r  Zexp_dataZexp_endZexp_periodsr~   r   r   rL   r   r   r   test_end_and_end_day_origin  s   Ar  z#method, numeric_only, expected_dataTnumr   FZ
cat_1cat_2catr  rz   )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   r   gH6%@)r   F!could not convert string to floatr!  varg      \@)r"  Fr!  semg      @)r#  Fr!  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 r(i }nd|i}t|| }t|trk| dv rFt}	t	
d|  d}
nt}	|}
tj|	|
d |di |}W d    d S 1 sdw   Y  d S |di |}t||d}t|| d S )N
2018-01-01r   rQ   r|   
2018-12-31r
   Yr  r  r/   r   r  r9   r   )r"  r&   r   r   zagg function failed [how->z,dtype->object]rm   r   )r   r   r!   r   
no_defaultr}   r'   r"   r   r   r   r   ro   rp   rH   rI   )r   r   expected_datar:   expected_indexrJ   	resampledkwargsr   klassrr   _r)   rL   r   r   r   test_frame_downsample_method\  s(   *



"r.  )rt   Tr   )r   Tr   )r   Fr   r   )r   Tr   )rd   Tr   )r
  Tr   )r	  Tr   c                 C   s.  t dddd}t dddd}tdd	g|d
}|d}|tju r"i nd|i}t|| }|rX|tjurXd|  }	tjt|	d |di | W d    d S 1 sQw   Y  d S | dkrt	
d}	tjt|	d |di | W d    d S 1 s{w   Y  d S |di |}
t||d
}t|
| d S )Nr$  r   rQ   r|   r%  r
   r&  r  r  r9   r   z1Cannot use numeric_only=True with SeriesGroupBy\.rm   r   z-agg function failed [how->prod,dtype->object]r   )r   r   r!   r   r'  r}   ro   rp   r   r   r   rH   rg   )r   r   r(  r:   r)  rJ   r*  r+  r   rr   r)   rL   r   r   r   test_series_downsample_method  s&   


"
"r/  zmethod, raises))rt   T)r   T)r   T)rd   T)r
  F)r	  F)r   F)r&   T)r   T)r"  T)r#  F)ZohlcF)ZnuniqueFc           
   	   C   sd  t dddd}tg d|d}|d}d}t|| }d	}d
}d|  }	|rltjt|	d5 tjt	|d |g |dddR   W d    n1 sMw   Y  W d    d S W d    d S 1 sew   Y  d S tjt|	d5 tjt
|d |g |dddR   W d    n1 sw   Y  W d    d S W d    d S 1 sw   Y  d S )NZ20180101r   hr|   )r   r,   r0   r9   Z30minr   z-numpy operations are not valid with resample.ztoo many arguments passed inz2Passing additional args to DatetimeIndexResampler.rm   r
   r   )r   r   r!   r}   rH   r   r   ro   rp   r   r   )
r   rp   r:   rJ   r*  argsr   	error_msgZerror_msg_typeZwarn_msgr   r   r   test_args_kwargs_depr  s.   


""r3  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>w   Y  |j}d}t	j
t|d |jddd W d    d S 1 sbw   Y  d S )Nr	   r
   r   rQ   r   r3   r   r   r   r   r   rm   r   r   z_The 'axis' keyword in DataFrame.resample is deprecated and will be removed in a future version.r   )r   r   rj   r   r   r   r   r   r   rH   r   r   r!   )r:   rJ   r   r   r   r   test_df_axis_param_depr  s"   "r4  c                 C   sF   d}t jt|d | jddd W d    d S 1 sw   Y  d S )Nz\The 'axis' keyword in Series.resample is deprecated and will be removed in a future version.rm   r   r   r   )rH   r   r   r!   )r   r   r   r   r   test_series_axis_param_depr  s
   "r5  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   )r6  z2018-01-01 08:00:00z2018-01-01 16:00:00r7  Z8H)r   rC   r^   r!   r&   rH   rI   rU   r   r   r   test_resample_empty  s   
r8  )>r   r   numpyr   ro   Zpandas._libsr   Zpandas.errorsr   ZpandasrC   r   r   r   Zpandas._testingZ_testingrH   Zpandas.core.indexes.datetimesr   Zfixturer   r   r   r$   r*   rM   rV   ra   rh   rl   markZparametrizers   ru   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r'  r.  r/  r3  r4  r5  r8  r   r   r   r   <module>   s   



	
7

r`
"5

5
	




 
!
'







	