
    Mh3                     b   S SK rS SKrS SKJrJr  S SKJrJrJ	r	J
r
JrJrJrJrJr  S SKJr  S rS rS rS rS rS	 r\R2                  R5                  S
S/SS/SS0SSS./5      S 5       rS rS rS rS rS r \R2                  R5                  SSS\RB                  \RB                  \RB                  \RB                  // SQ/ SQ\RB                  \RB                  \RB                  \RB                  // SQ/ SQ/ S Q/4S!S/ S"Q/ SQ/ S#Q/ S$Q/ SQ/ S%Q/ S&Q/4/5      S' 5       r"S( r#S) r$S* r%S+ r&g),    N)	DataErrorSpecificationError)		DataFrameIndex
MultiIndexPeriodSeries	Timestampconcat
date_rangetimedelta_rangec                    [        [        R                  R                  S5      R	                  S5      5      nUR                  SU S9n[        R                  " UR                  R                  US S U 2   R                  5        UR                  SU S9S   nUR                  R                  US S U 2   R                  S   :X  d   eUR                  SU S9S   n[        R                  " UR                  R                  US S U 2   R                  SS/   5        UR                  SU S9SS/   n[        R                  " UR                  R                  US S U 2   R                  SS/   5        g )N   )   r   r   windowstep   )r      r   )r   nprandomdefault_rngstandard_normalrollingtmassert_index_equal_selected_objcolumnsname)r   framers      N/var/www/html/env/lib/python3.13/site-packages/pandas/tests/window/test_api.pytest_getitemr#      s8   bii++A.>>vFGEQT*A!//1154=3H3HIQT*1-A??54=#8#8#;;;; 	QT*40A!//1154=3H3H!Q3PQQT*Aq62A!//1154=3H3H!Q3PQ    c                  &   [        SS//SS/S9n U R                  SS9n[        R                  " [        SS	9   US
/     S S S 5        [        R                  " [        SS	9   USS
/     S S S 5        g ! , (       d  f       N8= f! , (       d  f       g = f)Nr   r   ABr   r   r   zColumns not found: 'C'matchCz^[^A]+$)r   r   pytestraisesKeyError)dfgs     r"   test_select_bad_colsr2   '   sz    	QF8c3Z	0B


!
A	x'?	@	3% 
A	xy	1 	
3* 
2	1 
A	@	1	1s   A1 B1
A?
Bc                  B   [        SS//SS/S9n U R                  SS9n[        R                  " UR                  R                  5       US   R                  5       5        Sn[        R                  " [        US	9   UR                    S S S 5        g ! , (       d  f       g = f)
Nr   r   r&   r'   r(   r   r)   z%'Rolling' object has no attribute 'F'r*   )
r   r   r   assert_series_equalr&   sumr-   r.   AttributeErrorF)r0   r!   msgs      r"   test_attribute_accessr9   2   sr    	QF8c3Z	0B


!
A133779afjjl3
1C	~S	1	 
2	1	1s   :B
Bc                 z   [        [        S5      [        SS5      SS.5      nUR                  SU S9nUSS/   R                  5       n[        [        R
                  [        R
                  SS	S
/[        R
                  [        R
                  SSS/S.[        S5      S9S S U 2   n[        R                  " X45        g )Nr   
   foor&   r'   r,   r   r   r&   r'      	            r&   r'   ABr(   )	r   ranger   r5   r   nanlistr   assert_frame_equalr   r0   r!   resultexpecteds        r"   tests_skip_nuisancerL   ;   s    	qa5A	BB


!$
'ASz] Fvvrvvq!Q'rvvrvvr2r.JKT
 fH &+r$   c                     [        [        S5      [        SS5      SS.5      nUR                  SU S9n[        R                  " [
        SS9   UR                  5         S S S 5        g ! , (       d  f       g = f)	Nr   r;   r<   r=   r   r   z0Cannot aggregate non-numeric type: object|stringr*   )r   rE   r   r-   r.   r   r5   )r   r0   r!   s      r"   test_sum_object_str_raisesrN   F   s\    	qa5A	BB


!$
'A	K
 	
	
 
 
s   A&&
A4c                    [        [        S5      [        SSS5      S.5      nUR                  SU S9nUS   R                  5       nUS   R	                  5       nUS   R                  5       nUS	   R                  5       nUS	   R	                  5       n[        R                  " [        S
S9   UR                  [        R                  [        R                  /5      nS S S 5        [        X4Xg/SS9n	[        R                  " SS	/SS//5      U	l        [        R                  " WU	5        [        R                  " [        S
S9   UR                  [        R                  [        R                  S.5      nS S S 5        [        X7/SS9n	[        R                  " XSS9  UR                  SSS/05      n[        X4/SS9n	[        R                   " SS/5      U	l        [        R                  " X5        US   R                  SS/5      n[        X5/SS9n	SS/U	l        [        R                  " X5        Sn
["        R$                  " [&        U
S9   UR                  SSSS.05        S S S 5        ["        R$                  " [&        U
S9   UR                  SSS.SSS.S.5        S S S 5        UR                  SS/SS/S.5      n[        X4Xg/SS9n	/ SQn[        R                   " U5      U	l        [        R                  " XSS9  g ! , (       d  f       GN'= f! , (       d  f       GN= f! , (       d  f       N= f! , (       d  f       N= f)Nr   r   r;   r   rC   r   r   r&   r'   zusing Rolling.[mean|std]r*   r   axismeanstdT
check_liker&   rR   r&   rS   r5   nested renamer is not supported)rR   r5   )mean2sum2)rV   rW   )r'   rR   )r'   rS   )r   rE   r   rR   rS   r5   r   assert_produces_warningFutureWarning	aggregater   r   r   from_productr   rH   from_tuplesr-   r.   r   )r   r0   r!   a_meana_stda_sumb_meanb_stdrJ   rK   r8   exp_colss               r"   test_aggrf   P   s   	qaQ8	9B


!$
'AsV[[]FcFJJLEcFJJLEsV[[]FcFJJLE		#	#M9S	Tbggrvv./ 
Uvf41=H!..c
VUO/LMH&(+		#	#M9S	T27789 
U voA.H&t<[[#/0FvoA.H!--}l.KLH&+sVvuo.FvoA.HH&+
+C	)	5	S6%89: 
6 
)	5	!%0QV7WX	
 
6
 [[fe_EFFvf41=HIH!--h7H&t<K 
U	T 
U	T" 
6	5 
6	5s0   +0K; 1LL?L0;
L

L
L-0
L>funcminrR   maxbr5   prodmedian)rj   cc                 @   [        / SQ/ SQ/ SQS.5      nSn[        R                  " [        US9   UR	                  SSS	9nS S S 5        [
        R                  " [        S
S9   WR                  U 5        S S S 5        g ! , (       d  f       NB= f! , (       d  f       g = f)N)r   r   r   )r      r   )r>         )arj   rm   5Support for axis=1 in DataFrame.rolling is deprecatedr*   r   r   )r   rQ   z"axis other than 0 is not supported)	r   r   r[   r\   r   r-   r.   NotImplementedErroragg)rg   r0   r8   r!   s       r"   test_multi_axis_1_raisesrv      su    
 
C	DB
AC		#	#M	=JJaaJ( 
>	*2V	W	d 
X	W 
>	=	W	Ws   A>#B>
B
Bc                    [        [        S5      [        SSS5      S.5      nUR                  SS9nUS   R                  5       n[        R
                  " [        S	S
9   UR                  [        R                  S S.5      nS S S 5        US   R                  S U S9n[        X5/SS9n[        R                  " WUSS9  g ! , (       d  f       ND= f)Nr   r   r;   r   rC   r   r)   r&   zusing Rolling.[sum|std]r*   c                 ,    [         R                  " U SS9$ Nr   )ddofr   rS   xs    r"   <lambda> test_agg_apply.<locals>.<lambda>   s    BFF114Er$   r'   c                 ,    [         R                  " U SS9$ ry   r{   r|   s    r"   r~   r      s    RVVAA%6r$   )rawr   rP   TrT   )r   rE   r   r5   r   r[   r\   ru   r   applyr   rH   )r   r0   r!   rb   rJ   rcustomrK   s          r"   test_agg_applyr      s    	qaQ8	9B


!
AcFJJLE		#	#M9R	SRVV*EFG 
Tfll6Cl@Gu&Q/H&(t<	 
T	Ss   $C  
Cc                    [        [        S5      [        SSS5      S.5      nUR                  SU S9n[        R                  " [
        SS	9   UR                  [        R                  [        R                  /5      R                  nS S S 5        [        R                  " [        S
5      SS//5      n[        R                  " WU5        [        R                  " [
        SS	9   US   R                  [        R                  [        R                  /5      R                  nS S S 5        [        SS/5      n[        R                  " X45        [        R                  " [
        SS	9   UR                  S[        R                  [        R                  /05      R                  nS S S 5        [        R                   " SS/5      n[        R                  " X45        g ! , (       d  f       GNV= f! , (       d  f       N= f! , (       d  f       N`= f)Nr   r   r;   r   rC   r   r   zusing Rolling.[sum|mean]r*   rD   r5   rR   r&   )r&   r5   rV   )r   rE   r   r   r[   r\   ru   r   r5   rR   r   r   r^   rG   r   r   r_   rI   s        r"   test_agg_consistencyr      sj   	qaQ8	9B


!$
'A		#	#M9S	T()11 
U&&T
UFO'DEH&(+		#	#M9S	T3RVVRWW-.66 
UeV_%H&+		#	#M9S	Tbffbgg./088 
U%%|]&CDH&+ 
U	T
 
U	T
 
U	Ts$   :G!=G'"<G8
G$'
G58
Hc                  ,   [        [        S5      [        SSS5      S.5      n U R                  SS9nSn[        R                  " [
        US	9   UR                  S
SS/0SSS/0S.5        S S S 5        [        US
   R                  5       US
   R                  5       US   R                  5       US   R                  5       /SS9n[        R                  " / SQ5      Ul        [        R                  " [
        US	9   US
S/   R                  SSS/0SSS/0S.5        S S S 5        [        R                  " [
        US	9   UR                  SSS/0SSS/0S.5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N^= f! , (       d  f       g = f)Nr   r   r;   r   rC   r   r)   rX   r*   r&   rR   r5   r'   )r1r2r   rP   ))rarR   )r   rS   )rbrR   )r   rS   r   rS   r   )r   rE   r   r-   r.   r   r]   r   rR   rS   r   r_   r   ru   )r0   r!   r8   rK   s       r"   test_agg_nested_dictsr      s]   	qaQ8	9B


!
A
+C	)	5	C&%1#9OPQ 
6 	
3#

afkkmQsVZZ\BH "--FH 
)	5	3* 7tfe_>UVW 
6 
)	5	TFE?+4&%2IJK 
6	5 
6	5 
6	5 
6	5s$   E#:"E4=F#
E14
F
Fc                    / SQn[        S5      [        S5      [        S 5      /n[        / SQ/ SQ[        S5      [        SSS9[	        S	SS
S9[        S5      [        S5      [        S5      /SS[        R                  /SS[        R                  /SS[        R                  /U[        S5      [        S5      [        S 5      /S.US9n[        / SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQS.US9S S U 2   nUR                  SSU S9R                  5       n[        R                  " XT5        UR                  SSU S9R                  5       nUR                  5       R                  [        5      S S U 2   n[        R                  " XT5        g )N)intfloatstringdatetime	timedeltaperiodsfl_inffl_nanstr_nandt_natperiods_nat2017010120170203r   r   r   )g      @g      @g      @abcr   )r   z1 ss)r   freqz2012-01z2012-02z2012-03      ?       @aabbr(   )r   r   r   )r   r   r   r   r   r   min_periodsr   r   )r   r   )r
   r   rG   r   r   r   r   infrF   r   countr   rH   notnaastyper   )r   cols
dt_nat_colr0   rK   rJ   s         r"   test_count_nonnumeric_typesr      s   D J':)>	$PJ	$5k":q9(Dy!y!y!
 C(C(dBFF+ y!y!t	
* -
B2 "$%'(&%%&%*	
  fH" ZZqadZ;AACF&+ZZqtZ4::<Fxxz  '$/H&+r$   c                     [        [        R                  " S5      SS9n U R                  S5      R	                  5       nU R                  S5      R	                  5       nUR
                  S:X  d   eUR
                  S:X  d   eg )Nd   r<   )r         )r	   r   aranger   r5   r   )r   s2s3s      r"   test_preserve_metadatar   
  sf    ryy~E*A	
2			B	
2			B77e77er$   zfunc,window_size,expected_valsr   r   )g      .@      4@      9@r   )r         >@     A@r   )r   r   r   r   )r         D@      N@r   )r         T@g     @U@P   	expanding)      $@r   r   r   )r   r   r   r   )r   r   r   r   )gRB:@r   g      I@r   )r   r   r   r   c           
      |   [        / SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ// SQS	9n[        UR                  S
5      U 5      nU(       a	  U" U5      nOU" 5       n[        R                  " / SQS
S /S9n[        R                  " / SQ5      n[        X&US9nUR                  SS/SS/S.5      n	[        R                  " X5        g )N)r&   r;   r   )r&   r   r   )r&   r   (   )r'   r;   r   )r'   r   r   )r'   r   r   )r'   r   Z   )stocklowhighr(   r   ))r&   r   )r&   r   )r&   r   )r'   r   )r'   ro   )r'   r   )r'   r>   )names))r   rR   )r   ri   )r   rR   )r   rh   )indexr   rR   ri   rh   )r   r   )r   getattrgroupbyr   r_   ru   r   rH   )
rg   window_sizeexpected_valsr0   fr   r   r   rK   rJ   s
             r"   test_multiple_agg_funcsr     s    B 
	
 )
B 	

7#T*A;""NoE $$LG WEHZZ&%IJF&+r$   c                     [        [        S5      5      R                  SX!X4S9nUR                   Vs0 s H  of[	        XV5      _M     nn[	        XP5      " 5         UR                   Vs0 s H  of[	        XV5      _M     nnX:X  d   eg s  snf s  snf )Nr   )centerclosedr   r   )r	   rE   r   _attributesr   )	arithmetic_win_operatorsr   r   r   r   roll_objattrrK   rJ   s	            r"   )test_dont_modify_attributes_after_methodsr   V  s     eAh''	&[ ( H ;C:N:NO:N$gh--:NHOH/18@8L8LM8LGH++8LFM PMs   B'Bc                    Sn[         R                  " [        US9   [        [        R
                  " S5      5      R                  SSSU S9R                  5         S S S 5        Sn[        R                  " [        US9   [        [        R
                  " S5      5      R                  SSS	U S9R                  5         S S S 5        [        [        R
                  " S
5      5      nSn[         R                  " [        US9   UR                  SSSU S9R                  5         S S S 5        Sn[         R                  " [        US9   UR                  SSS	U S9R                  5         S S S 5        Sn[        R                  " [        US9   UR                  SSSU S9R                  5         S S S 5        g ! , (       d  f       GN\= f! , (       d  f       GN= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       g = f)Nz2The 'axis' keyword in Series.rolling is deprecatedr*   r;   r   Tr   )r   r   rQ   r   z&No axis named 1 for object type Seriesr   )r;   r;   z5The 'axis' keyword in DataFrame.rolling is deprecatedrs   z)No axis named 2 for object type DataFramer   )r   r[   r\   r	   r   onesr   rR   r-   r.   
ValueErrorr   )r   r8   r0   s      r"   test_centered_axis_validationr   c  sz   
>C		#	#M	=rwwr{##1T#MRRT 
> 3C	z	-rwwr{##1T#MRRT 
. 
2778$	%B
AC		#	#M	=


!Dqt
<AAC 
>
AC		#	#M	=


!Dqt
<AAC 
> 6C	z	-	1T	=	B	B	D 
.	-' 
>	=
 
.	- 
>	= 
>	=
 
.	-s;   >F/=>G=!G!G$!G5/
F>
G
G!$
G25
Hc                    [        / SQ5      nUR                  SSU S9R                  5       n[        [        R                  " [        U5      5      5      S S U 2   n[        R                  " X#5        Sn[        R                  " [        US9   [        / SQ5      R                  SS	U S9R                  5         S S S 5        g ! , (       d  f       g = f)
Nr   r   r   ro   r   r   r   r   !min_periods 5 must be <= window 3r*   r   r   r   )r	   r   rh   r   r   lenr   r4   r-   r.   r   r   rr   rJ   rK   r8   s        r"   test_rolling_min_min_periodsr   }  s    AYYcqtY<@@BFbggc!fo&vv.H6,
-C	z	-y!!!EIIK 
.	-	-s   +C  
Cc                 p   [        / SQ[        R                  S9nUR                  SSU S9R	                  5       nUS S U 2   n[
        R                  " X#5        Sn[        R                  " [        US9   [        / SQ5      R                  S	S
U S9R	                  5         S S S 5        g ! , (       d  f       g = f)Nr   )dtyper   r   r   r   r*   r   r   r   )
r	   r   float64r   ri   r   assert_almost_equalr-   r.   r   r   s        r"   test_rolling_max_min_periodsr     s    bjj1AYYcqtY<@@BF4yH6,
-C	z	-y!!!EIIK 
.	-	-s   3+B''
B5)'numpyr   r-   pandas.errorsr   r   pandasr   r   r   r   r	   r
   r   r   r   pandas._testing_testingr   r#   r2   r9   rL   rN   rf   markparametrizerv   r   r   r   r   r   rF   r   r   r   r   r    r$   r"   <module>r      sc    

 
 
 R ,/=d 
eWvuoU|65QR=,(L,@,F $ 0((0((&	
 (((((-(	
> ,?> ,F
F4LLr$   