
    bMh8                        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,ej        d+             Z-ej        d,             Z.ej        d-             Z/ej        d.             Z0ej        d/             Z1ej        d0             Z2ej        d1             Z3ej        d2             Z4ej        d3             Z5ej        d4             Z6ej        d5             Z7ej        d6             Z8ej        d7             Z9ej        d8             Z: ej        g d9:          d;             Z;d< Z<ej                            d=d!ej=        ej>        d>idej=        fd?ej>        fd> edej=                   ed?ej>                  d>g          d@             Z?dA Z@ej                            d=d!dBdCgidBdCdDg          dE             ZAej                            d=ddBdCdDidBdCdDdBdCdFd>g          dG             ZBdH ZCej                            d=d!ejD        dI d>idejD        fd?dJ fd> edejD                   ed?dK           d>g          dL             ZEej                            d=d!ejD        ej=        dMidNejD        fdOej=        fd> edNejD                   edOej=                  d>g          dP             ZFej                            dQddCdRgdBdRgd>gdd?gdCdRgdBdRgd>gg          dS             ZGej                            d=ddCdRgidCdRgdBdRgd>g          dT             ZHdU ZIej                            d!dVgdBdWgddCidXdYd>g          dZ             ZJd[ ZKd\ ZLd] ZMd^ ZNej                            d_g d`          da             ZOdb ZPej                            dcdddedfg dgdhdidg djdkdlf
dmdndodpgdqz  dfdidrg dsdtduf
dddedfg dgdhdidvg dwdxdyf
dddedfg dgdhdzdg d{d|dlf
g          d}             ZQej                            d~g dCdddgifdCddgdgdfdCejR        dgdgdfdXdddgifddXejR        dfdVdddygifdVddgdygdfdVejR        dgdygdfdWdddgifdWddgdgdfdWejR        dgdgdfddddygifdddgdygdfdejR        dgdygdfddddgifdddgdgdfdejR        dgdgdfdBdddgifddBejR        dfdYdddgifddYejR        dfdRdddgifddRejR        dfddddgifddejR        dfddddgifddejR        df          d             ZSej                            d~ddCddgfdCejR        dgfdddXejR        dfddVddgfdVejR        dgfddWddgfdWejR        dgfddddgfdejR        dgfddddgfdejR        dgfg          d             ZTej                            dg d          d             ZUd ZVd ZWd ZXd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        g/var/www/html/test/jupyter/venv/lib/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}t          j        t          |          5  | 
                    d                              d           dg         }d d d            n# 1 swxY w Y   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   indexz7DataFrameGroupBy.apply operated on the grouping columnsmatchc                 P    |                      d                                          S )N1D)r(   ffillxs    r   <lambda>z+test_groupby_resample_api.<locals>.<lambda>R   s    QZZ5E5E5K5K5M5M r   )r   r	   	set_indextolistpd
MultiIndexfrom_arraystmassert_produces_warningFutureWarninggroupbyapplyassert_frame_equal)dfirC   expectedmsgr1   s         r   test_groupby_resample_apir[   =   s    
\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
CC		#M	=	=	= X XG$$**+M+MNNPUwWX X X X X X X X X X X X X X X&(+++++s   51D22D69D6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valuesr^   r]   Don)r   r	   r   r   r   standard_normalrL   rT   r(   r.   rQ   rV   rW   rY   r1   s      r   test_groupby_resample_on_apire   V   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                              d          |j        g          |_        |                     dd
          }|                    d           }t          j        ||           d S )Nr   r   r   r    2000r   r?   rB   5DF
group_keysc                     | S Nr   rI   s    r   rK   z*test_resample_group_keys.<locals>.<lambda>m       q r   c                     | S rm   r   rI   s    r   rK   z*test_resample_group_keys.<locals>.<lambda>r   rn   r   r&   z
2000-01-06nsr8   Tc                     | S rm   r   rI   s    r   rK   z*test_resample_group_keys.<locals>.<lambda>}   rn   r   )r   r	   copyr(   rU   rQ   rV   rN   rO   rP   to_datetimeas_unitrepeatrC   )rW   rY   gr1   s       r   test_resample_group_keysrw   g   sB   	##:fb+I+I+I	J	J	JBwwyyH 	DU++AWW[[!!F&(+++ 	DAWW[[!!F&(+++ ]..NL,788@@FFMMaPPN	
 HN 	DT**AWW[[!!F&(+++++r   c                    |                     d          }|                                |                                z
  }|                    d           }t	          j        ||           |                      d          }|                                |                                z
  }|                    d           }t	          j        ||           d S )Nr%   c                 T    |                                  |                                 z
  S rm   maxr.   rI   s    r   rK   ztest_pipe.<locals>.<lambda>       aeegg0 r   c                 T    |                                  |                                 z
  S rm   rz   rI   s    r   rK   ztest_pipe.<locals>.<lambda>   r|   r   )r(   r{   r.   piperQ   assert_series_equalrV   )r#   r   r*   rY   r1   s        r   	test_piper      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   rg   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   r]   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'\"$rD   )r(   pytestraisesKeyError)r]   r#   rv   rZ   s       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   r   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                 x   | }d|d<   |                     d          }|ddg                                         }t          j        |j                                        |j                                        gd          }t          j        ||           |g d                                         }t          j	        d	          }|r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->z-dtype 'str' does not support operation 'mean'rD   Tnumeric_only)r(   r.   rN   concatr   r    rQ   rV   reescaper   r   	TypeError)r#   using_infer_stringrW   r*   r1   rY   rZ   s          r   tests_raises_on_nuisancer      sT   	BBsG
CASz]!!Fy!#((**achhjj1:::H&(+++!&&((H
)<
=
=C >=	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   r   )r   r   r1   rY   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])r   r   )r	   r   r   r"   r   ilocr(   r.   rH   rN   DatetimeIndexrQ   r   )r   r   ts2r1   rY   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(   rT   rN   Grouper	transformrQ   r   )r   r*   rY   r1   s       r   test_transform_seriesr     sm    g&&A##BJG$<$<$<==GGOOH[[  F68,,,,,r   rb   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)dropra   )r	   r   r   r   r   r   r   listrT   rN   r   r   reset_indexr(   rQ   rV   )rb   rC   rW   rY   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   r   z+DatetimeIndexResampler.fillna is deprecatedrD   rH   )methodbfillzTInvalid fill method\. Expecting pad \(ffill\), backfill \(bfill\) or nearest\. Got 0r   )r	   r   r   r"   r   r(   rH   rQ   rR   rS   fillnar   r   r   r   
ValueError)r   r   r*   rY   rZ   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   Frj   r(   rI   s    r   rK   rK   K  s    !**W*77 r   c                 V    |                      t          j        d          d          S )Nr   r   Frj   rT   rN   r   rI   s    r   rK   rK   L  s#    !))BJG444)GG r   r(   rT   )idsc                 r     | |          }|                     d           }t          j        ||           d S )Nc                     | S rm   r   rI   s    r   rK   z0test_apply_without_aggregation.<locals>.<lambda>S  rn   r   )rU   rQ   r   )r   r   tr1   s       r   test_apply_without_aggregationr   H  s?     	\AWW[[!!F6<00000r   c                     |                      d                              dd          }|d                             d           }t          j        ||                     d                     d S )Nr   )r   r   Frj   c                     | S rm   r   rI   s    r   rK   z1test_apply_without_aggregation2.<locals>.<lambda>Y  s    A r   )r0   r(   rU   rQ   r   rename)r   groupedr1   s      r   test_apply_without_aggregation2r   W  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   3minz'Column\(s\) \['r1', 'r2'\] do not existrD   r.   r   r1r2r   r   r   r   rc   r	   r(   r   r   r   aggrW   r*   rZ   s      r   test_agg_consistencyr   ]  s     

	a  00;;#t<<<
 
 
B 	F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 existrD   r.   r   )r   br   r   s      r   'test_agg_consistency_int_str_column_mixr   m  s    	
	a  00;;#t<<<C
 
 
B 	FA
0C	xs	+	+	+ ' '	&u%%&&&' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' 'r   c                  t    t          t          ddd          t          ddd          d          } d| _        | S )Nr   r   r   r`   r   r<   )r	   r   r   rB   s    r   rC   rC     s:    xa++XdAr-B-BMMMEEJLr   c                     t          t          j                            d                              d          t	          d          |           }|S )Nr   r   r   r   )r   r   r   r   r   )rC   frames     r   rW   rW     sH    
	a  ''00$t**E  E Lr   c                 *    |                                  S rm   )r   rW   s    r   df_colr    s    >>r   c                     |                                  }t          j                            t	          d          |gddg          |_        |S )Nr   rC   r<   r@   )rr   rN   rO   rP   rangerC   )r  rC   df_mults      r   r  r    sI    kkmmGM--	rE7F"3 .  GM Nr   c                 \    |                      d          d                                         S N2Dr   r(   r.   r   s    r   a_meanr	    %    ;;tS!&&(((r   c                 \    |                      d          d                                         S r  r(   stdr   s    r   a_stdr    %    ;;tS!%%'''r   c                 \    |                      d          d                                         S r  r(   r   r   s    r   a_sumr    r  r   c                 \    |                      d          d                                         S Nr  r    r  r   s    r   b_meanr    r
  r   c                 \    |                      d          d                                         S r  r  r   s    r   b_stdr    r  r   c                 \    |                      d          d                                         S r  r  r   s    r   b_sumr    r  r   c                 ,    |                      d          S )Nr  r   r   s    r   df_resampler    s    ;;tr   c                 0    |                      dd          S )Nr  r<   ra   r   )r  s    r   df_col_resampler    s    ??4F?+++r   c                 0    |                      dd          S )Nr  r<   levelr   )r  s    r   df_mult_resampler!    s    D///r   c                 R    |                      t          j        d                    S )Nr  r   r   r   s    r   df_grouper_resampler#    s!    ::bjd+++,,,r   )r  r  r!  r#  )paramsc                 6    |                      | j                  S rm   )getfixturevalueparam)requests    r   casesr)    s     ""7=111r   c                    t          j        ||||gd          }t           j                            ddgddgg          |_        d}d|j        j        j        v rw| d	                                         }| d	         	                                }	t          j        ||	|gd          }t           j                            g d
ddgg          |_        t          j        t          |          5  |                     t          j        t          j	        g          }
d d d            n# 1 swxY w Y   t          j        |
|           d S )Nr   r   r   r    r.   r  using SeriesGroupBy.[mean|std]r  r<   )r<   r   r    rD   )rN   r   rO   from_productr   nodecallspecidr.   r  rQ   rR   rS   	aggregater   rV   )r)  r	  r  r  r  r(  rY   rZ   	date_meandate_stdr1   s              r   !test_agg_mixed_column_aggregationr3    sm   y&%7a@@@H}11C:2OPPH
*CGL),,,&M&&((	=$$&&9i8<1EEE=55&%1
 
 
	#M	=	=	= 4 4"'26!2334 4 4 4 4 4 4 4 4 4 4 4 4 4 4&(+++++s   ,,D$$D(+D(r   rg   r    c                     d}t          j        ||gd          }t          j        t          |          5   | j        di |}d d d            n# 1 swxY w Y   t          j        ||d           d S )Nr+  r   r   rD   T
check_liker   )rN   r   rQ   rR   rS   r0  rV   )r)  r	  r  r   rZ   rY   r1   s          r   #test_agg_both_mean_std_named_resultr7    s     +Cy&%q111H		#M	=	=	= ( ( ''3''( ( ( ( ( ( ( ( ( ( ( ( ( ( (&(t<<<<<<s   AAAc                     t          j        ||gd          }t           j                            ddg          |_        |                     dddgi          }t          j        ||           d S )Nr   r   r   r.   r   r  r   r.   r  rN   r   rO   from_tuplesr   r0  rQ   rV   )r)  r	  r  rY   r1   s        r   #test_agg_both_mean_std_dict_of_listr=    sj    y&%q111H}00-1NOOH__cFE?344F&(+++++r   r.   r   )r.   r   c                     t          j        ||gd          }ddg|_         | d         j        di |}t	          j        ||           d S )Nr   r   r.   r   r   r   )rN   r   r   r0  rQ   rV   )r)  r	  r  r   rY   r1   s         r   test_agg_both_mean_sumr?    s]     y&%q111HH!U3Z!((C((F&(+++++r   )mean2sum2c                     d}t          j        t          j        j        |          5  |                     |           d d d            d S # 1 swxY w Y   d S )Nnested renamer is not supportedrD   )r   r   rN   errorsSpecificationErrorr0  r)  r   rZ   s      r   (test_agg_dict_of_dict_specificationerrorrG    s     ,C	ry33	?	?	?                   s   AAAc                     t          j        ||||gd          }t           j                            g d          |_        |                     ddgddgd          }t          j        ||d           d S )	Nr   r   )r9  r:  r    r.   r    r  r.   r  rg   Tr5  r;  )r)  r	  r  r  r  rY   r1   s          r   test_agg_dict_of_listsrK    s    y&%7a@@@H}00BBB H __FE?&%IIJJF&(t<<<<<<r   c                 .    t          j        | d          S Nr   )ddofr   r  rI   s    r   rK   rK   $  s    bfQQ.?.?.? r   c                 .    t          j        | d          S rM  rO  rI   s    r   rK   rK   %  s    "&2C2C2C r   c                 .    t          j        | d          S rM  rO  rI   s    r   rK   rK   &  s    "&QRBSBSBS r   c                 P   d}| d                              d           }t          j        | d                                         |gd          }t	          j        t          |          5   | j        d
i |}d d d            n# 1 swxY w Y   t	          j        ||d	           d S )Nzusing SeriesGroupBy.sumr    c                 .    t          j        | d          S rM  rO  rI   s    r   rK   z&test_agg_with_lambda.<locals>.<lambda>,  s    ):):): r   r   r   r   rD   Tr5  r   )	rU   rN   r   r   rQ   rR   rS   r   rV   )r)  r   rZ   rcustomrY   r1   s         r   test_agg_with_lambdarU  !  s     $CCj::;;Gy%*..**G41===H		#M	=	=	= " "!!S!!" " " " " " " " " " " " " " "&(t<<<<<<s   *BBB)result1result2rV  rW  c                     d}t          j        t          |          5   | ddg         j        di | d d d            d S # 1 swxY w Y   d S )Nz1Column\(s\) \['result1', 'result2'\] do not existrD   r   r    r   r   r   r   r   rF  s      r   test_agg_no_columnrZ  3  s     ?C	xs	+	+	+ % %sCj$$$$$% % % % % % % % % % % % % % % % % %s   AAAz	cols, aggr  c                     t          j        ||||gd          }t           j                            g d          |_        |	| |         }n| }|                    |          }	t          j        |	|d           d S )Nr   r   ))r   r   r:  rI  rJ  Tr5  )rN   r   rO   r<  r   r   rQ   rV   )
r)  colsr   r  r  r  r  rY   objr1   s
             r   "test_agg_specificationerror_nestedr^  A  s      y%6Q???H}00AAA H DkWWS\\F&(t<<<<<<r   c                     d}t          j        t          j        j        |          5  | d                             |           d d d            d S # 1 swxY w Y   d S )NrC  rD   r   )r   r   rN   rD  rE  r   rF  s      r   "test_agg_specificationerror_seriesr`  ^  s     ,C 
ry33	?	?	?  c
s                 s   AAAc                     d}t          j        t          |          5  | dg                             ddgddgd           d d d            d S # 1 swxY w Y   d S )Nz Column\(s\) \['B'\] do not existrD   r   r   r  r.   rg   rY  )r)  rZ   s     r   )test_agg_specificationerror_invalid_namesrb  i  s     .C	xs	+	+	+ F Fseu~VUODDEEEF F F F F F F F F F F F F F F F F Fs   $AAAminr{   prodmedianc                 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.rD   MEr   z"axis other than 0 is not supported)r	   r   r   r   r   r   r   r   TrQ   rR   rS   r(   r   r   NotImplementedErrorr   )r   rC   rW   warning_msgress        r   test_multi_agg_axis_1_raisesrm  q  s    xa++XdAr-B-BMMMEEJ	
	a  ''00$t**E
 
 
  BK		#M	E	E	E  kk$Qk'']'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  ra   r  rC  rD   r   r.   r   r    r   rar  rbrg   )r	   r   r   r   r   r   r   r   r   rr   rN   rO   rP   r  rC   r(   rT   r   r   r   rD  rE  r0  r   )rC   rW   r  r  r*   r)  rZ   r   s           r   test_agg_nested_dictsrq    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       @)dtrJ   yr   g      @g      ?rs  z Column\(s\) \['z'\] do not existrD   30minr.   re  r   )rJ   rt  z)r   r   rL   r   r   r   r(   r   )datarW   rZ   s      r   &test_try_aggregate_non_existing_columnrx    s;    aA&&Ss;;aA&&Ss;;aA&&Ss;;D
 
4	"	"4	(	(B .C	xs	+	+	+ Q Q
G  xxjw!O!OPPPQ Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q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 )NrJ   )r   r   r   
2020-01-01r   r`   r   rB   r   r   c                     | |z   |z   S rm   r   )rJ   r   cs      r   foo1z/test_agg_list_like_func_with_args.<locals>.foo1      1uqyr   r   c                     | |z   |z   S rm   r   )rJ   r   r|  s      r   foo2z/test_agg_list_like_func_with_args.<locals>.foo2  r~  r   z/foo1\(\) got an unexpected keyword argument 'b'rD   r5   )r   r|  )r|  r;   	   r   )rJ   r}  )rJ   r  r   )r   r   )r   r   )r   r	   r   r   r   r(   r   rN   rO   r<  rQ   rV   )rW   r}  r  rZ   r1   rY   s         r   !test_agg_list_like_func_with_argsr    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'rD   r  r  z2The Grouper cannot specify both a key and a level!r<   )rb   r   zunhashable type: 'list'ra   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   rN   rO   rP   r   r   r   r(   r   r   r   r   rC   r   rQ   rV   )rC   r   rW   df_exprZ   expr1   s          r   test_selection_api_validationr    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(   r0  rN   rO   rQ   rV   )r  rW   r1   rY   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 )Nrz  z
2020-01-021hr   F)writerB   rG   r      lastfirstr{   rc  )r	   r   
zeros_likesetflagsr   r(   rN   	Timestampr   rQ   r   )rC   arrserr   rY   r1   s         r   test_resample_agg_readonlyr    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   r     r         r  17minr   )r   r     ?   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   r  r  '   r  z20001002 00:43:00r8   end_day)r   r   -   r  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   r   )r   r   r   rw  resample_freqr'   r  exp_dataexp_endexp_periodsr   r   rl  rY   s                 r   test_end_and_end_day_originr  5  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   )rd  Fcan't multiply sequencer  cat_1r   cat_2r  r  g      )@)r.   FCould not convertr  )re  F-Cannot convert \['cat_1' 'cat_2'\] to numericr  gH6%@)r  F!could not convert string to floatr  varg      \@)r  Fr  semg      @)r  Fr  c                 |   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                    r| dv r(t          }
t          j
        d|  d          }|rd|  d}n| dv r|rt          }
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   YEr  r  r8   r   r  rB   r   )r  r.   re  rd  zagg function failed [how->z,dtype->z(dtype 'str' does not support operation '')r   r  r  rD   r   )r	   r   r(   r   
no_defaultr   r/   r)   r   r   r   r   r   r   rQ   rV   )r   r   expected_datar   rC   expected_indexrW   	resampledkwargsr   klassrZ   _r1   rY   s                  r   test_frame_downsample_methodr    s   X |QS999EadCCCN	GW-q"g>>e	L	L	LBD!!Is~%% ,/9f%%D-%% 0666E)IIIIJJC! KJJJJ,,,1C,EFVFFFCCEC]5,,, 	 	vA	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ].AAA
fh/////s   +	DDD)r   Tr   )rd  Tr   )rd  Fr   r   )rc  Tr   )r{   Tr   )r  Tr   )r  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    rVt          j
        d          }
|r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\.rD   rd  z&agg function failed [how->prod,dtype->z-dtype 'str' does not support operation 'prod'r   )r	   r   r(   r   r  r   r   r   r   r   r   rQ   r   )r   r   r  r   rC   r  rW   r  r  r   rZ   r1   rY   s                r   test_series_downsample_methodr    s   8 |QS999EadCCCN	'"%	0	0	0BD!!I3>11RR7UF9f%%D 1CN::K6KK]9C000 	 	DNN6NNN	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 		6		i@AA 	BAC]9C000 	 	DNN6NNN	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 -~>>>
vx00000s$   !	B77B;>B;=	DDDzmethod, raises))r   T)rd  T)rc  T)r{   T)r  F)r  F)re  F)r.   T)r  T)r  T)r  F)ohlcF)nuniqueFc                    t          ddd          }t          g d|          }|                    d          }d}t          ||           }d	}d
}d|  }	|ryt	          j        t          |	          5  t          j        t          |          5   |g |d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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   r%   r   )r   r5   r9   rB   ru  r   z-numpy operations are not valid with resample.ztoo many arguments passed inz2Passing additional args to DatetimeIndexResampler.rD   r   r   r5   )r	   r   r(   r   rQ   rR   rS   r   r   r   r   )
r   r   rC   rW   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'!'Q''''( ( ( ( ( ( ( ( ( ( ( ( ( ( (	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 'XFFF 	( 	(y??? ( ('d'A'q'!'Q''''( ( ( ( ( ( ( ( ( ( ( ( ( ( (	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	(sl   3CB, C,B0	0C3B0	4CCC,D=D%D=%D)	)D=,D)	-D==EE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   rg  rD   rh  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   ri  rQ   rR   rS   r(   )rC   rW   rk  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 " "
Dq!!!" " " " " " " " " " " " " " " 
B	/  
	#M	E	E	E " "
Dq!!!" " " " " " " " " " " " " " " " " "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.rD   r%   r   r   )rQ   rR   rS   r(   )r   rk  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   rN   rs   r(   r.   rQ   rV   rd   s      r   test_resample_emptyr  G  s    	nQQQ
 

 
 
B
 n  
 
	 	 	H [[##%%F&(+++++r   )Yr   r   numpyr   r   pandas._libsr   pandas.errorsr   pandasrN   r   r   r   pandas._testing_testingrQ   pandas.core.indexes.datetimesr	   fixturer   r   r#   r+   r2   r[   re   rw   r   r   markparametrizer   r   r   r   r   r   r   r   r   r   r   r   r   rC   rW   r  r  r	  r  r  r  r  r  r  r  r!  r#  r)  r3  r.   r  r7  r=  r?  rG  rK  r   rU  rZ  r^  r`  rb  rm  rq  rx  r  r  r  r  r  r  r  r  r  r  r  r  r   r   r   <module>r     s         				            1 1 1 1 1 1             
       4 4 4 4 4 4 Y Y Y B B B W W W  	 	 	, , ,2, , ,", , ,4, , , 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? ? ?+ + + ' ' '&             ) ) ) ( ( ( ( ( ( ) ) ) ( ( ( ( ( (    , , , 0 0 0 - - - XXX  2 2 2, , ," 		rwRV,,-BGnC=11hsBG$$88C+@+@AA = = =, , , 	Vfe_%u'E'EF , , , 		ve,,- //!511	
 	
	 	 	 	= = = 		rv$?$?@@ABFm3(C(C"DEEhsBF##((38S8S*T*TUU = = = 		RV889"&!BG(<==hy"&))BG0L0LMM % % % 	eU^65/::;  %.77	
	 = = =  	S5%.!%vuo#N#NO   F F F 
eWvuoU|65Q5QR   "P P PDQ Q Q, , ,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 0F )	~&	/	$	y!		*	y!		*	%'#	#.7),		"	'+% .1 1/ .1:    $( (% $(," " ",+ + +, , , , ,r   