
    bMhY                        d dl Zd dlZd dlmZmZmZmZ d dlm	Z
 d Zd Zd Zd Zd Zd Zej                            d	 ej        d
                              d                              d           eddd
           eddd
                              d          g          ej                            dd dg          d                         Zd Zd Zd Zej                            dg d          d             Zd Zej                            dd e ed           edd          g d d!e"          gd# eej        gdz  d$gdz  g d%d!          gd& eej        gdz  d'gdz  g d(d!          gg          d)             Zd* Z d+ Z!ej                            d,g d-d.gg d/d0gg          d1             Z"d2 Z#d3 Z$d4 Z%ej                            d5 eej        d6d7g          d0d.ej        d8d6gf eej        d6d7g          d0d0ej        d8d6gf eej        d6d7g          d.d.ej        d8d9gf eej        d6d7g          d.d0ej        d8d9gf ed6ej        d7g          d0d.d:ej        d6gf ed6ej        d7g          d0d0d8ej        d6gf ed6ej        d7g          d.d.d:ej        d9gf ed6ej        d7g          d.d0d8ej        d9gf eej        d6ej        ej        d7ej        g          d0d.ej        d;ej        ej        d6ej        gf eej        d6ej        ej        d7ej        g          d0d0ej        d8ej        ej        d6ej        gf eej        d6ej        ej        d7ej        g          d.d.ej        d;ej        ej        d9ej        gf eej        d6ej        ej        d7ej        g          d.d0ej        d8ej        ej        d9ej        gf ed6ej        d7d<g          d0d.d;ej        d8d6gf ed6ej        d7d<g          d0d0d:ej        d8d6gf ed6ej        d7d<g          d.d.d;ej        d=d>gf ed6ej        d7d<g          d.d0d:ej        d=d9gfg          d?             Z&d@ Z'dA Z(ej                            dBg dC          dD             Z)ej                            dd dEg          ej                            dFg dG          dH                         Z*ej                            dFdIdJg          dK             Z+ej                            dg d!          ej                            dFdIdJg          dL                         Z,ej                            dFdIdJg          dM             Z-ej                            dFg dN          dO             Z.ej                            dFg dN          dP             Z/dQ Z0dR Z1dS Z2ej                            dTdIdJg          dU             Z3dV Z4ej                            dWdJdIg          ej                            dXd0d.g          dY                         Z5ej                            dZe6e7g          d[             Z8ej                            dWdJdIg          ej                            dXd0d.g          ej                            dZe6e7g          d\                                     Z9dS )]    N)	DataFrameDatetimeIndexSeries
date_rangec                      t          ddddt          j        dgi          } |  |                     d                                           d S )NBr                  ?com)r   npnanewmmeandfs    \/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pandas/tests/window/test_ewm.pytest_doc_stringr      sJ    	C!Q261-.	/	/BBFFsFOO    c                     | t          d                    j        } |d            |d            |d            |d            |dd 	            |dd 
            |dd            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   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            n# 1 swxY w Y   d}t          j        t          |          5   |d           d d d            n# 1 swxY w Y   d}t          j        t          |          5   |d           d d d            n# 1 swxY w Y   d}dD ]A}t          j        t          |          5   ||           d d d            n# 1 swxY w Y   Bd S )N   r   r         ?spanalphag      ?halflifer   r   )r   r   r    r   8comass, span, halflife, and alpha are mutually exclusivematchr   r   r   r    )r   r    comass must satisfy: comass >= 0      span must satisfy: span >= 1#halflife must satisfy: halflife > 0r   "alpha must satisfy: 0 < alpha <= 1)r)   r   )ranger   pytestraises
ValueError)frame_or_seriescmsgr   s       r   test_constructorr4      s:   a!!%A A#JJJJA3KKKKACLLLLAtA#DACTAt4     EC	z	-	-	-  	c              	z	-	-	- # #	sT""""# # # # # # # # # # # # # # #	z	-	-	-  	#               -C	z	-	-	-  	d               )C	z	-	-	-  	s               0C	z	-	-	-  	1               /C  ]:S111 	 	AENNNN	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 s~   B,,B03B0C,,C03C0D,,D03D0E--E14E1F..F25F2G//G36G3H44H8	;H8	c                      d} t          j        t          |           5  t          t	          d                                        t          j        d                     d d d            d S # 1 swxY w Y   d S )Nztimes must be datetime64 dtype.r$   r   times)r.   r/   r0   r   r-   r   r   aranger3   s    r   !test_ewma_times_not_datetime_typer:   >   s    
,C	z	-	-	- 1 1uQxx29Q<<0001 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1s   AA..A25A2c                     d} t          j        t          |           5  t          t	          d                                        t          j        d                              d                     d d d            d S # 1 swxY w Y   d S )Nz,times must be the same length as the object.r$   r   r   datetime64[ns]r6   	r.   r/   r0   r   r-   r   r   r8   astyper9   s    r   test_ewma_times_not_same_lengthr?   D   s    
8C	z	-	-	- J JuQxx29Q<<#6#67G#H#HIIIJ J J J J J J J J J J J J J J J J Js   ABBBc                     d} t          j        t          |           5  t          t	          d                                        dt          j        d                              d                     d d d            d S # 1 swxY w Y   d S )Nz/halflife must be a timedelta convertible objectr$   r   r	   r<   r    r7   r=   r9   s    r   #test_ewma_halflife_not_correct_typerB   J   s    
;C	z	-	-	- V VuQxxary||/B/BCS/T/TUUUV V V V V V V V V V V V V V V V V Vs   ABB	Bc                     d}t          j        t          |          5  t          t	          d                                        |            d d d            d S # 1 swxY w Y   d S )NzKhalflife can only be a timedelta convertible argument if times is not None.r$   r   r   )r.   r/   r0   r   r-   r   )halflife_with_timesr3   s     r    test_ewma_halflife_without_timesrE   P   s    
WC	z	-	-	- ; ;uQxx&9:::; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;s   1AA #A r7   
   zdatetime64[D]r<   2000DfreqperiodsUTCmin_periodsr
   c                 H   | }t          j        d          }t           j        |d d d<   t          d|i          }|                    |||                                          }|                    d|                                          }t          j        ||           d S )N      $@r
   Ar    rM   r7         ?)r    rM   )r   r8   r   r   r   r   tmassert_frame_equal)rD   r7   rM   r    datar   resultexpecteds           r   "test_ewma_with_times_equal_spacingrX   V   s     #H9T??DD1I	C;		BVVX;eVLLQQSSFvvsv<<AACCH&(+++++r   c                 `   | }d}t          g d                              |                              |          }t          j        d          }t          |          }|                    ||                                          }t          g d          }t          j	        ||           d S )Nz23 days)z
2020-01-01z2020-01-10T00:04:05z2020-02-23T05:00:23   rA   )        gE(?g*M?)
r   tz_localizeas_unitr   r8   r   r   r   rS   rT   )	tz_aware_fixtureunittzr    r7   rU   r   rV   rW   s	            r   %test_ewma_with_times_variable_spacingra   i   s    	BHRRRSS	R	 

 9Q<<D	4BVVXUV3388::FEEEFFH&(+++++r   c                     t          t          d                    }t          dg          }t          j        t
          d          5  |                    d| |           d d d            d S # 1 swxY w Y   d S )Nr	   NaTz$Cannot convert NaT values to integerr$   皙?)r   r    r7   )r   r-   r   r.   r/   r0   r   )rD   serr7   s      r   test_ewm_with_nat_raisesrf   x   s    
q

C5'""E	z)O	P	P	P D DC"5UCCCD D D D D D D D D D D D D D D D D Ds   A..A25A2c                    | }t          j        d          }t           j        |d d d<   t          ddd          }t	          ||d          }|                    ||          d	                                         }|                    d
          d	                                         }t          j        ||           d S )NrO   r
   rG   rH   rF   rI   rP   r   rA   rP   rR   r   )	r   r8   r   r   r   r   r   rS   assert_series_equal)rD   r    rU   r7   r   rV   rW   s          r   test_ewm_with_times_getitemrj      s    "H9T??DD1IvC444E	D))	*	*BVVXUV33C8==??Fvvsv##C(--//H68,,,,,r   arg)r   r    r   r   c                     | dd|d|i} t          t          d          t          d          d          j        di |fdj        D             }d         }fd|j        D             }||k    sJ d S )	Nr	   adjust	ignore_narh   c                 2    i | ]}|t          |          S  getattr.0attrr   s     r   
<dictcomp>z8test_ewm_getitem_attributes_retained.<locals>.<dictcomp>   s%    EEETgc4((EEEr   rP   c                 2    i | ]}|t          |          S rp   rq   rs   s     r   rv   z8test_ewm_getitem_attributes_retained.<locals>.<dictcomp>   s%    III4dGC&&IIIr   rp   )r   r-   r   _attributes)rk   rm   rn   kwargsrW   	ewm_slicerV   r   s          @r   $test_ewm_getitem_attributes_retainedr{      s     1hY?F
7)%((q22
3
3
7
A
A&
A
ACEEEES_EEEHCIIIII93HIIIFXr   c            
          t          j        t          d          5  t          t	          d                                        ddt          ddd          	           d d d            d S # 1 swxY w Y   d S )
Nz)times is not supported with adjust=False.r$   r	   rd   FrG   rH   rI   )rm   r7   )r.   r/   NotImplementedErrorr   r-   r   r   rp   r   r   #test_ewma_times_adjust_false_raisesr~      s    	#N
 
 
 
 
 	uQxxZS!%L%L%L 	 	
 	
 	

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
s   AA,,A03A0zfunc, expectedr   r   r   	   )gZP۶@r   gW$%@gd~$I(@g7m+@r   r	   r
   dtypestdgɬv@)gW2@g.@g> @g@gG@varg      2@)g=Զm5@   gˁj۶@@g@m[D@ggܶmH@c           	      v   t          t          d          t          dd          t          ddd          d|          }d	}t          j        t          |
          5  |                    dd          }d d d            n# 1 swxY w Y    t          ||                       }t          j        ||           d S )Nr         rF      r
   r   r   z1Support for axis=1 in DataFrame.ewm is deprecatedr$   r   r	   )r   axis)r   r-   rS   assert_produces_warningFutureWarningr   rr   rT   )funcrW   float_numpy_dtyper   r3   erV   s          r   test_float_dtype_ewmar      s    N 
!HHq"%B*:*:;;CT
 
 
B >C		#M	=	=	= & &FF1F%%& & & & & & & & & & & & & & &WQF&(+++++s   BBBc                     t          t          j        d          t          ddd          d          } t	          j        t          d          5  |                     d	d
d           d d d            d S # 1 swxY w Y   d S )NrO   rG   rH   rF   rI   )rP   time_colztimes must be datetime64r$   z1 dayr   r   rQ   )r   r   r8   r   r.   r/   r0   r   r   s    r   test_times_string_col_raisesr      s    	ioo:f3PR+S+S+STT
 
B 
z)C	D	D	D B B
QjAAAB B B B B B B B B B B B B B B B B Bs   A66A:=A:c                      t          t          d                                        dd          } t          j        t
          d          5  |                                  d d d            d S # 1 swxY w Y   d S )Nr	   Fr   rm   z
sum is notr$   )r   r-   r   r.   r/   r}   sum)rU   s    r   (test_ewm_sum_adjust_false_notimplementedr      s    %((Ae44D	*,	?	?	?  


                 s   A//A36A3zexpected_data, ignore)rO         @g      @g     &@F)rO   r   r   g      )@Tc                     t          ddt          j        dg          }|                    d|                                          }t          |           }t          j        ||           d S )NrF   r   r   )r   rn   )r   r   r   r   r   rS   ri   )expected_dataignorerU   rV   rW   s        r   test_ewm_sumr      sc     2q"&"%&&DXXC6X226688Fm$$H68,,,,,r   c                     t          t          j        d                    } d| d<   |                     dd                                                                          }t          j        |dz
            dk     sJ d S )Ni  r	   r   d   F)r   rm   g{Gz?)r   r   zerosr   r   r   abs)valsrV   s     r   test_ewma_adjustr      sr    "(4..!!DDGXX3uX--224488::F6&1*$$$$$$r   c                     t          g d          }| rt          g d          }nt          g d          }|                    d| |                                          }t          j        ||           d S )N)rR          @g      @g       @)rR   g?gʍ"k@gY;@)rR   gRTU?gS@g	@r   r   rm   rn   )r   r   r   rS   ri   )rm   rn   srW   rV   s        r   test_ewma_casesr      s     	###$$A ?88899===>>UUs6YU??DDFFF68,,,,,r   c            	      0   t          dgt          j        gdz  z   dgz             } |                     d                                          }t          j        |t          dgt          |           z                       t          t          j        gdz  dgz   t          j        gdz  z   dgz             } |                     d                                          }t          j        |t          t          j        gdz  dgdz  z                        d S )NrR   r   r   r
   r   )r   r   r   r   r   rS   ri   len)r   rV   s     r   test_ewma_nan_handlingr     s    ux!|#se+,,AUUqU\\  F663%#a&&.#9#9:::x!|se#rvhl2cU:;;AUUqU\\  F6626(Q,#*B#C#CDDDDDr   zs, adjust, ignore_na, wrR   g     @Y@gVUUUUU?gUUUUUU?gqq?gj/?g      I@gqq?g|	%?c                    |                      |                                          t          |                                          z                                  }|                     d||                                          }t          j        ||           |du r@|                     d|                                          }t          j        ||           d S d S )Nr   r   Fr   )multiplycumsumr   ffillr   r   rS   ri   )r   rm   rn   wrW   rV   s         r   test_ewma_nan_handling_casesr     s    T 

1$$&&)9)9););;BBDDHUUs6YU??DDFFF68,,,E3v..3355
vx00000 r   c                     t           j                            d                              d          } t          j        dd          }t           j        | |<   t          |           }|                    d                                          }|                    d                                          }|                    d	
                                          }|                    d                                          }t          j
        ||           t          j
        ||           t          j
        ||           d S )Nr
   r   r   (   gVR?r   gƷC?r   g_!@r   gXlWY?r   )r   randomdefault_rngstandard_normalr8   r   r   r   r   rS   ri   )arrlocsr   abr2   ds          r   test_ewm_alphar     s
   
)


"
"
2
23
7
7C9RDCIsA	'((--//A	%&&++--A	$%%**,,A	~&&++--A1a   1a   1a     r   c                  8   t           j                            d                              d          } t          j        dd          }t           j        | |<   t          |           }d}t          j        t          |          5  |
                    d           d d d            n# 1 swxY w Y   |
                    d	           |
                    d
           d}t          j        t          |          5  |
                    d           d d d            n# 1 swxY w Y   t          j        t          |          5  |
                    d	           d d d            n# 1 swxY w Y   t          j        t          |          5  |
                    d           d d d            n# 1 swxY w Y   |
                    d           |
                    d           d}t          j        t          |          5  |
                    d           d d d            n# 1 swxY w Y   t          j        t          |          5  |
                    d	           d d d            n# 1 swxY w Y   |
                    d
           d}t          j        t          |          5  |
                    d           d d d            n# 1 swxY w Y   t          j        t          |          5  |
                    d	           d d d            n# 1 swxY w Y   |
                    d
           |
                    d           t          j        t          |          5  |
                    d           d d d            d S # 1 swxY w Y   d S )Nr
   r   r   r   r(   r$   gr   r[   rd   r*   r   g?rR   g?r+   r   r,   r   )r   r   r   r   r8   r   r   r.   r/   r0   r   )r   r   r   r3   s       r   test_ewm_domain_checksr     sT   
)


"
"
2
23
7
7C9RDCIsA
,C	z	-	-	-  	$              EEcENNNEEcENNN
(C	z	-	-	-  	4              	z	-	-	-  	3              	z	-	-	-  	3              EEsEOOOEEsEOOO
/C	z	-	-	-  	t              	z	-	-	-  	s              EE3E
.C	z	-	-	-  	D              	z	-	-	-  	C              EEEEEE	z	-	-	-  	C                 s   B&&B*-B*:DD!$D!E&&E*-E*F//F36F3H&&H*-H*I//I36I3-KKK6LL L+NNNmethod)r   r   r   c                     t          g t          j                  }|                    d          } t	          ||                       }t          j        ||           d S )Nr   rZ   )r   r   float64r   rr   rS   assert_almost_equal)r   r   r   rV   s       r   test_ew_empty_seriesr     sU    "BJ'''D
((1++C!WS&!!##F64(((((r   r	   name)r   r   r   c                 |   t           j                            d                              d          }t           j        |d d<   t           j        |dd <   t          |          } t          |                    dd          |                      }|d d                                         	                                sJ |dd                                          
                                rJ  t          |                    d|           |                      }|dk    ra|d d                                         	                                sJ |dd                                          
                                rJ n`|d d                                         	                                sJ |dd                                          
                                rJ  t          t          t                                        d|           |                      }t          j        |t          d	                      t          t          d
g                              d|           |                      }|dk    r$t          j        |t          d
g                     n-t          j        |t          t           j        g                      t          t          t          j        d                                        d          |                      }|j        t           j        k    sJ d S )Nr
   2   rF   r   rM   r   r   r   r   rR   )rM   r   )r   r   r   r   r   r   rr   r   isnaallanyobjectrS   ri   r8   r   r   )rM   r   r   r   rV   result2s         r   test_ew_min_periodsr     s    )


"
"
2
22
6
6CvCHCIsA 9WQUUrqU11488::F#2#;!!#####bcc{!!%%'''''BWQUUr{U;;TBBDDFv~~crc{!!%%'''''"##;##%%))++++++ crc{!!%%'''''"##;##%%))+++++ VWV&)))--"+-NNPTUUWWF66	#:#:#:;;; KWVSE]]&&r{&CCTJJLLFv~~
vvse}}5555 	vvrvh'7'7888 @gfRYr]]++//R/88$??AAG=BJ&&&&&&r   covcorrc                    t          t          j                            d                              d          t          d                    }|dd          t          j                            d                              d          z   }t          j        |d d<   t          j        |j        dd <    t          |	                    dd	          |           |          }t          j
        |j        d d
                                                   sJ t          j
        |j        d
d                                                    rJ d S )Nr
   r   index0   rF   r   r   r   r      )r   r   r   r   r   r-   r   ilocrr   r   isnanvaluesr   r   )r   rP   r   rV   s       r   test_ewm_corr_covr     s   ry$$Q''77;;599MMMA	!""	%%a((88<<<AVAcrcF6AF344L8WQUUrqU11488;;F8FM#2#&''++-----xbcc*++//1111111r   c                 D   t          t          j                            d                              d          t          d                    }|dd          t          j                            d                              d          z   }t          j        |d d<   t          j        |j        dd <    t          |	                    d|          |           |          }t          j
        |j        d d	                                                   sJ t          j
        |j        d	d                                                    rJ t          g t          j        
          } t          |	                    d|          |           |          }t          j        ||            t          t          dg          	                    d|          |           t          dg                    }t          j        |t          t          j        g                     d S )Nr
   r   r   r   rF   r   r   r   r   r   rR   )r   r   r   r   r   r-   r   r   rr   r   r   r   r   r   r   rS   ri   )r   rM   rP   r   rV   emptys         r   test_ewm_corr_cov_min_periodsr     s    	ry$$Q''77;;599MMMA	!""	%%a((88<<<AVAcrcF6AF344LBWQUUr{U;;TBB1EEF 8FM#2#&''++-----xbcc*++//11111 2RZ(((EFWUYY2;Y??FFuMMF65))) OWVSE]]&&2;&GGNNu F 6626(#3#344444r   c                    t          t          j                            d                              d          t          d                    }t          j        |d d<   d}t          j        t          |          5   t          |                    dd	          |           t          j                            d                              d                     d d d            d S # 1 swxY w Y   d S )
Nr
   r   r   rF   z#other must be a DataFrame or Seriesr$   r   r   r   )r   r   r   r   r   r-   r   r.   r/   r0   rr   r   )r   rP   r3   s      r   *test_different_input_array_raise_exceptionr   8  s   ry$$Q''77;;599MMMAVAcrcF
/C	z	-	-	- 
 
3"!,,d33I!!!$$44R88	
 	
 	

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
s   =AC))C-0C-)r   r   r   c                      t          |                     d          |                      }t          |t                    sJ d S NrF   r   )rr   r   
isinstancer   )seriesr   series_results      r   test_ewma_seriesr   E  sC    5GFJJ2J..5577MmV,,,,,,,r   c                      t          |                     d          |                      }t          |t                    sJ d S r   )rr   r   r   r   )framer   frame_results      r   test_ewma_framer   K  sC    375999,,d3355LlI.......r   c                     |                      d                                          }|                      d                                          }t          j        ||           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 S # 1 swxY w Y   d S )	N      #@r   r   r   r#   r$   r!   1Must pass one of comass, span, halflife, or alphar   r   rS   r   r.   r/   r0   r   rP   r   r3   s       r   test_ewma_span_com_argsr   Q  sr   

s
  ""A


  ""A1a   
DC	z	-	-	- % %

s
$$$% % % % % % % % % % % % % % % >C	z	-	-	-  

                 s$   B''B+.B+'DD
Dc                 &   |                      d                                          }|                      d                                          }t          j        ||           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   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            d S # 1 swxY w Y   d S )NgH+@r   rO   r   r#   r$   r   r   r'   r   )r   r    )r   r   r    r   r   r   s       r   test_ewma_halflife_argr   ^  sf   

)
**//11A

D
!!&&((A1a   
DC	z	-	-	- ) )

R
((() ) ) ) ) ) ) ) ) ) ) ) ) ) )	z	-	-	- ) )

sR
((() ) ) ) ) ) ) ) ) ) ) ) ) ) )	z	-	-	- 2 2

sb
1112 2 2 2 2 2 2 2 2 2 2 2 2 2 2
=C	z	-	-	-  

                 sH   B''B+.B+C11C58C5D<<E E $FF
F
c                 ^   | }d}t          j        t          |          5  |                                 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   t          j        t          |          5  |                    dd           d d d            d S # 1 swxY w Y   d S )	Nr   r$   r#   rO   r   r&   )r   r   r"   )r.   r/   r0   r   )r   r   r3   s      r   test_ewm_alpha_argr   n  s   A
=C	z	-	-	-  	               EC	z	-	-	- # #	$c"""# # # # # # # # # # # # # # #	z	-	-	- $ $	4s###$ $ $ $ $ $ $ $ $ $ $ $ $ $ $	z	-	-	- ( (	t3'''( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (sG   AAA)BBB3CCC=D""D&)D&r   c                 |    t          |                    dd          |                       }|j        t          d           dfdf         }|j                            d          |_         t          |d                             dd          |           |d                   }t          j        ||d           d S )NrF   r   r   rM   r	   F)check_names)rr   r   locslicer   	droplevelrS   ri   )r   r   rV   rW   s       r   test_ewm_pairwise_cov_corrr   ~  s    =WUYYBAY66==??FZta(!+,F<))!,,FLBwuQx|||;;TBB58LLH68??????r   c                    | }t          dgddd          }|d                             t                    |d<   |                    dd          }t	          ||d           }| ||          }|rdd	gng d}||                             |g                              d
                              t                    }t          |j	                  |k    sJ t          j        ||           d S d S )Nr	   r
   rZ   r   r   r2   r2   r   numeric_onlyr   r   Tdrop)r   r>   r   r   rr   aggreset_indexfloatlistcolumnsrS   rT   )	arithmetic_win_operatorsr   kernelr   r   oprV   r  rW   s	            r   test_numeric_only_framer    s    %F	!11--	.	.BgnnV$$BsG
&&aQ&
'
'C	fd	#	#B	~... ,A3**///g;??F8,,88d8CCJJ5QQH$%%0000
fh///// ~r   r  use_argc                    t          g dddd          }|d                             t                    |d<   |r|fnd}|                    dd          }t	          ||           } ||d	|i}|rd
dgng d}||                             t
                    }	|r|	fnd}
|	                    dd          }t	          ||           } ||
d	|i}t          j        ||           d S )Nr	   r
   rZ   r
   rZ   r   r2   rp   r	   r   r   r   r   )r   r>   r   r   rr   r  rS   rT   )r  r   r  r   rk   r   r  rV   r  df2arg2ewm2op2rW   s                 r    test_numeric_only_corr_cov_framer    s    
33	4	4BgnnV$$BsG
"2%%C
&&aQ&
'
'C	f		BR0<00F )=sCjjoooG
W+

U
#
#C$C66"D77q7))D
$

CsD4|44H&(+++++r   r   c                    | }t          dg|          }|                    dd          }t          ||d           }|t          j        d           |rQ|t
          u rHd| d}t          j        t          |          5   ||	           d d d            d S # 1 swxY w Y   d S  ||	          }|                    |g          	                    d
          
                    t                    }	t          j        ||	           d S )Nr	   r   r
   r   zNo op to testExponentialMovingWindow.  does not implement numeric_onlyr$   r   Tr   )r   r   rr   r.   skipr   r/   r}   r   r   r>   r  rS   ri   )
r  r   r   r  re   r   r  r3   rV   rW   s
             r   test_numeric_only_seriesr    sd    &F
!E
"
"
"C
''qa'
(
(C	fd	#	#B	zO$$$ 1QQQQ].c::: 	* 	*BL))))	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* ...77F8$$00d0;;BB5II
vx00000s   ?BB Bc                     t          g d|          }|r|fnd}|                    dd          }t          ||           }|rM|t          u rDd|  d}t	          j        t          |	          5   ||d
|i d d d            d S # 1 swxY w Y   d S  ||d
|i}	|                    t                    }
|r|
fnd}|
                    dd          }t          ||           } ||d
|i}t          j
        |	|           d S )Nr
  r   rp   r
   r	   r   r  r  r$   r   )r   r   rr   r   r.   r/   r}   r>   r  rS   ri   )r  r  r   r   re   rk   r   r  r3   rV   ser2r  r  r  rW   s                  r   !test_numeric_only_corr_cov_seriesr    s   
 %
(
(
(C
#3&&C
''qa'
(
(C	f		B 1QQQQ].c::: 	0 	0B/,///	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 S4|44zz%  !)wwrxxQAx..dF##38<88
vx00000s   .	BBB):numpyr   r.   pandasr   r   r   r   pandas._testing_testingrS   r   r4   r:   r?   rB   rE   markparametrizer8   r>   r\   rX   ra   rf   rj   r{   r~   r-   r  r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  intr   r  r  rp   r   r   <module>r     s
                          ( ( (V1 1 1J J JV V V; ; ; 	"_--445EFF
6R000
6R000<<UCC  A//, , 0/ ,, , ,D D D	- 	- 	-  D D DEE  FE
 
 
  IuQxxuQ{{EEE 
   
	
 Ix!| zA~GGG  		
 Ix!|vzGGG  		
- # #H, ,I# #H,B B B   u%(>(>(>'EF - -	 -% % %- - -E E E  FBFC'((V/#6		
 FBFC'((V/#6		
 FBFC'((V/3DF		
 FBFC'((V/3DF		
 FC'((-rvs;		
 FC'(('"&#6		
 FC'((-rv8IK		
 FC'(('"&3DF		
 FBFC?@@V5rvrvsBFS		
 FBFC?@@V/"&"&#rvN		
 FBFC?@@0"		
 FBFC?@@*"		
 FC-..0*		
	
 FC-..0*		
	
 FC-..0AK			
 FC-..0A"		
	
sDG GP	1 	1QG GP	1! ! ! & & &R #9#9#9::) ) ;:) A//!7!7!788&' &' 98 0/&'R %11	2 	2 21	2 			22%115 5 21 3254 %11	
 	
 21	
 !7!7!788- - 98-
 !7!7!788/ / 98/

 
 
   ( ( (  %11@ @ 21@0 0 0" FE?33T5M22, , 32 43,( 3-001 1 101& FE?33T5M223-001 1 10 32 431 1 1r   