
    d(                     r   d dl mZ d dlZd dlZd dlZd dlmZmZ d dl	m
Z d dlmZ d Zd Zd Zd Zd	 Zd
 Zd Zd Zd Zej                            dg d          d             Zej                            dddg          d             Zej                            dg d          d             Zd ZdS )    )	timedeltaN)	DataFrameSeries)timedelta_rangec                  N   t          ddgt                      t          d          g          } |                     d                                          }t          dt          j        t          j        dgt          ddd                    }t          j        ||           d S )	N      )minutesdataindex1T0 day   periodsfreq)	r   r   resampleasfreqnpnanr   tmassert_frame_equaldfresultexpecteds      `/var/www/html/t/fyr/venv311/lib/python3.11/site-packages/pandas/tests/resample/test_timedelta.pytest_asfreq_bugr      s    	Ay{{Ia4H4H4H&I	J	J	JB[[%%''F#gqt<<<  H &(+++++    c                  D   t          j        dt           j        dg          } t          dg di|                               d                                          }t          ddt          j        dgit          dd	d
                    }t          j
        ||           d S )N0s2svalue)   r	      1sg      @g      @r   r	   1Sr   r   )pdto_timedeltaNaTr   r   meanr   r   r   r   r   )r   r   r   s      r   test_resample_with_natr.      s    OT264011E+U33<<TBBGGIIF	3$%gqt<<<  H &(+++++r    c                  r   t          ddd          } t          dg di|           }|                    d                                          }dd	t          j        t          j        t          j        t          j        d
gi}t          |t          ddd                    }t          j        ||           d S )Nz00:00:00z00:10:005Tr   r$   )r   r&   
   r   2Tr   r2   )r   r   r   r   r   r   r   r   )r   r   r   expected_datar   s        r   $test_resample_as_freq_with_subperiodr5   $   s    J
>>>E	***-U	;	;	;B[[%%''Fq"&"&"&"&"EFM/*jt"T"T"T  H &(+++++r    c                  z   t          dt          j        d          i          } |                     | j        dz                                            } t          ddd          | _        t          dt          j        d          it          j        t          j        d          d	          
          }|	                    d                                          }t          j        ||            |d         }|	                    d                                          }t          j        || d                    d S )NAi     z0 days30T2   r   r   Tunitr)   )r   r   arangegroupbyr   sumr   r*   r+   r   r   r   assert_series_equal)r   r   r   ss       r   test_resample_with_timedeltasrD   0   s
   #ry/00H" 45599;;H$XE2FFFHN		bioobobiooC&P&P&P
 
 
B [[##%%F&(+++
3AZZ""$$F68C=11111r    c                  :   t          t          t          d                    t          ddd                    } |                     d                                          }t          g dt          ddd                    }t          j        ||           d S )	Nr&   1 dayrC   r;   r)   r#   )r   r&   r   r	   )r   listranger   r   rA   r   rB   )rC   r   r   s      r   %test_resample_single_period_timedeltarI   A   s    tE!HH~~_W3PQ%R%R%RSSSAZZ!!##FiiiwTST'U'U'UVVVH68,,,,,r    c                     t          ddd          } t          t          d          |           }|                    d                                          }|                    t                    }t          j        ||           d S )N0	   10Lr   r)   )	r   r   rH   r   r-   astypefloatr   rB   )r   seriesr   r   s       r   #test_resample_timedelta_idempotencyrQ   H   su    C777EE!HHE***F__U##((**F}}U##H68,,,,,r    c                     t          ddd          } t          t          j                            t          |                     |           }|                    dd                                          }|                    d                                          }t          dd	d
          }t          ddd
          }t          j	        |j
        |           t          j	        |j
        |           d S )Nr"      rC   startr   r   r)   r#   5s)offset25srU   endr   29s)r   r   r   randomrandnlenr   r-   r   assert_index_equalr   )rngts	with_basewithout_baseexp_without_baseexp_with_bases         r   (test_resample_offset_with_timedeltaindexrf   Q   s    
bs
;
;
;C		C))	5	5	5BD..3355I;;t$$))++L&Tu4HHH#$EEEEM,,.>???)/=99999r    c            
         t          ddit          j        t          t	          d                    d                    } | d                             d          | d<   |                     d	                              d
           }t          ddgddgdt          j        ddgdd	                    }|	                    ddgd          }|d         |d<   t          j        ||           d S )N	Group_objr7      rC   r=   r)   categoryGroup10sc                 @    |                                  j        d         S )Nr   )value_countsr   xs    r   <lambda>zDtest_resample_categorical_data_with_timedeltaindex.<locals>.<lambda>d   s    q~~/?/?/Ea/H r    )rh   rk   r   r2   )r>   r   r   )axis)r   r*   r+   rG   rH   rN   r   aggTimedeltaIndexreindexr   r   r   s      r   2test_resample_categorical_data_with_timedeltaindexrv   `   s    	K%R_T%))__SV-W-W-W	X	X	XB[/((44BwK[[##$I$IJJFCjC:66Bc>>>  H g 6Q??H -HW&(+++++r    c                     t          ddd          } t          d| i|           }t          ddd          }t          ||d          }t          j        |j        d	<   |                    d                                          d         }t          j	        ||           |d                             d                                          }t          j	        ||           d S )
NrF   z6 day4Dr1   timer)   2D)r   namer   )
r   r   r   r*   r,   ilocr   firstr   rB   )timesr   times2express        r   test_resample_timedelta_valuesr   n   s    
 GW4888E	FE?%	0	0	0BWgD999F
vF
3
3
3C&CHQK
++d


!
!
#
#F
+C3$$$
V*

d
#
#
)
)
+
+C3$$$$$r    zstart, end, freq, resample_freq))8H21h59min50s10S3H)r   22H1H5H)527D5006D3D10D)1Dr   r   rz   )r   r   r   2H)0Hr   r   r   )r   85DDrz   c                    t          | ||          }t          t          j        t	          |                    |          }|                    |                                          }t          || |          }t          j        |j	        |           |j	        j
        |j
        k    sJ t          j        |d                   rJ d S )NrY   r)   )r   rU   rZ   )r   r   r   r?   r^   r   minr   r_   r   r   isnan)rU   rZ   r   resample_freqidxrC   r   expected_indexs           r   !test_resample_timedelta_edge_caser      s      3T
:
:
:CryS""#...AZZ&&**,,F$-u#NNNN&,777< 33333xr
#######r    
duplicatesTFc                    t          t          j                            d          t	          ddd                    }| r	g d|_        |j        d	d d d f                             d
                              d           }t          dgdz  gdz  dgdz  gz   t	          d	dd
                    }|j        |_        t          j
        ||           d S )N)'  r   )sizer"   r   3906250nrT   r)   )r7   Br7   Cr'   3sc                      t          |           S )N)r^   ro   s    r   rq   zEtest_resample_with_timedelta_yields_no_empty_groups.<locals>.<lambda>   s    SVV r    i   r      i     )r   r   r\   normalr   columnslocr   applyr   r   )r   r   r   r   s       r   3test_resample_with_timedelta_yields_no_empty_groupsr      s     

	j))D%jIII
 
 
B  *)))
VDEE111H&&t,,223C3CDDF
bSEAI;&D"4@@@  H zH&(+++++r    r>   )rC   msusnsc           	      6   t          j        d|  d          }t          dt          j        t          j        d          d                              |          it          j        ddd	          
          }|                    d          	                    d          }t          dt          j
        d          t          j
        d          git          j        dddd          
                              |          }t          j        ||           d S )Nzm8[]r$   r   rC   r=   20200101UTC)r   tzr)   rz   gGz?z0 days 00:00:00.990000z0 days 00:00:02.990000r%   )r   r   r   )r   dtyper   r*   r+   r?   rN   
date_ranger   quantile	Timedeltar   r   )r>   r   r   r   r   s        r    test_resample_quantile_timedeltar      s    H]4]]]##E		"/")A,,S999@@GGHmJe<<<
 
 
B [[''--F566566	
 mJe$GGG   fUmm  &(+++++r    c            	         t          j        d t          d          D                       } t          t          d          |           }|                    ddd                                          }t          g dt          j        d t          d	          D             d
                    }t          j        ||           d S )Nc                 D    g | ]}t          j        d |dz  z             S )x   r8   secondsr*   r   .0is     r   
<listcomp>z.test_resample_closed_right.<locals>.<listcomp>   s-    JJJ1BLq2v666JJJr    r2   r)   r<   right)closedlabel)r   r	            rL   c                 D    g | ]}t          j        d |dz  z             S )r   <   r   r   r   s     r   r   z.test_resample_closed_right.<locals>.<listcomp>   s-    BBBAR\#B,///BBBr       r1   )	r*   IndexrH   r   r   rA   rt   r   rB   )r   serr   r   s       r   test_resample_closed_rightr      s    
(JJb		JJJ
K
KC
r#
&
&
&C\\#gW\==AACCFBBqBBB
 
 
  H 68,,,,,r    )datetimer   numpyr   pytestpandasr*   r   r   pandas._testing_testingr   pandas.core.indexes.timedeltasr   r   r.   r5   rD   rI   rQ   rf   rv   r   markparametrizer   r   r   r    r    r   <module>r      s                               : : : : : :, , ,, , ,	, 	, 	,2 2 2"- - -- - -: : :, , ,% % %$ %	 	 	 	$ 	$ 	$ e}55, , 65,( !8!8!899, , :9,(- - - - -r    