
    o[weN                        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             Zej        d             Zej        d	             Zd
 Zd Zd Zd Zd Zd Zd Zej                            ddgddgg          d             Z d Z!ej                            dg d          d             Z"d Z#d Z$d Z%d Z&ej                            dddg          d             Z'd  Z(ej                            d!d" d# gd$d%g&          d'             Z)d( Z*d) Z+d* Z,d+ Z-d, Z.ej                            d!d-gd.d/gdd0id1d2d3g          d4             Z/d5 Z0d6 Z1d7 Z2d8 Z3ej                            d9g d:          d;             Z4d< Z5ej                            d=d>d?d@g dAdBdCdg dDdEdFf
dGdHdIdJgdKz  d@dCdLg dMdNdOf
d>d?d@g dAdBdCdPg dQdRdSf
d>d?d@g dAdBdTdg dUdVdFf
g          dW             Z6ej                            dXg d0dYdZd[gifd0d\d]gd[gd^fd0ej7        d]gd[gd^fd1dYdZd_gifd`d1ej7        dafd-dYdZdSgifd-d\dbgdSgd^fd-ej7        dbgdSgd^fd/dYdZdcgifd/d\ddgdcgd^fd/ej7        ddgdcgd^fdedYdZdSgifded\dbgdSgd^fdeej7        dbgdSgd^fdfdYdZdcgifdfd\ddgdcgd^fdfej7        ddgdcgd^fd.dYdZdggifdhd.ej7        difd2dYdZdggifdjd2ej7        dkfdldYdZdmgifdndlej7        dofdpdYdZdqgifdrdpej7        dofdsdYdZdtgifdudsej7        dof          dv             Z8ej                            dXdwd0d\d]gfd0ej7        d]gfdxdyd1ej7        dzfd{d-d\dbgfd-ej7        dbgfd|d/d\ddgfd/ej7        ddgfd}ded\dbgfdeej7        dbgfd~dfd\ddgfdfej7        ddgfg          d             Z9ej                            dg d          d             Z:d Z;d Z<d Z=dS )    )datetimeN)lib)UnsupportedFunctionCall)	DataFrameNamedAggSeries)
date_rangec                  b    t          t          ddd          t          ddd          d          S )N     
   Min)startendfreq)r	   r        Glib/python3.11/site-packages/pandas/tests/resample/test_resample_api.pydtir      s0    HT1a00htQ6K6KRWXXXXr   c                     t          t          j                            d                              t	          |                     |           S )N   )r   nprandomdefault_rnglen)r   s    r   _test_seriesr      s6    ")''**11#c((;;SAAAr   c           	      f    t          ||t          j        t          |                     d          S )NABC)r   r   aranger   )r   r   s     r   
test_framer#      s*    <l3s88ATATUUVVVr   c                     |                      d          }dt          |          v sJ |                      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   rs     r   test_strr+   #   s    c""A	:=@VV	D 	D 	D 	D 	c,77A	DGJ1vv	N 	N 	N 	N 	N 	Nr   c                 ~   |                      d          }|                                }t          |t                    sJ t	          |          dk    sJ |                                                      d          }|                                }t          |t                    sJ t	          |          dk    sJ d S )Nr%      )r(   mean
isinstancer   r   to_framer   )r   r*   results      r   test_apir2   1   s    c""AVVXXFff%%%%%v;;#((--AVVXXFfi(((((v;;#r   c                  >   t          t          ddd          g dg dd                              d          } t          d	d
                                          t          dd
                                          z   }t          j                            dgd
z  dgd
z  z   |gddg          }t          ddgdz  dgz   dgdz  z   d
gz   i|          }|                     d                              d           dg         }t          j
        ||           d S )N
2016-01-01   W)r   periodsr   )r   r   r   r   )            )dategroupvalr<   z
2016-01-03r;   r7   z
2016-01-17r   r   r=   namesr>   r8   r:   r9   indexc                 P    |                      d                                          S )N1D)r(   ffillxs    r   <lambda>z+test_groupby_resample_api.<locals>.<lambda>P   s    D1A1A1G1G1I1I r   )r   r	   	set_indextolistpd
MultiIndexfrom_arraysgroupbyapplytmassert_frame_equal)dfirC   expectedr1   s        r   test_groupby_resample_apirV   =   sB    
\13GGG!\\<<	
 	

 
 i  	<+++2244
\1
-
-
-
4
4
6
6	7  M%%sQw!q'8!&<WfDU%VVE%!qA3!q!8A3!>?uMMMHZZ  &&'I'IJJE7SF&(+++++r   c                     t          ddgdz  t          dd          t          j                            d                              d          d          } |                     d	                              d
                              d          	                                }|                     d
                              dd	          	                                }t          j        ||           d S )Nr   r    r8   r4   r   r?   r   )keydatesvaluesrY   rX   Don)r   r	   r   r   r   standard_normalrJ   rO   r(   r.   rQ   rR   rS   rU   r1   s      r   test_groupby_resample_on_apir`   T   s     
:>b999i++A..>>rBB	
 	

 
B ||G$$,,U33<<SAAFFHHHZZ'''88==??F&(+++++r   c                     t          dddt          dd                    } |                                 }|                     dd	
          }|                    d           }t          j        ||           |                     d          }|                    d           }t          j        ||           t          j        	                    t          j
        ddg                              d          |j        g          |_        |                     dd
          }|                    d           }t          j        ||           d S )Nr   r   r   r    2000r   r?   rB   5DF
group_keysc                     | S Nr   rG   s    r   rI   z*test_resample_group_keys.<locals>.<lambda>k       q r   c                     | S rh   r   rG   s    r   rI   z*test_resample_group_keys.<locals>.<lambda>p   ri   r   r&   z
2000-01-06r8   Tc                     | S rh   r   rG   s    r   rI   z*test_resample_group_keys.<locals>.<lambda>x   ri   r   )r   r	   copyr(   rP   rQ   rR   rL   rM   rN   to_datetimerepeatrC   )rS   rU   gr1   s       r   test_resample_group_keysrp   e   s1   	##:fb+I+I+I	J	J	JBwwyyH 	DU++AWW[[!!F&(+++ 	DAWW[[!!F&(+++ ]..	|4	5	5	<	<Q	?	?P HN 	DT**AWW[[!!F&(+++++r   c                    |                     d          }|                                |                                z
  }|                    d           }t	          j        ||           |                      d          }|                                |                                z
  }|                    d           }t	          j        ||           d S )Nr%   c                 T    |                                  |                                 z
  S rh   maxr.   rG   s    r   rI   ztest_pipe.<locals>.<lambda>       aeegg0 r   c                 T    |                                  |                                 z
  S rh   rs   rG   s    r   rI   ztest_pipe.<locals>.<lambda>   ru   r   )r(   rt   r.   piperQ   assert_series_equalrR   )r#   r   r*   rU   r1   s        r   	test_pipery   |   s     	c""Auuww!HVV0011F68,,, 	C  Auuww!HVV0011F&(+++++r   c                    |                      d          }t          j        |j        j        | j                   |                      d          d         }|j        j        | j        d         k    sJ |                      d          d         }t          j        |j        j        | j        ddg                    |                      d          d         }t          j        |j        j        | j        ddg                    d S )Nr%   r    r   rb   r   )r(   rQ   assert_index_equal_selected_objcolumnsnamer#   r*   s     r   test_getitemr      s    C  A!/1:3EFFFC  %A?:#5a#88888 	C  *A!/1:3Eq!f3MNNNC  *A!/1:3Eq!f3MNNNNNr   rX   r[   r   c                     |                     d          }d}t          j        t          |          5  ||           d d d            d S # 1 swxY w Y   d S )Nr%   z^\"Columns not found: 'D'\"$match)r(   pytestraisesKeyError)rX   r#   ro   msgs       r   test_select_bad_colsr      s    C  A *C	xs	+	+	+  	#                 s   	A		AAc                     |                      d          }t          j        |j                                        |d                                                    d S )Nr%   r   )r(   rQ   rx   r   sumr   s     r   test_attribute_accessr      sD    C  A137799afjjll33333r   attr)groupsngroupsindicesc                    t          ddd          }t          t          j        t	          |                    |          }|                    d          }t          ||            |                                 t          ||            d S )N1/1/2012d   Sr7   r   rB   30s)r	   r   r   r"   r   r(   getattrr.   )r   rngtsrss       r   test_api_compat_before_user      s     Z3
7
7
7C		#c((##3	/	/	/B	U		B B GGIIIBr   c                 p   | }d|d<   |                     d          }|ddg                                         }t          j        |j                                        |j                                        gd          }t          j        ||           |g d                                         }t          j	        d	          }t          j        t          |
          5  |                                 d d d            n# 1 swxY w Y   |                    d          }t          j        ||           d S )Nfoor[   r%   r   r    r   axisr   z-agg function failed [how->mean,dtype->object]r   Tnumeric_only)r(   r.   rL   concatr   r    rQ   rR   reescaper   r   	TypeError)r#   rS   r*   r1   rU   r   s         r   tests_raises_on_nuisancer      sG   	BBsG
CASz]!!Fy!#((**achhjj1:::H&(+++!&&((H
)C
D
DC	y	,	,	,  	              VVV&&F&(+++++s   D  DDc                  L   t          ddd          } t          t          j        t	          |           d          |           }|                    d                                          }t          g d	t          d
dd                    }t          j        ||           d S )Nr   r   r   r   int64dtyperB   20s)r      (   <   P   2012-01-01 00:00:00r8   r   r7   )	r	   r   r   r"   r   r(   asfreqrQ   rx   )r   r   r1   rU   s       r   'test_downsample_but_actually_upsamplingr      s    
Z3
7
7
7C		#c(('222#	>	>	>B[[&&((F.UAFFF  H 68,,,,,r   c                     t          ddd          } t          t          j        t	          |                     |           }|j        g d         }|                    d                                                                          }t          g dt          j
        g d	d
d                    }t          j        ||           d S )Nr   r   r   r   rB   )r   r   r      r8   r:                  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   ilocr(   r.   rF   rL   DatetimeIndexrQ   rx   )r   r   ts2r1   rU   s        r   *test_combined_up_downsampling_of_irregularr      s    
 Z3
7
7
7C		#c((##3	/	/	/B
'888
9C\\$$$&&,,..F	
 	
 	
$   $ #)
 
 
') ) )HT 68,,,,,r   c                     |                      d          }|                     t          j        d                                        d          }|                    d          }t          j        ||           d S )N20minr   r.   )r(   rO   rL   Grouper	transformrQ   rx   )r   r*   rU   r1   s       r   test_transform_seriesr     sm    g&&A##BJG$<$<$<==GGOOH[[  F68,,,,,r   r]   r<   c                 j   t          t          ddd          t          ddd          d          }d|_        t          t          j                            d                              d          t          d	          |
          }|                    t          j
        d                                        d          }| dk    r*|                    d          }|                                }|                    d|           }|                    d          }t          j        ||           d S )Nr   r   r   r[   r   r<   r   r   r   ABr}   rC   r   r.   T)dropr\   )r	   r   r~   r   r   r   r   listrO   rL   r   r   reset_indexr(   rQ   rR   )r]   rC   rS   rU   r*   r1   s         r   test_transform_framer     s    xa++XdAr-B-BMMMEEJ	
	a  ''00$t**E
 
 
B zz"*'22233==fEEH	V||''T'22^^
G##A[[  F&(+++++r   c                     t          ddd          } t          t          j        t	          |           d          |           }|                    d          }|                                }d	}t          j        t          |
          5  |
                    d          }d d d            n# 1 swxY w Y   t          j        ||           |                                }t          j        t          |
          5  |
                    d          }d d d            n# 1 swxY w Y   t          j        ||           d}t          j        t          |
          5  t          j        t          |
          5  |
                    d           d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )Nr   r   r   r   r   r   rB   sz+DatetimeIndexResampler.fillna is deprecatedr   rF   )methodbfillzTInvalid fill method\. Expecting pad \(ffill\), backfill \(bfill\) or nearest\. Got 0r   )r	   r   r   r"   r   r(   rF   rQ   assert_produces_warningFutureWarningfillnarx   r   r   r   
ValueError)r   r   r*   rU   r   r1   msg2s          r   test_fillnar   '  s   
Z$
7
7
7C		#c(('222#	>	>	>B
CAwwyyH
7C		#M	=	=	= * *))* * * * * * * * * * * * * * *68,,,wwyyH		#M	=	=	= * *))* * * * * * * * * * * * * * *68,,,	( 	 
z	.	.	.  'SAAA 	 	HHQKKK	 	 	 	 	 	 	 	 	 	 	 	 	 	 	                 sZ   B..B25B2=D  D$'D$F39FF3F	F3"F	#F33F7:F7funcc                 0    |                      dd          S )Nr   Fre   )r(   rG   s    r   rI   rI   D  s    !**W*77 r   c                 V    |                      t          j        d          d          S )Nr   r   Fre   )rO   rL   r   rG   s    r   rI   rI   E  s#    !))BJG444)GG r   r(   rO   )idsc                 r     | |          }|                     d           }t          j        ||           d S )Nc                     | S rh   r   rG   s    r   rI   z0test_apply_without_aggregation.<locals>.<lambda>L  ri   r   )rP   rQ   rx   )r   r   tr1   s       r   test_apply_without_aggregationr   A  s?     	\AWW[[!!F6<00000r   c                     |                      d                              dd          }|d                             d           }t          j        ||                     d                     d S )Nr   )r~   r   Fre   c                     | S rh   r   rG   s    r   rI   z1test_apply_without_aggregation2.<locals>.<lambda>R  s    A r   )r0   r(   rP   rQ   rx   rename)r   groupedr1   s      r   test_apply_without_aggregation2r   P  sk    ###//88U8SSGU^!!++..F6<#6#6u#=#=>>>>>r   c                  t   t          t          j                            d                              d          t          ddd          g d          } |                     d	          }d
}t          j        t          |          5  |
                    ddd           d d d            d S # 1 swxY w Y   d S )Nr   )  r   r   r   r   r   r   rC   r}   3Tz'Column\(s\) \['r1', 'r2'\] do not existr   r.   r   r1r2r   r   r   r   r^   r	   r(   r   r   r   aggrS   r*   r   s      r   test_agg_consistencyr   V  s     

	a  00;;#t<<<
 
 
B 	DA
4C	xs	+	+	+ + +	V5))***+ + + + + + + + + + + + + + + + + +   B--B14B1c                  t   t          t          j                            d                              d          t          ddd          ddg	          } |                     d
          }d}t          j        t          |          5  |
                    ddd           d d d            d S # 1 swxY w Y   d S )Nr   )r   r   r   r   r   r   r   ar   r   z#Column\(s\) \[2, 'b'\] do not existr   r.   r   )r   br   r   s      r   'test_agg_consistency_int_str_column_mixr   f  s    	
	a  00;;#t<<<C
 
 
B 	DA
0C	xs	+	+	+ ' '	&u%%&&&' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' 'r   c            	         t          t          ddd          t          ddd          d          } d| _        t          t          j                            d                              d          t          d	          | 
          }|                                }|	                                }t          j                            t          d          |j        gddg          |_        |                    d          }||                    dd          |                    dd          |                    t          j        d                    g}|d                                         }|d                                         }|d                                         }|d                                         }	|d                                         }
|d                                         }t          j        |||	|
gd          }t          j                            ddgddgg          |_        d}|D ]m}||d         k    r|d                                         }|d                                         }t          j        |||gd          }t          j                            g dddgg          |_        t1          j        t4          |          5  |                    t          j        t          j        g          }d d d            n# 1 swxY w Y   t1          j        ||           t1          j        t4          |          5  |                    t          j        t          j        g          }d d d            n# 1 swxY w Y   t1          j        ||           ot          j        ||
gd          }|D ]}t1          j        t4          |          5  |                    t          j        t          j        d          }d d d            n# 1 swxY w Y   t1          j        ||d           t1          j        t4          |          5  |                    dt          j        fdt          j        f          }d d d            n# 1 swxY w Y   t1          j        ||d           t1          j        t4          |          5  |                    t;          dt          j                  t;          dt          j                            }d d d            n# 1 swxY w Y   t1          j        ||d           t          j        ||gd          }t          j                            ddg          |_        |D ]0}|                    dddgi          }t1          j        ||           1t          j        ||gd          }ddg|_        |D ]f}|d                             ddg          }t1          j        ||           |d                             dd          }t1          j        ||           gd}|D ]Y}t?          j         t          j!        j"        |          5  |                    ddddi           d d d            n# 1 swxY w Y   Zt          j        |||	|gd          }t          j                            g d           |_        |D ]]}t?          j         t          j!        j"        |          5  |                    dddddd!d           d d d            n# 1 swxY w Y   ^t          j        |||	|
gd          }t          j                            g d"          |_        |D ]5}|                    ddgddgd          }t1          j        ||d           6t          j        |||	|gd          }t          j                            g d#          |_        d S )$Nr   r   r   r[   r   r<   r   r   r   r   rC   r@   2Dr\   levelr   r    r   r.   stdzusing SeriesGroupBy.[mean|std])r<   r   r    r   rb   T
check_liker   r.   r   r   r   )r.   r   nested renamer is not supported)r   r   r   )r    mean2)r    sum2)r  r  )r   r  r    r.   r    r   ))r   r   r.   )r   r   r   )r   r    r.   )r   r    r   )#r	   r   r~   r   r   r   r   r   r   rl   rL   rM   rN   rangerC   r(   rO   r   r.   r   r   r   from_productr}   rQ   r   r   	aggregaterR   r   from_tuplesr   r   errorsSpecificationError)rC   rS   df_coldf_multr*   casesa_meana_stda_sumb_meanb_stdb_sumrU   r   r   	date_meandate_stdexpr1   s                      r   test_aggr  y  sZ	    xa++XdAr-B-BMMMEEJ	
	a  ''00$t**E
 
 
B ^^FkkmmGM--	rBHgv%6 .  GM 	DA	((V,,


2:4((())	E sV[[]]FcFJJLLEcFJJLLEsV[[]]FcFJJLLEcFJJLLEy&%7a@@@H}11C:2OPPH
*C 4 4a==&	((Iy}}H)Y(;!DDDC-44###fe_5 CK +MEEE 8 8bgrv%6778 8 8 8 8 8 8 8 8 8 8 8 8 8 8!&#....+MEEE 8 8bgrv%6778 8 8 8 8 8 8 8 8 8 8 8 8 8 8!&(3333y&%q111H A A'SAAA 	> 	>[[rwRV!<!<==F	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	>
fh4@@@@'SAAA 	D 	D[[C>c26][CCF	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D
fh4@@@@'SAAA 	T 	T[[8C#9#9Xc26=R=R[SSF	T 	T 	T 	T 	T 	T 	T 	T 	T 	T 	T 	T 	T 	T 	T
fh4@@@@@y&%q111H}00-1NOOH 0 0cFE?344
fh////y&%q111HH 0 03!!65/22
fh///3!!v5!99
fh////
+C ? ?]297sCCC 	? 	?KKve<<=>>>	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? y&%7a@@@H}00DDD H   ]297sCCC 	 	KK"(77#)599   	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 y&%7a@@@H}00BBB H  A AFE?&%IIJJ
fh4@@@@@y&%7a@@@H}00	
 	
 	
 Hs   ,LL	L	,NN	N	!-PP	!P	0RR	R	AT$$T(	+T(	.ZZ	Z	
\55\9	<\9	c            	         t          t          ddd          t          ddd          d          } d| _        t          t          j                            d                              d          t          d	          | 
          }|                                }|	                                }t          j                            t          d          |j        gddg          |_        |                    d          }||                    dd          |                    dd          |                    t          j        d                    g}d}|D ]}t%          j        t(          |          5  |                    t          j        d d          }d d d            n# 1 swxY w Y   |d                             d           }	t          j        |d                                         |	gd          }
t%          j        ||
d           t%          j        t(          |          5  |                    dt          j        fdd f          }d d d            n# 1 swxY w Y   t%          j        ||
d           t%          j        t(          |          5  |                    t5          dt          j                  t5          dd                     }d d d            n# 1 swxY w Y   t%          j        ||
d           t          j        |d                                         |d                                         |d                                         |d                                         gd          }
t          j                            g d          |
_        d}|D ]V}t=          j        t@          |          5  |ddg                             t          j        t          j        d           d d d            n# 1 swxY w Y   t=          j        t@          |          5  |ddg                             dt          j        fd t          j        f           d d d            n# 1 swxY w Y   t=          j        t@          |          5  |ddg                             t5          dt          j                  t5          d t          j                             d d d            n# 1 swxY w Y   Xt          j        |d                                         |d         !                                |d                                         |d         !                                gd          }
t          j                            g d!          |
_        |D ]5}|                    d"d#gd$d#gd          }t%          j        ||
d           6|D ]=}|ddg                             d"d#gd$d#gd          }t%          j        ||
d           >d%}|D ]}t=          j        t          j"        j#        |          5  |d                             dd"d#gi           d d d            n# 1 swxY w Y   t=          j        t          j"        j#        |          5  |d                             d"d#gd$d#gd           d d d            n# 1 swxY w Y   d&}|D ]X}t=          j        t@          |          5  |dg                             d"d#gd$d#gd           d d d            n# 1 swxY w Y   Yd S )'Nr   r   r   r[   r   r<   r   r   r   r   rC   r@   r   r\   r   zusing SeriesGroupBy.sumr   c                 .    t          j        | d          S Nr   )ddofr   r   rG   s    r   rI   ztest_agg_misc.<locals>.<lambda>  s    qq8I8I8I r   rb   r    c                 .    t          j        | d          S r  r  rG   s    r   rI   ztest_agg_misc.<locals>.<lambda>  s    ):):): r   r   r   Tr   c                 .    t          j        | d          S r  r  rG   s    r   rI   ztest_agg_misc.<locals>.<lambda>  s    bfQQ>O>O>O r   c                 .    t          j        | d          S r  r  rG   s    r   rI   ztest_agg_misc.<locals>.<lambda>  s    26!RSCTCTCT r   ))result1r   )r#  r    )result2r   )r$  r    z1Column\(s\) \['result1', 'result2'\] do not exist)r#  r$  r#  r$  )r  r  r  r  r   r   r.   r  z Column\(s\) \['B'\] do not exist)$r	   r   r~   r   r   r   r   r   r   rl   rL   rM   rN   r  rC   r(   rO   r   rQ   r   r   r   r   rP   r   rR   r   r.   r  r}   r   r   r   r   r  r  )rC   rS   r  r  r*   r  r   r   r1   rcustomrU   s              r   test_agg_miscr&    st	    xa++XdAr-B-BMMMEEJ	
	a  ''00$t**E
 
 
B ^^FkkmmGM--	rBHgv%6 .  GM 	DA	((V,,


2:4((())	E $C A A'SAAA 	L 	LUU.I.IJJKKF	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	LC&,,::;;9afjjllG41===
fh4@@@@'SAAA 	R 	RUUc26]s4O4O.PUQQF	R 	R 	R 	R 	R 	R 	R 	R 	R 	R 	R 	R 	R 	R 	R
fh4@@@@'SAAA 	 	UU3''8C9T9T+U+U   F	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	fh4@@@@@ y	
3qvzz||QsV[[]]AcFKKMMB  H }00PPP H ?C 
 
]83/// 	G 	GsCjM"&RWEEFFF	G 	G 	G 	G 	G 	G 	G 	G 	G 	G 	G 	G 	G 	G 	G ]83/// 	M 	MsCjMBF 3	277KLLL	M 	M 	M 	M 	M 	M 	M 	M 	M 	M 	M 	M 	M 	M 	M ]83/// 	 	sCjM9bf--)RW1M1M    	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 y	
3qvzz||QsV[[]]AcFJJLLA  H }00AAA H  A AeU^65/BBCC
fh4@@@@@  A AC:""%vuo#N#NOO
fh4@@@@@
+C  D D]297sCCC 	. 	.cFJJeU^,---	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. ]297sCCC 	D 	DcFJJeU^65/BBCCC	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D
 .C F F]83/// 	F 	FseHLLu~VUODDEEE	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	FF Fs   8$F((F,	/F,	1'I$$I(	+I(	!?K,,K0	3K0	5PP	P	98Q==R	R	#AS??T	T	 Y;;Y?	Y?	+#[[	![	$\77\;	>\;	minr.   rt   r   prodmedianrb   c                 F   t          t          ddd          t          ddd          d          }d|_        t          t          j                            d                              d          t          d	          |
          j        }d}t          j
        t          |          5  |                    dd          }t          j        t          d          5  |                    |            d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )Nr   r   r   r[   r   r<   r   r   r   r   -DataFrame.resample with axis=1 is deprecated.r   Mr   z"axis other than 0 is not supported)r	   r   r~   r   r   r   r   r   TrQ   r   r   r(   r   r   NotImplementedErrorr   )r   rC   rS   warning_msgress        r   test_multi_agg_axis_1_raisesr1  K  s    xa++XdAr-B-BMMMEEJ	
	a  ''00$t**E
 
 
  BK		#M	E	E	E  kk#Ak&&]'K
 
 
 	 	 GGDMMM	 	 	 	 	 	 	 	 	 	 	 	 	 	 	                 s6   )3DC>2D>D	DD	DDDc                     t          t          ddd          t          ddd          d          } d| _        t          t          j                            d                              d          t          d	          | 
          }|                                }|	                                }t          j                            t          d          |j        gddg          |_        |                    d          }||                    dd          |                    dd          |                    t          j        d                    g}d}|D ]_}t%          j        t          j        j        |          5  |                    dddgidddgid           d d d            n# 1 swxY w Y   `|D ]}t%          j        t          j        j        |          5  |ddg                             dddgidddgid           d d d            n# 1 swxY w Y   t%          j        t          j        j        |          5  |                    dddgidddgid           d d d            n# 1 swxY w Y   d S )Nr   r   r   r[   r   r<   r   r   r   r   rC   r@   r   r\   r   r  r   r   r.   r   r    r   rar   rbrb   )r	   r   r~   r   r   r   r   r   r   rl   rL   rM   rN   r  rC   r(   rO   r   r   r   r  r  r
  r   )rC   rS   r  r  r*   r  r   r   s           r   test_agg_nested_dictsr5  _  sh   xa++XdAr-B-BMMMEEJ	
	a  ''00$t**E
 
 
B ^^FkkmmGM--	rBHgv%6 .  GM 	DA	((V,,


2:4((())	E ,C V V]297sCCC 	V 	VKKfe_5cFE?=STTUUU	V 	V 	V 	V 	V 	V 	V 	V 	V 	V 	V 	V 	V 	V 	V  P P]297sCCC 	 	sCjMfe_-TFE?4KLL  	 	 	 	 	 	 	 	 	 	 	 	 	 	 	
 ]297sCCC 	P 	PEE/tfe_6MNNOOO	P 	P 	P 	P 	P 	P 	P 	P 	P 	P 	P 	P 	P 	P 	PP Ps6   !F..F2	5F2	#)HH	H	!I55I9	<I9	c                     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
          |          5  |                    d                              dgdgdgd           d d d            d S # 1 swxY w Y   d S )Ni  r9   r   r   g      ?g       @)dtrH   yr   g      @g      ?r7  z Column\(s\) \['z'\] do not existr   30Tr.   r)  r   )rH   r8  z)r   r   rJ   r   r   r   r(   r   )datarS   r   s      r   &test_try_aggregate_non_existing_columnr<    s;    aA&&Ss;;aA&&Ss;;aA&&Ss;;D
 
4	"	"4	(	(B .C	xs	+	+	+ O O
EfXXJeWMMNNNO O O O O O O O O O O O O O O O O Os   0B>>CCc                  >   t          dg dit          ddd                    } dd
}dd}d}t          j        t          |          5  |                     d                              ||gddd           d d d            n# 1 swxY w Y   |                     d                              ||gdd          }t          ddgddgddggt          ddd          t          j        	                    ddg                    }t          j        ||           d S )NrH   )r   r   r   
2020-01-01r   r[   r   rB   r   r   c                     | |z   |z   S rh   r   )rH   r   cs      r   foo1z/test_agg_list_like_func_with_args.<locals>.foo1      1uqyr   r   c                     | |z   |z   S rh   r   )rH   r   r@  s      r   foo2z/test_agg_list_like_func_with_args.<locals>.foo2  rB  r   z/foo1\(\) got an unexpected keyword argument 'b'r   r5   )r   r@  )r@  r;   	   r   )rH   rA  )rH   rD  r   )r   r   )r   r   )r   r	   r   r   r   r(   r   rL   rM   r  rQ   rR   )rS   rA  rD  r   r1   rU   s         r   !test_agg_list_like_func_with_argsrF    s   		iii
< M M M
 
 
B       =C	y	,	,	, 8 8
CdD\1Q7778 8 8 8 8 8 8 8 8 8 8 8 8 8 8 [[!!4,Q!77F
Q!Q"b"qs;;;))=-*HII  H
 &(+++++s   /BB
B
c                  d   t          t          ddd          t          ddd          d          } t          j        t	          |           t          j                  }t          | |dt          j        	                    || gdd	g
                    }t          d|i|           }d}t          j        t          |          5  |                    dd           d d d            n# 1 swxY w Y   d}t          j        t          |          5  |                    ddd	           d d d            n# 1 swxY w Y   d}t          j        t          |          5  |                    dddg           d d d            n# 1 swxY w Y   d}t          j        t          |          5  |                    dddg           d d d            n# 1 swxY w Y   d}t          j        t          |          5  |                    dd	                                           d d d            n# 1 swxY w Y   t          j        t          |          5  |                    dd                                           d d d            n# 1 swxY w Y   |                    d                                          }d|j        _        |                    dd                                          }t)          j        ||           d	|j        _        t          j        t          d          5  |                    dd	                                           d d d            n# 1 swxY w Y   |                    dd	                              d          }t)          j        ||           d S )Nr   r   r   r[   r   r   )r<   r   vdr@   rB   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!r<   )r]   r   zunhashable type: 'list'r\   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   rL   rM   rN   r   r   r   r(   r   r   r   r   rC   r~   rQ   rR   )rC   r   rS   df_expr   r  r1   s          r   test_selection_api_validationrK    s"   xa++XdAr-B-BMMME
)CJJbh
/
/
/C	S!!m''eS#J'GG
 
 
B Sz///F	)  
y	,	,	, % %
D$$$% % % % % % % % % % % % % % % ?C	z	-	-	- 0 0
DV3///0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 $C	y	,	,	, , ,
Dc6]+++, , , , , , , , , , , , , , , 1C	xs	+	+	+ / /
Df.../ / / / / / / / / / / / / / /
	J  
z	-	-	- . .
D$$++---. . . . . . . . . . . . . . .	z	-	-	- . .
DV$$++---. . . . . . . . . . . . . . . //$


#
#
%
%CCIN[[&[))--//F#v&&&CIN	y(N	O	O	O + +
D$$((***+ + + + + + + + + + + + + + +[[S[))--4-@@F#v&&&&&s~   C))C-0C-D66D:=D:FFF,GGG:*H00H47H4*JJJ/*M%%M),M)col_name)t2t2xt2qT_2Mt2pt2mt2m1T2Mc           	         t          t          t          d                    t          dddd          | g          }|                    d                              dg          }t          g d	t          dd
dd          t          j        | gdggdgdgg                    }t          j	        ||           d S )N   z
2017-01-0115minzEurope/Berlin)r   r   r7   tzr   1dr.   )g     G@g     a@g     ph@r[   r   r   )levelscodes)
r   r   r  r	   r(   r
  rL   rM   rQ   rR   )rL  rS   r1   rU   s       r   *test_agg_with_datetime_index_list_agg_funcr\    s     
U3ZZWco
 
 
 

 
 
B [[((&22F|#q_UUUxj6(%;QC!:NNN  H
 &(+++++r   c                     t          ddd          } t          j        |           }|                    d           t	          ||           }|                    d          }t	          t          j        d	          t          j        d	          g| d d d
                   }|                    d          }t          j
        ||           |                    d          }t          j
        ||           |                    d          }t          j
        ||           |                    d          }t          j
        ||           d S )Nr>  z
2020-01-021hr   F)writerB   rE   r      lastfirstrt   r'  )r	   r   
zeros_likesetflagsr   r(   rL   	Timestampr   rQ   rx   )rC   arrserr   rU   r1   s         r   test_resample_agg_readonlyrh    s   |\===E
-

CLLuL
E
"
"
"C	d		Br|AQ8dddLLLHVVF^^F68,,,VVG__F68,,,VVE]]F68,,,VVE]]F68,,,,,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:007min)	r   r   r9   rE     r         r`  17minr   )r   rk     ?   z20001002 00:26:00r5   z20200101 8:26:35z20200101 9:31:5877sr   3   right)
r   r9   r8   r9   r8   r9   r8   r9   r8   r9   z2020-01-01 09:30:45r   left)r   rk  rn  '   r`  z20001002 00:43:00r8   end_day)r   r   -   rv  z2000-10-02 00:29:00c
                    t          | ||          }
t          ||
          }|                    |||                                          }t          |t          |||	                    }t	          j        ||           d S )Nr   rB   )r'   closed)r   r   r7   )r	   r   r(   r   rQ   rx   )r   r   r   r;  resample_freqr'   rx  exp_dataexp_endexp_periodsr   r   r0  rU   s                 r   test_end_and_end_day_originr}    s    B UCd
+
+
+C	C	 	 	 B
++mF6+
B
B
F
F
H
HCW=+NNN  H
 3)))))r   z#method, numeric_only, expected_dataTnumr   F
cat_1cat_2catr~  r   )r(  Fcan't multiply sequencer  cat_1r   cat_2rb  ra  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                 D   t          ddd          }t          ddd          }t          dd	gd
dgd|          }|                    d          }|t          j        u ri }nd|i}t          ||           }t          |t                    rf| dv r t          }	t          j
        d|  d          }
n	t          }	|}
t          j        |	|
          5   |di |}d d d            d S # 1 swxY w Y   d S  |di |}t          ||          }t          j        ||           d S )N
2018-01-01r   r[   r   
2018-12-31r   Yr  r  r8   r   r  rB   r   )r  r.   r)  r(  zagg function failed [how->z,dtype->object]r   r   )r	   r   r(   r   
no_defaultr   r/   r)   r   r   r   r   r   r   rQ   rR   )r   r   expected_datarC   expected_indexrS   	resampledkwargsr   klassr   _r1   rU   s                 r   test_frame_downsample_methodr  \  s   T |QS999EacBBBN	GW-q"g>>e	L	L	LBC  Is~%% ,/9f%%D-%% 0666E)PPPPQQCCEC]5,,, 	 	vA	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ].AAA
fh/////s   	C%%C),C))r   Tr   )r(  Tr   )r(  Fr   r   )r'  Tr   )rt   Tr   )rb  Tr   )ra  Tr   c                    t          ddd          }t          ddd          }t          dd	g|
          }|                    d          }|t          j        u ri nd|i}t          ||           }|rQ|t          j        urCd|  }	t          j        t          |	          5   |di | d d d            d S # 1 swxY w Y   d S | dk    rRt          j
        d          }	t          j        t          |	          5   |di | d d d            d S # 1 swxY w Y   d S  |di |}
t          ||
          }t          j        |
|           d S )Nr  r   r[   r   r  r   r  r  r  rB   r   z1Cannot use numeric_only=True with SeriesGroupBy\.r   r(  z-agg function failed [how->prod,dtype->object]r   )r	   r   r(   r   r  r   r   r   r   r   r   rQ   rx   )r   r   r  rC   r  rS   r  r  r   r   r1   rU   s               r   test_series_downsample_methodr    s   4 |QS999EacBBBN	'"%	0	0	0BC  I3>11RR7UF9f%%D 1CN::K6KK]9C000 	 	DNN6NNN	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 		6		iGHH]9C000 	 	DNN6NNN	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 -~>>>
vx00000s$   !	B77B;>B;9	DDDzmethod, raises))r   T)r(  T)r'  T)rt   T)rb  F)ra  F)r)  F)r.   T)r   T)r  T)r  F)ohlcF)nuniqueFc                    t          ddd          }t          g d|          }|                    d          }d}t          ||           }d	}d
}d|  }	|rwt	          j        t          |	          5  t          j        t          |          5   |g |dddR   d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S t	          j        t          |	          5  t          j        t          |          5   |g |dddR   d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )N20180101r   hr   )r   r5   r9   rB   30minr   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   rQ   r   r   r   r   r   r   )
r   r   rC   rS   r  argsr   	error_msgerror_msg_typewarn_msgs
             r   test_args_kwargs_deprr    s   & z13777E					'	'	'BG$$ID9f%%D?I3NLFLLH %'XFFF 	% 	%6iHHH % %$d$A$q$!$$$$% % % % % % % % % % % % % % %	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 'XFFF 	% 	%y??? % %$d$A$q$!$$$$% % % % % % % % % % % % % % %	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	%sl   3CB*C*B.	.C1B.	2CC	C*D9D!D9!D%	%D9(D%	)D99D= D=c                  \   t          t          ddd          t          ddd          d          } d| _        t          t          j                            d                              d          t          d	          | 
          j        }d}t          j
        t          |          5  |                    dd           d d d            n# 1 swxY w Y   |j        }d}t          j
        t          |          5  |                    dd           d d d            d S # 1 swxY w Y   d S )Nr   r   r   r[   r   r<   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   r~   r   r   r   r   r   r-  rQ   r   r   r(   )rC   rS   r/  s      r   test_df_axis_param_deprr    s   xa++XdAr-B-BMMMEEJ	
	a  ''00$t**E
 
 
 
 BK		#M	E	E	E ! !
Ca   ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! 
B	/  
	#M	E	E	E ! !
Ca   ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !s$   )CCC<D!!D%(D%c                     d}t          j        t          |          5  |                     dd           d d d            d S # 1 swxY 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   )rQ   r   r   r(   )r   r/  s     r   test_series_axis_param_deprr    s    	>  
	#M	E	E	E + +c***+ + + + + + + + + + + + + + + + + +s   AA
Ac                     t          t          j        g d                    } t          t          j        g d                    }|                     d                                          }t          j        ||           d S )N)2018-01-01 00:00:00z2018-01-01 12:00:002018-01-02 00:00:00rB   )r  z2018-01-01 08:00:00z2018-01-01 16:00:00r  8H)r   rL   rm   r(   r.   rQ   rR   r_   s      r   test_resample_emptyr    s    	nQQQ
 

 
 
B
 n  
 
	 	 	H [[##%%F&(+++++r   )>r   r   numpyr   r   pandas._libsr   pandas.errorsr   pandasrL   r   r   r   pandas._testing_testingrQ   pandas.core.indexes.datetimesr	   fixturer   r   r#   r+   r2   rV   r`   rp   ry   r   markparametrizer   r   r   r   r   r   r   r   r   r   r   r   r   r  r&  r1  r5  r<  rF  rK  r\  rh  r}  r  r  r  r  r  r  r  r   r   r   <module>r     sz	         				            1 1 1 1 1 1             
       4 4 4 4 4 4 Y Y Y B B B W W W  	 	 	, , ,., , ,", , ,., , , O O O #c
 344  544 4 4
 !A!A!ABB  CB, , , 	- 	- 	-4- 4- 4-n- - - f~.., , /.,$  4 
77GG 
Y   1 1 1? ? ?+ + + ' ' '&o o od]F ]F ]F@ 
eWvuoU|65Q5QR   "P P PDO O O, , ,22' 2' 2'j III , , ,,- - -0 R "!,,,OO	
 C"H***!	
 "!,,,	
 "!,,,OO!	
K14 4j* *k4 4j*0 )"	urdm$"	~rd;;<" 
t D DE" 
u~&	"
 	3" 
!:;" 
uqcl#" 
y!556" 
	1# > >?" 
urdm$" 
y"667" 
	2$ ? ?@" 
$%" 
%'A3778" 
#.7)QC"@"@A"  
t}%!"" 
	2$778#"$ 
'B4!@!@A%"& 
v''"( 	-)"* 
!45+", 
4%$)-". 	L/"0 
3>#ST1"2 
u12343"4 	<5"6 
 CD7"8 
uug&'9": 	<;"< 
 CD="> 
usen%?"@ 	<A"B 
 CDC"& &N0 0O& &N08 )	~&	/	$	y!		*	y!		*	%'#	#.7),		"	'+% .1 1/ .10    $% %% $%,! ! !,+ + +, , , , ,r   