
    Pih                        d dl Zd dlZd dlmZmZmZmZmZm	Z	m
Z
 d dlmZ d Zd Zej                            ddd ej        dg          g          d	             Zej                            d
d ej        dej                            d                    g          d             Zd Zd Zd Zd Zd Zej                            dg dg dddgdgdd gfddgddgdd dgfg dg ddg dfgdfg dg dddgdgdd gfddgddgdd dgfg dg ddg dfgdfg dg dddgdgdd gfddgddgdd dgfg dg ddg dfgdfdgdgdg dfdi g fgdfdej        dgej        ddgddgej        gdd gfdej        gej        dgdd dgfdej        dgej        ddgdg dfgdfdej        dgej        ddgddgej        gdd gfdej        gej        dgdd dgfdej        dgej        ddgdg dfgdfdej        dgej        ddgddgej        gdd gfdej        gej        dgdd dgfdej        dgej        ddgdg dfgdfg          d              Zej                            d! eg d          dgd gfddgd dgfg dg dfgdf eg d          dgd gfddgd dgfg dg dfgdf eg d          dgd gfddgd dgfg dg dfgdf eddg          dgd gfddgd dgfgdf eej        dg          ej        gd gfej        dgd dgfgdf eg d"#          g dfg          d$             Zd% Zd& Z ej                            d'd(d)g          d*             Z!ej                            d+g d,          ej                            d'g d-          ej                            d.d/d0g          ej                            d1g d2          d3                                                 Z"ej                            d+g d,          ej                            d1g d4          d5                         Z#d6 Z$d7 Z%d8 Z&d9 Z'd: Z(d; Z)ej                            d<d=d> fd?d@ fdAdB fdCdD fgg dEF          dG             Z*ej                            d<d=ej+        fd?ej,        fdAej-        fdCej.        fgg dEF          dH             Z/dI Z0dJ Z1ej                            dKdL dM g          dN             Z2ej                            dKdO dP dQ dR dS dT dU dV dW dX dY dZ d[ d\ d] d^ d_ g          d`             Z3da Z4db Z5dc Z6dd Z7de Z8df Z9ej                            dgg dhdi e:dj           e:dj          ddddddddg
fdej        dkej        dlej        dmej        dnej        g
di e:dj           e:dj           e:dj           e:dj          ddddddg
fg dhdo e:dj           e:dj          dkdpdldqdmdrdndsg
fdej        dkej        dlej        dmej        dnej        g
do e:dj           e:dj           e:dj           e:dj          dldldmdmdndng
fg          dt             Z;ej                            dgg dhdidgduz  fdej        dkej        dlej        dmej        dnej        g
didgduz  fg dhdog dhfdej        dkej        dlej        dmej        dnej        g
dog dvfg          dw             Z<dx Z=dy Z>ej                            dzd{d|g          ej                            d}d/d0g          d~                         Z?ej                            de@eAg          d             ZBej                            dzd{d|g          ej                            d}d/d0g          ej                            de@eAg          d                                     ZCdS )    N)	DataFrameDatetimeIndexIndex
MultiIndexSeriesisnanotnac                      t          ddddt          j        dgi          } |  |                     d                                           d S )NBr            )r   npnan	expandingsumdfs    v/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/pandas/tests/window/test_expanding.pytest_doc_stringr      sH    	C!Q261-.	/	/BBLLOO    c                 X     | t          d                    j        } |d           d S )N   r   min_periods)ranger   )frame_or_seriescs     r   test_constructorr      s7     	a!!+A A!r   w       @foor   c                      | t          d                    j        }d}t          j        t          |          5   ||           d d d            d S # 1 swxY w Y   d S )Nr   zmin_periods must be an integermatchr   )r   r   pytestraises
ValueError)r   r    r   msgs       r   test_constructor_invalidr*      s     	a!!+A
*C	z	-	-	-  	a                 s   AAAexpanderr   lsz,GH#16425 expanding with offset not supported)reason)marksc                    t                      }t                                          |                                           }t          j        ||           t          t          g                     }t          t          g                                         |                                           }t          j        ||           d S )Nindex)r   r   r   tmassert_frame_equalr   )r+   expectedresults      r   test_empty_df_expandingr6   )   s      {{H[[""8,,0022F&(+++ }R00111H]2..///99(CCGGIIF&(+++++r   c                     t          t          j        g          } |                     d                                          }t          dg          }t          j        ||           |                     d                                          }t          t          j        g          }t          j        ||           d S )Nr   r   g        r   )r   r   r   r   r   r2   assert_series_equal)xr5   r4   s      r   test_missing_minp_zeror:   D   s     	xA[[Q[''++--Fse}}H68,,, [[Q[''++--FrvhH68,,,,,r   c                     t          t          j        d                    } t          d t          d          D                       }|                     d                                          }t          j        ||           d S )N)
      c           	      f    i | ].}|t           j        gd z  d t          dd          D             z   /S )r   c                 ,    g | ]}t          |          S  )float).0js     r   
<listcomp>z-test_expanding.<locals>.<dictcomp>.<listcomp>W   s    ;;;E!HH;;;r         )r   r   r   )rB   is     r   
<dictcomp>z"test_expanding.<locals>.<dictcomp>W   s>    OOORVHqL;;eArll;;;;OOOr   r=   rE   )r   r   onesr   r   r   r2   r3   )r   r4   r5   s      r   test_expandingrJ   R   su    	278$$	%	%BOOU2YYOOO H \\!__  ""F&(+++++r   c                      | t          d                                        d                                          } | t          j        t          j        dddg          }t          j        ||           d S )Nr   rE   r         @      @      @r   r   countr   r   r2   assert_equalr   r5   r4   s      r   %test_expanding_count_with_min_periodsrS   ]   sj    _U1XX&&00Q0??EEGGFS#>??HOFH%%%%%r   c                     dddt           j        dddg}g d} | |                                                                          } | |          }t	          j        ||           d S )Nr   r   rE   r   r      )      ?r!   rL   rL   rM   rN         @)r   r   r   rP   r2   rQ   )r   valuesexpected_countsr5   r4   s        r   9test_expanding_count_default_min_periods_with_null_valuesrZ   d   sq    Arvq!Q'F999O_V$$..006688F//HOFH%%%%%r   c                 0    | t          d                                        d                                          } | t          j        t          j        t          j        t          j        t          j        g          }t          j        ||           d S )Nr   rU   r   rO   rR   s      r   =test_expanding_count_with_min_periods_exceeding_series_lengthr\   n   sp    _U1XX&&00Q0??EEGGFGHHHOFH%%%%%r   zdf,expected,min_periodsr   r   rE   )r   r   rU   )Ar   r   r   r   r   r   rE   rU   rV   c                     t          |           } d |D             }t          ||                     |          d          D ]\  }}t          j        ||           d S )Nc                 6    g | ]\  }}t          ||           S r0   )r   rB   rX   r1   s      r   rD   z1test_iter_expanding_dataframe.<locals>.<listcomp>   s)    PPPOVU6///PPPr   Fstrict)r   zipr   r2   r3   )r   r4   r   	expectedsactuals        r   test_iter_expanding_dataframeri   u   sr    ~ 
2BPPxPPPI	2<<+D+DUSSS 0 0&
fh////0 0r   zser,expected,min_periodsint64dtypec                     d |D             }t          ||                     |          d          D ]\  }}t          j        ||           d S )Nc                 6    g | ]\  }}t          ||           S rb   )r   rc   s      r   rD   z.test_iter_expanding_series.<locals>.<listcomp>   s)    MMM&%e,,,MMMr   Trd   )rf   r   r2   r8   )serr4   r   rg   rh   s        r   test_iter_expanding_seriesrp      sg     NMHMMMI	3==+E+EdSSS 1 1&
vx00001 1r   c                      t                      } t          j        t          d          5  |                     d           d d d            d S # 1 swxY w Y   d S )Nz.* got an unexpected keywordr$   T)center)r   r&   r'   	TypeErrorr   r   s    r   test_center_invalidrt      s    	B	y(F	G	G	G " "
D!!!" " " " " " " " " " " " " " " " " "s   AAAc                 ,    | g d          }|                                                                 }t          |t                    rt	          |d         j                  }t	          t          j        ddg          }t          j	        ||           d S )Nr_   r         ?g3Ey?)
r   sem
isinstancer   r   rX   r   r   r2   r8   )r   objr5   r4   s       r   test_expanding_semrz      s    
/)))
$
$C]]__  ""F&)$$ *q	())rvsN344H68,,,,,r   methodskewkurtc                 d   t          t          j                            d                              d                    } t	          |                    d          |                       }|dz   } t	          |                    d          |                       }t          j        ||           d S )Nr   r<   rE   i  )r   r   randomdefault_rnggetattrr   r2   r8   )r{   sr4   r5   s       r   ,test_expanding_skew_kurt_numerical_stabilityr      s     	ry$$Q''..r2233A.wq{{1~~v..00H	DA,WQ[[^^V,,..F68,,,,,r   window)r   rE   r<   r=   )minmaxaveragepctTF	test_data)default
duplicatesnansc           
         d}|dk    rAt          t          j                            d                              |                    }n|dk    rBt          t          j                            d                              d|                    }nl|dk    rft          t          j                            d                              dd	d
t          j        t          j        t          j         g|                    }|                    |                               fd          }|                    |           	                              }t          j        ||           d S )Nr=   r   r   datar   rE   r   rV         ?      ?c                 J    |                                j        d         S )Nr{   r   	ascending)rankiloc)r9   r   r{   r   s    r   <lambda>ztest_rank.<locals>.<lambda>   s!    !&&C9&EEJ2N r   r   )r   r   r   r   choicer   infr   applyr   r2   r8   )	r   r{   r   r   r   lengthro   r4   r5   s	    ```     r   	test_rankr      sV   
 FI")//2299&AABBB	l	"	"")//2299!VDDEEE	f		&&q))00dD"&"&26':F 
 
 
 }}V$$**NNNNNN H ]]6""''v3)'TTF68,,,,,r   )r   r   r   	precisionc           
         d}|dk    rAt          t          j                            d                              |                    }n|dk    rBt          t          j                            d                              d|                    }n|dk    rgt          t          j                            d                              dd	d
t          j        t          j        t          j         g|                    }n#|dk    rt          g dt          j                  }|                    |           	                    d           }|                    |           
                                }t          j        ||           d S )Nr=   r   r   r   r   rE   r   rV   r   r   r   )
g333333?g433333?g333333?g433333?g?g?rv   rv   皙?r   )r   rl   c                 *    |                                  S N)nuniquer9   s    r   r   ztest_nunique.<locals>.<lambda>!  s    QYY[[ r   )r   r   r   r   r   r   r   float64r   r   r   r2   r8   )r   r   r   ro   r4   r5   s         r   test_nuniquer     sq    FI")//2299&AABBB	l	"	"")//2299!VDDEEE	f		&&q))00dD"&"&26':F 
 
 

 
k	!	!   *
 
 
  }}V$$**+@+@AAH]]6""**,,F68,,,,,r   c                    |                                  }|t          j                            d                              t          |                    z   d d         }|                                                    |          }|                    t          |          d                              |          }t          j
        ||           d S Nr   r   r   r   )dropnar   r   r   standard_normallenr   corrrollingr2   assert_almost_equalseriesr^   r   r5   rolling_results        r   test_expanding_corrr   '  s    A	
RY""1%%55c!ff==	=ssCA[[]]""FYYc!ff!Y<<AA!DDN>622222r   c                     |                      d                                          }t          j        ||                     t          |           d                                                     d S )Nr   r   r   )r   rP   r2   r   r   r   )r   r5   s     r   test_expanding_countr   2  sj    !,,2244Fc&kkqAAGGII    r   c                     |                                                      d          }|                     t          |           d                              d          }t	          j        ||           d S )Nrv   r   r   )r   quantiler   r   r2   r   )r   r5   r   s      r   test_expanding_quantiler   9  sd    ((--F^^3v;;A^FFOOPSTTN6>22222r   c                    | }|t           j                            d                              t	          |                    z   d d         }|                                                    |          }|                    t	          |          d                              |          }t          j	        ||           d S r   )
r   r   r   r   r   r   covr   r2   r   r   s        r   test_expanding_covr   A  s    A	
RY""1%%55c!ff==	=ssCA[[]]q!!FYYc!ff!Y<<@@CCN>622222r   c                     |                                                                  }|                     t          |           d                                          }t	          j        ||           d S Nr   r   )r   r   r   r   r2   r3   framer5   r   s      r   test_expanding_cov_pairwiser   L  s]    __""$$F]]#e**!]DDHHJJN&.11111r   c                     |                                                                  }|                     t          |           d                                          }t	          j        ||           d S r   )r   r   r   r   r2   r3   r   s      r   test_expanding_corr_pairwiser   T  s]    __##%%F]]#e**!]DDIIKKN&.11111r   zfunc,static_compr   c                 .    t          j        | d          S Nr   axis)r   r   r   s    r   r   r   ^      "&+++ r   meanc                 .    t          j        | d          S r   r   r   r   s    r   r   r   _  s    2711--- r   r   c                 .    t          j        | d          S r   )r   r   r   s    r   r   r   `  r   r   r   c                 .    t          j        | d          S r   )r   r   r   s    r   r   r   a  r   r   )r   r   r   r   )idsc           	          |t          j        t          t          d                    t           j        gdz  z                       }|                    d          } t          ||                       }t          ||          sJ  ||d d                   }|t          u rt          j
        |d         |           d S t          j        |j        d         |d           d S )Nr<   r   r   rF   Fcheck_names)r   arraylistr   r   r   r   rx   r   r2   r   r8   r   )funcstatic_compr   r   ry   r5   r4   s          r   test_expanding_funcr   [  s     ?28DrOOrvhm$CDDEED
..Q.
'
'CWS$!!Ffo.....{49%%H&  
vbz844444
v{2eLLLLLLr   c                 ,   t          t          j                            d                              d                    } t          |                    d          |                       }|d d                                                                         sJ t          j
        |j        d          ||d d                               t          |                    d          |                       }t          |j        d                   sJ t          |j        d	                   sJ t          t          j                            d                              d
                    } t          |                    d          |                       }t          |d                   sJ t          |d                   sJ  t          |                    d          |                       } t          |                    d          |                       }t          j
        ||            t          |                    d          |                       }t          j
        |j        d          ||d d                              d S )Nr   2      r      r            r=   r   rE   r   r   r   )r   r   r   r   r   r   r   r   allr2   r   r   r	   )r   r   ro   r5   ser2result0result1s          r   test_expanding_min_periodsr   s  s8    &&q))99"==
>
>C9WS]]r]22D99;;F#2#;!!#####6;r?KKCRC,A,ABBB :WS]]r]22D99;;FB     R!!!!!")''**::2>>??D9WT^^^22D99;;Fq	??? :gcmmm22D99;;G9gcmmm22D99;;G7G,,,8WS]]q]11488::F6;r?KKCRC,A,ABBBBBr   c           	         | \  }} |t          j        t          t          d                    t           j        gdz  z                       }|                    d                              d ||          }t          ||          sJ |t          u r9t          j
        |d         t          j        |d d         d	                     d S t          j        |j        d         t          j        |d d         d	          d
           d S )Nr<   r   r   c                 *    |                                  S r   r   r   s    r   r   z&test_expanding_apply.<locals>.<lambda>      !&&(( r   rawengine	   rF   r   r   Fr   )r   r   r   r   r   r   r   rx   r   r2   r   r   r8   r   )engine_and_rawr   r   r   r   r5   s         r   test_expanding_applyr     s    KFC?28DrOOrvhm$CDDEED^^^**00F 1  F fo.....&  
vay"'$ss)!*D*D*DEEEEE
KNBGD"IA666E	
 	
 	
 	
 	
 	
r   c                 f   | \  }}t          t          j                            d                              d                    }|                    d                              d ||          }|d d                                                                         sJ t          j
        |j        d         t          j        |d d                              |                    d	                              d
 ||          }t          |j        d                   sJ t          |j        d                   sJ t          t          j                            d                              d                    }|                    d                              d ||          }t          |d                   sJ t          |d                   sJ |                    d                              d ||          }|                    d                              d ||          }t          j
        ||           |                    d                              d ||          }t          j
        |j        d         t          j        |d d                              d S )Nr   r   r   r   c                 *    |                                  S r   r   r   s    r   r   z2test_expanding_min_periods_apply.<locals>.<lambda>  r   r   r   r   r   r   c                 *    |                                  S r   r   r   s    r   r   z2test_expanding_min_periods_apply.<locals>.<lambda>  r   r   r   r   r=   r   c                 *    |                                  S r   r   r   s    r   r   z2test_expanding_min_periods_apply.<locals>.<lambda>  r   r   rE   r   r   c                 *    |                                  S r   r   r   s    r   r   z2test_expanding_min_periods_apply.<locals>.<lambda>  r   r   r   c                 *    |                                  S r   r   r   s    r   r   z2test_expanding_min_periods_apply.<locals>.<lambda>  r   r   c                 *    |                                  S r   r   r   s    r   r   z2test_expanding_min_periods_apply.<locals>.<lambda>  r   r   )r   r   r   r   r   r   r   r   r   r2   r   r   r   r	   )r   r   r   ro   r5   r   r   r   s           r    test_expanding_min_periods_applyr     s    KFC
&&q))99"==
>
>C]]r]**00F 1  F #2#;!!#####6;r?BGCH,=,=>>> ]]r]**00F 1  F B     R!!!!!")''**::2>>??D^^^**00F 1  F q	??? mmm**00F 1  G mmm**00F 1  G 7G,,,]]q]))//F 0  F 6;r?BGCH,=,=>>>>>r   fc                 X    |                      d                              | d          S Nr   r   Tpairwiser   r   r   s    r   r   r     s'    1;;1;--11!d1CC r   c                 X    |                      d                              | d          S r   r   r   r   s    r   r   r     s'    1;;1;--221t2DD r   c                 "   t                      }t          t          dgd          t          g d                    }|d                             d          |d<   t          t          j        |j        |j        g                    }t          t          j        |j        |j        gddg          t          dgd          d	          } | |          }t          j        ||            | |          }t          j        ||           d S )
Nar"   namebarcolumnsr1   r   r0   )names)r1   r  rl   )	r   r   astyper   from_productr1   r  r2   r3   )r   df1df2df1_expecteddf2_expected
df1_result
df2_results          r   *test_moment_functions_zero_length_pairwiser    s	    ++C
E3%e444E"5<Q<Q<Q
R
R
RC3xy))CH:#:CIs{;S#T#TUUUL%sy#+&>uenUUUse%(((  L 3J*l3333J*l33333r   c                 N    |                                                                  S r   )r   rP   r   s    r   r   r     s    !++--%%'' r   c                 X    |                      d                              | d          S Nr   r   Fr   r   r   s    r   r   r     s'    !++!+,,00U0CC r   c                 X    |                      d                              | d          S r  r   r   s    r   r   r     s'    !++!+,,11!e1DD r   c                 R    |                      d                                          S Nr   r   )r   r   r   s    r   r   r          !++!+,,0022 r   c                 R    |                      d                                          S r  )r   r   r   s    r   r   r     r  r   c                 R    |                      d                                          S r  )r   firstr   s    r   r   r     s     !++!+,,2244 r   c                 R    |                      d                                          S r  )r   lastr   s    r   r   r          !++!+,,1133 r   c                 R    |                      d                                          S r  )r   r   r   s    r   r   r     r  r   c                 R    |                      d                                          S r  )r   r   r   s    r   r   r     r  r   c                 R    |                      d                                          S r  )r   stdr   s    r   r   r     r  r   c                 R    |                      d                                          S r  )r   varr   s    r   r   r     r  r   c                 R    |                      d                                          S r  )r   r|   r   s    r   r   r     r  r   c                 R    |                      d                                          S r  )r   r}   r   s    r   r   r     r  r   c                 T    |                      d                              d          S )Nr   r   rv   )r   r   r   s    r   r   r     s"    !++!+,,55c:: r   c                 R    |                      d                                          S r  )r   medianr   s    r   r   r     s     !++!+,,3355 r   c                 b    |                      d                              t          d          S )Nr   r   Fr   r   r   r   r   s    r   r   r     s'    !++!+,,223E2BB r   c                 b    |                      d                              t          d          S )Nr   r   Tr'  r(  r   s    r   r   r     s'    !++!+,,223D2AA r   c                    t          t          j                  }|}t                      }|}t          dg          }|d                             d          |d<   |} | |          }t          j        ||            | |          }t          j        ||            | |          }	t          j        |	|           d S )Nrk   r   r  r   )r   r   r   r   r  r2   r8   r3   )
r   r   
s_expectedr  r	  r  r
  s_resultr  r  s
             r   !test_moment_functions_zero_lengthr.    s    0 	RZ   AJ
++CL
SE
"
"
"C3xy))CHLqttH8Z0003J*l3333J*l33333r   c                     | \  }}t          g t          j                  }t          j        ||                                                    d ||                     d S )Nrk   c                 *    |                                  S r   r   r   s    r   r   z3test_expanding_apply_empty_series.<locals>.<lambda>  s    QVVXX r   r   )r   r   r   r2   r8   r   r   )r   r   r   ro   s       r   !test_expanding_apply_empty_seriesr1    sd     KFC
2:
&
&
&CS]]__""#5#53v"NN    r   c                     | \  }}t          g d          }|                    d                              d ||          }t          g d          }t          j        ||           d S )N)NNNr   r   c                      t          |           S r   )r   r   s    r   r   z4test_expanding_apply_min_periods_0.<locals>.<lambda>  s    A r   r   )rV   r!   rL   )r   r   r   r2   r8   )r   r   r   r   r5   r4   s         r   "test_expanding_apply_min_periods_0r4    sv     KFC!!!""A[[Q[''--.>.>CPV-WWFooo&&H68,,,,,r   c                     t          g dt          d                    } t          ddgt          ddd                    }|                                                     |          }t          g d          }t	          j        ||           t          g d	g d
          }|                                                     |          }t	          j        ||           t          g dg d          } t          g dg d          }|                                                     |          }t          g dt          t          d                              }t	          j        ||           d S )Nr]   rE   r0   r   r   r   r   )NNr!   r   NrE   r_         r<   r   r   rE   r8  r   r<   r   r   rE   )NNNg      @)r   r   r   r   r2   r8   r   s1s2r5   r4   s2as        r   test_expanding_cov_diff_indexrA    sU   				q	*	*	*B	AeAq!nn	-	-	-B\\^^##F'''((H68,,,
YYY
/
/
/C\\^^$$F68,,,	


)))	,	,	,B	


)))	,	,	,B\\^^##F---T%((^^DDDH68,,,,,r   c                     t          g dt          d                    } t          ddgt          ddd                    }|                                                     |          }t          g d          }t	          j        ||           t          g d	g d
          }|                                                     |          }t	          j        ||           t          g dg d          } t          g dg d          }|                                                     |          }t          g dt          t          d                              }t	          j        ||           d S )Nr]   rE   r0   r   r   r   r   )NNrV   r6  r_   r7  r:  r;  r<  )NNNrV   )r   r   r   r   r2   r8   r   r=  s        r   test_expanding_corr_diff_indexrC  1  sU   				q	*	*	*B	AeAq!nn	-	-	-B\\^^  $$F'''((H68,,,
YYY
/
/
/C\\^^  %%F68,,,	


)))	,	,	,B	


)))	,	,	,B\\^^  $$F---T%((^^DDDH68,,,,,r   c                     t          ddgddgddggt          ddgd	          
          } t          ddgddggddgt          ddgd	                    }t          ddgd d gddggt          ddgd	          
          }t          ddgddggddgt          ddgd	                    }|                                                     |d          j        d         }|                                                     |d          j        d         }|                                                    |d          j        d         }|                                                    |d          j        d         }t          ddgddggt          ddgd	          t          ddgd	                    }t          j        ||           t          j        ||           t          j        ||           t          j        ||           d S )Nr   r   rE   r   r   r^   r   r"   r   r+  r   r1   r  rU   XYTr   g      g      g      g      $r  )r   r   r   r   locr2   r3   	r  df1ar  df2ar   result2result3result4r4   s	            r   'test_expanding_cov_pairwise_diff_lengthrO  D  s9   
aVaVaV,eS#JU6S6S6S
T
T
TC
Q!QAsCju0M0M0M  D 
Q$1v&sCju0M0M0M  C 
Q!QAsCju0M0M0M  D
 mmoo!!#!559!<Gmmoo!!$!66:1=Gnn""3"66:1=Gnn""4$"77;A>G
e}%sCju---S#JU+++  H
 '8,,,'8,,,'8,,,'8,,,,,r   c            	      0   t          ddgddgddggddgt          t          d          d          	          } t          ddgddggt          d
dgd          ddg          }t          ddgd d gddggddgt          t          d          d          	          }t          ddgddggt          d
dgd          ddg          }|                                                     |d          j        d         }|                                                     |d          j        d         }|                                                    |d          j        d         }|                                                    |d          j        d         }t          ddgddggddgt          ddg          	          }t          j        ||           t          j        ||           t          j        ||           t          j        ||           d S )Nr   r   rE   r   r^   r   r  r   r  r   rE  r   rU   rF  rG  Tr   g      )r   r   r   r   r   rH  r2   r3   rI  s	            r   (test_expanding_corr_pairwise_diff_lengthrQ  a  sA   

Q!Q!Q 3*E%((QV<W<W<W  C 
Q!Qq!f5 9 9 9C:  D 
Q$1v&c
E!HH5)))  C
 
Q!Qq!f5 9 9 9C:  D mmoo""3"66:1=Gmmoo""4$"77;A>Gnn##C$#77;A>Gnn##D4#88<Q?G
d|$sCjsCj@Q@Q  H '8,,,'8,,,'8,,,'8,,,,,r   zvalues,method,expected)
rV   r!   rL   rM   rN   rW         @       @      "@      $@r  r   rL   rN   rR  rT  r  rM   rW   rS  rU  c                    t          |           } t          |                    d          |                      }t          |          }t          j        ||           t          d| i          } t          |                    d          |                      }t          d|i          }t          j        ||           d S )NrE   r^   r   r   r   r2   r   r   rX   r{   r4   r9   r5   s        r   test_expanding_first_lastrY  ~  s    b 	vA,WQ[[^^V,,..FhH68,,,3-  A,WQ[[^^V,,..F#x))H68,,,,,r   r<   )
rV   rV   rL   rL   rN   rN   rR  rR  rT  rT  c                    t          |           } t          |                    d          |                      }t          |          }t          j        ||           t          d| i          } t          |                    d          |                      }t          d|i          }t          j        ||           d S )Nr   r   r^   rW  rX  s        r   !test_expanding_first_last_no_minpr[    s    6 	vA8WQ[[Q[//88::FhH68,,,3-  A8WQ[[Q[//88::F#x))H68,,,,,r   c                    d }| \  }}t          t          j                            d                              d                    }|                                                    t          j        ||          dz   }|                                                    |||d          }t          j        ||           |                                                    ||dd	i
          }t          j        ||           d S )Nc                 0    t          j        |           |z   S r   r   )r9   consts     r   
mean_w_argz4test_expanding_apply_args_kwargs.<locals>.mean_w_arg  s    wqzzE!!r   r   )r=   rE   )r   r   g      4@)r=   )r   r   argsr^  r=   )r   kwargs)	r   r   r   r   r   r   r   r2   r3   )r   r_  r   r   r   r4   r5   s          r    test_expanding_apply_args_kwargsrb    s    " " " !KFC	29((++227;;	<	<B||~~##BGF#DDtKH\\^^!!*V5!QQF&(+++\\^^!!*#wm!LLF&(+++++r   c                    | }t          dgddd          }|d                             t                    |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   rE   r   br   r   numeric_onlyr   re  Tdrop)r   r  objectr   r   aggreset_indexrA   r   r  r2   r3   )	arithmetic_win_operatorsrg  kernelr   r   opr5   r  r4   s	            r   test_numeric_only_framerp    s    %F	!11--	.	.BgnnV$$BsGI	FD	)	)B	~... ,A3**///g;??F8,,88d8CCJJ5QQH$%%0000
fh///// ~r   rn  r   r   use_argc                    t          g dddd          }|d                             t                    |d<   |r|fnd}|                                }t	          ||           } ||d|i}|rdd	gng d}||                             t
                    }	|r|	fnd}
|	                                }t	          ||           } ||
d|i}t          j        ||           d S )
Nr]   r   rE   rd  r   r@   rg  r   re  )r   r  rj  r   r   rA   r2   r3   )rn  rg  rq  r   argr   ro  r5   r  r  arg2
expanding2op2r4   s                 r    test_numeric_only_corr_cov_framerw    s     
33	4	4BgnnV$$BsG
"2%%CI	F	#	#BR0<00F )=sCjjoooG
W+

U
#
#C$C66"DJ
*f
%
%CsD4|44H&(+++++r   rl   c                    | }t          dg|          }|                                }t          ||          }|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   rk   
Expanding.  does not implement numeric_onlyr$   rf  Trh  )r   r   r   rj  r&   r'   NotImplementedErrorrk  rl  r  rA   r2   r8   )
rm  rg  rl   rn  ro   r   ro  r)   r5   r4   s
             r   test_numeric_only_seriesr|    sE    &F
!E
"
"
"CI	F	#	#B 1C6CCC].c::: 	* 	*BL))))	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* ...77F8$$00d0;;BB5II
vx00000s   %A??BBc                    t          g d|          }|r|fn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}|
                                }t          ||           } ||d|i}t          j
        |	|           d S )Nr]   rk   r@   ry  rz  r$   rg  )r   r   r   rj  r&   r'   r{  r  rA   r2   r8   )rn  rq  rg  rl   ro   rs  r   ro  r)   r5   r   rt  ru  rv  r4   s                  r   !test_numeric_only_corr_cov_seriesr~  )  sw   
 %
(
(
(C
#3&&CI	F	#	#B 1C6CCC].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^^%%
j&))38<88
vx00000s   +	BBB)Dnumpyr   r&   pandasr   r   r   r   r   r   r	   pandas._testing_testingr2   r   r   markparametrizer   r*   paramxfailr6   r:   rJ   rS   rZ   r\   r   ri   rp   rt   rz   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r.  r1  r4  rA  rC  rO  rQ  rA   rY  r[  rb  rp  rw  intrj  r|  r~  r@   r   r   <module>r     s                                   sE828QC==9::  ;: 	+##E $  	
 	
 	
 , , ,- - -, , ,& & && & && & &  ))))),,s!%%s+1vQF++aV4 yyyyy11999=
 	
 ))))),,s!%%s+1vQF++aV4 yyyyy11999=
 	
 ))))),,s!%%s+1vQF++aV4 yyyyy11999=
 	
 s!		r1%	Rz1bfa.1~66uBF8,,qc226{"&!551v>261~RVQN;;YYYG
 	
 bfa.1~66uBF8,,qc226{"&!551v>261~RVQN;;YYYG
 	
 bfa.1~66uBF8,,qc226{"&!551v>261~RVQN;;YYYG
 	
a9< <z0 0{< <z0 						qcA3Z1a&1a&)9IIIyyy;QRTUV						qcA3Z1a&1a&)9IIIyyy;QRTUV						qcA3Z1a&1a&)9IIIyyy;QRTUV	AA3*1v1v&67;			1#"&!q!f0EFJ	'	"	"	"B*
 
1 1
 
1" " "- - - FF#344- - 54- >>>22#<#<#<==u..&G&G&GHH- - IH /. >= 32-* >>>22&T&T&TUU -  - VU 32 -F3 3 3  3 3 33 3 32 2 22 2 2 	++,	--.	++,	++,	 	&%%  	 	M M	 	M RV_vrw'%5"&/J%%%   
C C 
C4
 
 
 $? $? $?N DDEE 4 4 4& ''CCDD22224433223322223333::55BBAA# ,4 4- ,4(  - - -- - -&- - -&- - -:- - -:  @??U5\\55<<c3S#sCP	
 "&#rvsBFCbfMeeee	
" @??U5\\55<<c3S#sDQ	
 "&#rvsBFCbfMeeee	
7+. .^
- 
-_. .^
-  @??EBJ	
 "&#rvsBFCbfMEBJ	
 @?????	
 "&#rvsBFCbfM>>>	
! 2
- 
-3 2
-, , ,"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   