
    Mhs<                        S SK J r   S SKrS SKrS SKJr  S SKrS SKJrJ	r	J
r
JrJrJrJrJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S S	KJr  S S
KJr  \S\ " SSS5      \ " SSS5      4r\S\ " SSS5      \ " SSS5      4r \SSS4r!\RD                  RG                  S\\ \!/5      r$\RJ                  S 5       r&\RD                  RG                  SSS/5      \RD                  RG                  S\\!/5      S 5       5       r'\RD                  RG                  S\\!/5      S 5       r(\$S 5       r)S r*\$\RD                  RG                  S/ SQ5      S 5       5       r+\$\RD                  RG                  S\RX                  " S\RD                  R[                  SS 9S!9S"S#/5      S$ 5       5       r.\$\RD                  RG                  S/ SQ5      \RD                  RG                  S%S&S'/5      S( 5       5       5       r/\$\RD                  RG                  S/ SQ5      S) 5       5       r0\$\RD                  RG                  S/ SQ5      S* 5       5       r1\$\RD                  RG                  S/ SQ5      S+ 5       5       r2\RD                  RG                  S,\" / S-S.S/9\	" / S.S09\" / S.S09/5      \RD                  RG                  S1\3\4\5S2/5      \RD                  Rm                  S35      S4 5       5       5       r7\$\RD                  RG                  S/ SQ5      S5 5       5       r8\$S6 5       r9\$S7 5       r:\RD                  RG                  S8S9S:/5      S; 5       r;g)<    )datetimeN)is_extension_array_dtype)	DataFrameDatetimeIndexIndex
MultiIndexNaTPeriodIndexSeriesTimedeltaIndex)	DataError)Grouper)
date_range)period_range)timedelta_range)_asfreq_compatdtii     
   pitdiz1 dayz10 dayz3_index_factory,_series_name,_index_start,_index_endc                    ^  U 4S jnU$ )Nc                     > T" U 0 UD6$ )z8return the _index_factory created using the args, kwargs )argskwargs_index_factorys     Q/var/www/html/env/lib/python3.13/site-packages/pandas/tests/resample/test_base.py_create_index#create_index.<locals>._create_index-   s    t.v..    r   )r   r   s   ` r   create_indexr"   +   s    / r!   freq2D1hc                     U nUR                  U5      R                  5       nU" UR                  S   UR                  S   US9nUR                  U5      n[        R
                  " XF5        g )Nr   r#   )resampleasfreqindexreindextmassert_almost_equal)series_and_framer#   r"   objresult	new_indexexpecteds          r   test_asfreqr4   4   sZ    
 C\\$&&(FSYYq\399R=tDI{{9%H6,r!   c                    U nUR                  S5      R                  5       nU" UR                  S   UR                  S   SS9nUR                  U5      n[        R
                  " X55        UR                  S5      R                  S5      nS UR                  S'   UR                  S5      R                  SS	9nU" UR                  S   UR                  S   SS9nUR                  USS	9n[        R                  " X55        g )
Nr%   r   r'   r(   floatvaluer         @)
fill_value)
r)   r*   r+   r,   r-   assert_series_equalastypeto_frameilocassert_frame_equal)seriesr"   serr1   r2   r3   frames          r   test_asfreq_fill_valuerB   A   s     C\\$&&(FSYYq\399R=tDI{{9%H6, JJw((1EEJJqM^^D!((C(8FU[[^U[[_4HI}}Y3}7H&+r!   c                 |   U nS n[        UR                  [        5      (       a  [        nSn[        R
                  " X#S9   UR                  S5      R                  5       R                  5       nUR                  S5      R                  5       nS S S 5        [        R                  " WW5        g ! , (       d  f       N&= f)N+Resampling with a PeriodIndex is deprecatedmatch1min)

isinstancer+   r
   FutureWarningr-   assert_produces_warningr)   r*   interpolater>   )rA   dfwarnmsgr1   r3   s         r   test_resample_interpolaterO   W   s     
BD"((K((
7C		#	#D	4V$++-99;;;v&224 
5 &(+ 
5	4s    AB--
B;c                      [        5       n Sn[        R                  " [        US9   U R	                  S5        S S S 5        g ! , (       d  f       g = f)NzaOnly valid with DatetimeIndex, TimedeltaIndex or PeriodIndex, but got an instance of 'RangeIndex'rE   YE)r   pytestraises	TypeErrorr)   )xprN   s     r   %test_raises_on_non_datetimelike_indexrV   e   s;    	B	.  
y	,
D 
-	,	,s   A
A)MEDhc                    UnU S:X  aU  [        UR                  [        5      (       a6  Sn[        R                  " [
        US9   UR                  U 5        S S S 5        g U S:X  a!  [        UR                  [        5      (       a  Sn S n[        UR                  [        5      (       a  [        nSn[        R                  " XTS9   UR                  U 5      nS S S 5        [        WU5      " 5       nUS:X  aY  [        / UR                  S S R                  5       / SQS	9n[        UR                  U 5      Ul        [        R                  " XxS
S9  O@UR                  5       n[        UR                  U 5      Ul        [        R                   " XxS
S9  [        R"                  " UR                  UR                  5        UR                  R$                  UR                  R$                  :X  d   eg ! , (       d  f       g = f! , (       d  f       GN,= f)NrW   aResampling on a TimedeltaIndex requires fixed-duration `freq`, e.g. '24h' or '3D', not <MonthEnd>rE   MrD   ohlcr   openhighlowcloser+   columnsFcheck_dtype)rH   r+   r   rR   rS   
ValueErrorr)   r
   rI   r-   rJ   getattrr   copyr   r>   r:   assert_index_equalr#   )	r#   empty_series_dtiresample_methodr@   rN   rM   rsr1   r3   s	            r   test_resample_empty_seriesrn   p   s   
 Ct|
399n==1 	 ]]:S1LL 2	*SYY<<D#))[))
7C		#	#D	4\\$ 
5R)+F& ciim((*4T
 (		48
fEB88:'		48
vUC&,,7<< 3 33337 21 
5	4s   G(G9(
G69
HrW   zDon't know why this fails)reason)marksrX   rY   c                    UR                  5       n[        [        /[        U5      -  U S9Ul        Sn[
        R                  " [        US9   UR                  U 5      nS S S 5        [        WU5      " 5       nUS:X  a>  [        / UR                  S S R                  5       / SQS9n[
        R                  " XgSS	9  O(US S R                  5       n[
        R                  " XgSS	9  [
        R                  " UR                  UR                  5        UR                  R                  UR                  R                  :X  d   eg ! , (       d  f       N= f)
Nr(   rD   rE   r]   r   r^   rc   Fre   )ri   r
   r	   lenr+   r-   rJ   rI   r)   rh   r   r>   r:   rj   r#   )r#   r?   rl   r@   rN   rm   r1   r3   s           r   test_resample_nat_index_seriesrs      s    ++-CSECH,48CI
7C		#	#M	=\\$ 
>R)+F& ciim((*4T
 	fEBr7<<>
vUC&,,7<< 3 3333 
>	=s   D??
Erl   countsizec                    UnU S:X  aU  [        UR                  [        5      (       a6  Sn[        R                  " [
        US9   UR                  U 5        S S S 5        g U S:X  a!  [        UR                  [        5      (       a  Sn S n[        UR                  [        5      (       a  [        nSn[        R                  " XTS9   UR                  U 5      nS S S 5        [        WU5      " 5       n[        UR                  U 5      n[        / SXR                  S9n	[        R                  " Xy5        g ! , (       d  f       g = f! , (       d  f       Nr= f)NrW   r[   rE   r\   rD   int64)dtyper+   name)rH   r+   r   rR   rS   rg   r)   r
   rI   r-   rJ   rh   r   r   ry   r:   )
r#   rk   rl   r@   rN   rM   rm   r1   r+   r3   s
             r    test_resample_count_empty_seriesrz      s   
 Ct|
399n==1 	 ]]:S1LL 2	*SYY<<D#))[))
7C		#	#D	4\\$ 
5 R)+F399d+Ebu88DH6,) 21 
5	4s   D/E /
D= 
Ec                    U nUS:X  aT  [        UR                  [        5      (       a5  Sn[        R                  " [
        US9   UR                  USS9  S S S 5        g US:X  a!  [        UR                  [        5      (       a  SnS n[        UR                  [        5      (       a  [        nSn[        R                  " XTS9   UR                  USS9nS S S 5        [        WU5      " 5       nUS:X  au  [        R                  " UR                  / S	Q/5      n[        / UR                  S S
 R!                  5       U["        R$                  S9n	['        UR                  U5      U	l        O/US:w  a  UR!                  5       n	O[)        / ["        R*                  S9n	['        UR                  U5      U	l        [        R,                  " UR                  U	R                  5        UR                  R.                  U	R                  R.                  :X  d   e[        R0                  " Xy5        g ! , (       d  f       g = f! , (       d  f       GNh= f)NrW   r[   rE   F
group_keysr\   rD   r]   r^   r   )r+   rd   rx   ru   rx   )rH   r+   r   rR   rS   rg   r)   r
   rI   r-   rJ   rh   r   from_productrd   r   ri   npfloat64r   r   rw   rj   r#   r.   )
empty_frame_dtir#   rl   rL   rN   rM   rm   r1   mir3   s
             r   test_resample_empty_dataframer      s    
Bt|
288^<<1 	 ]]:S1KKK/ 2	*RXX{;;D"((K((
7C		#	#D	4[[%[0 
5R)+F& $$bjj2R%STbhhrl'')2RZZ
 ($7	F	"779 "BHH-#BHHd3HN&,,7<< 3 33336,A 21 
5	4s   H"H3"
H03
Ic           	         / US'   U S:X  aU  [        UR                  [        5      (       a6  Sn[        R                  " [
        US9   UR                  U 5        S S S 5        g U S:X  a!  [        UR                  [        5      (       a  Sn S n[        UR                  [        5      (       a  [        nSn[        R                  " X2S9   UR                  U 5      nS S S 5        WR                  5       n[        UR                  U 5      n[        SU[        S/[        S9S	9n[        R                   " XW5        g ! , (       d  f       g = f! , (       d  f       Nt= f)
NarW   r[   rE   r\   rD   rw   r~   )rx   r+   rd   )rH   r+   r   rR   rS   rg   r)   r
   rI   r-   rJ   rt   r   r   r   objectr>   r#   r   rN   rM   rm   r1   r+   r3   s           r   #test_resample_count_empty_dataframer     s   
 OCt|
?#8#8.II1 	 ]]:S1$$T* 2	*_%:%:KHHD/''55
7C		#	#D	4%%d+ 
5XXZF?00$7EweUC5PV=WXH&+' 21 
5	4s   D4E4
E
Ec                    / US'   U S:X  aU  [        UR                  [        5      (       a6  Sn[        R                  " [
        US9   UR                  U 5        S S S 5        g U S:X  a!  [        UR                  [        5      (       a  Sn SnS n[        UR                  [        5      (       a  [        n[        R                  " X2S9   UR                  U 5      nS S S 5        WR                  5       n[        UR                  U 5      n[        / SUS9n[        R                  " XW5        g ! , (       d  f       g = f! , (       d  f       Ng= f)	Nr   rW   r[   rE   r\   Resampling with a PeriodIndexrw   )rx   r+   )rH   r+   r   rR   rS   rg   r)   r
   rI   r-   rJ   ru   r   r   r:   r   s           r   "test_resample_size_empty_dataframer   -  s   
 OCt|
?#8#8.II1 	 ]]:S1$$T* 2	*_%:%:KHH
)CD/''55		#	#D	4%%d+ 
5WWYF?00$7Ebu5H6,' 21 
5	4s   D'D8'
D58
Er+   r\   r   r#   ry   )ry   rx   zdatetime64[ns]z3ignore:PeriodDtype\[B\] is deprecated:FutureWarningc                 D   S n[        U [        5      (       a  [        / SU R                  S9n [        nSn[	        / X5      n[
        R                  " X4S9   UR                  SSS9nS S S 5         [        WU5      " 5         g ! , (       d  f       N!= f! [         a     g f = f)NBr   rD   rE   dFr|   )
rH   r
   ry   rI   r   r-   rJ   r)   rh   r   )r+   rx   rl   rM   rN   rk   rm   s          r   test_resample_empty_dtypesr   O  s     D%%%BSuzz:
7Cb%/		#	#D	4&&su&= 
5O$& 
5	4   	s   B/B 
B
BBc                    U nUS:X  aU  [        U R                  [        5      (       a6  Sn[        R                  " [
        US9   U R                  U5        S S S 5        g US:X  a!  [        U R                  [        5      (       a  SnSnS n[        U R                  [        5      (       a  [        n[        R                  " XCS9   UR                  USS9nS S S 5        WR                  S 5      n[        R                  " XCS9   UR                  U5      R                  S	5      nS S S 5        [        R                  " UWSS
9  g ! , (       d  f       g = f! , (       d  f       N= f! , (       d  f       NG= f)NrW   r[   rE   r\   r   Fr|   c                     g)Nr   r   )xs    r   <lambda>,test_apply_to_empty_series.<locals>.<lambda>  s    r!   sumre   )rH   r+   r   rR   rS   rg   r)   r
   rI   r-   rJ   applyr:   )rk   r#   r@   rN   rM   rm   r1   r3   s           r   test_apply_to_empty_seriesr   o  s(    Ct|
#3#9#9>JJ1 	 ]]:S1%%d+ 2	*%5%;%;[II
)CD"((+66		#	#D	4\\$5\1 
5 XXk"F		#	#D	4<<%++E2 
5 68?' 21 
5	4 
5	4s$   EE!E#
E
E #
E1c                    Sn[        USS9nSnS n[        U R                  [        5      (       a  [        n[
        R                  " XCS9   U R                  U5      nS S S 5        [
        R                  " XCS9   U R                  U5      nS S S 5        [        WW5       H'  u  u  pxu  pXy:X  d   e[
        R                  " X5        M)     g ! , (       d  f       Nt= f! , (       d  f       NW= f)NrY   start)r#   
conventionr   rE   )r   rH   r+   r
   rI   r-   rJ   groupbyr)   zipr:   )r?   r#   tgrN   rM   grouped	resampledrkrvgkgvs              r   test_resampler_is_iterabler     s     D	dw	/B
)CD&,,,,		#	#D	4..$ 
5 
	#	#D	4OOD)	 
5!)W5(2xx
r& 6 
5	4 
5	4s   
C
8C

C
C)c                   ^ U nSmSnSnS n[        U R                  [        5      (       a  [        n[        R
                  " XCS9   UR                  U5      R                  T5      nUR                  U5      R                  U4S j5      R                  UR                  5      nS S S 5        [        R                  " WW5        g ! , (       d  f       N&= f)Ng      ?rY   r   rE   c                 &   > U R                  T5      $ )N)quantile)r   qs    r   r   (test_resample_quantile.<locals>.<lambda>  s    AJJqMr!   )rH   r+   r
   rI   r-   rJ   r)   r   aggrenamery   r:   )r?   r@   r#   rN   rM   r1   r3   r   s          @r   test_resample_quantiler     s     CAD
)CD&,,,,		#	#D	4d#,,Q/<<%))*ABII#((S 
5 68, 
5	4s   AC
Chowfirstlastc           	         [        U 5      (       a  [        U S9R                  R                  nO[        R
                  n[        / SQUSUS/USUS/S.[        SSSS	9U S
9nUR                  S5      n[        XR5      nU" US9nUR                  UR                  S   [        R                  " S5      /-  5      n[        X5      " US9n	SU	R                  l        [         R"                  " Xy5        g )Nr~   )   r   r   r   g      @r8   )r   bcz
2020-01-01   rX   )periodsr#   )r+   rx   rW   )skipnar   z
2020-01-31)r   r   rx   na_valuer   nanr   r   r)   rh   r   shapepdto_datetimer+   r#   r-   r>   )
any_real_nullable_dtyper   r   r   rL   rm   methodr1   gbr3   s
             r   test_first_last_skipnar     s       788 78>>GG66	C3/C3/	

 qs;%
B 
T	BRF6"F	BHHQK2>>,#?"@@	ABrv.HHNN&+r!   )<r   numpyr   rR   pandas.core.dtypes.commonr   pandasr   r   r   r   r   r	   r
   r   r   pandas._testing_testingr-   pandas.core.groupby.groupbyr   pandas.core.groupby.grouperr   pandas.core.indexes.datetimesr   pandas.core.indexes.periodr   pandas.core.indexes.timedeltasr   pandas.core.resampler   
DATE_RANGEPERIOD_RANGETIMEDELTA_RANGEmarkparametrizeall_tsfixturer"   r4   rB   rO   rV   rn   paramxfailrs   rz   r   r   r   r6   intr   filterwarningsr   r   r   r   r   r   r!   r   <module>r      s      > 	 	 	  1 / 4 3 : / %$1!5xa7LM
dHT1a$8(4B:OP"E7H=		 	 9/
   $.9J;X- /- 9J;X,,& 
, 
, !12$4 3 $4N 
T!2!2:U!2!VW4 4. !12*Wf,=>- ? 3 -> !12)- 3 )-\ !12, 3 ,@ !12- 3 -@ BSs+bs#r$ 5#v7G"HIRS T J, !12@ 3 @> ' '& - -  & 12, 3,r!   