o
    i                     @   s  U d dl m Z  d dlmZ d dlmZ 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m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 d d
lmZ d dlmZ d dl m!Z!m"Z" d dl#m$Z$m%Z% d dl&m'  m(Z( d dl&m)Z) e	* dd Z+e	j*dd Z,e	j*dd Z-dd Z.dd Z/e	j01ddge	j01dddd fdd d fgd!d" Z2d#d$ Z3d%d& Z4e	j01ddge	j01d'g d(d)d* Z5e	j01ddgd+d, Z6e	j01ddgd-d. Z7e	j01d/g d0d1d2 Z8d3d4 Z9d5d6 Z:d7d8 Z;d9d: Z<e	j01d;g d<d=d> Z=e	j01d?d@dAgdBdC Z>e	j01d?dDdAgdEdF Z?dGdH Z@dIdJ ZAdKdL ZBdMdN ZCe	j01d?g dOe	j01dPg dQdRdS ZDdTdU ZEdVdW ZFdXdY ZGdZd[ ZHd\d] ZId^d_ ZJe	j01d`dadbdcdddegdfdbdcdgdegdAdhdidAdeggdjdk ZKdldm ZLdndo ZMdpdq ZNdrds ZOe	j01d?g dtdudv ZPe	j01dwdxdygdzd{ ZQd|d} ZRd~d ZSe	j01dddidedidddddiddigdd ZTe	j01ddddddeU gdd ZVe	j01ddddeU gdd ZWdd ZXdd ZYdd ZZdd Z[dd Z\dd Z]dd Z^dd Z_dd Z`dd Zadd Zbdd Zcdd Zddd Zee	j01d?g ddd Zfe	j01dddgddggdd Zgdd Zhdd Zidd Zjdd ZkddÄ Zlddń Zme	j01dddde	jnde	j0jodd̍d͍gddτ Zpddф Zqddӄ ZrddՄ Zse dddxe dddكe dddۃe dddۃe ddd܃e dddރgZtee eud< etddy ejvg etdyd  ejvg etdd  Zwee eud< ejvget ejvg Zxe	j01detewexgdd Zydd Zzdd Z{e	j0j1d/dd dd dd gg dddd Z|e	j01dddge	j01dg ddd Z}dd Z~dd Zdd Zdd Zdd  Zdd Zdd Zdd Zdd Zd	d
 Zdd Ze	j01dg de	j01dg ddd Ze	j01dg ddd Ze	j01dddgdd Ze	j01dg ddededed ed!ef
d"d#Ze	j01d/g d$d%d& Zd'd( ZdS ()      datetime)partial)StringIO)ListN)lib)DatetimeNaTType)UnsupportedFunctionCall)	DataFrameSeries	Timedelta	Timestampisnanotna)Grouper
date_range)Periodperiod_range)DatetimeIndex_get_timestamp_range_edges)Minutec                   C   s   t S Nr    r   r   d/var/www/edux/Edux_v2/venv/lib/python3.10/site-packages/pandas/tests/resample/test_datetime_index.py_index_factory'      r   c                   C   s   dS )NMinr   r   r   r   r   _index_freq,   r   r   c                 C   s   t jt| S r   )nprandomrandlenindexr   r   r   _static_values1   s   r%   c                 C   s0  | }t tdgt| |dd}ttdd}||}|  g d}|D ]
}|j|d dd q'ttdd	d	d
}||}|  g d}|D ]
}|j|d dd qJ|j	dks\J t
|  sfJ dgdgd  }|ddd }||dd  }t|dd}t ||d}	|tj}
t|
|	 d S )N   int64r$   dtype   freqsummeanprodminmaxvarTaltnumeric_onlyrightr,   closedlabel!
  i 
  r   5Tr#   )r   r   arrayr"   r   r   groupbyohlc_cython_agg_generalngroupsr   r/   allappendr   aggr.   tmassert_series_equal)r$   dtisbgfuncsfarridxexpectresultr   r   r   test_custom_grouper6   s.   

rR   c                 C   sl   t tdddd}| }ttjt|d|dd}||tj	}t|j
dks+J t|jdks4J d S )Nr*   r7   r8   
   float64r(   r;   )r   r   r
   r   r    r!   r"   r?   rE   r.   columnsr$   )r$   rJ   rH   dfrr   r   r   test_custom_grouper_df[   s   rX   z#_index_start,_index_end,_index_name)1/1/2000 00:00:00z1/1/2000 00:13:00r$   zclosed, expectedr7   c                 C   sH   t | d | dd  | dd  | dd   gtddddd	d
S )Nr   r&         1/1/2000   5minr$   periodsr,   namer#   r   r/   r   rI   r   r   r   <lambda>n   s    2rd   leftc                 C   sB   t | d d  | dd  | dd   gtddddddS )	Nr*   rS   1/1/2000 00:05   r^   r$   r_   r#   rb   rc   r   r   r   rd   u   s    ,c                 C   s0   | }||}|j d|dd }t|| d S )Nr^   r7   r9   r:   )resampler/   rF   rG   )seriesr9   expectedrI   rQ   r   r   r   test_resample_basice   s   rl   c                  C   s   t tdtdddddd} | d }t g dtdd	dddd}t|| | d }t g d
tdd	dddd}t|| d S )N	   r\   Tr`   r,   Int64r(   3T)rg         rg   )r&   r]      Float64)r   ranger   ri   r.   rF   rG   r/   )tsrQ   rk   r   r   r   test_resample_integerarray   s"   rx   c                 C   sH   | }| d }ttdddd}||dd }t|| d S )N5Minr*   re   r8   c                 S      | d S Nr<   r   xr   r   r   rd          z-test_resample_basic_grouper.<locals>.<lambda>)ri   lastr   r   r?   rE   rF   rG   )rj   rI   rQ   grouperrk   r   r   r   test_resample_basic_grouper   s
   r   zkeyword,value))r:   righttt)r9   r   )
conventionstartttc                 C   sZ   d| d| d}t jt|d | jdi ||i W d    d S 1 s&w   Y  d S )NzUnsupported value z for ``matchr^   r^   )pytestraises
ValueErrorri   )rj   keywordvaluemsgr   r   r   test_resample_string_kwargs   s   "r   c                 C   s   |dkr	t d | }t|}d|d< d|dd< d|dd< d|dd < |||}td	d
ddd|_t|j	dddd| }t
|| d S )Nr@   z!covered by test_resample_how_ohlcr   r&   rZ      r[   rg   r\   r]   r^   r$   r_   r7   rh   )r   skipr   	ones_liker?   rE   r   r$   getattrri   rF   rG   )rj   downsample_methodrI   	grouplistrk   rQ   r   r   r   test_resample_how   s   

r   c                 C   s   | }t |}d|d< d|dd< d|dd< d|dd < dd }t|||j td	d
dddg dd}|jdddd	 }t
|| d S )Nr   r&   rZ   r   r[   rg   c                 S   6   t |  rttjdS | d |  |  | d gS Nr]   r   r<   r   rC   r   repeatnanr2   r1   groupr   r   r   _ohlc      z%test_resample_how_ohlc.<locals>._ohlcr\   r]   r^   r$   r_   )openhighlowcloser$   rU   r7   rh   )r   r   r
   r?   rE   valuestolistr   ri   r@   rF   assert_frame_equal)rj   rI   r   r   rk   rQ   r   r   r   test_resample_how_ohlc   s   
r   func)r1   r2   r.   r0   r/   r3   stdc                 C   s   t g dtddddd}|d}d}tjt|d	 t|| | d
dd W d    n1 s0w   Y  tjt|d	 t|| d
d W d    d S 1 sPw   Y  d S )N)r&   r   rg   r]   r*   20130101r*   rI   ro   r#   2sz,numpy operations are not valid with resampler   r&   r   rg   axis)r   r   ri   r   r   r	   r   )r   rI   rW   r   r   r   r   test_numpy_compat   s   
"r   c            
      C   s   t jdt jd} tdt| dd}t| | d|d}dd	d
}G dd d}|d|}|ddd }|dt|}|dt|dd}|d| }	t	
|| t	
|| t	
|| t	
||	 d S )Nr*   r)   
2014-01-01dstartr`   r,   ABr#   r&   c                 S      t t| S r   strtype)r}   ar   r   r   fn      z'test_resample_how_callables.<locals>.fnc                   @   s   e Zd Zdd ZdS )z,test_resample_how_callables.<locals>.FnClassc                 S   s   t t|S r   r   )selfr}   r   r   r   __call__   r   z5test_resample_how_callables.<locals>.FnClass.__call__N)__name__
__module____qualname__r   r   r   r   r   FnClass   s    r   Mc                 S   r   r   r   r|   r   r   r   rd         z-test_resample_how_callables.<locals>.<lambda>r   )r   )r&   )r   aranger'   r   r"   r
   ri   applyr   rF   r   )
dataindrV   r   r   df_standard	df_lambda
df_partialdf_partial2df_classr   r   r   test_resample_how_callables   s   
r   c                  C   sD  d} t jt| dddgidd}d |j_|d }tdg ditd	dd
dd}t	
|| |d }tdg ditd	dd
dd}t	
|| |d }tdddgitd	dddd}t	
|| |d }tdddgitd	dddd}t	
|| |d }tdddgitd	dddd}t	
|| d S )Na  date,time,value
11-08-2014,00:00:01.093,1
11-08-2014,00:00:02.159,1
11-08-2014,00:00:02.667,1
11-08-2014,00:00:03.175,1
11-08-2014,00:00:07.058,1
11-08-2014,00:00:07.362,1
11-08-2014,00:00:08.324,1
11-08-2014,00:00:08.830,1
11-08-2014,00:00:08.982,1
11-08-2014,00:00:09.815,1
11-08-2014,00:00:10.540,1
11-08-2014,00:00:11.061,1
11-08-2014,00:00:11.617,1
11-08-2014,00:00:13.607,1
11-08-2014,00:00:14.535,1
11-08-2014,00:00:15.525,1
11-08-2014,00:00:17.960,1
11-08-2014,00:00:20.674,1
11-08-2014,00:00:21.191,1	timestampdatetime)parse_dates	index_col6sr   )r]   rm   r]   r   z
2014-11-08r]   r,   r`   r#   7s)r]   rS   r]   r&   11sr[      r   13s   rZ   17s   rg   )pdread_csvr   r$   ra   ri   r.   r
   r   rF   r   )r   rV   rQ   rk   r   r   r   test_resample_rounding  s@   
r   c                  C   s@  t tdddtdddddd} ttjt| | }|d }t|dks*J |j	j
g d	k s6J |jd
 |d ksAJ |jd |d ksLJ |jd |jd ksXJ |d }t|dksgJ |j	j
d
d
gk ssJ |jd
 |d ks~J |jd |d ksJ |d }t|dksJ |j	j
ddgk sJ |jd
 |d ksJ |jd |d ksJ |d }t|dksJ |j	j
ddgk sJ |jd
 |d ksJ |jd |d ksJ |d }t|dksJ |j	j
ddgk sJ |jd
 |d ksJ |jd |d ksJ |d }t|dks/J |j	j
ddgk s<J |jd
 |d ksHJ |jd |d ksTJ |d }t|dksdJ |j	j
g dk sqJ |jd
 |d ks}J |jd |d ksJ |jd |d ksJ |j	jdksJ d S )N  r&   rS   Dr$   r   endr,   ra   zw-sunrg   )rZ   rZ   rZ   r   z1/2/2005z1/9/2005r   r<   W-MONz1/3/2005z	1/10/2005zW-TUEz1/4/2005W-WEDz1/5/2005zW-THUz1/6/2005zW-FRIr]   z1/7/2005r   rt   )r]   r   r&   r   rg   r]   r   r*   )r   r   r   r   r    r!   r"   ri   r   r$   	dayofweekrC   ilocra   rH   rI   rQ   r   r   r   test_resample_basic_from_dailyJ  sT   r   c                  C   s   t dddd} td| d}|d }|jd | d ksJ ttdd	d
d tdd	D d}ttdd	t ddddd}|d }t	
|td|jd |d }|d }t	
|| t	
|| d S )Nz01-Jan-2014z05-Jan-2014r   r+   r&   r#   r         ?rZ   c                 S   s   g | ]
}t d d|ddqS )i  r&   rr   r   r   .0ir   r   r   
<listcomp>  s    zCtest_resample_upsampling_picked_but_not_correct.<locals>.<listcomp>19750101r*   ro   )r   r   ri   r/   r$   r   r   rv   countrF   rG   r.   )datesrj   rQ   rI   rk   result1result2r   r   r   /test_resample_upsampling_picked_but_not_correct  s    r   rM   r-   c                 C   s0   t  }tdd}||}|j| d dd d S )Nr   r+   Tr4   )rF   makeTimeDataFramer   r?   rA   )rM   rV   rJ   rK   r   r   r   "test_resample_frame_basic_cy_funcs  s   

r   r,   r   r   c                 C   s8   t  }||  }t |d |d |   d S )Nr   )rF   r   ri   r/   rG   )r,   rV   rQ   r   r   r   test_resample_frame_basic_M_A  s   "r   r   c                 C   s   t  }|j| dd  d S )Nperiodkind)rF   r   ri   r/   )r,   rV   r   r   r   test_resample_frame_basic_kind  s   r   c                  C   s   t tdddtdddddd} ttjt| | }|d }t|dks*J |d	 |d	 ks4J |d
 |d
 ks>J |j	j
dksFJ d S )Nr   r&   rS   r   r$   r   r   i2  r   r<   )r   r   r   r   r    r!   r"   ri   ffillr$   ra   r   r   r   r   test_resample_upsample  s   r   c                  C   s   t ddgtdtdgd} t dtjtjtjtjtjdgttdtdtdtd	td
tdtdgddd}t| d | d S )Nr[      z2015-03-31 21:48:52.672000z2015-03-31 21:49:52.739000r#   z2015-03-31 21:48:50z2015-03-31 21:49:00z2015-03-31 21:49:10z2015-03-31 21:49:20z2015-03-31 21:49:30z2015-03-31 21:49:40z2015-03-31 21:49:5010sr+   10S)	r   r   r   NaNr   rF   rG   ri   r/   )rI   rk   r   r   r   test_resample_how_method  s*   	r  c                  C   sr   t dddd} tdtg d| di}t dddd} tdttt| | did	d
}|d }t|| d S )N2015010120150331BMr   r   r,   r   )rs   )   ?   r#   r   r'   r   )	r   r
   r   rv   r"   ri   r   rF   r   )r$   rk   rV   rQ   r   r   r   test_resample_extra_index_point  s    r  c                  C   sX   t dddd} ttjt| | }|djdd}|j|j	ddd	}t
|| d S )
Nr\   rg   5tro   tr   limitr   methodr  )r   r   r   r    randnr"   ri   r   reindexr$   rF   rG   rngrw   rQ   rk   r   r   r   test_upsample_with_limit  s
   r  )5D10Hry   r  rule)Y3M15D30H15Min30Sc                 C   sZ   t dd|| d}ttjt||}||jdd}|j|j	ddd}t
|| d S )Nr\   rg   )r`   r,   tzr   r  nearestr  )r   r   r   r    r  r"   ri   r!  r  r$   rF   rG   )tz_aware_fixturer,   r  r  rw   rQ   rk   r   r   r    test_nearest_upsample_with_limit  s
   r#  c                 C   s2  | }t tdd}||dd }|d }t|t|ks$J t|jdks-J |jd }|d |d	 ks<J |d
 |d	d 	 ksJJ |d |d	d 
 ksXJ |d |d ksbJ |jd }|d |d ksqJ |d
 |d d 	 ksJ |d |d d 
 ksJ |d |d ksJ d S )Nr*   r+   c                 S   rz   r{   r   r|   r   r   r   rd   	  r~   z$test_resample_ohlc.<locals>.<lambda>ry   r]   r   ir   r<   r   r   r   )r   r   r?   rE   ri   r@   r"   rU   r   r2   r1   )rj   rI   r   rP   rQ   xsr   r   r   test_resample_ohlc  s    

r&  c                  C   s   t dddd} | t dddd} ttt| | d}|jd d d }t|t	s.J |jd d	 d }t|t	sAJ d S )
N1-1-2000	2-15-2000hr+   	4-15-2000	5-15-2000r#   30Tz	4-14-2000)
r   unionr   rv   r"   locri   r@   
isinstancer
   )r$   rI   r   rJ   r   r   r   test_resample_ohlc_result  s   r0  c                  C   s~   t dd} | tdtdtdtdg}ttt||d}|d }|j	t | d	 | d
 ddd}t
|| d S )Nz
2013-12-30z
2014-01-07r   z
2013-12-31z
2014-01-04z
2014-01-05)r   r$   r   r   r<   r+   r#   )r   dropr   r
   r   r   r"   ri   r/   r  rF   r   )r  r$   rV   rQ   rk   r   r   r   $test_resample_ohlc_result_odd_period*  s   
r2  c               
   C   s  t tdd ddtdd ddtdd dditdd ddtdd ddtdd dd	id
jddgdd} d| j_| d }tj| d d | d d gd| jd}|jj	d dks`J t
|| ddgddgg| _| d }tjg d|_t
|| d S )Nz2011-01-06 10:59:05r   ia  z2011-01-06 12:43:33ic  z2011-01-06 12:54:09i /hYl    rT i )PRICEVOLUMEr5  r4  r&   r   ColsH)r   keysr   r   rJ   cr   ))r   r9  r   )r   r9  r   )r   r9  r   )r   r9  r   )rJ   r   r   )rJ   r   r   )rJ   r   r   )rJ   r   r   )r
   r   r  rU   ra   ri   r@   r   concatnamesrF   r   
MultiIndexfrom_tuples)rV   resexpr   r   r   test_resample_ohlc_dataframe<  s8   
"r@  c                  C   s   t tjddg ddd tdD d} tj| jdd d f< | jdd	d
 }| j	dd d	d
 }dd tdD |_
t|| d S )Nr]   rr   )  rA  rA  rA  c                 S      g | ]}t d |d ddqS )rA  r&   r   )yearmonthr,   r   r   r   r   r   r   r      z+test_resample_dup_index.<locals>.<listcomp>r   rg   Qr&   r   c                 S   s   t | jd d S )Nr&   rg   )intrD  r|   r   r   r   rd   v  s    z)test_resample_dup_index.<locals>.<lambda>c                 S   rB  )rA  r&   rG  )rC  quarterr,   rE  r   r   r   r   r   w  rF  )r
   r   r    r  rv   r   r   ri   r/   r?   rU   rF   r   rV   rQ   rk   r   r   r   test_resample_dup_indexk  s   rK  c                  C   s   t tdddtddddd} ttjt| | }|jdddd }|d	 }t|d
ks3J t	|j
jtjs=J |j
jtdksHJ d S )Nr   r&   rS   r   r  r   r7   rh   8Hr   r   )r   r   r   r   r    r!   r"   ri   r/   r/  r$   r,   offsets
DateOffsetHour)rH   rI   bsrQ   r   r   r   test_resample_reresample{  s   rQ  zfreq, expected_kwargsA-DEC19902000za-decr  zA-JUNza-junz1990-01z2000-01c                 C   sJ   | dd}|j |dd }| | }tdi ||_t|| d S )Nz1/1/1990r\   r   r   r   )ri   r/   r   r$   rF   rG   )simple_date_range_seriesr,   expected_kwargsrw   rQ   rk   r   r   r   !test_resample_timestamp_to_period  s
   
	rW  c                  C   s   dd } t dddd}ttjt||d}|jdd	d	d
 }|jd |d k	 s.J | |dd }|jd |k	 sAJ | |dd  }|jd |k	 sTJ d S )Nc                 S   r   r   r   r   r   r   r   r     r   ztest_ohlc_5min.<locals>._ohlcrY   z1/1/2000 5:59:50r  r+   r#   r^   r7   rh   z1/1/2000 00:00r   r&      rf   z1/1/2000 5:55:01z1/1/2000 6:00:00)
r   r   r   r    r  r"   ri   r@   r.  rC   )r   r  rw   	resampledr?  r   r   r   test_ohlc_5min  s   rZ  c                  C   s   t dd} | dj}ttjt||d}|d	 }|
dd 	 }t|dks/J t|d	 |d
  t|d
 |d  d S )Nr\   	2/29/2000r*   r#   r   c                 S   s   | j S r   )rD  r|   r   r   r   rd     s    z,test_downsample_non_unique.<locals>.<lambda>r   r   r&   )r   r   r   r   r   r    r  r"   ri   r/   r?   rF   assert_almost_equal)r  rng2rw   rQ   rk   r   r   r   test_downsample_non_unique  s   
r^  c               	   C   s   t dd} | dj}ttjt||d}d}tj	t
|d- tjtdd |d W d    n1 s8w   Y  W d    d S W d    d S 1 sPw   Y  d S )	Nr\   r[  r   r#   z/cannot reindex on an axis with duplicate labelsr   z
non-uniquer   )r   r   r   r   r   r    r  r"   r   r   r   rF   assert_produces_warningFutureWarningasfreq)r  r]  rw   r   r   r   r   test_asfreq_non_unique  s   
"rb  c                  C   s^   t dd} ttjdt| | g dd}|jddd }|jd j}t	
|| d S )	Nr\   r[  rg   r   rJ   r9  rU   r$   r   r&   r   )r   r
   r   r    r  r"   ri   r/   rn   rF   r   )r  rV   rQ   rk   r   r   r   test_resample_axis1  s
   
 re  )r  r  15t30t4h12hc                 C   st   t dddd}ttjt||d}tj|d d< |dd  j| ddd }|j| ddd }t	
|| d S )	Nz1/1/2000 04:00:00Q rI   ro   r#   r   re   rh   r   r   r   r    r  r"   r   ri   r/   rF   rG   )r,   r  rw   rQ   rk   r   r   r   test_resample_anchored_ticks  s   rl  r   r&   r   c                 C   s\   dd }t dd|  ddd}ttjt||d}t|d		 |d	
| d S )
Nc                 S      |   S r   )r.   r|   r   r   r   rd     r~   z,test_resample_single_group.<locals>.<lambda>z2000-1-1z2000-z-10r   r+   r#   r   )r   r   r   r    r  r"   rF   rG   ri   r.   r   )r   mysumr  rw   r   r   r   test_resample_single_group  s   &ro  c                  C   s\   t ddgtdtdgd} t dgttdgdd	d}| dd
d }t|| d S )Ng>@g?@z20070915 15:30:00z20070915 15:40:00r#   g      ?20070915r   r+   c                 S   s
   t | S r   )r   r   r|   r   r   r   rd        
 z0test_resample_single_group_std.<locals>.<lambda>)r   r   r   ri   r   rF   rG   )rI   rk   rQ   r   r   r   test_resample_single_group_std  s   rr  c                  C   sX   t dddd} ttjt| | d}|jddd }t d	d
dd}t	|j
| d S )NrY   z1/1/2000 02:00rI   r+   r#   r^   2minoffset12/31/1999 23:57:00z1/1/2000 01:57r   r   r   r    r  r"   ri   r/   rF   assert_index_equalr$   )r  rw   rY  exp_rngr   r   r   test_resample_offset  s
   rz  kwargsorigin1999-12-31 23:57:00z1970-01-01 00:02:00epoch2mr|  ru  z1999-12-31 12:02:00ru  z-3mc                 C   sZ   t dddd}ttjt||d}t dddd}|jd	i |  }t	|j
| d S )
N2000-01-01 00:00:002000-01-01 02:00rI   r+   r#   r}  2000-01-01 01:57r^   r   rw  )r{  r  rw   ry  rY  r   r   r   test_resample_origin  s
   r  invalid_valueepchstartdaystarttz
2000-30-30c                 C   t   t dddd}ttjt||d}d|  d}tjt|d |j	d	| d
 W d    d S 1 s3w   Y  d S )Nr  r  rI   r+   r#   z|'origin' should be equal to 'epoch', 'start', 'start_day', 'end', 'end_day' or should be a Timestamp convertible type. Got '
' instead.r   r^   r|  
r   r   r   r    r  r"   r   r   r   ri   )r|  r  rw   r   r   r   r   test_resample_bad_origin  s   "r  12dayysc                 C   r  )Nr  r  rI   r+   r#   z6'offset' should be a Timedelta convertible type. Got 'r  r   r^   rt  r  )ru  r  rw   r   r   r   r   test_resample_bad_offset  s   "r  c                  C   sH  d\} }t | |dd}ttjt||d}t dddd}|d }t	|j
| |jddd	 }t	|j
| t d
ddd}|jddd	 }t	|j
| |jddd }t	|j
| |jdddd }t	|j
| t dddd}|jddd	 }t	|j
| t dddd}|jddd	 }t	|j
| d S )N)2000-10-01 23:30:00z2000-10-02 00:30:007minr+   r#   z2000-10-01 23:14:00z2000-10-02 00:22:0017min	start_dayr  r  z2000-10-02 00:21:00r   23h30minrt  r  z2000-10-01 23:18:00z2000-10-02 00:26:00r~  z2000-10-01 23:24:00z2000-10-02 00:15:00
2000-01-01rw  )r   r   r  rw   ry  rY  r   r   r   test_resample_origin_prime_freq(  s*   r  c                  C   sN  d} d}t ddd|d}ttjt||d}t dd	d
|d}|jd
dd }t	|j
| |jd
dd }t	|j
| |jd
ddd }t	|j
| tjt| d |jd
dd  W d    n1 slw   Y  t dddd}ttjt||d}tjt| d |jd
dd  W d    d S 1 sw   Y  d S )Nz4The origin must have the same timezone as the index.Europe/Parisr  r  rI   r,   r   r#   r}  r  r^   z1999-12-31 23:57:00+00:00r  z1999-12-31 12:02:00+03:00r~  r  r  r   rv  r+   z12/31/1999 23:57:00+03:00)r   r   r   r    r  r"   ri   r/   rF   rx  r$   r   r   r   )r   r   r  rw   ry  rY  r   r   r   test_resample_origin_with_tzE  s&   "r  c                  C   s:  d\} }t | |dd}tjt|}t||d}|jddd }|jddd }t	|| |
d }|jddd }|jddd }	tj	||
|jd	d
 tj	||	
|jd	d
 d\} }t | |dd}t||d}
|
jddd }|
jddd }t	|
d |
d  t	|
d |
d  d S )N)z2000-10-01 23:30:00+0500z2000-12-02 00:30:00+0500r  r+   r#   r   r~  r  24HF)
check_freq)z2000-10-01 23:30:00+0200z2000-12-02 00:30:00+0200)r   r   r    r  r"   r   ri   r/   rF   rG   tz_localizer   )r   r   r  random_valuests_1result_1result_2ts_no_tzresult_3result_4ts_2result_5result_6r   r   r   -test_resample_origin_epoch_with_tz_day_vs_24hb  s&   
r  c            	         s  d d& fdd	} t d d}t d d}t||dd	}ttt||d
}| ddgddg}ddd|d fD ]}|jd|d }t	|| q7t d d}t d d}t||dd	}ttt||d
}ddg}| ddg|}|jdddd }t	|| ddg}| ddg|dd	}|jdddd }t	|| ddg}| ddg|}|jdddd }t	|| dd g}| dd!g|}|jddd"d }t	|| d#d$g}| d!dg|}|jddd%d }t	|| d S )'NAmerica/Chicagor   c                    s$   t | t fdd|D |dddS )Nc                    s   g | ]}t | d qS )r3  )r   )r   r  r3  r   r   r     s    zUtest_resample_origin_with_day_freq_on_dst.<locals>._create_series.<locals>.<listcomp>T)r,   	ambiguousr#   )r   r   )r   
timestampsr,   r3  r   r   _create_series  s   zAtest_resample_origin_with_day_freq_on_dst.<locals>._create_series
2013-11-02r3  z2013-11-03 23:591hr+   r#   g      8@g      9@z
2013-11-03r~  r   r  r  z2013-11-02 22:00-05:00z2013-11-03 22:00-06:00g      7@       @z-2Hr  z2013-11-03 21:00-06:00g      6@      @r  z2013-11-02 02:00-05:00z2013-11-03 02:00-06:002Hz2013-11-02 23:00-05:00z2013-11-03 23:00-06:00r   z-1Hz2013-11-02 01:00-05:00z2013-11-03 01:00:00-05001H)r   )
r   r   r   r   onesr"   ri   r.   rF   rG   )	r  r   r   r  rw   rk   r|  rQ   expected_tsr   r3  r   )test_resample_origin_with_day_freq_on_dst~  sD   	r  c                  C   st   t dddd} ttjt| | d}tj|d d< |dd  jdddd	 }|jdddd	 }t	
|| d S )
Nz1/1/2000 0:00:00'  rn   ro   r#   r   r   re   rh   rk  r  r   r   r   test_resample_daily_anchored  s   r  c                  C   sT   t dd} ttjt| | d}|jddd }tdddd	}t	
|j| d S )
Nr\   z
12/31/2000r#   r   r   r   zJan-2000zDec-2000r+   )r   r   r   r    r  r"   ri   r/   r   rF   rx  r$   )r  rw   rQ   	exp_indexr   r   r   &test_resample_to_period_monthly_buglet  s
   
r  c                  C   s^   t tjdddtdddddd} |  d	  }| d		d
d }t
|| d S )Nr   r*   2   z
2012-01-01r7  r   rT   r(   r   c                 S   rm  r   r/   r|   r   r   r   rd     r~   z&test_period_with_agg.<locals>.<lambda>)r   r   r    randintr   to_timestampri   r/   	to_periodrE   rF   rG   )s2rk   rQ   r   r   r   test_period_with_agg  s   r  c                  C   s   dt dddddddfdt dddddddfdt ddddd	ddfdt dddddd
ddfg} tj| ddd}|dd }|ddd }t	|| d S )Nr&   i  rS   r      r   r         rX  )IDr   r   r   rU   r   r  r^   c                 S   s   |  d S )Nr^   )ri   r.   r|   r   r   r   rd     s    z(test_resample_segfault.<locals>.<lambda>)
r   r
   from_records	set_indexr?   ri   r.   r   rF   r   )all_wins_and_wagersrV   rQ   rk   r   r   r   test_resample_segfault  s   r  c                  C   sz   t tddddg dtg dddd	d
} | d }|jjtj	ks(J | 
dd }|jjtj	ks;J d S )Nz
2016-01-01r]   Wr   )r&   r&   r   r   )r*   rZ   rt   r   int32r   )r   r   valr   1Dr   )r
   r   r   r  ri   r   r  r)   r   r  r?   rV   rQ   r   r   r    test_resample_dtype_preservation  s   r  c                  C   s   t d dg di} t| tddd} | dd d d	}| dd  d	}t	|| | d d d	}t	|| d S )
Nzscipy.interpolater   )r&   rg   r&   r]   z
2017-01-01z
2017-01-04r#   rT   r7  cubic)
r   importorskipr
   r   astyperi   r/   interpolaterF   rG   )rV   rk   rQ   r   r   r   test_resample_dtype_coercion  s   
r  c                  C   sR   t dddd} ttjt| | d}|d }|d }t	|| d S )Nr\   r   r  r   r#   r  zW-SUN)
r   r   r   r    r  r"   ri   r/   rF   rG   )r  rw   rY  rk   r   r   r   test_weekly_resample_buglet  s
   r  c                  C   s4   t dddd} ttjt| | d}|d d S )N4/16/2012 20:00i  r)  ro   r#   r   )r   r   r   r    r  r"   ri   r   rw   r   r   r   test_monthly_resample_error  s   r  c                  C   s   d} d}t t| ddd}ttt||d}|tjj	d}|
d}t t|ddd}ttt||td	}t|| d S )
Nl   *dG@l   *dG@rS   100nr   r#   d   r/   r(   )r   r   to_datetimer   rv   r"   ri   tseriesrM  NanorE   floatrF   rG   )r   	exp_startindxrw   rW   rQ   exp_indxr?  r   r   r   test_nanosecond_resample_error!  s   
r  c                 C   s:  t dddd}t|j|d}|d }|jddd jd	d
}| jtddtdd 7  _|jd|_|jj	dks@J t
|| |jddd }|jdddjddd }|jd	d
}|jtdd tdd |_|jd|_|jj	dksJ t
|| t dddd}t|j|d}|d }|jddd jd	d
}| jtddtdd 7  _d|jj_	tj|j_t
|| |jddd }|jdddjdddd }|jd	d
}| jtddtdd 7  _d|jj_	tj|j_t
|| | dddd}|d }t|dksJ d S )Nz1/1/2012z4/1/2012100minr+   r#   r   r   r   r   )howr&   nsr   inferre   )r9   rG  )r   r9   z2012-04-29 23:00z2012-04-30 5:00r)  )r   r
   rD  ri   r/   r  r$   r   
_with_freqr,   rF   r   shift_datar   
no_default_freqr"   )rU  r  rV   rQ   rk   r?  rw   rY  r   r   r   test_resample_anchored_intraday1  sB   



r  )MSBMSzQS-MARzAS-DECzAS-JUNc                 C   s   | dd}| |  d S )Nr\   z
12/31/2002)ri   r/   )rU  r,   rw   r   r   r   !test_resample_anchored_monthstart^  s   
r  z
label, secr  z4.2c                 C   sn   t dddd}t dddd}||}ttjd|d	}|jd| d
 }|jd t	d| dks5J d S )Nz2014-10-14 23:06:23.206rg   400Lro   z2014-10-15 23:00:00r   2200Lr*   r#   )r:   r<   z2014-10-15 23:00:00)
r   r-  r   r   r    r  ri   r/   r$   r   )r:   secindex1index2r$   rI   rQ   r   r   r   test_resample_anchored_multidayd  s   
"r  c                  C   sZ   t dddd} ttjt| | d}|jdddd	 }t d
ddd}t	|j
| d S )Nr\   rr   r  ro   r#   r  r7   re   rh   z1999-12-31 23:55r]   rw  )r  rw   rQ   ex_indexr   r   r   test_corner_casesw  s
   r  c                 C   s8   | ddddd d }| d }t|dksJ d S )Nz2007-01z2010-05r   r+   r   rR  )ri   r/   r"   )simple_period_range_serieslen0ptsrQ   r   r   r   test_corner_cases_period  s   r  c                 C   sN   | dddd}|j ddd }t|dksJ |jd	 td
ddks%J d S )Nz
2000-04-28z2000-04-30 11:00r)  r+   r   r   r   r&   r   z2000-04)ri   r/   r"   r$   r   )rU  rw   rQ   r   r   r   test_corner_cases_date  s   r  c                  C   s8   t dddd} ttjt| | d}|d  d S )Nr  iP  rI   ro   r#   r   )r   r   r   r    r  r"   ri   r/   r  r   r   r   test_anchored_lowercase_buglet  s   r  c                  C   sL   t dddd} ttjt| | d}|dddg}t|t	s$J d S )	N
2012-06-12r]   r)  ro   r#   20minr/   r.   )
r   r   r   r    r  r"   ri   	aggregater/  r
   )r  rw   rQ   r   r   r   test_upsample_apply_functions  s   r   c                  C   sl   t dddd} ttjt| | d}|tjt|}|d	 }|
 d	 }t|| d S )Nr     r)  ro   r#   r   )r   r   r   r    r  r"   takepermutationri   r.   
sort_indexrF   rG   )r  rw   rQ   r?  r   r   r   test_resample_not_monotonic  s   r  r)   r'   r  rT   float32z-Empty groups cause x.mean() to return float64)reason)marksc              
   C   s   t ddgtddddddtddddddg| d}|ddd	 }|d}t|| |d }|d}t|| d S )
Nr&   r     r   r*   r(   rn   c                 S   rm  r   r  r|   r   r   r   rd     r~   z/test_resample_median_bug_1688.<locals>.<lambda>)r
   r   ri   r   ra  rF   r   median)r)   rV   rQ   r?  r   r   r   test_resample_median_bug_1688  s   "

r  c                 C   s   | dd}| ddd }| d }t|| | d }d|_| d }d|_| ddd d	d g}ddg|_t|d | t|d | | dd
d dd d}tj|d |dd tj|d |dd d S )Nr\   z4/1/2000r   c                 S   rm  r   r  r|   r   r   r   rd     r~   z+test_how_lambda_functions.<locals>.<lambda>foobarc                 S   rm  r   r  r|   r   r   r   rd     r~   c                 S      | j ddS Nr&   )ddofr   r|   r   r   r   rd     r   c                 S   rm  r   r  r|   r   r   r   rd     r~   c                 S   r  r  r  r|   r   r   r   rd     r   )r  r  F)check_names)	ri   r   r/   rF   rG   ra   r   rU   r  )rU  rw   rQ   r?  foo_expbar_expr   r   r   test_how_lambda_functions  s"   


r  c                  C   sL   t dddd} t dddd}t| |d	d
}tddi|d}|d  d S )Ni  rg   r&   r*   r	  rt   rX  r]   30minr+   r   r#   AS)r   r   r
   ri   r.   )r   r   bad_indrV   r   r   r   test_resample_unequal_times  s
   r  c                  C   s   t dddd} ttd| d}tj|d< t | d | d	 d
d}|j|dd}|j|ddd}|j|ddd}|djdd}|d }t	
|| t	
|| t	
|| d S )Nz
2002-02-02r]   r,  ro   g      @r#   r   r   r<   10Tr+   bfill)r$   r  )r$   r  r  r  10Minr  )r   r   r   r   r  r  reindex_likeri   r  rF   rG   )i30rI   i10s10s10_2rlr10_2r10r   r   r   test_resample_consistency  s   
r%    rS   rm   rg   r[   r*   r   rt   r  dates1r]   dates2r   c                 C   sF  t | tt| d}|dd }tg dddd}t dg di|d}|d  	 r8|j
d |_
t|| |tddd	 }t|| t | tt| tt| d
}|dd }t g dg dd|ddgd}|d  	 r|j
d |_
t|| |tddd	 }t|| d S )Nr   r   r   )z
2014-07-31z
2014-08-31z
2014-09-30z
2014-10-31z
2014-11-30)r,   ra   r   )r&   r   r   r   r&   r#   )r,   key)r   r   C)r   r*  r*  r   )r
   r   r   r"   r  ri   r   r   r   anyr$   r  rF   r   r?   r   )r   rV   rQ   exp_idxrk   r   r   r   test_resample_timegrouper  s2   $r-  c                  C   s   t tddtdditddtddid} | d}| tdd	}| tdd	jd
d }|jdks9J ||fD ]}|j }t	
|| q=| jd }t	
|| | jtdd	 }t	
|| d S )Nz2015-06-05 00:00:00
0010100903z2015-06-08 00:00:00
0010150847z
2015-06-05z
2015-06-08)r  DATEr   r+   c                 S   rm  r   nuniquer|   r   r   r   rd   L  r~   z'test_resample_nunique.<locals>.<lambda>r  )r
   r   ri   r?   r   r  r   ra   r2  rF   rG   )rV   rW   rK   rk   r  rQ   r   r   r   test_resample_nunique;  s(   

r3  c                  C   sT   t jdd } tjj| j gd ddgd| _| d	 }t 
| j|j d S )Nr  r+   r   lev0lev1)r;  r  )rF   r   absr   r<  from_arraysrU   r   ri   r2  rx  r  r   r   r   2test_resample_nunique_preserves_column_level_namesZ  s   r8  c                 C   rm  r   r1  r|   r   r   r   rd   g  r~   c                 C   s   |  tjS r   )rE   r   r2  r|   r   r   r   rd   h  r   c                 C   s
   |  dS )Nr2  )rE   r|   r   r   r   rd   i  rq  )r2  series_nuniquenunique_str)idsc                 C   sf   t dddd}t dddd}||}ttt||dd}|d	}| }| |}t|| d S )
Nr'  r(  r)  r+   r*  r+  r'   r(   r   )	r   rD   r   rv   r"   ri   r   rF   rG   )r   r$   r  index3rI   rW   rQ   rk   r   r   r   #test_resample_nunique_with_date_gapd  s   

r=  nr  i k)rS   r  i  c                 C   s0  t jd}td| d dd}t|d| | | d||| d}|d		 }t|j
 |j
 d	d
}|j}t j|j|j
dd}t ||f}	||	 ||	 }}t jd|dd  |d d kf }
|
t jd|dd  |d d kf O }
t j||
 d t|djddd}t||d}t|| d S )Ni  z
2015-08-27rS   rn   r   r   r'   r#   r,  r  r7   sideTr&   r<   	minlengthFcopy)r   r    RandomStater   r   r  r  choiceri   r2  r$   r1   r2   r   searchsortedlexsortr_bincountr"   rF   rG   )r>  r?  prngdrrw   re   ixvalsbinssortermaskrN   r7   r   r   r   test_resample_group_infoz  s   ("&$rS  c                  C   s   d} t d| dd}ttj| tj|| d}|d }t |j	 |j
 dd}tj|j|jjdd	}tj|t|d
 dd
d  jddd}t||d}t|| d S )Nr  z
2015-09-19rn   ro   r#   7Tr  r7   r@  r&   rB  r'   FrD  )r   r   r   r    r  rG  ri   sizer$   r1   r2   rH  r   rK  r"   r  rF   rG   )r>  rM  rw   re   rN  rP  r  r7   r   r   r   test_resample_size  s   (rV  c                  C   s   t ddgdgd} ttj| jddjdjd}t d	d
gdgd}ttj|jddjdjddd}t ddg|d}|jdd	 }t ddg|d}t
|| d S )Nid=XitKXrw   r  rI   )unitUTCzEurope/Madridi 8XiFXr7  r+   r*   r#   r  )r
   r   r   r  rw   dtr  
tz_convertri   r.   rF   r   )df1dti1df2dti2rV   rQ   rk   r   r   r   test_resample_across_dst  s"   r`  c                  C   s   t ddgddd} tddg| d}|td	d
 }tddddd}t |} tdgtjgd  dg | d}t	
|| d S )Nl   @j$ l   S*~Q$ rX  r3  r  r&   r   r#   1dr+   z
2016-11-02z
2016-11-24r   r  r   rs   r  )r   r[  r
   r?   r   r   r   r   r   rF   r   )r$   rV   rQ   expected_index_valuesrk   r   r   r   !test_groupby_with_dst_time_change  s    rc  c                  C   sj  t tddddgdd} tdg| d}t |j d	d
} tdg| d}t|jd	d | |jdd  t|jdd tdgt tdddgdddd t	ddddd} t
| j}t|||d| dd}dddd}t|d|g d tg dg dg ddt	ddddddd  t|d!|g d tg d"g d#g d$dt	dd%d!dddd& t|d|g d tg d'g d(g d)dt	d*d+ddddd, t|d-|g d td.d/gd0d1gd/d2gdt	d*d+d-dddd3 |d4d5 }t|d	ddddg d tg d6g d7g d8dt	d4d5d	dddd9 d S ):Nr	  r[   r]      z
US/Easternr3  r*   r#   r   r+   rY  r  r&   r   r,   z
2013-09-30r  30Minr  r  rc  r'   r(   r1   r2   r   r   )r   0   i    i   r  )/   i    i  q  2  )rg  P  rn  rn  iR     z	9/30/2013z	11/4/2013zW-MON Frequencyz2W-MON)r   rg  rh  ri  )rj  rk  rl  rm  )rg  i  i  ro  z
11/11/2013z2W-MON Frequency)r   rg    )rj    rm  )rg  i  1   z9/1/2013z	11/1/2013zMS Frequency2MSr   rp  rq  rm  rr  z2MS Frequencyz
10/26/2013z
10/29/2013)i  i  iB  ri  )i  iA  rl  i  )rg  r  rg  rg  zD Frequency)r   r   r
   r$   	normalizerF   r   ri   r.   r   rv   rU  rE   )rH   rV   rk   r   r  df_dailyr   r   r   test_resample_dst_anchor  s   

		rv  c                  C   s|   t d} tddd}t| |ddd}td|d	d
 }tdtj	gd dg t| |dd
dd	}t
|| d S )NzEurope/Berlinr&  rS      r]   r  ro   r*   r#   r7        @rg   rt   )pytztimezoner   r   localizer   ri   r/   r   r   rF   rG   )r   rZ  r   rQ   rk   r   r   r   test_downsample_across_dst,  s   
r|  c                  C   sX   t tg dddg dd} | d }t ddgtd	d
gdddd}t|| d S )N)z
2017-03-25
2017-03-26z
2017-03-27z
2017-03-28z
2017-03-29Europe/Amsterdamr3  )r[   rr   r      r  )r$   r   1Wrd  *   r}  z
2017-04-02r  re  r#   )r
   r   ri   r.   rF   r   rJ  r   r   r   !test_downsample_across_dst_weekly9  s   
r  c                  C   sV   t ddddd} t| tjd}|d }tt ddd	dd
tjd}t|| d S )Nz
2013-04-01z
2013-05-01zEurope/Londonr7  re  r(   r  z
2013-04-07r*   )r,   r`   r   )r   r   r   rT   ri   r/   rF   rG   )rO   rI   rQ   rk   r   r   r   #test_downsample_across_dst_weekly_2L  s   r  c                  C   s   t dddd} t dddd}t| |dd}|dd	}ttt|}t||d
}|t	dd
 }tdddjd	dd}t|dd}tg d|d
}t|| d S )Ni  r[   rg   rr   r*   r  r+   rX  zAmerica/Havanar#   r  z
2018-11-03r`   T)r  r   )g      @g      <@g     @F@)r   r   r  r[  listrv   r"   r
   r?   r   r/   r   rF   r   )r   r   r$   r   	dataframerQ   rH   rk   r   r   r   test_downsample_dst_at_midnightX  s   r  c                  C   s   t tjdtjddg} tg d| d}t g d}tg d|d}t|d | t ddg}td	d
g|d}t|d | t dg}tdg|d}t|d | t|d | d S )N1970-01-01 00:00:001970-01-01 00:00:011970-01-01 00:00:02)r   rg   r*   rt   r[   r#   )r  r  r  )r        @      &@1srx  r  r   r  3s60s)r   r   NaTr
   rF   r   ri   r/   )r$   frameindex_1sframe_1sindex_2sframe_2sindex_3sframe_3sr   r   r   test_resample_with_natj  s*   	
r  c                  C   s   t dddt dddg} td| i| d}tt dddtjt dddgtddd	d
dd}|d	 d }t	|| |d d	 }t	|| d S )Ni  r&   r     r   r#   z
2016-01-15rg   2Dro   )r$   ra   )
r   r
   r   r   r  r   ri   firstrF   rG   )r   rV   r?  r>  r   r   r   test_resample_datetime_values  s   r  c                 C   s   dd }d}|  d||}|  d |}t|| |  dj||d}|  d |}t|| tdddtd	dd
d}|d d	||
t}|d d |}t|| d S )Nc                 S   s   t | | S r   )r   r/   )r   add_argr   r   r   rM     s   z3test_resample_apply_with_additional_args.<locals>.frS   r   )r  r&   r   r   2017r  r#   r   )ri   r   r/   multiplyrF   rG   r
   r   r?   rE   r  r  r   )rj   rM   
multiplierrQ   rk   rV   r   r   r   (test_resample_apply_with_additional_args  s   r  )r&   r   rg   zn1, freq1, n2, freq2)
)   S      ?r   )<   r  r&   r   )i  r  r&   r7  )r  r   r&   r7  )i`T  r  g      ?r   )rj  r  r&   r   )i  r  r  r   )i  r   r&   r   )rr   r7  r  r   )   r7  r&   r   c           
      C   sr   | | }|| }t dtdd|dd}|tt| }|t||  }|t||  }	t||	 d S )Nr   z19910905 13:00z19911005 07:00r+   r#   )	r   r   rv   r"   ri   r   r/   rF   rG   )
n1freq1n2freq2r?  n1_n2_rI   r   r   r   r   r    test_resample_equivalent_offsets  s   r  z"first,last,freq,exp_first,exp_last))1991090519920406r   r  19920407)z19910905 00:0019920406 06:00r   r  r  )19910905 06:00r  r7  r  z19920406 07:00)19910906r  r   1991083119920430)r  r  r   r  19920531)z1991-08z1992-04r   r  r  c                 C   sj   t | } | | j} t |}||j}t|}t|}tjj|}t| ||}||f}||ks3J d S r   )	r   r  r,   r   r   r  frequencies	to_offsetr   )r  r   r,   	exp_firstexp_lastrQ   rk   r   r   r   test_get_timestamp_range_edges  s   r  
duplicatesTFc                 C   s   t dddd}ttd|d}t||d d}| rddg|_|d	tj}ttj	d
dgddgddgddggtj
dtg ddd|jd}t|| d S )Nz
2012-01-31r   rr   r   r,   r`   r#   r   r   r   rG  r   r  r     rn  rh  i  i  r   )z
2012-03-31z
2012-06-30z
2012-09-30z
2012-12-31Q-DECr+   r   )r   r   rv   r
   rU   ri   r   r   productr>   r'   r   rF   r   )r  r$   rw   rV   rQ   rk   r   r   r   test_resample_apply_product  s   
&r  z$first,last,freq_in,freq_out,exp_last))
2020-03-28
2020-03-31r   r  z2020-03-30 01:00)r  
2020-10-27r   r  2020-10-27 00:00)
2020-10-25r  r   r  z2020-10-26 23:00)r  r  r  r   z2020-03-30 00:00)r  r  r  r   r  )r  r  r  r   z2020-10-26 00:00r  r   freq_infreq_outr  c                 C   sJ   t dt| ||dd}|| }t dt| ||dd}t|| d S )Nr   r~  r  )r   r   ri   r   rF   rG   )r  r   r  r  r  rw   rQ   rk   r   r   r   #test_resample_calendar_day_with_dst  s   'r  )r1   r2   r  r   c                 C   sd   t dddd}tdtjtjg|}t|d| dd}ttjgtd	gd
ddd}t|| d S )N2020r   rg   r  r&   rG  r   )	min_countr  zdatetime64[ns]r  )r)   r,   r#   )	r   r   r   r   r   ri   r   rF   rG   )r   r$   serrQ   rk   r   r   r   +test_resample_aggregate_functions_min_count,  s   r  c                 C   s   t tdddddgg dd | d}|j|jd	k |jd
kB d d f }|d }t dtjdgdgtddddd}t	|| d S )Nr  z2000-01-03 2312Hr  r}   )r   r&   r   r   )r$   rU   r   r)   z
2000-01-02z
2000-01-03r   r&   r   rd  )
r
   r   r.  r$   ri   r2   r   r   rF   r   )any_unsigned_int_numpy_dtyperV   rQ   rk   r   r   r   test_resample_unsigned_int9  s   
"
r  )r   	functoolsr   ior   typingr   numpyr   r   ry  pandas._libsr   pandas._typingr   pandas.errorsr	   pandasr   r
   r   r   r   r   r   pandas._testing_testingrF   pandas.core.groupby.grouperr   pandas.core.indexes.datetimesr   pandas.core.indexes.periodr   r   pandas.core.resampler   r   pandas.tseries.offsetsr  rM  r   fixturer   r   r%   rR   rX   markparametrizerl   rx   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r#  r&  r0  r2  r@  rK  rQ  rW  rZ  r^  rb  re  rl  ro  rr  rz  r  objectr  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r  paramxfailr  r  r  r%  r'  __annotations__r  r(  dates3r-  r3  r8  r=  rS  rV  r`  rc  rv  r|  r  r  r  r  r  r  r  r  r  r   r  r  r  r   r   r   r   <module>   s    


%



>:



	
/

		





7

-









2

 

	 
U#