o
    թZh"                     @   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dddmdgdldgdfgddggdmdgdldgdfggdd ZGejdeddmdgidmdgdldgdfgdd ZHdd ZIejd4dgdldgddmidddfgdd ZJdd ZKdd ZLdd ZMdd ZNejdg ddd ZOdd ZPejddddg ddddg dddf
ddddgd dddg dddf
dddg ddddg dddf
dddg ddddg dddf
gdd ZQejdg dmdddgifdmddgdgdfdmejRdgdgdfddddgifddejRdfddddgifdddgdgdfdejRdgdgdfddddgifdddgdgdfdejRdgdgdfddddgifdddgdgdfdejRdgdgdfddddgifdddgdgdfdejRdgdgdfdldddgifdȑdlejRdfddddgifdʑdejRdfddddgifd͑dejRdfddddgifdёdejRdfddddgifdԑdejRdfddք ZSejdddmddgfdmejRdgfdddejRdfddddgfdejRdgfddddgfdejRdgfddddgfdejRdgfddddgfdejRdgfgdd ZTejdg ddd ZUdd ZVdd ZWdd 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   ^/var/www/html/lang_env/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}tjt	|d | 
ddd dg }W d    n1 sow   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DeprecationWarninggroupbyapplyassert_frame_equal)dfir:   expectedmsgr)   r   r   r   test_groupby_resample_api=   s&   
(,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 Nr   r?   r   r   r   rA   m       z*test_resample_group_keys.<locals>.<lambda>c                 S   r_   r`   r   r?   r   r   r   rA   r   ra   r   z
2000-01-06nsr/   Tc                 S   r_   r`   r   r?   r   r   r   rA   }   ra   )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    
rg   c                 C   sl   | d}| |  }|dd }t|| |  d}| |  }|dd }t|| d S )Nr   c                 S      |   |   S r`   maxr&   r?   r   r   r   rA          ztest_pipe.<locals>.<lambda>c                 S   rh   r`   ri   r?   r   r   r   rA      rk   )r!   rj   r&   piperH   assert_series_equalrM   )r   r   r#   rP   r)   r   r   r   	test_pipe   s   

rn   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   
rr   rS   rV   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'\"$r;   )r!   pytestraisesKeyError)rS   r   rf   rQ   r   r   r   test_select_bad_cols   s
   

"rv   c                 C   s(   |  d}t|j |d   d S )Nr   r   )r!   rH   rm   r   sumrq   r   r   r   test_attribute_access   s   
rx   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&   )ry   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foorV   r   r   r   r
   Zaxisr   z&agg function failed [how->mean,dtype->r;   Tnumeric_only)r!   r&   rE   concatr   r   rH   rM   reescapers   rt   	TypeError)r   rN   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 )Nr|   r}   r~   r   int64dtyper9   Z20s)r      (   <   P   2012-01-01 00:00:00r/   r   r.   )	r   r   r   r   r   r!   asfreqrH   rm   )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 )Nr|   r}   r~   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   rm   )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   rm   )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r<|jdd}| }|jd| d}|d}t|| d S )Nr	   r
   r   rV   r   r3   r   r   r   ABro   r:   r   r&   T)ZdroprW   )r   r   rp   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   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 )Nr|   r   r   r   r   r   r9   r~   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   FutureWarningZfillnarm   r   rs   rt   
ValueError)r   r   r#   rP   rQ   r)   Zmsg2r   r   r   test_fillna,  s.   
"r   funcc                 C      | j dddS )Nr   Fr^   r!   r?   r   r   r   rA   I  rB   rA   c                 C   s   | j tjddddS )Nr   r   Fr^   rK   rE   r   r?   r   r   r   rA   J  s    r!   rK   )Zidsc                 C   s&   | |}| dd }t|| d S )Nc                 S   r_   r`   r   r?   r   r   r   rA   Q  ra   z0test_apply_without_aggregation.<locals>.<lambda>)rL   rH   rm   )r   r   tr)   r   r   r   test_apply_without_aggregationF  s   
r   c                 C   s>   | j ddjddd}|d dd }t|| d d S )Nr   )rp   r   Fr^   c                 S   r_   r`   r   r?   r   r   r   rA   W  ra   z1test_apply_without_aggregation2.<locals>.<lambda>)r(   r!   rL   rH   rm   rename)r   groupedr)   r   r   r   test_apply_without_aggregation2U  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   r|   r~   r   r   r   r:   ro   3minz'Column\(s\) \['r1', 'r2'\] do not existr;   r&   rw   r1r2r   r   r   r   rY   r   r!   rs   rt   ru   aggrN   r#   rQ   r   r   r   test_agg_consistency[  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   r|   r~   r   r   r
   ar   r   z#Column\(s\) \[2, 'b'\] do not existr;   r&   rw   )r   br   r   r   r   r   'test_agg_consistency_int_str_column_mixk  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   rp   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   )rc   rE   rF   rG   ranger:   )r   r:   df_multr   r   r   r     s
   r   c                 C      |  dd  S N2Dr   r!   r&   r   r   r   r   a_mean     r   c                 C   r   r   r!   stdr   r   r   r   a_std  r   r   c                 C   r   r   r!   rw   r   r   r   r   a_sum  r   r   c                 C   r   Nr   r   r   r   r   r   r   b_mean  r   r   c                 C   r   r   r   r   r   r   r   b_std  r   r   c                 C   r   r   r   r   r   r   r   b_sum  r   r   c                 C   s
   |  dS )Nr   r   r   r   r   r   df_resample  s   
r   c                 C   r   )Nr   r3   rW   r   )r   r   r   r   df_col_resample     r   c                 C   r   )Nr   r3   levelr   )r   r   r   r   df_mult_resample  r   r   c                 C   s   |  tjddS )Nr   r   r   r   r   r   r   df_grouper_resample  r   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 rD| 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_w   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_productro   nodeZcallspecidr&   r   rH   rI   r   	aggregater   rM   )r   r   r   r   r   r   rP   rQ   Z	date_meanZdate_stdr)   r   r   r   !test_agg_mixed_column_aggregation  s   r   r   r\   r   c                 C   sh   d}t j||gdd}tjt|d | jdi |}W d    n1 s%w   Y  tj||dd d S )Nr   r
   r   r;   TZ
check_liker   )rE   r   rH   rI   r   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_tuplesro   r   rH   rM   )r   r   r   rP   r)   r   r   r   #test_agg_both_mean_std_dict_of_list  s   r   r&   rw   )r&   rw   c                 C   s@   t j||gdd}ddg|_| d jdi |}t|| d S )Nr
   r   r&   rw   r   r   )rE   r   ro   r   rH   rM   )r   r   r   r   rP   r)   r   r   r   test_agg_both_mean_sum  s   
r   )Zmean2Zsum2c                 C   sF   d}t jtjj|d | | W d    d S 1 sw   Y  d S )Nnested renamer is not supportedr;   )rs   rt   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      t j| ddS Nr
   )Zddofr   r   r?   r   r   r   rA   "  rB   c                 C   r   r   r  r?   r   r   r   rA   #  rB   c                 C   r   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di |}W d    n1 s2w   Y  tj||d	d
 d S )Nzusing SeriesGroupBy.sumr   c                 S   r   r   r  r?   r   r   r   rA   *  rB   z&test_agg_with_lambda.<locals>.<lambda>r   r
   r   r;   Tr   r   )	rL   rE   r   rw   rH   rI   r   r   rM   )r   r   rQ   ZrcustomrP   r)   r   r   r   test_agg_with_lambda  s   
r  )result1result2r  r  c                 C   sP   d}t jt|d | ddg jdi | W d    d S 1 s!w   Y  d S )Nz1Column\(s\) \['result1', 'result2'\] do not existr;   r   r   r   rs   rt   ru   r   r   r   r   r   test_agg_no_column1  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   rw   r   r   r   Tr   )rE   r   rF   r   ro   r   rH   rM   )
r   colsr   r   r   r   r   rP   objr)   r   r   r   "test_agg_specificationerror_nested?  s   

r	  c                 C   sJ   d}t jtjj|d | d | W d    d S 1 sw   Y  d S )Nr   r;   r   )rs   rt   rE   r   r   r   r   r   r   r   "test_agg_specificationerror_series\  s   "r
  c                 C   sV   d}t jt|d | dg ddgddgd W d    d S 1 s$w   Y  d S )Nz Column\(s\) \['B'\] do not existr;   r   rw   r   r&   r\   r  )r   rQ   r   r   r   )test_agg_specificationerror_invalid_namesg  s    "r  minrj   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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   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   rp   r   r   r   r   r   TrH   rI   r   r!   rs   rt   NotImplementedErrorr   )r   r:   rN   warning_msgresr   r   r   test_multi_agg_axis_1_raiseso  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   rV   r   r3   r   r   r   r   r:   r7   r   rW   r   r   r;   r   r&   rw   r   r   rar   rbr\   )r   r   rp   r   r   r   r   r   r   rc   rE   rF   rG   r   r:   r!   rK   r   rs   rt   r   r   r   r   )r:   rN   r   r   r#   r   rQ   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 existr;   30minr&   r  rw   )r@   r  z)r   r   rC   rs   rt   ru   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 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   rV   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'r;   r,   )r   r!  )r!  r2   	   r   )r@   r"  )r@   r$  r   )r
   r   )r   r   )r   r   rs   rt   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 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   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   rs   rt   r   r!   r   ru   r   rw   r:   rp   rH   rM   )r:   r   rN   Zdf_exprQ   expr)   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@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   	
r0  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firstrj   r  )r   r   Z
zeros_likeZsetflagsr   r!   rE   	Timestampr   rH   rm   )r:   ZarrZserr   rP   r)   r   r   r   test_resample_agg_readonly  s   

&



r6  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         r2  Z17minr   )r   r8     ?   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   r8  r:  '   r2  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!   rw   rH   rm   )r   r   r   r  Zresample_freqr    rA  Zexp_dataZexp_endZexp_periodsr   r   r  rP   r   r   r   test_end_and_end_day_origin3  s   ArB  z#method, numeric_only, expected_dataTnumr   FZ
cat_1cat_2catrC  r}   )r  Fcan't multiply sequencerF  cat_1r   cat_2r4  r3  g      )@)r&   FCould not convertrI  )r  F-Cannot convert \['cat_1' 'cat_2'\] to numericrJ  gH6%@)r   F!could not convert string to floatrK  varg      \@)rL  FrK  semg      @)rM  FrK  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   rV   r   
2018-12-31r
   YErG  rH  r/   r   rD  r9   r   )rL  r&   r  r  zagg function failed [how->z,dtype->r;   r   )r   r   r!   r   
no_defaultr   r'   r"   r   r   r   r   rs   rt   rH   rM   )r   r   expected_datar:   expected_indexrN   	resampledkwargsr   klassrQ   _r)   rP   r   r   r   test_frame_downsample_method  s(   *



"rX  )rw   Tr   )r  Tr   )r  Fr   r   )r  Tr   )rj   Tr   )r4  Tr   )r3  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 )NrN  r   rV   r   rO  r
   rP  rG  rH  r9   r   z1Cannot use numeric_only=True with SeriesGroupBy\.r;   r  z&agg function failed [how->prod,dtype->r   )r   r   r!   r   rQ  r   rs   rt   r   r   r   rH   rm   )r   r   rR  r:   rS  rN   rT  rU  r   rQ   r)   rP   r   r   r   test_series_downsample_method  s&   


"
"rY  zmethod, raises))rw   T)r  T)r  T)rj   T)r4  F)r3  F)r  F)r&   T)r   T)rL  T)rM  F)ZohlcF)ZnuniqueFc           
   	   C   sl  t dddd}tg d|d}|d}d}t|| }d	}d
}d|  }	|rntjt|	d7 tjt	|d |g |ddddR   W d    n1 sOw   Y  W d    d S W d    d S 1 sgw   Y  d S tjt|	d7 tjt
|d |g |d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   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   r   rs   rt   r   r   )
r   rt   r:   rN   rT  argsr   	error_msgZerror_msg_typeZwarn_msgr   r   r   test_args_kwargs_depr  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
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   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   rp   r   r   r   r   r   r  rH   rI   r   r!   )r:   rN   r  r   r   r   test_df_axis_param_depr  s"   "r]  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.r;   r   r   r   )rH   rI   r   r!   )r   r  r   r   r   test_series_axis_param_depr0  s
   "r^  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   )r_  z2018-01-01 08:00:00z2018-01-01 16:00:00r`  Z8h)r   rE   rd   r!   r&   rH   rM   rZ   r   r   r   test_resample_empty9  s   
ra  )Yr   r   numpyr   rs   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[   rg   rn   rr   markZparametrizerv   rx   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   rw   r  r  r	  r
  r  r  r  r  r&  r*  r0  r6  rB  rQ  rX  rY  r\  r]  r^  ra  r   r   r   r   <module>   sT   



	
7




















	





"5

5
	




 
!
'







	