
    Mh%                     p    S r SSKrSSKrSSKrSSKrSSKJrJrJ	r	  SSK
Jr   " S S5      r " S S5      rg)zP
Tests for statistical reductions of 2nd moment or higher: var, skew, kurt, ...
    N)	DataFrameSeries
date_rangec                      \ rS rSr\R
                  R                  S\\R                  \R                  /5      S 5       r\R
                  R                  S\\R                  \R                  /5      \R
                  R                  S/ SQ5      S 5       5       r\R
                  R                  S\\R                  \R                  /5      S 5       rSrg	)
TestDatetimeLikeStatReductions   boxc                    Un[        SSUS9nUR                  / SQ5      nUR                  nU" U5      nUR                  5       [        R
                  " SUS9:X  d   eUR                  SS9[        R
                  " SUS9:X  d   e[        R                  US	'   U" U5      nUR                  5       [        R
                  " S
US9:X  d   eUR                  SS9[        R                  L d   eg )N
2001-01-01   )periodstz         
   	            r         z
2001-01-06)r   Fskipnaz2001-01-06 07:12:00)r   take_datameanpd	TimestampNaT)selftz_naive_fixturer	   r   dtidtarrobjs          ^/var/www/html/env/lib/python3.13/site-packages/pandas/tests/reductions/test_stat_reductions.pytest_dt64_mean-TestDatetimeLikeStatReductions.test_dt64_mean   s    rb9hh9:		%jxxzR\\,2>>>>xxux%lr)JJJJ FFb	%jxxzR\\*?BGGGGxxux%///    freq)shDWBc                 :   [        SSS9nUR                  / SQ5      nUS:X  a  [        OS nSn[        R                  " XES9   UR
                  R                  U5      nS S S 5        U" W5      n[        R                  " [        SS9   UR                  5         S S S 5        [        R                  " [        SS9   UR                  S	S
9  S S S 5        [        R                  US'   [        R                  " [        SS9   UR                  5         S S S 5        [        R                  " [        SS9   UR                  S	S
9  S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       Ns= f! , (       d  f       g = f)Nr   r   r   r   r1   zPeriodDtype\[B\] is deprecatedmatch	ambiguousTr   r   )r   r   FutureWarningtmassert_produces_warningr   	to_periodpytestraises	TypeErrorr   r    r"   )r#   r	   r,   r%   warnmsgparrr'   s           r(   test_period_mean/TestDatetimeLikeStatReductions.test_period_mean'   s    r2hh9: $}/''899&&t,D 9$i]]9K8HHJ 9]]9K8HHDH! 9 66R]]9K8HHJ 9]]9K8HHDH! 98 98 9888 9888s<   EE9E*=E;/F
E
E'*
E8;
F	
Fc                 ,   [         R                  " / SQS5      n[        R                  " U5      R	                  S5      nUR
                  nU" USS9nUR                  5       n[         R                  " U5      R                  5       nXg:X  d   e[        R                  US'   UR                  SS9[        R                  L d   eUR                  SS9nXS	S  R                  5       :X  d   eUR                  S
5      US-  S-  R                  S
5      :X  d   eg )N)r   r   r   ir   r   r   r   r   r   zm8[D]nsF)copyr   r   Tr   usg      &@r   )	nparrayr    TimedeltaIndexas_unitr   r   r"   round)	r#   r	   m8valuestditdarrr'   resultexpectedresult2s	            r(   test_td64_mean-TestDatetimeLikeStatReductions.test_td64_meanA   s    88A7K)11$7		%e$88E?'')!!!66axxux%///(($('ab',,.((( }}T"v}r'9&@&@&FFFFr+    N)__name__
__module____qualname____firstlineno__r;   markparametrizer   r    IndexrI   r)   rA   rS   __static_attributes__rU   r+   r(   r   r      s    [[UVRXXrxx$@A0 B0& [[UVRXXrxx$@A[[V%>?" @ B"0 [[UVRXXrxx$@AG BGr+   r   c                   b    \ rS rSr SS jrS rS rS rS rS r	S r
S	 rS
 rS rS rS rSrg)TestSeriesStatReductionsW   c           	         [         R                  " SS5         [        [        U5      n[        R
                  USS& US;  aC  [        [        SSS95      nS	U S
3n[        R                  " [        US9   U" U5        S S S 5        [         R                  " U" U5      5      (       d   e[         R                  " U" USS95      (       d   eUR                  5       n	[        R                  " U" U	5      U" U	R                  5      5        [        R                  " U" U5      U" U	R                  5      5        U[        R
                  -  n
U(       a#  [        R                   " U" U
5      5      (       d   e[        / SQ5      nU" U5        S/nUR#                  [%        SS5      5        [        USS9n[        R                  " ['        U" U5      5      ['        U" UR                  5      5      5        U(       a5  [        [         R(                  " SSS95      nU" U5      nU" U5      nX:X  d   eUS;  a<  [        R                  " [        S S9   U" [        [+        S5      5      5        S S S 5        Sn[        R                  " [,        US9   U" USS9  S S S 5        S[.        R0                  " U5      R2                  ;   a  U" USS9  S S S 5        g ! , (       d  f       GNT= f! , (       d  f       N= f! , (       d  f       Ne= f! , (       d  f       g = f)Nuse_bottleneckFr      )maxminr   medianstdz1/1/2001r   r3   zdoes not support reduction ''r4   r   )r   r   r   Nr   r   l        l      int64dtypez1/1/2000)sumre   rd   abcz&No axis named 1 for object type Seriesr   )axisnumeric_onlyT)ro   )r    option_contextgetattrr   rH   nanr   r;   r<   r=   notnaisnadropnar8   assert_almost_equalvaluesisnanextendrangefloatbdate_rangelist
ValueErrorinspectgetfullargspecargs)r#   name	alternatestring_series_check_objectscheck_allnafdsr?   nonaallnar-   itemsresexps                  r(   _check_stat_op'TestSeriesStatReductions._check_stat_op\   sc    /7%A $&66N1R  BBJz2>?4TF!<]]9C8bE 9 88An-....771^E:;;;; "((*D""1T7Idkk,BC""1^#4i6LM"RVV+Exx%)))) )*AaD CELLul34uG,A""51;i6I0JK 2>>*bABdlz!z 00]]9D9fT%[)* : ;Cz5.q) 6 !7!7!:!?!??.t4q 87 98H :9
 65g 87sU   AK>4	K
=GK>K##K>K-3K>

K	K>
K*	&K>-
K;	7K>>
Lc                     [        [        S5      [        R                  SS9nU R	                  S[        R
                  USS9  g )N   seriesrk   r   rl   F)r   )r   rz   rH   float64r   rl   r#   string_seriess     r(   test_sum!TestSeriesStatReductions.test_sum   s3    uRy

JE266=eLr+   c                     [        [        S5      [        R                  SS9nU R	                  S[        R
                  U5        g )Nr   r   r   r   )r   rz   rH   r   r   r   r   s     r(   	test_mean"TestSeriesStatReductions.test_mean   .    uRy

JFBGG];r+   c                 P   [        [        S5      [        R                  SS9nU R	                  S[        R
                  U5        [        [        R                  " S[        S9[        S5      S9n[        R                  " [        R
                  " U5      UR                  5       5        g )Nr   r   r   rf   r   rj   )index)
r   rz   rH   r   r   rf   onesintr8   rv   )r#   r   int_tss      r(   test_median$TestSeriesStatReductions.test_median   sj    uRy

JHbii? #.eBi@
ryy0&--/Br+   c                     [        [        S5      [        R                  SS9nU R	                  S[        R
                  U5        g )Nr   r   r   prod)r   rz   rH   r   r   r   r   s     r(   	test_prod"TestSeriesStatReductions.test_prod   r   r+   c                     [        [        S5      [        R                  SS9nU R	                  S[        R
                  USS9  g )Nr   r   r   re   Tr   )r   rz   rH   r   r   re   r   s     r(   test_min!TestSeriesStatReductions.test_min   3    uRy

JE266=Mr+   c                     [        [        S5      [        R                  SS9nU R	                  S[        R
                  USS9  g )Nr   r   r   rd   Tr   )r   rz   rH   r   r   rd   r   s     r(   test_max!TestSeriesStatReductions.test_max   r   r+   c                    [        [        S5      [        R                  SS9n[        [        R                  " S[        R                  S9[        SSS9SS	9nS
 nU R                  SX15        S nU R                  SX15        UR                  SS9n[        R                  " UR                  SS9n[        R                  " XE5        UR                  SS9n[        R                  " UR                  SS9n[        R                  " XE5        UR                  S/   nUR                  SS9n[        R                  " U5      (       d   eUR                  SS9n[        R                  " U5      (       d   eg )Nr   r   r   r   rj   
2020-01-01r3   tsr   r   c                 ,    [         R                  " U SS9$ Nr   ddof)rH   rg   xs    r(   <lambda>7TestSeriesStatReductions.test_var_std.<locals>.<lambda>       qq)r+   rg   c                 ,    [         R                  " U SS9$ r   )rH   varr   s    r(   r   r      r   r+   r   r   r   r   r   )r   rz   rH   r   aranger   r   rg   rw   r8   rv   r   ilocr    rt   r#   r   datetime_seriesaltrP   rQ   r-   s          r(   test_var_std%TestSeriesStatReductions.test_var_std   s1   uRy

J IIb

+\26
 *E36)E36 $$!$,66/00q9
v0 $$!$,66/00q9
v0   !%AwwvAwwvr+   c                 .   [        [        S5      [        R                  SS9n[        [        R                  " S[        R                  S9[        SSS9SS	9nS
 nU R                  SX15        UR                  SS9n[        R                  " UR                  SS9[        R                  " [        UR                  5      5      -  n[        R                  " XE5        UR                  S/   nUR                  SS9n[        R                   " U5      (       d   eg )Nr   r   r   r   rj   r   r3   r   r   c                 l    [         R                  " U SS9[         R                  " [        U 5      5      -  $ r   )rH   rg   sqrtlenr   s    r(   r   3TestSeriesStatReductions.test_sem.<locals>.<lambda>   s     qq)BGGCFO;r+   semr   r   r   r   )r   rz   rH   r   r   r   r   r   rg   rw   r   r   r8   rv   r   r    rt   r   s          r(   test_sem!TestSeriesStatReductions.test_sem   s    uRy

J IIb

+\26
 <E36 $$!$,66/00q9BGG&&'=
 
 	v0   !%Awwvr+   c                   ^ [         R                  " S5      m[        [        S5      [        R
                  SS9nU4S jnU R                  SX!5        Sn[        SUS-   5       GH  n[        [        R                  " U5      5      n[        [        R                  " XD45      5      nXC:  af  [        R                  " UR                  5       5      (       d   e[        R                  " UR                  5       5      R                  5       (       d   eM  S	UR                  5       :X  d   e[        UR                  5       [        R
                  5      (       d   eUR                  5       S	:H  R                  5       (       a  GM   e   g )
Nscipy.statsr   r   r   c                 $   > TR                  U SS9$ NF)bias)skewr   sp_statss    r(   r   4TestSeriesStatReductions.test_skew.<locals>.<lambda>   s    ae4r+   r   r   r   r   )r;   importorskipr   rz   rH   r   r   r   r   rx   r   all
isinstance)r#   r   r   min_Nir-   dfr   s          @r(   	test_skew"TestSeriesStatReductions.test_skew   s   &&}5uRy

J4FC7 q%!)$Arwwqz"A277A6?+Byxx))))xx	*..0000AFFH}$}!!&&(BJJ7777	Q++---- %r+   c                    ^ [         R                  " S5      m[        [        S5      [        R
                  SS9nU4S jnU R                  SX!5        g )Nr   r   r   r   c                 $   > TR                  U SS9$ r   )kurtosisr   s    r(   r   4TestSeriesStatReductions.test_kurt.<locals>.<lambda>  s    ))!%)8r+   kurt)r;   r   r   rz   rH   r   r   )r#   r   r   r   s      @r(   	test_kurt"TestSeriesStatReductions.test_kurt   s>    &&}5uRy

J8FC7r+   c                 f   Sn[        SUS-   5       GH  n[        [        R                  " U5      5      n[	        [        R                  " X"45      5      nX!:  af  [        R
                  " UR                  5       5      (       d   e[        R
                  " UR                  5       5      R                  5       (       d   eM  SUR                  5       :X  d   e[        UR                  5       [        R                  5      (       d   eUR                  5       S:H  R                  5       (       a  GM   e   g )Nr   r   r   )
rz   r   rH   r   r   rx   r   r   r   r   )r#   r   r   r-   r   s        r(   test_kurt_corner)TestSeriesStatReductions.test_kurt_corner  s     q%!)$Arwwqz"A277A6?+Byxx))))xx	*..0000AFFH}$}!!&&(BJJ7777	Q++---- %r+   rU   N)FF)rV   rW   rX   rY   r   r   r   r   r   r   r   r   r   r   r   r   r]   rU   r+   r(   r_   r_   W   sJ     QV;5zM<C<NN<,.,8.r+   r_   )__doc__r   numpyrH   r;   pandasr    r   r   r   pandas._testing_testingr8   r   r_   rU   r+   r(   <module>r      sB        
 BG BGJ}. }.r+   