
x\c        
   @   s  d  d l  m Z d  d l m Z m Z d  d l m Z d  d l Z d  d l m Z d  d l Z	 d  d l
 m Z d  d l Z d  d l m Z m Z d  d l m Z d  d l j j Z d  d l Z d  d	 l m Z m Z m Z m Z m Z m Z m Z m Z d  d
 l  m! Z! d  d l" m# Z# d  d l$ j% j& Z' d  d l( j j) Z* d  d l+ j, j- Z- d d f \ Z. Z/ d   Z0 e j1 d e2 e3 g  d    Z4 e j1 d d d d d d d d d g  d    Z5 e j1 d d d d g  d    Z6 d e7 f d     YZ8 d  e8 f d!     YZ9 e j: j; d"  d# e8 f d$     Y Z< d% e8 f d&     YZ= d' e8 f d(     YZ> d) e8 f d*     YZ? d+ e7 f d,     YZ@ d- e@ f d.     YZA d/ e@ f d0     YZB d1 eB f d2     YZC d3 eB f d4     YZD d5 eB f d6     YZE d7 eB f d8     YZF d9 e@ f d:     YZG d; eG f d<     YZH d= eG f d>     YZI d? eG f d@     YZJ dA eG f dB     YZK dC e@ f dD     YZL dE eL f dF     YZM dG eL f dH     YZN dI eL f dJ     YZO dK e@ f dL     YZP dM e@ f dN     YZQ dO eQ f dP     YZR dQ eQ f dR     YZS dS eQ f dT     YZT e j: j; d"  dU e8 f dV     Y ZU dW e7 f dX     YZV dY   ZW eW   ZX dZ   ZY d[ e8 f d\     YZZ d] e7 f d^     YZ[ d_ e7 f d`     YZ\ d S(a   i(   t   OrderedDict(   t   datetimet	   timedelta(   t   productN(   t   catch_warnings(   t   randn(   t   ranget   zip(   t   UnsupportedFunctionCall(   t	   DataFramet   Indext   Seriest	   Timestampt   bdate_ranget   concatt   isnat   notna(   t   SpecificationError(   t	   safe_sortid   i
   c         C   s6   t  |  t  r" t j |  |  n t j |  |  d  S(   N(   t
   isinstanceR   t   tmt   assert_series_equalt   assert_frame_equal(   t   leftt   right(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   assert_equal   s    t   paramsc         C   s   |  j  S(   N(   t   param(   t   request(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   raw#   s    t   triangt   blackmant   hammingt   bartlettt   bohmant   blackmanharrist   nuttallt   barthannc         C   s   |  j  S(   N(   R   (   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt	   win_types(   s    t   kaisert   gaussiant   general_gaussianc         C   s   |  j  S(   N(   R   (   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   win_types_special.   s    t   Basec           B   s2   e  Z e j d  d  Z e j g   Z d   Z RS(   i   i(   c         C   s   t  t  } t j | |  j <| |  _ t t d d d  d t |  _ t	 | j
   d |  j |  _ t t  t t  d |  j d t j t  |  _ d  S(   Ni  i   t   periodst   indext   columns(   R   t   Nt   npt   NaNt	   _nan_locst   arrR   R   t   rngR   t   copyt   seriesR	   t   Kt   aranget   frame(   t   selfR3   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   _create_data8   s    	!(   t   __name__t
   __module__R0   R8   R2   t   arrayt	   _inf_locsR;   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR+   3   s   t   TestApic           B   s  e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d	   Z d
   Z e j e j j d  d     Z d   Z e j j d d d e j e j e j e j g d d d d g d d d d g e j e j e j e j g d d d d g d d d d g d d d d g g f d d  d d d d g d d d d g d d d d g d d d d g d d d d g d d d d g d d d d g g f g  d    Z RS(!   c         C   s   |  j    d  S(   N(   R;   (   R:   t   method(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   setup_methodE   s    c         C   s   |  j  j d d  } t j | j j |  j  j  |  j  j d d  d } | j j |  j  j d k sl t  |  j  j d d  d } t j | j j |  j  j d d g  |  j  j d d  d d g } t j | j j |  j  j d d g  d  S(   Nt   windowi   i   i   (   i   i   (   R9   t   rollingR   t   assert_index_equalt   _selected_objR.   t   namet   AssertionError(   R:   t   r(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_getitemH   s    "c         C   s   t  d d g g d d d g } | j d d  } t j t | j d g  t j t | j d d g  t j t d	 d
  | d d g Wd  QXd  S(   Ni   i   R.   t   At   BRC   i   t   Ct   matchs   ^[^A]+$(   R	   RD   t   pytestt   raisest   KeyErrort   __getitem__(   R:   t   dft   g(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_select_bad_colsY   s    !c            ss   t  d d g g d d d g } | j d d    t j   j j     d j    t j t   f d    d  S(	   Ni   i   R.   RK   RL   RC   i   c              s     j  S(   N(   t   F(    (   RI   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   <lambda>i   s    (	   R	   RD   R   R   RK   t   sumRO   RP   t   AttributeError(   R:   RS   (    (   RI   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_attribute_accessd   s    !#c         C   s   t  i t d  d 6t d d  d 6d d 6 } | j d d  } | d d g j   } t  i t j t j d d	 d
 g d 6t j t j d d d g d 6d t d  } t j | |  d  S(   Ni   RK   i
   RL   t   fooRM   RC   i   i   i	   i   i   i   R.   t   AB(	   R	   R   RD   RX   R0   t   nant   listR   R   (   R:   RS   RI   t   resultt   expected(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   tests_skip_nuisancek   s    0"c         C   sl   t  i t d  d 6t d d  d 6d d 6 } | j d d  } t j t d	 d
  | j   Wd  QXd  S(   Ni   RK   i
   RL   R[   RM   RC   i   RN   s   cannot handle this type(   R	   R   RD   RO   RP   t	   TypeErrorRX   (   R:   RS   RI   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_skip_sum_object_raisesu   s    0c      
   C   s  t  i t d  d 6t d d d  d 6 } | j d d  } | d j   } | d j   } | d j   } | d j   } | d j   } | d j   } | j t j t j g  }	 t | | | | g d	 d
 }
 t	 j
 j d d g d d g g  |
 _ t j |	 |
  | j i t j d 6t j d 6 }	 t | | g d	 d
 }
 t j |	 |
 d t | j i d d g d 6 }	 t | | g d	 d
 }
 t	 j
 j d d g  |
 _ t j |	 |
  | d j d d g  }	 t | | g d	 d
 }
 d d g |
 _ t j |	 |
  t d t  9 t j d t  | j i i d d 6d d 6d 6 }	 Wd  QXt | | g d	 d
 }
 t	 j
 j d d g  |
 _ t j |	 |
 d t t d t  N t j d t  | j i i d d 6d d 6d 6i d d 6d d 6d 6 }	 Wd  QXt | | | | g d	 d
 }
 d d d d g } t	 j
 j |  |
 _ t j |	 |
 d t | j i d d g d 6d d g d 6 }	 t | | | | g d	 d
 }
 d d d d g } t	 j
 j |  |
 _ t j |	 |
 d t d  S(   Ni   RK   i    i
   i   RL   RC   i   t   axisi   t   meant   stdt
   check_likeRX   t   recordt   ignoret   mean2t   sum2(   RK   Re   (   RK   Rf   (   RK   Re   (   RK   RX   (   RK   Re   (   RK   RX   (   RL   Rj   (   RL   Rk   (   RK   Re   (   RK   Rf   (   RL   Re   (   RL   Rf   (   R	   R   RD   Re   Rf   RX   t	   aggregateR0   R   t   pdt
   MultiIndext   from_productR.   R   R   t   Truet   from_tuplesR   t   warningst   simplefiltert   FutureWarning(   R:   RS   RI   t   a_meant   a_stdt   a_sumt   b_meant   b_stdt   b_sumR_   R`   t   exp_cols(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_agg|   s^    ,#*
)c         C   s   t  i t d  d 6t d d d  d 6 } | j d d  } | d j   } | j i t j d 6d	   d 6 } | d j d
   d | } t | | g d d } t j	 | | d t
 d  S(   Ni   RK   i    i
   i   RL   RC   i   c         S   s   t  j |  d d S(   Nt   ddofi   (   R0   Rf   (   t   x(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW      s    c         S   s   t  j |  d d S(   NR}   i   (   R0   Rf   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW      s    R   Rd   i   Rg   (   R	   R   RD   RX   t   aggR0   t   applyR   R   R   Rp   (   R:   R   RS   RI   Rw   R_   t   rcustomR`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_agg_apply   s    ,#c         C   s%  t  i t d  d 6t d d d  d 6 } | j d d  } | j t j t j g  j } t j	 j
 t d	  d
 d g g  } t j | |  | d j t j t j g  j } t d
 d g  } t j | |  | j i t j t j g d 6 j } t j	 j d d g  } t j | |  d  S(   Ni   RK   i    i
   i   RL   RC   i   R\   RX   Re   (   RK   RX   (   RK   Re   (   R	   R   RD   R   R0   RX   Re   R.   Rm   Rn   Ro   R^   R   RE   R
   Rq   (   R:   RS   RI   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_agg_consistency   s    ,$"%c      
      s  t  i t d  d 6t d d d  d 6 } | j d d      f d	   } t j t |  t   d j     d j     d j     d j   g d
 d } t	 j
 j d d d d g  | _ t d t  V t j d t    d d g j i i d d g d 6d 6i d d g d 6d 6 } Wd  QXt j | | d t t d t  L t j d t    j i i d d g d 6d 6i d d g d 6d 6 } Wd  QXt	 j
 j d d d d g  | _ t j | | d t d  S(   Ni   RK   i    i
   i   RL   RC   i   c              s9     j  i i d d g d 6d 6i d d g d 6d 6 d  S(   NRe   RX   RK   t   r1RL   t   r2(   Rl   (    (   RI   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   f   s    Rd   i   t   raRe   Rf   t   rbRh   Ri   Rg   (   R   Re   (   R   Rf   (   R   Re   (   R   Rf   (   RK   R   Re   (   RK   R   Rf   (   RL   R   Re   (   RL   R   Rf   (   R	   R   RD   RO   RP   R   R   Re   Rf   Rm   Rn   Rq   R.   R   Rp   Rr   Rs   Rt   R   R   R   (   R:   RS   R   R`   R_   (    (   RI   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_agg_nested_dicts   s(    ,)'  c         C   sq  d d d d d d d d d	 d
 d g } t  i d d d g d 6d d d g d 6t d  d 6t j d d d d 6t j d d d d d d 6t j d  t j d  t j d  g d 6d d t j g d 6d d t j g d 6d d t j g d	 6t	 d  t	 d  t	 d   g d
 6t j d  t j d  t j d   g d 6d | } t  i d d d g d 6d d d g d 6d d d g d 6d d d g d 6d d d g d 6d d d g d 6d d d g d 6d d d g d 6d d d g d	 6d d d g d
 6d d d g d 6d | } | j d  d  j   } t j | |  | j d  j   } | j   j t  } t j | |  d  S(!   Nt   intt   floatt   stringR   R   R,   t   fl_inft   fl_nant   str_nant   dt_natt   periods_nati   i   i   g      @g      @g      @t   abct   20170101s   1 st   freqt   ss   2012-01s   2012-02s   2012-03g      ?g       @t   aat   bbt   20170203R.   RC   (   R	   R^   Rm   t
   date_ranget   timedelta_ranget   PeriodR0   t   InfR1   R   t   NoneRD   t   countR   R   R   t   astypeR   (   R:   t   colsRS   R`   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_count_nonnumeric_types   sH    		s"   ignore:can't resolve:ImportWarningc         C   s  t  t j j d   j d d d d d d  } t | j d d  | j d d	  g d
 d } d d g | _ | j d   d   g  } t	 j
 | |  d   } d   } t | j d d  | j d d	  g d
 d } d d g | _ | j | | g  } t	 j
 | |  d  S(   Nid   RC   i
   t   min_periodsi   t   win_typeR(   Rf   g{Gz?Rd   s   <lambda>c         S   s   |  j  d d  S(   NRf   i
   (   Re   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   '  s    c         S   s   |  j  d d  S(   NRf   g{Gz?(   Re   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   (  s    c         S   s   |  j  d d  S(   NRf   i
   (   Re   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   a+  s    c         S   s   |  j  d d  S(   NRf   g{Gz?(   Re   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   b.  s    R   R   (   R   R0   t   randomR   RD   R   Re   R.   Rl   R   R   (   R:   RI   R`   R_   R   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_window_with_args  s    '	0		0c         C   ss   t  t j d  d d } | j d  j   } | j d  j   } | j d k sZ t  | j d k so t  d  S(   Nid   RG   R[   i   i   (   R   R0   R8   RD   RX   RG   RH   (   R:   R   t   s2t   s3(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_preserve_metadata6  s
    s   func,window_size,expected_valsRD   i   g      .@g      4@g      9@g      >@g     A@g      D@g      N@g      T@g     @U@iP   t	   expandingg      $@gRB:@g      I@c      
   C   s[  t  j d d d g d d d g d d d g d d d g d d d g d d d g d d d g g d	 d
 d d g } t | j d
  |  } | r | |  } n	 |   } t  j j d d d d d d d g d d
 d  g } t  j j d  d! d" d# g  } t  j | d | d	 | }	 | j t d d d g f d d d g f f   }
 t	 j
 |
 |	  d  S($   NRK   i
   i   i   i(   RL   iP   iZ   R.   t   stockt   lowt   highi    i   i   i   i   i   i   t   namesRe   t   maxt   minR-   (   RK   i    (   RK   i   (   RK   i   (   RL   i   (   RL   i   (   RL   i   (   RL   i   (   R   Re   (   R   R   (   R   Re   (   R   R   (   Rm   R	   t   getattrt   groupbyRn   Rq   R   R   R    R   R   (   R:   t   funct   window_sizet   expected_valsRS   R   RC   R-   R.   R`   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_multiple_agg_funcs?  s.    $			!			N(   R<   R=   RB   RJ   RU   RZ   Ra   Rc   R|   R   R   R   R   t   tdt   skip_if_no_scipyRO   t   markt   filterwarningsR   R   t   parametrizeR0   R]   R   R   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR@   C   s:   					
		<				+		!s*   ignore:can't resolve package:ImportWarningt
   TestWindowc           B   s   e  Z d    Z e j e j j d d d g  d     Z e j e j j d d d g  d     Z	 e j j d d d g  d	    Z
 RS(
   c         C   s   |  j    d  S(   N(   R;   (   R:   RA   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRB   r  s    t   whichR6   R9   c         C   s=  t  |  |  } | j } | d d d d d d  | d d d d d d d t  | d d d d d d d t  x d d	 t j d g  g D]j } t j t   | d d d d d |  Wd  QXt j t  $ | d d d d d d d |  Wd  QXq Wx= d
 d g D]/ } t j t   | d | d d  Wd  QXqWd  S(   NR   t   boxcarRC   i   R   i   t   centerg       @R[   t   foobar(	   R   RD   Rp   t   FalseR0   R>   RO   RP   t
   ValueError(   R:   R   t   ot   ct   wt   wt(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_constructoru  s    	")c         C   s/   t  |  |  } | j } | d | d d  d  S(   NR   RC   i   (   R   RD   (   R:   R   R&   R   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_constructor_with_win_type  s    	RA   RX   Re   c         C   s   t  j t d d d g  d d d g } d } t j t d |  t | |  d d d	  Wd  QXt j t d |  t | |  d
 t j  Wd  QXd  S(   Ni   i   i   RC   i    s2   numpy operations are not valid with window objectsRN   i   i   t   dtype(	   t   rwindowt   WindowR   RO   RP   R   R   R0   t   float64(   R:   RA   R   t   msg(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_numpy_compat  s    *(   R<   R=   RB   R   R   RO   R   R   R   R   R   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR   o  s   				t   TestRollingc           B   s'  e  Z d    Z d   Z e j j d d d g  d    Z e j	 e j j d d d g  d     Z
 e j j d e d d	  e j d d	  g  d
    Z e j j d e d d	  e j d d	  d g  d    Z e j j d d d d d d d g  d    Z d   Z e j j d d d g  d    Z e j j d d d g  d    Z e j j d d d g  e j j d d d d d d d  d! d	 d" d# d$ d% g
 f d d& d d d d d  d! d	 d" d# d$ g
 f d d' e j d d d  d! d	 d" d# d$ d% g
 f d d( e j d d d d  d! d	 d" d# d$ g
 f d d d d  d! d	 d" d# d$ d% d) d* g
 f d d& d d  d! d	 d" d# d$ d% d) d* g
 f d d' e j d d  d! d	 d" d# d$ d% d) g
 f d d( e j d d  d! d	 d" d# d$ d% d) g
 f g  d+     Z d,   Z e j j d d d e j d d d  d! d	 d" d# e j e j g
 f d d& e j d d d d  d! d	 d" d# e j g
 f d d' e j e j d d  d! d	 d" d# e j e j g
 f d d( e j e j d d d  d! d	 d" d# e j g
 f d d e j d  d! d	 d" d# d$ d$ e j e j g
 f d d& e j d  d! d	 d" d# d$ d$ d$ e j g
 f d d' e j e j d  d! d	 d" d# d$ e j e j g
 f d d( e j e j d  d! d	 d" d# d$ d$ e j g
 f g  d-    Z e j j d. d/ d  g  d0    Z d1   Z d2   Z d3   Z e j j d4 e j e j g  d5    Z d6   Z  RS(7   c         C   s   |  j    d  S(   N(   R;   (   R:   RA   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRB     s    c         C   sY   t  i d d d t j d g d 6 } | | j d  j   | j d d d j   d  S(   Ni    i   i   i   RL   R   (   R	   R0   R]   RD   RX   (   R:   RS   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_doc_string  s    %R   R6   R9   c         C   s9  t  |  |  } | j } | d d  | d d d d  | d d d d d t  | d d d d d t  t j t   | d  | d  Wd  QXx d d	 t j d g  g D] } t j t   | d |  Wd  QXt j t   | d d d |  Wd  QXt j t   | d d d d d |  Wd  QXq Wd  S(
   NRC   i   R   i   R   i    ig       @R[   (	   R   RD   Rp   R   RO   RP   R   R0   R>   (   R:   R   R   R   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR     s     	
"c         C   sB   t  |  |  } | j } t j t   | d d d Wd  QXd  S(   NiR   R   (   R   RD   RO   RP   R   (   R:   R   R   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR     s    	RC   t   daysi   c      	   C   s   d } t  i t j |  d 6d t j d d | d d } t j d d	 g t j d
 d d   } | j d |  j   } t  i | d 6d t j d d | d d } t j	 | |  | j d  j   } t j	 | |  d  S(   Ni
   t   valueR-   s
   2015-12-24R,   R   t   Dg        g      ?g      @g      ;@i   RC   t   3D(
   R	   R0   R8   Rm   R   t   appendRD   RX   R   R   (   R:   RC   t   nRS   t   expected_dataR_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt&   test_constructor_with_timedelta_window  s    'R   c      	   C   s   d } t  i t j |  d 6d t j d d | d d } t  i t j t j d g t j d	 d
 d   d 6d t j d d | d d } | j d | d d  j   } | j d | d d  j	 t d | } t
 j | |  t
 j | |  d  S(   Ni
   R   R-   s
   2017-08-08R,   R   R   g      ?g      @g      ;@i   RC   R   i   R   (   R	   R0   R8   Rm   R   R   R1   RD   RX   R   R   R   (   R:   RC   R   R   RS   R`   t   result_roll_sumt   result_roll_generic(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt0   test_constructor_timedelta_window_and_minperiods  s    1RA   Rf   Re   RX   R   R   t   varc         C   s   t  j t d d d g  d d } d } t j t d |  t | |  d d d  Wd  QXt j t d |  t | |  d	 t j  Wd  QXd  S(
   Ni   i   i   RC   s2   numpy operations are not valid with window objectsRN   i   i   R   (	   R   t   RollingR   RO   RP   R   R   R0   R   (   R:   RA   RI   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR     s    $c      	   C   sR   t  i d d d d d g d 6 } t j t   | j d d d d	  Wd  QXd  S(
   Ni    i   i   i   i   RK   RC   t   closedt   neither(   R	   RO   RP   R   RD   (   R:   RS   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_closed  s    "R   c         C   sw   t  j d d g d t  j d d d  } t | j d d d	 |    } t j | t  j t j g d | j	  d  S(
   Nt   datai   R-   t   2000R,   i   t   10DR   R   (
   Rm   R   R   R   RD   R   R   R0   R]   R-   (   R:   R   t   serR_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_closed_one_entry  s    *!c         C   s   t  j d i d d d g d 6d d d g d 6d t  j d d	 d  } t | j d d
 t d j d d d |    } t  j j d d d d g | j	 g d d  } t  j d t j d t j g d | d d  } t j | |  d  S(   NR   i   i   RK   i   RL   R-   R   R,   t   sortR   R   R   t   arraysR   RG   (   RK   N(   Rm   R	   R   R   R   R   RD   Rn   t   from_arraysR-   R   R   R0   R]   R   R   (   R:   R   R   R_   t   exp_idxR`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_closed_one_entry_groupby  s    /%$	-t   input_dtypeR   R   s   func,closed,expectedR   g        i    i   i   i   i   i   i   t   bothR   R   i   i	   c         C   s   t  j d t j d  j |  d t  j d d d  } t | j d d | |    } t  j | d | j } t	 j
 | |  d  S(   NR   i
   R-   R   R,   R   R   (   Rm   R   R0   R8   R   R   R   RD   R-   R   R   (   R:   R   R   R   R`   R   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_closed_min_max_datetime  s
    !!c      	   C   s   t  j d t j d  d t  j d d d  } | j d | j d d g  } | j d d	 d
 j   } t  j t j	 d d d d d d d g d | j } t
 j | |  d  S(   NR   i
   R-   R   R,   i   i   R   R   R   i    i   i   i   i   (   Rm   R   R0   R8   R   t   dropR-   RD   R   R]   R   R   (   R:   R   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_closed_uneven5  s    'c         C   s   t  j d t j d  d t  j d d d  } t j | | j d <t | j d d d	 d
 | |    } t  j | d | j } t	 j
 | |  d  S(   NR   i
   R-   R   R,   iR   R   i   R   (   Rm   R   R0   R8   R   R]   R-   R   RD   R   R   (   R:   R   R   R`   R   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_closed_min_max_minpA  s    t   rollert   1sc         C   s   t    } t    j |  j   } t j | |  t  d t j g    } t  d t j g    j |  j   } t j | |  d  S(   NR-   (   R	   RD   RX   R   R   Rm   t   DatetimeIndex(   R:   R   R`   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   tests_empty_df_rollingU  s    	'c         C   s   t  j t j g  } | j d d d j   } t  j d g  } t j | |  | j d d d j   } t  j t j g  } t j | |  d  S(   Ni   R   i    g        (   Rm   R   R0   R]   RD   RX   R   R   (   R:   R~   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_missing_minp_zeroc  s    c         C   s   t  j t j g d d t  j d d d d g  } | j t  j d  d d	 j   } t  j d
 d | j } t	 j
 | |  d  S(   Ni   R-   s
   2017-01-01s
   2017-01-04s
   2017-01-06s
   2017-01-07t   2dR   i    g        (   Rm   R   R0   R]   R   RD   t	   TimedeltaRX   R-   R   R   (   R:   R~   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_missing_minp_zero_variablep  s    $c         C   s   t  j j d d g d d d g g d d d g } t t j d  d | } | j d  j   } t j	 | j
 | j
  | j j d  d d g k s t  d  S(   NRK   RL   RM   R   t   ER   t   1t   2i
   i   R.   i   (   i
   i   (   Rm   Rn   Ro   R	   R0   t   onesRD   t   covR   RE   R.   R-   R   R   RH   (   R:   R   RS   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_multi_index_namesy  s    $t   klassc         C   sE   | d d d d g  } t  j t   t | j d   Wd  QXd  S(   Ni   i   i   i   (   RO   RP   t   NotImplementedErrort   iterRD   (   R:   R   t   obj(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_iter_raises  s    c         C   s   t  t j d
   } | j |  } | d k rO t  d   t d  D  } n( t  t j g d d g d g d  } | j d d	 | j   } t j	 | |  d  S(   Ni
   i   i    c         S   s.   i  |  ]$ } t  j g d  d g d |  q S(   i   g      @i   (   R0   R]   (   t   .0t   i(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pys
   <dictcomp>  s   	i   g      @i   i   Rd   (   i
   i   (
   R	   R0   R   t   _get_axis_numberR   R]   RD   RX   R   R   (   R:   t
   axis_frameRS   Rd   R`   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_axis  s    
(!   R<   R=   RB   R   RO   R   R   R   R   R   R   R   Rm   R   R   R   R   R   R   R   R0   R]   R   R   R   R   R   R   R   R   R	   R  R	  (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR     sT   					0	3	'	$$**--**-B	3063306E$				*t   TestExpandingc        	   B   s   e  Z d    Z d   Z e j j d d d g  d    Z e j j d d d d	 d
 d d g  d    Z e j j d d e j	 d d e j j
 d d  g  d    Z d   Z e j j d e j e j g  d    Z d   Z RS(   c         C   s   |  j    d  S(   N(   R;   (   R:   RA   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRB     s    c         C   s@   t  i d d d t j d g d 6 } | | j d  j   d  S(   Ni    i   i   i   RL   (   R	   R0   R]   R   RX   (   R:   RS   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR     s    %R   R6   R9   c         C   s   t  |  |  } | j } | d d  | d d d t  | d d d t  xo d d t j d g  g D]R } t j t   | d |  Wd  QXt j t   | d d d |  Wd  QXqg Wd  S(   NR   i   R   g       @R[   i   (	   R   R   Rp   R   R0   R>   RO   RP   R   (   R:   R   R   R   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR     s    	"RA   Rf   Re   RX   R   R   R   c         C   s   t  j t d d d g  d d } d } t j t d |  t | |  d d d  Wd  QXt j t d |  t | |  d	 t j  Wd  QXd  S(
   Ni   i   i   RC   s2   numpy operations are not valid with window objectsRN   i   i   R   (	   R   t	   ExpandingR   RO   RP   R   R   R0   R   (   R:   RA   t   eR   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR     s    $t   expanderi   t   lst   markst   reasons,   GH#16425 expanding with offset not supportedc         C   s   t    } t    j |  j   } t j | |  t  d t j g    } t  d t j g    j |  j   } t j | |  d  S(   NR-   (   R	   R   RX   R   R   Rm   R   (   R:   R  R`   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_empty_df_expanding  s    		!c         C   s   t  j t j g  } | j d d  j   } t  j d g  } t j | |  | j d d  j   } t  j t j g  } t j | |  d  S(   NR   i    g        i   (   Rm   R   R0   R]   R   RX   R   R   (   R:   R~   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR     s    R   c         C   sE   | d d d d g  } t  j t   t | j d   Wd  QXd  S(   Ni   i   i   i   (   RO   RP   R  R  R   (   R:   R   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR    s    c         C   s   t  t j d	   } | j |  } | d k rO t  d   t d  D  } nC t  t j g d g  t d d  D] } t |  ^ qo g d  } | j d d | j   } t	 j
 | |  d  S(
   Ni
   i   i    c         S   sI   i  |  ]? } t  j g d  g  t d d  D] } t |  ^ q) |  q S(   i   i   i   (   R0   R]   R   R   (   R  R  t   j(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pys
   <dictcomp>  s   	i   i   i   Rd   (   i
   i   (   R	   R0   R   R  R   R]   R   R   RX   R   R   (   R:   R  RS   Rd   R`   R  R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_expanding_axis  s    6
(   R<   R=   RB   R   RO   R   R   R   R   R   t   xfailR  R   Rm   R   R	   R  R  (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR
    s   				'		*t   TestEWMc           B   se   e  Z d    Z d   Z e j j d d d g  d    Z e j j d d d d	 g  d
    Z RS(   c         C   s   |  j    d  S(   N(   R;   (   R:   RA   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRB     s    c         C   sC   t  i d d d t j d g d 6 } | | j d d  j   d  S(   Ni    i   i   i   RL   t   comg      ?(   R	   R0   R]   t   ewmRe   (   R:   RS   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR     s    %R   R6   R9   c         C   s  t  |  |  } | j } | d d  | d d  | d d  | d d  | d d d d   | d d d d   | d d d d   t j t   | d d d d  Wd  QXt j t   | d d d d  Wd  QXt j t   | d d d d  Wd  QXt j t   | d d  Wd  QXt j t   | d d  Wd  QXt j t   | d d	  Wd  QXx1 d
 D]) } t j t   | d |  Wd  QXqpWd  S(   NR  g      ?t   spang      ?t   alphat   halflifeg      ?g      i    (   g      g      ?(   R   R  R   RO   RP   R   (   R:   R   R   R   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR     s0    	RA   Rf   Re   R   c         C   s   t  j t d d d g  d d } d } t j t d |  t | |  d d d	  Wd  QXt j t d |  t | |  d
 t j  Wd  QXd  S(   Ni   i   i   R  g      ?s2   numpy operations are not valid with window objectsRN   i   i   R   (	   R   t   EWMR   RO   RP   R   R   R0   R   (   R:   RA   R  R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR   <  s    $(	   R<   R=   RB   R   RO   R   R   R   R   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR  	  s   			'	t   Dtypec           B   s   e  Z d  Z i d   d 6d   d 6d   d 6d   d 6d	   d
 6d   d 6d   d 6d   d 6Z d   Z d   Z d   Z d   Z d   Z RS(   i   c         C   s
   |  j    S(   N(   R   (   t   v(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   V  s    R   c         C   s
   |  j    S(   N(   R   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   W  s    R   c         C   s
   |  j    S(   N(   R   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   X  s    R   c         C   s
   |  j    S(   N(   RX   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   Y  s    RX   c         C   s
   |  j    S(   N(   Re   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   Z  s    Re   c         C   s
   |  j    S(   N(   Rf   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   [  s    Rf   c         C   s
   |  j    S(   N(   R   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   \  s    R   c         C   s
   |  j    S(   N(   t   median(   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   ]  s    R  c      
   C   s  i i t  d d d d d g d d d 6t  t j d d d d g d d d 6t  t j d	 d d d g d d d
 6t  t j d d d d g d d d 6t  t j d d d d g d d d 6t  t j g t j d  g d d d d 6t  t j d d d d g d d d 6t  t j d d d d g d d d 6d 6i t  d d d d d g d d d 6t  t j d d d d g d d d 6t  t j d d d d g d d d
 6t  t j d d d d g d d d 6t  t j d d d d g d d d 6t  t j g t j d  g d d d d 6t  t j d d d d g d d d 6t  t j d d d d g d d d 6d 6i t i t  d d d d d g  d	 6t  d d d d d g  d 6d d d 6t i t  t j d d d d g  d	 6t  t j d d d d g  d 6d d d 6t i t  t j d	 d d d g  d	 6t  t j d d d d g  d 6d d d
 6t i t  t j d d d d g  d	 6t  t j d d d d g  d 6d d d 6t i t  t j d d d d g  d	 6t  t j d d d d g  d 6d d d 6t i t  t j g t j d  g d  d	 6t  t j g t j d  g d  d 6d d d 6t i t  t j d d d d g  d	 6t  t j d d d d g  d 6d d d 6t i t  t j d d d d g  d	 6t  t j d d d d g  d 6d d d 6d  6} | S(!   Ni   i   R   R   R   i   i   R   i    R   i   i   RX   g      ?g      ?g      @g      @Re   Rf   R   R  t   sr1i
   i   i   i   i   i	   t   sr2i   i   RS   (   R   R0   R]   t   sqrtR	   (   R:   t   expects(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   get_expects`  sZ    "%%%%-%)"%%%%-%)"
%"
%"
%"
%"
-*
%"
%"c         C   s   t  t j d  d | } t  t j d d d  d | } t t j d  j d
  d | } i | d 6| d 6| d	 6} | S(   Ni   R   i
   i    ii   R  R   RS   (   i   i   (   R   R0   R8   R	   t   reshape(   R:   R   R  R   RS   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   _create_dtype_data  s    !$
c         C   s(   |  j  |  j  |  _ |  j   |  _ d  S(   N(   R%  R   R   R#  R"  (   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR;     s    c         C   s   |  j    xs t |  j j   |  j j    D]P \ } } |  j | } |  j | } |  j | | } |  j | | | | |  q, Wd  S(   N(   R;   R   t   funcst   keysR   R"  t   check_dtypes(   R:   t   f_namet   d_nameR   t   dt   exp(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_dtypes  s    
.c         C   s5   | j  d |  j  } | |  } t j | |  d  S(   NRC   (   RD   RC   R   t   assert_almost_equal(   R:   R   R)  R+  R*  R,  t   rollR_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR(    s    (	   R<   R=   RC   R&  R#  R%  R;   R-  R(  (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR  R  s   






	3				t   TestDtype_objectc           B   s   e  Z e Z RS(    (   R<   R=   t   objectR   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR0    s   t   Dtype_integerc           B   s   e  Z RS(    (   R<   R=   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR2    s   t   TestDtype_int8c           B   s   e  Z e j Z RS(    (   R<   R=   R0   t   int8R   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR3    s   t   TestDtype_int16c           B   s   e  Z e j Z RS(    (   R<   R=   R0   t   int16R   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR5    s   t   TestDtype_int32c           B   s   e  Z e j Z RS(    (   R<   R=   R0   t   int32R   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR7    s   t   TestDtype_int64c           B   s   e  Z e j Z RS(    (   R<   R=   R0   t   int64R   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR9    s   t   Dtype_uintegerc           B   s   e  Z RS(    (   R<   R=   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR;    s   t   TestDtype_uint8c           B   s   e  Z e j Z RS(    (   R<   R=   R0   t   uint8R   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR<    s   t   TestDtype_uint16c           B   s   e  Z e j Z RS(    (   R<   R=   R0   t   uint16R   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR>    s   t   TestDtype_uint32c           B   s   e  Z e j Z RS(    (   R<   R=   R0   t   uint32R   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR@    s   t   TestDtype_uint64c           B   s   e  Z e j Z RS(    (   R<   R=   R0   t   uint64R   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRB    s   t   Dtype_floatc           B   s   e  Z RS(    (   R<   R=   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRD    s   t   TestDtype_float16c           B   s   e  Z e j Z RS(    (   R<   R=   R0   t   float16R   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRE    s   t   TestDtype_float32c           B   s   e  Z e j Z RS(    (   R<   R=   R0   t   float32R   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRG    s   t   TestDtype_float64c           B   s   e  Z e j Z RS(    (   R<   R=   R0   R   R   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRI    s   t   TestDtype_categoryc           B   s   e  Z d  Z e Z d   Z RS(   t   categoryc         C   sN   t  t d  d | } t  t d d d  d | } i | d 6| d 6} | S(   Ni   R   i
   i    iR  R   (   R   R   (   R:   R   R  R   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR%    s    
(   R<   R=   R   R   t
   include_dfR%  (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRJ    s   t   DatetimeLikec           B   s   e  Z d    Z RS(   c         C   sd   | j  d |  j  } | d k r@ | |  } t j | |  n  t j t   | |  Wd  QXd  S(   NRC   R   (   RD   RC   R   R.  RO   RP   R  (   R:   R   R)  R+  R*  R,  R/  R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR(    s    (   R<   R=   R(  (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRM    s   t   TestDtype_timedeltac           B   s   e  Z e j d   Z RS(   s   m8[ns](   R<   R=   R0   R   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRN    s   t   TestDtype_datetimec           B   s   e  Z e j d   Z RS(   s   M8[ns](   R<   R=   R0   R   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRO    s   t   TestDtype_datetime64UTCc           B   s   e  Z d  Z d   Z RS(   s   datetime64[ns, UTC]c         C   s   t  j d  d  S(   NsK   direct creation of extension dtype datetime64[ns, UTC] is not supported ATM(   RO   t   skip(   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR;     s    (   R<   R=   R   R;   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRP    s   t   TestMomentsc           B   s  e  Z d    Z d   Z d   Z d   Z d   Z e j d    Z	 e j d    Z
 e j d    Z e j d    Z e j d	    Z e j d
    Z e j d    Z e j d    Z e j d    Z e j d    Z d   Z d   Z d   Z e j j d d d d d d g  d    Z d   Z e j j d d d d d d g  e j j d d d d  d! d" g  e j j d# d d$ d% d& d' d( d) g d* d d% d& d' d$ d( d) g d e j d+ e j d, g e j e j e j e j g e j d e j d- d, d g d g e j d. d/ g g  d0      Z d1   Z d2   Z d3   Z  e j j d4 e! e" g  e j j d5 d6   d7   g  d8     Z# d9   Z$ e j j d: d; d< g  d=    Z% d>   Z& d?   Z' d@   Z( dA   Z) e j dB    Z* e j dC    Z+ e, e, e, dV e, dD  Z. dE   Z/ e j j dF e, e0 g  e j j dG e, e0 g  dH     Z1 dI   Z2 dJ   Z3 dK   Z4 dL   Z5 dM   Z6 dN   Z7 dO   Z8 dP   Z9 e j j d5 dQ dR dS g  dT    Z: dV e0 dU  Z; RS(W   c         C   s   |  j    d  S(   N(   R;   (   R:   RA   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRB   #  s    c         C   s%  t  t j d   j d d d t d d  j   t j t  6 t  t j d   j d d d t d d  j   Wd  QXt	 t j d	   j d d d t d d  j   t	 t j d
   j d d d t d d  j   t j t  6 t	 t j d   j d d d t d d  j   Wd  QXd  S(   Ni
   RC   i   R   Rd   i    i   i   (   i
   i
   (   i
   i
   (   i
   i
   (
   R   R0   R   RD   Rp   Re   RO   RP   R   R	   (   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_centered_axis_validation&  s    17$$c         C   s    |  j  t j d d d t d  S(   NRG   RX   t   zero_min_periods_equal(   t   _check_moment_funcR0   t   nansumR   (   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_sum:  s    c         C   s,   d   } |  j  | d d d t d d d  S(   Nc         S   s   t  j |   j t  j   S(   N(   R0   t   isfiniteR   R   RX   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   ?  s    RG   R   t   has_min_periodst
   fill_valuei    (   RU  R   (   R:   t   counter(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_count>  s    	c         C   s   |  j  t j d d d  S(   NRG   Re   (   RU  R0   Re   (   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_meanC  s    c         C   s   t  j d d d d d d d d d	 d
 g
  } t |  j d d t j   } t t  j t  j d d d d d d t  j t  j g
  } t j | |  d  S(   Ng@gQk.@gzG@g=
ףp="@gQ+@g{G*@gGz0@g(\"@g(\B%@g(\,@i   R   gC#@g
ףp=&@gT㥛 '@gx&1)@gA`Т)@gCl)@(	   R0   R>   R   RD   Rp   Re   R]   R   R   (   R:   t   valsR_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_cmov_meanF  s    !c         C   s   t  j d d d d d d d d d	 d
 g
  } t |  j d d d d t j   } t t  j t  j d d d d d d t  j t  j g
  } t j | |  d  S(   Ng@gQk.@gzG@g=
ףp="@gQ+@g{G*@gGz0@g(\"@g(\B%@g(\,@i   R   R   R   gC#@g
ףp=&@gT㥛 '@gx&1)@gA`Т)@gCl)@(	   R0   R>   R   RD   Rp   Re   R]   R   R   (   R:   R^  R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_cmov_windowP  s    'c         C   s
  t  j t j g d  } | j d d t d d j   } t j |  j   sU t	  t  j g   } | j d d t d d j   } t
 |  d k s t	  t  j t j j d   } | j d d d j   } t j |  j   s t	  t
 |  d k st	  d  S(   Ni
   i   R   R   R   i    (   Rm   R   R0   R]   RD   Rp   Re   t   isnant   allRH   t   lenR   R   (   R:   R^  R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_cmov_window_cornerZ  s    !!c         C   s$  t  j d d g d d g d d g d d g d	 d
 g d d g d d g d d g d d g d d g g
  } t  j t  j t  j g t  j t  j g d d g d d g d d g d d g d d g d d g t  j t  j g t  j t  j g g
  } t |  j d  d! d" d# t j   } t j t |  |  t	 j
 t  * t |  j d  d! d" d# t j   Wd  QXt  j t  j t  j g t  j t  j g d$ d% g d& d' g d( d) g d* d+ g d, d& g d- d. g t  j t  j g t  j t  j g g
  } t |  j d  d! d" d# t j   } t j t |  |  d  S(/   Ng\(\(@gQ@g\(\$@gRQ"@g{Gz*@gQ8-@g
ףp=
@gQ8 @g@gzG&@gHzG"@gףp=
@gQ&@gףp=
W%@gQ@g
ףp=
@gףp=
"@gHz @gzG(@g\(\@g/$"@gbX9"@g}?5^I!@gZd;#@g=
ףp!@g"~j$@g=
ףp=@gV-!@g^I+@g"@gK@i   R   R   R   gzG!G@g{GzG@g\(E@gp=
H@g,F@gQI@gfffffA@gQxE@g{GzC@g     F@g(\C@(   R0   R>   R]   R	   RD   Rp   Re   R   R   RO   RP   RY   Rf   RX   (   R:   R^  t   xpt   rs(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_cmov_window_framem  s$    !-!'+-!'c         C   s   t  t j j d   } t j | d <t j | d <| j d d d d t j   } | j d d d d d d t j   } t j	 | |  d  S(	   Ni
   i   i   i   R   R   R   R   (
   R   R0   R   R   R]   RD   Rp   Re   R   R   (   R:   R^  Re  Rf  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_cmov_window_na_min_periods  s    !c         C   s  t  j d d d d d d d d d	 d
 g
  } i t  j t  j d d d d d d t  j t  j g
 d 6t  j t  j d d d d d d t  j t  j g
 d 6t  j t  j d d d d d d t  j t  j g
 d 6t  j t  j d  d! d" d# d$ d% t  j t  j g
 d& 6t  j t  j d' d( d) d* d+ d, t  j t  j g
 d- 6t  j t  j d. d/ d0 d1 d2 d3 t  j t  j g
 d4 6t  j t  j d5 d6 d7 d8 d9 d: t  j t  j g
 d; 6t  j t  j d d d d d d t  j t  j g
 d< 6} t | |  } t |  j d= d> | d? t j   } t j | |  d  S(@   Ng@gQk.@gzG@g=
ףp="@gQ+@g{G*@gGz0@g(\"@g(\B%@g(\,@g='o|m!@gqWs #@g((@g4h,@gfa+@g#bJ$'@R    g}iƒ"@g6~$@gT(@gu*@g(\*@g`(@R   g(\ @g(\b"@g=
ףp)@g\(,@g
ףp=*,@g(\"'@R%   g"v@g_QZ"@gsҫ)@g* 3hX,@g5Q-@gx@5&@R"   gT[@g;)T"@g}*@g͍	,@gOI5.@gY}%@R#   gVI/@gU"@g*@g!<8,@g7.@g%@R$   g;M@g>tA}["@gH|)@gff,@gj'-@g,}V&@R   R!   i   R   R   (	   R0   R>   R]   R   RD   Rp   Re   R   R   (   R:   R&   R^  t   xpsRe  Rf  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_cmov_window_regular  s,    'c         C   s   t  j t d  d t  j } | j   } t  j | d *t  j | d )t |  } t |  j d d | d t j	   } t
 j | |  d  S(   Ni
   R   i   ii   R   R   (   R0   R>   R   R   R5   R]   R   RD   Rp   Re   R   R   (   R:   R&   R^  Re  Rf  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt%   test_cmov_window_regular_linear_range  s    'c         C   s  t  j d d d d d d d t  j d d	 g
  } i t  j t  j d
 d d d d d d d g
 d 6t  j t  j d d d d d d d d g
 d 6t  j t  j d
 d d d d d d d g
 d 6t  j t  j d d d d d  d! d" d g
 d# 6t  j t  j d$ d% d& d' d( d) d* d+ g
 d, 6t  j t  j d- d. d/ d0 d1 d2 d3 d4 g
 d5 6t  j t  j d6 d7 d8 d9 d: d; d< d= g
 d> 6t  j t  j d? d@ dA dB dC dD dE dF g
 dG 6} t | |  } t |  j dH dI | dJ dK j   } t j | |  d  S(L   Ng@gQk.@gzG@g=
ףp="@gQ+@g{G*@gGz0@g(\B%@g(\,@gch#@gQ%@g(\ @g(\b"@g=
ףp)@g\(,@g@ٔ+;/@g(\O+@R!   geu"@g"&@g;M@g>tA}["@gH|)@gff,@gH/@R   R%   gOe!@gƢd '@g"v@g_QZ"@gsҫ)@g* 3hX,@gj/@R"   g R8/#@g	$@g='o|m!@gqWs #@g((@gEJi,@g&pn~.@g4)e+@R    gj@+0 @g8gDio(@gVI/@gU"@g*@gmIF,@gtYLl0@gϠO+@R$   g vЩ"@g(\#@g}iƒ"@g6~$@gT(@gGz+@gz1,@gHz+@R   g @gx(
(@gT[@g;)T"@g}*@gB`",@gQ0@ggO+@R#   i   R   R   i   (   R0   R>   R]   R   RD   Re   R   R   (   R:   R&   R^  Ri  Re  Rf  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt%   test_cmov_window_regular_missing_data  s,    !'c         C   sO  i i d d 6d 6i d d 6d 6i d d 6d d 6d	 6} t  j d
 d d d d d d d d d g
  } i t  j t  j d d d d d d t  j t  j g
 d 6t  j t  j d d d d d d t  j t  j g
 d	 6t  j t  j d  d! d" d# d$ d% t  j t  j g
 d 6} t | |  } t |  j d& d' | d( t j | |   } t j | |  d  S()   Ng      ?t   betaR'   Rf   R(   g       @t   powert   widthR)   g@gQk.@gzG@g=
ףp="@gQ+@g{G*@gGz0@g(\"@g(\B%@g(\,@gn)!@gL;#@gW[~(@g6T+@g	K<P+@ghW!(@gP0A#@gS"n%@gfv'@gm+*@g)@g})@gxW#@gW	3&@g=~oӟM'@g7)@gƢd)@g8լ)@i   R   R   (	   R0   R>   R]   R   RD   Rp   Re   R   R   (   R:   R*   t   kwdsR^  Ri  Re  Rf  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_cmov_window_special  s$    c         C   s   i i d d 6d 6i d d 6d 6i d d 6d d 6d	 6i d
 d 6d 6} t  j t d  d t  j } | j   } t  j | d *t  j | d )t |  } t |  j d d | d t j	 | |   } t
 j | |  d  S(   Ng      ?Rm  R'   Rf   R(   g       @Rn  Ro  R)   g      ?t   slepiani
   R   i   ii   R   R   (   R0   R>   R   R   R5   R]   R   RD   Rp   Re   R   R   (   R:   R*   Rp  R^  Re  Rf  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt%   test_cmov_window_special_linear_range  s    c         C   s   |  j  t j d d d  S(   NRG   R  (   RU  R0   R  (   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_median
  s    c      	   C   s   |  j  t j d d t j d d d d d g  } | j d d	 d
 d  j   } t j t j t |    } t j	 | |  t
 j t  3 t j d d d g  j d d d
 d  j   Wd  QXd  S(   NRG   R   i   i   i   i   i   RC   id   R   (   RU  R0   R   Rm   R   RD   R   Rc  R   R   RO   RP   R   (   R:   R   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_min  s    c      	   C   s   |  j  t j d d t j d d d d d g d t j } | j d	 d
 d d  j   } t j | |  t	 j
 t  3 t j d d d g  j d	 d d d  j   Wd  QXd  S(   NRG   R   i   i   i   i   i   R   RC   id   R   (   RU  R0   R   Rm   R   R   RD   R   R.  RO   RP   R   (   R:   R   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_max  s    't   qg        g?g      ?g?g      ?c            s8   d       f d   } |  j  | d d d   d  S(   Nc   	      S   s   t  j |  d d } t | d | j d d  } | | j d d k rX | d } n| t |  t | j d d  } t | d  t | j d d  } | | } | | d } | | | | | | | } | S(   NRd   i    g      ?i   i(   R0   R   R   t   shapeR   (	   R   t   pert   valuest   idxt   retvalt   qlowt   qhigt   vlowt   vhig(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   scoreatpercentile%  s    !%
c            s    |     S(   N(    (   R~   (   Rw  R  (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   quantile_func6  s    RG   t   quantile(   RU  (   R:   Rw  R  (    (   Rw  R  s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_quantile"  s    	c         C   s   d } d } t  j d d | d d } t t j j | |  j | d f  d | } | j d	 d
 d g d d } t j | d d d g d d } t	 j
 | j t j |   d  S(   Ni
   i   t   20100101R,   R   RL   iR-   g      ?g      ?g      ?Rd   i    i   i2   iK   (   Rm   R   R	   R0   R   t   randR$  R  t
   percentileR   R.  Rz  R>   (   R:   t   rowt   colR{  RS   t   df_quantilet   np_percentile(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt#   test_rolling_quantile_np_percentile<  s    1!R  g?i   t   interpolationt   lineart   lowert   highert   nearestt   midpointR   g       @g      @g      @g      @g      @g      @g       @g?g?g333333?gffffff?g333333?c         C   s   t  |  } | j | |  } | j d d  j | |  j d } t j |  rj t j |  s| t  n | | k s| t  d  S(   NR   i   i(   R   R  R   t   ilocR0   Ra  RH   (   R:   R  R  R   R   t   q1t   q2(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt+   test_rolling_quantile_interpolation_optionsI  s    c         C   sc   t  j d  } t |  } t j t d d - | j t |  d d j d d d Wd  QXd  S(	   Ni   RN   s(   Interpolation 'invalid' is not supportedR   i   g      ?R  t   invalid(	   R0   R8   R   RO   RP   R   RD   Rc  R  (   R:   R   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_invalid_quantile_valuea  s
    c         C   s   t  d d d d d g  } t j t   | j d  j d  Wd  QXt j t   | j d  j d  Wd  QXt j t   | j d  j d	  Wd  QXd  S(
   Ng        g?g      ?g?g      ?i   gg      $@R[   (   R   RO   RP   R   RD   R  Rb   (   R:   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_quantile_paramj  s    c         C   s-  t  j    t  j d d d d t d   } |  j t j d d d | d	 | t g   } | j d
  j	 d   d	 | } t
 j | |  Wd  QXt d  d  d  g  } | j d d d j	 d   d	 | } t d d d g  } t
 j | |  | j d d d j	 t d	 | } t
 j | |  d  S(   NRi   t   messages   .*(empty slice|0 for slice).*RK  c         S   s   |  t  j |   j   S(   N(   R0   RX  Re   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR     s    RG   R   R   R   i
   c         S   s
   |  j    S(   N(   Re   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    i   R   i    c         S   s
   t  |   S(   N(   Rc  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    g      ?g       @(   Rr   R   R   t   RuntimeWarningRU  R0   Re   R   RD   R   R   R   R   Rc  (   R:   R   R   R`   R_   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_applyv  s    	"!'$R   RA   c         C   s   |  j  d d  S(   NRC   i   (   RD   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s
   |  j    S(   N(   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   sE   | t  j d   } t j t   | |  j d    Wd  QXd  S(   Ni   c         S   s
   t  |   S(   N(   Rc  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    (   R0   R8   R   t   assert_produces_warningRt   R   (   R:   R   RA   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_apply_future_warning  s    c         C   s   t  j d d d d g  } | j d  j t j d | } | j   j   sT t  | j d d d j t j d | } t  j d d d d g d	 t	 } t
 j | |  d  S(
   Ni   i   i   i   i
   R   R   i   R   (   Rm   R   RD   R   R0   RX   R   Rb  RH   R   R   R.  (   R:   R   R^  R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt    test_rolling_apply_out_of_bounds  s    !'!RC   i   t   2sc      	      s   t  j i t j j d  d 6t j j d d d d d 6d t  j d d	 d d
 d     f d   }   j |  j | d t	 }   j
 d j    } t j | |  t j t  !   j |  j | d t Wd  QXd  S(   Ni   RK   i    i
   t   sizeRL   R-   t   20130101R,   R   R   c            s,   |  j  d   j  d k r! t j S|  j d S(   Ni    i(   R-   R0   R]   R  (   R~   (   RS   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR     s    R   i   (   Rm   R	   R0   R   R   t   randintR   RD   R   R   R  t   reindex_likeR   R   RO   RP   RY   Rp   (   R:   RC   R   R_   R`   (    (   RS   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt&   test_rolling_apply_with_pandas_objects  s    c         C   s6   |  j  d   d d |  j  d   d d d d d  S(   Nc         S   s   t  j |  d d S(   NR}   i   (   R0   Rf   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    RG   Rf   c         S   s   t  j |  d d S(   NR}   i    (   R0   Rf   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    R}   i    (   RU  (   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_std  s    c         C   s   t  j d d d d d g  } | j d d d j   } t  j t j g d  } t j | |  | j d d d j d	 d
  } t  j d g d  } t j | |  t  j t j t j d d d g  j d d d j   } t j | d  s t	  d  S(   Ng      ?g       @g      @g      @g      @i   R   i   R}   i    g        i   i   i   (
   Rm   R   RD   Rf   R0   R]   R   R   Ra  RH   (   R:   R^  R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_std_1obs  s    !$c         C   s   t  j d d d d d g  } | j d d  j   } t j | d  j   sU t  | j d d  j   } t j | d  j   s t  d  S(   Nge>R?gRz12?RC   i   i   R  (	   Rm   R   RD   Rf   R0   RX  Rb  RH   R  (   R:   R   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_std_neg_sqrt  s    c         C   s6   |  j  d   d d |  j  d   d d d d d  S(   Nc         S   s   t  j |  d d S(   NR}   i   (   R0   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    RG   R   c         S   s   t  j |  d d S(   NR}   i    (   R0   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    R}   i    (   RU  (   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_var  s    c            s0   d d l  m   |  j   f d   d d d  S(   Ni(   t   skewc            s     |  d t  S(   Nt   bias(   R   (   R~   (   R  (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    RG   R  (   t   scipy.statsR  RU  (   R:   (    (   R  s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_skew  s    c            s0   d d l  m   |  j   f d   d d d  S(   Ni(   t   kurtosisc            s     |  d t  S(   NR  (   R   (   R~   (   R  (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    RG   t   kurt(   R  R  RU  (   R:   (    (   R  s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_kurt  s    c   !         s9  d  t    f d  }	 |	 |  j d d }
 t |
 t  sB t  t j |
 j d | |  j d   |	 |  j	 d d } t | t
  s t  t j | j d d  d   f |  j	 j d d   d  d   f j | d d d t d	 t | rSd
 } d } |  j d  d  d  j d  j   } |  j	 d  d  d  j d  j   } | r|	 | d | d | }
 |	 | d | d | } n$ |	 | d | }
 |	 | d | } |
 j d } | d t j   } |  j d  d  d  j | |  } |  j	 d  d  d  j | |  } t j |
 d | |   t j | j |  | j | d t d	 t n  t t d   } t j | d *t j | d )| r|	 | d d d } t j | j d | | d d !  |	 | d d d } t | j d  st  t | j d  st  t | j d  s t  t | j d  s9t  t t d   } |	 | d d d } t | j d  syt  t | j d  st  | r|	 | d d d } |	 | d d d } t j | |  qn3 |	 | d  } t j | j d | | d d !  | rx2d t |  j  d t |  j  f D] } |	 |  j t |  j  d d | } |	 |  j t |  j  d | } t |  } t j | t |   | } t j | | | |  q7Wn{ |	 |  j t |  j  d  } |	 |  j t |  j   } t |  } t j | t |   | } t j | | | |  | r5| r|	 | d d d d t } |	 t j | t t j g d  g  d d d d j d t  } nS |	 | d d t } |	 t j | t t j g d  g  d  d j d t  } t j | |  g  t d  D] } d | ^ q$} | r#d } |	 |  j j  t! |  j j  |  d d
 d | j" d   j  |  j j  } |	 |  j	 j  t! |  j	 j  |  d d
 d | j" d   j  |  j	 j  } |	 |  j d d
 d | d t } |	 |  j	 d d
 d | d t }  n |	 |  j j  t! |  j j  |  d d
 j" d   j  |  j j  } |	 |  j	 j  t! |  j	 j  |  d d
 j" d   j  |  j	 j  } |	 |  j d d
 d t } |	 |  j	 d d
 d t }  | d  k	 r| j# |  } | j# |  } n  t j | |  t j$ | |   n  d  S(!   Nc            s1   |  j  d | d | d |  } t |       S(   NRC   R   R   (   RD   R   (   R  RC   R   R   RI   (   t   kwargsRG   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt
   get_result  s    	RC   i2   iiRd   i    R   t   check_namesi   i
   i   RL   R   i   ii   i   i   i   iii   i   i   i   R   i	   R   i   s   x%di(%   R   R   R6   R   R   RH   R   R.  R  R9   R	   R   R   R   t   resampleRe   R-   t   offsetst   BDayt   truncatet   xsR   R0   R1   R   R   Rc  Rp   Rm   R   t   reset_indexR   t   reindexR^   t   shiftt   fillnaR   (!   R:   t   static_compRG   RY  t
   has_centert   has_time_ruleRZ  RT  R  R  t   series_resultt   frame_resultt   wint   minpR6   R9   t	   last_datet	   prev_datet   trunc_seriest   trunc_frameR  R_   t   obj2t   result0t   result1R`   t   nan_maskR~   R   t	   series_xpt   frame_xpt	   series_rst   frame_rs(    (   R  RG   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRU    s    7%%	""
$$,		("#"!"!"!"!c         C   sy   |  j  d d  t j t j d   } d | d <| j d d d t  j   j   } t j	 | d  d	 k  su t
  d  S(
   NRG   Re   i  i   i   R  id   t   adjustg{Gz?(   t	   _check_ewRm   R   R0   t   zerosR  R   Re   RX   t   absRH   (   R:   R^  R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt	   test_ewma  s
    
$R  t	   ignore_nac         C   s   t  d d d d g  } | r9 t  d d d d g  } n t  d d d	 d
 g  } | j d d d | d |  j   } t j | |  d  S(   Ng      ?g       @g      @g       @g?gʍ"k@gY;@gRTU?gS@g	@R  R  R  (   R   R  Re   R   R   (   R:   R  R  R   R`   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ewma_cases  s    $c         C   s  t  d g t j g d d g  } | j d d  j   } t j | t  d g t |    t  t j g d d g t j g d d g  } | j d d  j   } t j | t  t j g d d g d   t  t j d d g  } t  d t j d g  } t  t j d t j t j d t j g  } t  d t j d d g  } d } d d | } d	   }	 x,| t t	 t j d | d g f | t t t j d | d g f | t	 t	 t j d | | g f | t	 t t j d | | g f | t t	 d | d t j d g f | t t d | t j d g f | t	 t	 d | d t j | g f | t	 t d | t j | g f | t t	 t j d | d
 t j t j d t j g f | t t t j d | t j t j d t j g f | t	 t	 t j d | d
 t j t j | t j g f | t	 t t j d | t j t j | t j g f | t t	 d | d
 t j d | d g f | t t d | d t j d | d g f | t	 t	 d | d
 t j d | | | d | d | g f | t	 t d | d t j d | | | g f g D] \ } }
 } } |	 | t  |   } | j d | d |
 d |  j   } t j | |  | t	 k r| j d | d |
  j   } t j | |  qqWd  S(   Ng      ?i   R  i   i   g     @Y@g      I@g       @c         S   s)   |  j  |  j   | j   j d d  S(   NRA   t   ffill(   t   multiplyt   cumsumR  (   R   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt
   simple_wma  s    i   R  R  (
   R   R0   R]   R  Re   R   R   Rc  Rp   R   (   R:   R   R_   t   s0t   s1R   R   R  R  R  R  R  R   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ewma_nan_handling  sZ    $#2+*	##0$c         C   s   |  j  d d  d  S(   NRG   R   (   R  (   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ewmvar  s    c         C   s   |  j  d d  d  S(   NRG   t   vol(   R  (   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ewmvol  s    c      	   C   s   |  j  j d d  j   } |  j  j d d  j   } t j | |  t j t   |  j  j d d d d  Wd  QXt j t   |  j  j   j   Wd  QXd  S(   NR  g      #@R  i   (   R6   R  Re   R   R.  RO   RP   R   (   R:   RK   RL   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ewma_span_com_args  s    c         C   s   |  j  j d d  j   } |  j  j d d  j   } t j | |  t j t   |  j  j d d d d  Wd  QXt j t   |  j  j d d d d  Wd  QXt j t  $ |  j  j d d d d d d  Wd  QXt j t   |  j  j   Wd  QXd  S(	   NR  gH+@R  g      $@R  i   i2   g      #@(   R6   R  Re   R   R.  RO   RP   R   (   R:   RK   RL   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ewma_halflife_arg  s    %c         C   s   t  |  j  } | j d d  j   } | j d d  j   } | j d d  j   } | j d d  j   } t j | |  t j | |  t j | |  d  S(	   NR  gVR?R  gƷC?R  g_!@R  gXlWY?(   R   R3   R  Re   R   R   (   R:   R   R   R   R   R+  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ewm_alpha  s    c         C   s   |  j  } t j t   | j   Wd  QXt j t   | j d d d d  Wd  QXt j t   | j d d d d  Wd  QXt j t   | j d d d d  Wd  QXd  S(   NR  g      $@R  g      ?R  R  (   R6   RO   RP   R   R  (   R:   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ewm_alpha_arg  s    	c         C   sd  t  |  j  } t j t | j d d | j d d  | j d d  t j t | j d d t j t | j d d t j t | j d d | j d d  | j d d  t j t | j d	 d t j t | j d	 d | j d	 d  t j t | j d
 d t j t | j d
 d | j d
 d  | j d
 d  t j t | j d
 d d  S(   NR  gg        g?R  g?g      ?g?R  R  (   R   R3   RO   RP   R   R  (   R:   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ewm_domain_checks  s"    Re   R  R   c         C   sM   t  j g  d t j } | j d  } t | |    } t j | |  d  S(   NR   i   (   Rm   R   R0   R   R  R   R   R.  (   R:   RA   R^  R  R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ew_empty_series&  s    c   
      C   s  t  |  j j d d  |    } t | t  s6 t  t  |  j j d d  |    } t |  t k so t  t  |  j j d d  |    } | r | |  j	 j
   j   s t  n  t d  } t j | d *t j | d )t |  } t  | j d d d d  |    } | d  j
   j   s*t  | d j
   j   sGt  x[d D]S} t  | j d d d |  |    } | d
 k r| d  j
   j   st  | d j
   j   st  n9 | d  j
   j   st  | d j
   j   st  t  t   j d d d |  |    } t j | t    t  t d g  j d d | |    } | d
 k rt j | t d g   qNt j | t t j g   qNWt  t t j d   j d d  |    }	 |	 j t j k st  d  S(   NR  i
   i2   iR   i   i   i    i   Re   g      ?R  (   i    i   (   R   R6   R  R   R   RH   R9   t   typeR	   R2   R   Rb  R   R0   R1   t   anyR   R   R8   R   t   float_(
   R:   RG   t   preserve_nanR  R  R_   R3   R   R   t   result2(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR  .  s>    !!!"$$  -N(<   R<   R=   RB   RS  RW  R\  R]  R   R   R_  R`  Rd  Rg  Rh  Rj  Rk  Rl  Rq  Rs  Rt  Ru  Rv  RO   R   R   R  R  R0   R]   R  R  R  R  R   R	   R  R  R  R  R  R  R  R  R  Rp   R   RU  R  R   R  R  R  R  R  R  R  R  R  R  R  (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRR     sv   					

			
-	!$-					$		$					'	7			
				't   TestPairwisec           B   s(  e  Z e d  d g d d  g d d  g d d g g d d d g e d  d g d d  g d d  g d d g g d d d g e d  d g d d  g d d  g d d g g d d d g e d  d g d d  g d d  g d d g g d d d g e d  d g d d  g d d  g d d g g d d d g e d  d g d d  g d d  g d d g g d d	 d g e d  d g d d  g d d  g d d g g d d d g e d
 d g d d
 g d d
 g d d g g d d d	 g e d  d g d d
 g d d
 g d d g g d d d g e d  d g d d  g d d  g d d g g d d d g g
 Z e d: d d g d: d d  g d: d d  g d: d d g g d d d d g Z e d d d d g  Z d   Z e	 j
 j d d   d   g  d    Z e	 j
 j d d   d   d   d   d   d   g  d    Z e	 j
 j d d   d   d    d!   d"   d#   g  d$    Z e	 j
 j d d%   d&   d'   d(   d)   d*   g  d+    Z e	 j
 j d d,   d-   d.   d/   d0   d1   g  d2    Z e	 j
 j d d3   d4   d5   d6   d7   d8   g  d9    Z RS(;   i   i   i   i   i   R.   i    RM   g      ?g        g       @g      @g      @g       @t   Xi   t   Yt   Zc         C   s8   | j    j } | j    j } t j | | d t d  S(   Nt   check_dtype(   t   dropnaRz  R   t   assert_numpy_array_equalR   (   R:   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   comparey  s    R   c         C   s
   |  j    S(   N(   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s
   |  j    S(   N(   t   corr(   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   g  |  j  D] } | |  ^ q
 } xL t |  j  |  D]8 \ } } t j | j | j  t j | j | j  q5 Wx= t |  D]/ \ } } | d k r~ |  j | | d  q~ q~ Wd  S(   Ni    (   t   df1sR   R   RE   R-   R.   t	   enumerateR  (   R:   R   RS   t   resultsR_   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_no_flex  s    "c         C   s   |  j    j d t  S(   Nt   pairwise(   R   R   Rp   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j    j d t  S(   NR  (   R   R  Rp   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j d t  S(   NRC   i   R  (   RD   R   Rp   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j d t  S(   NRC   i   R  (   RD   R  Rp   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j d t  S(   NR  i   R  (   R  R   Rp   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j d t  S(   NR  i   R  (   R  R  Rp   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   g  } x t  |  j  D] \ } } | |  } t j | j j d | j d t t j t | j j d  t | j	 j
     t j | j	 | j	  | j |  q Wx= t  |  D]/ \ } } | d k r |  j | | d  q q Wd  S(   Ni    R  i   (   R  R  R   RE   R-   t   levelsR   R  R   R.   t   uniqueR   R  (   R:   R   R  R  RS   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_pairwise_with_self  s    	c         C   s   |  j    j d t  S(   NR  (   R   R   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j    j d t  S(   NR  (   R   R  R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j d t  S(   NRC   i   R  (   RD   R   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j d t  S(   NRC   i   R  (   RD   R  R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j d t  S(   NR  i   R  (   R  R   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j d t  S(   NR  i   R  (   R  R  R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   g  |  j  D] } | |  ^ q
 } xL t |  j  |  D]8 \ } } t j | j | j  t j | j | j  q5 Wx= t |  D]/ \ } } | d k r~ |  j | | d  q~ q~ Wd  S(   Ni    (   R  R   R   RE   R-   R.   R  R  (   R:   R   RS   R  R_   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_no_pairwise_with_self  s    
"c         C   s   |  j    j | d t S(   NR  (   R   R   Rp   (   R~   t   y(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j    j | d t S(   NR  (   R   R  Rp   (   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j | d t S(   NRC   i   R  (   RD   R   Rp   (   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j | d t S(   NRC   i   R  (   RD   R  Rp   (   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j | d t S(   NR  i   R  (   R  R   Rp   (   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j | d t S(   NR  i   R  (   R  R  Rp   (   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   g  |  j  D] } | | |  j  ^ q
 } xu t |  j  |  D]a \ } } t j | j j d | j d t t j t	 | j j d  t	 |  j j
 j     q; Wx= t |  D]/ \ } } | d k r |  j | | d  q q Wd  S(   Ni    R  i   (   R  t   df2R   R   RE   R-   R  R   R  R   R.   R  R  R  (   R:   R   RS   R  R_   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_pairwise_with_other  s    
(	c         C   s   |  j    j | d t S(   NR  (   R   R   R   (   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j    j | d t S(   NR  (   R   R  R   (   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j | d t S(   NRC   i   R  (   RD   R   R   (   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j | d t S(   NRC   i   R  (   RD   R  R   (   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j | d t S(   NR  i   R  (   R  R   R   (   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j | d t S(   NR  i   R  (   R  R  R   (   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c      	   C   sD  g  |  j  D]* } | j j r. | | |  j  n d  ^ q
 } xt |  j  |  D] \ } } | d  k	 r t d t  E t j	 d t
  | j j |  j j  } | j j |  j j  } Wd  QXt j | j |  t j | j |  qM t j t d d  | | |  j  Wd  QXt j t d d  | |  j |  Wd  QXqM Wd  S(   NRh   Ri   RN   s   'arg1' columns are not uniques   'arg2' columns are not unique(   R  R.   t	   is_uniqueR  R   R   R   Rp   Rr   Rs   R  R-   t   unionR   RE   RO   RP   R   (   R:   R   RS   R  R_   t   expected_indext   expected_columns(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_no_pairwise_with_other  s     
7

c         C   s   |  j    j |  S(   N(   R   R   (   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j    j |  S(   N(   R   R  (   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j |  S(   NRC   i   (   RD   R   (   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j |  S(   NRC   i   (   RD   R  (   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j |  S(   NR  i   (   R  R   (   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d  j |  S(   NR  i   (   R  R  (   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   g  |  j  D] } | | |  j  ^ q
 g  |  j  D] } | |  j |  ^ q/ } xL t |  j  |  D]8 \ } } t j | j | j  t j | j | j  qa Wx= t |  D]/ \ } } | d k r |  j | | d  q q Wd  S(   Ni    (	   R  R   R   R   RE   R-   R.   R  R  (   R:   R   RS   R  R_   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_pairwise_with_series  s    
%)N(   R<   R=   R	   R  R   R  R   R   R  RO   R   R   R  R  R  R   R  R  (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR  d  sl   999-999---0		*										c             sf   d       f d   }  d   } d   }     |    } g  | D]! } | | |  | |  f ^ qA S(   Nc           S   sY  t    t  t j g  t  t j t j g  t  d g  t  t j d g  t  d t j g  t  d d g  t  d d g  t  d d g  t  d d d d t j t j t j d d t j t j g  t  t j d d d t j t j t j d d t j t j g  t  t j t j d d t j t j t j d d t j t j g  t  t j d t j d d d d t j t j d d d	 d
 d g  t  t j d t j d d d d t j t j d d d	 d
 d g  t  d d t j d d d d t j t j d d d	 d
 d g  t  d d t j d d d d t j t j d d d	 d
 d g  t  t d   t  t d d d   g S(   Ng      @g      ?g       @g      @g      @g      @g      @g      (@g      *@g      ,@g      .@g        g      "@i
   i   i    i(   R   R0   R]   R   (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   create_series  s2    -*---**c             s   t    t  d d g  t  d d d g  t  d d d g  t  t j d  j d
   t  t j d  j d   t  t j d  j d  d d d d d	 d	 g g g      D] }  t  |   ^ q S(   NR.   R   R   i
   i   i   i   ic   R+  (   i   i   (   i   i   (   i   i   (   R	   R0   R8   R$  (   R   (   R  (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   create_dataframes  s    c         S   s/   |  j  j   } t t | t |    d k S(   Ni   (   Rz  t   ravelRc  t   setR   (   R~   Rz  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   is_constant*  s    c         S   s   |  j    j   j   S(   N(   R   Rb  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   no_nans.  s    (    (   R  R  R  R   R~   (    (   R  s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   _create_consistency_data  s    			c          c   s   x} d d d d d g D]f }  x] d d d d d |  h D]C } | rS | |  k rS q5 n  x" t  t g D] } |  | | f Vq` Wq5 Wq Wd  S(   Ni   i   i   i
   i   i    i   (   R   Rp   (   RC   R   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   _rolling_consistency_cases:  s    t   TestMomentsConsistencyc           B   s  e  Z d    dh d f d   dh d f d   dh d f d   dh d f d   dh d	 f d
   d d f d   dh d f d   dh d f d   d d f d   dh d f e j d d f e j d d f e j d d f e j d d	 f d   d d f d   d d f e j d d f g Z	 e j
 dh d f e j dh d f e j dh d f e j dh d	 f d   d d f d   d d f e j dh d f g Z d   Z d   Z dh dh dh dh dh dh dh d  Z e j j e j j d d d d d d  g  e j j d! e e g  e j j d" e e g  d#       Z e j j e j j d d d d d d  g  d$     Z e j j e j j d% e e     d&     Z d'   Z d(   Z d)   Z  d*   Z! e j j d+ e" d,   d-    Z# d.   Z$ d/   Z% d0   Z& e j j d1 d d g  d2    Z' d3   Z( d4   Z) d5   Z* d6   Z+ d7   Z, d8   Z- d9   Z. d:   Z/ d;   Z0 d<   Z1 d=   Z2 d>   Z3 d?   Z4 d@   Z5 dA   Z6 dB   Z7 e j j dC dD   dE   dF   dG   dH   dI   dJ   dK   dL   dM   dN   dO   dP   dQ   dR   g  dS    Z8 dT   Z9 dU   Z: dV   Z; dW   Z< dX   Z= dY   Z> dZ   Z? d[   Z@ d\   ZA e j j d] d e j f d	 e j f d e j
 f d e j f g d^ d d	 d d g d_    ZB d`   ZC e e e da  ZD db   ZE dc   ZF dd   ZG de   ZH df   ZI dg   ZJ RS(i   c         C   s   t  |   j   S(   N(   R   R   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   E  s    R   c         C   s   t  |   j   S(   N(   R   R   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   F  s    R   c         C   s   t  |   j   S(   N(   R   R   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   G  s    R   c         C   s   t  |   j   S(   N(   R   RX   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   H  s    RX   c         C   s   t  |   j   S(   N(   R   Re   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   I  s    Re   c         C   s   t  |   j   S(   N(   R   Rf   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   J  s    i   Rf   c         C   s   t  |   j t  |    S(   N(   R   R   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   K  s    R   c         C   s   t  |   j t  |    S(   N(   R   R  (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   L  s    R  c         C   s   t  |   j   S(   N(   R   R   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   M  s    R   c         C   s   t  |   j   S(   N(   R   R  (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   V  s    R  c         C   s   t  j |  d d S(   NR}   i   (   R0   t   nanstd(   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   [  s    c         C   s   t  j |  d d S(   NR}   i   (   R0   t   nanvar(   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   \  s    c         C   s   t  j |  d d S(   NR}   i   (   R0   Rf   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   d  s    c         C   s   t  j |  d d S(   NR}   i   (   R0   R   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   e  s    c         C   s    t  t |   j   t |  _ d  S(   N(   t   superR  R;   t   _consistency_dataR   (   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR;   i  s    c         C   s   |  j    d  S(   N(   R;   (   R:   RA   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRB   m  s    c   *      C   s  d   } x	|  j  D]\ } } } | |  } | |  } | re | |  } t | | j d   n  | | |  } | r t | t  r | j   n | j   j   } | t j } | | | t | d  k <t | |  t j | (t | |  n  | r>|	 r>| r>| |  } |	 |  } | |  } t | | |  n  x|
 |	 | f | | | f g D]\ } } } | |  } | |  } | d k  j   j   st	  | d k  j   j   st	  | r| | |  } | d k  j   j   st	  t | |  n  t | | |  | |	 k rK| | |  } t | | | |  n  | r| d k j   j   spt	  | t j } d | | t | d  k <| | k rt j | | d k  <n  t | |  n  t | t  r]x3|  j  D]%\ }  } } | j
   j |  j
    sqn  | | |   }! | |  |  }" t |! |"  | r| | |   }# | |  |  }$ t |# |$  | | |   }% | |   }& t |# d |% | |&  | |   }' t |! |# | |'  | | k r| |   }( | | |   }) t |# |) | |(  qqqWq]q]Wq Wd  S(   Nc         S   s)   |  j  j   } t | t |  j    S(   N(   Rz  R	  R
  R   t   tolist(   R~   Rz  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   _non_null_valuesu  s    R   i   i    g        i   g      ?(   R   R   R   R   R   R   R0   R]   R  RH   R   t   equals(*   R:   R   R   Re   t	   mock_meanR  t   var_unbiasedt   std_unbiasedt   cov_unbiasedt
   var_biasedt
   std_biasedt
   cov_biasedt   var_debiasing_factorsR  R~   R  R  t   count_xt   mean_xR`   t   corr_x_xR,  t   var_unbiased_xt   var_biased_xt   var_debiasing_factors_xRf   R   R   t   var_xt   std_xt   cov_x_xt   mean_x2R  t   corr_x_yt   corr_y_xt   cov_x_yt   cov_y_xt   var_x_plus_yt   var_yt   std_yt   mean_yt   mean_x_times_y(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   _test_moments_consistencyp  s    	-
			R   i    i   i   i   R  R  c            sC   f d     f d     f d     d  |  j  d  d d   d     f d	   d
       f d   d     f d   d     f d   d     f d   d     f d   d     f d   d     f d   d     f d   d     f d    d  S(   Nc   
         s  t  |  t  r t |  j  s7 t d |  j d |  j  St g  t |  j  D]= \ } }   |  j d  d   | f d | d | d | ^ qJ d d } |  j | _ |  j | _ | St t	 j
 d |  j } d d | } | r  |  |  j   d | d | d t | |  j   <n | rtx t t |    D]A } |  j | |  j | k r,t d d | |  | j | <q,q,Wn d	 } d
 }	 x t t |    D]| } |  j | |  j | k r|	 d
 k rd | j | <n& | | t d | | |	  | j | <| | j | 7} | }	 qqW| S(   NR-   R.   R  R  R  Rd   i   g      ?g        i(   R   R	   Rc  R.   R-   R   R  R  R   R0   R]   R   R   R   t   iatt   pow(
   R   R  R  R  R  t   _R   R  t   sum_wtst   prev_i(   t   _weights(    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR8    s:    Y(c   	         s     |  d | d | d | } | j    j d d  } | | j    j d d  } | | } | | } t j | | d k <| | S(   NR  R  R  RA   R  g        (   R  R  R0   R]   (	   R   R  R  R  t   weightst   cum_sumt
   cum_sum_sqt	   numeratort   denominator(   R8  (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   _variance_debiasing_factors	  s    

c            s     |  d | d | d | } |  j  |  j   j | j    j d d  } t j | |  j   j   | r{ t | d  n d k  <| S(   NR  R  R  RA   R  i   (	   R  R  t   divideR  R0   R]   R   R   R   (   R   R  R   R  R  R9  R_   (   R8  (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   _ewma	  s
    '	4g      @R   R   c         S   s   |  j    j   S(   N(   R   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW    	  s    Re   c      	      s(   |  j  d  d  d   d   j   S(   NR  R   R  R  (   R  Re   (   R~   (   R  R  R  R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   !	  s   R  c      
      s"     |  d  d  d  d  S(   NR  R   R  R  (    (   R~   (   R@  R  R  R  R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   $	  s   R  c      	      s+   |  j  d  d  d   d   j |  S(   NR  R   R  R  (   R  R  (   R~   R  (   R  R  R  R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   (	  s   R  c      	      s.   |  j  d  d  d   d   j d t  S(   NR  R   R  R  R  (   R  R   R   (   R~   (   R  R  R  R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   +	  s    R  c      	      s.   |  j  d  d  d   d   j d t  S(   NR  R   R  R  R  (   R  Rf   R   (   R~   (   R  R  R  R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   /	  s    R  c      	      s1   |  j  d  d  d   d   j | d t S(   NR  R   R  R  R  (   R  R   R   (   R~   R  (   R  R  R  R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   3	  s    R  c      	      s.   |  j  d  d  d   d   j d t  S(   NR  R   R  R  R  (   R  R   Rp   (   R~   (   R  R  R  R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   7	  s    R  c      	      s.   |  j  d  d  d   d   j d t  S(   NR  R   R  R  R  (   R  Rf   Rp   (   R~   (   R  R  R  R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   ;	  s   R  c      	      s1   |  j  d  d  d   d   j | d t S(   NR  R   R  R  R  (   R  R   Rp   (   R~   R  (   R  R  R  R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   >	  s    R  c            s     |  d  d  d  S(   NR  R  R  (    (   R~   (   R>  R  R  R  (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   B	  s    (   R2  (   R:   R   R  R  (    (   R@  R>  R8  R  R  R  R   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ewm_consistency  s"    #			c            s  t  j   t  j d d d d t |  j d   d d   d   f d	   d
   f d   d   f d   d   f d   d   f d   d   f d   d   f d   d   f d   d   f d   d d    x8|  j D]-\ } } } |  j } | r
|  j |  j } n  x | D] \ } } } t | j	 d    |  }	 | r_  d  k	 r_  | k  r_qn  | d k r|	   }
 | j	 d d  j d | d t  } nK | d# k r|	 d  t  }
 n	 |	   }
 | j	 d    j d | d t  } | d$ k rt |
 |  qqWq WWd  QXd  S(%   NRi   R  s   .*(empty slice|0 for slice).*RK  R   R   c         S   s   |  j    j   S(   N(   R   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   U	  s    Re   c            s   |  j  d    j   S(   NR   (   R   Re   (   R~   (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   V	  s   	R  c            s&   |  j  d    j   |  j    j   S(   NR   (   R   RX   R   (   R~   (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   X	  s   	R  c            s   |  j  d    j |  S(   NR   (   R   R  (   R~   R  (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   Z	  s   	R  c            s   |  j  d    j   S(   NR   (   R   R   (   R~   (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   \	  s   	R  c            s   |  j  d    j   S(   NR   (   R   Rf   (   R~   (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   ^	  s   	R  c            s   |  j  d    j |  S(   NR   (   R   R   (   R~   R  (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   `	  s   	R  c            s   |  j  d    j d d  S(   NR   R}   i    (   R   R   (   R~   (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   b	  s   	R  c            s   |  j  d    j d d  S(   NR   R}   i    (   R   Rf   (   R~   (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   d	  s   	R  c            s   |  j  d    j | d d S(   NR   R}   i    (   R   R   (   R~   R  (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   f	  s   	R  c         S   s3   |  j    j   |  j    j   d j d t j  S(   Ng      ?g        (   R   R   t   replaceR0   R]   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   h	  s    i    R   R   R   R  RX   t   prod(   R   R  (   RX   RC  (   Rr   R   R   R  R2  R   t   base_functionst   no_nan_functionsR   R   R   R   Rp   R   R   (   R:   R   R~   R  R  t	   functionsR   t   require_min_periodsRG   t   expanding_ft   expanding_f_resultt   expanding_apply_f_result(    (   R   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_expanding_consistencyF	  sR    		
					s   window,min_periods,centerc            s  t  j   nt  j d d d d t |  j d  d    f d   d     f d	   d
     f d   d     f d   d     f d   d     f d   d     f d   d     f d   d     f d   d     f d   d    f d    x\|  j D]Q\ } } } |  j } | rR|  j |  j } n  x| D]\ } }	 }
 t | j	 d  d   d   |
  } |	 r d  k	 r |	 k  rqYn  |
 d k r|   } | j	 d  d d d    j d | d  t  } nW |
 d% k r| d" t  } n	 |   } | j	 d  d  d    j d | d  t  } |
 d& k rYt | |  qYqYWq!WWd  QXd  S('   NRi   R  s   .*(empty slice|0 for slice).*RK  R   R   c            s   |  j  d  d    j   S(   NRC   R   (   RD   R   (   R~   (   R   RC   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   	  s    Re   c            s"   |  j  d  d  d    j   S(   NRC   R   R   (   RD   Re   (   R~   (   R   R   RC   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   	  s    R  c            sI   |  j  d  d  d    j   j |  j  d  d  d    j    S(   NRC   R   R   (   RD   RX   R?  R   (   R~   (   R   R   RC   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   	  s    R  c            s%   |  j  d  d  d    j |  S(   NRC   R   R   (   RD   R  (   R~   R  (   R   R   RC   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   	  s    R  c            s"   |  j  d  d  d    j   S(   NRC   R   R   (   RD   R   (   R~   (   R   R   RC   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   	  s    R  c            s"   |  j  d  d  d    j   S(   NRC   R   R   (   RD   Rf   (   R~   (   R   R   RC   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   	  s    R  c            s%   |  j  d  d  d    j |  S(   NRC   R   R   (   RD   R   (   R~   R  (   R   R   RC   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   	  s    R  c            s(   |  j  d  d  d    j d d  S(   NRC   R   R   R}   i    (   RD   R   (   R~   (   R   R   RC   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   	  s    R  c            s(   |  j  d  d  d    j d d  S(   NRC   R   R   R}   i    (   RD   Rf   (   R~   (   R   R   RC   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   	  s    R  c            s+   |  j  d  d  d    j | d d S(   NRC   R   R   R}   i    (   RD   R   (   R~   R  (   R   R   RC   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   	  s    R  c            sP   |  j  d  d    j   j |  j  d  d    j   d j d t j   S(   NRC   R   g      ?g        (   RD   R   R?  RB  R0   R]   (   R~   (   R   RC   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   	  s    RC   R   i    R   R   R   R  RX   RC  (   R   R  (   RX   RC  (   Rr   R   R   R  R2  R   RD  RE  R   RD   R   R   Rp   R   R   (   R:   RC   R   R   R~   R  R  RF  R   RG  RG   t	   rolling_ft   rolling_f_resultt   rolling_apply_f_result(    (   R   R   RC   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_consistency	  sX    							c         C   sp   |  j  } | t t |   } | j d d d d  j |  } t j | d t j | d | d  d	  d  S(
   NRC   i2   R   i   iii    i   (   i    i   (   R6   R   Rc  RD   R   R   R.  R0   (   R:   RK   RL   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_cov	  s    	!c         C   s    |  j  d d d d d d d  S(   NRD   R   RC   i
   R   i   (   t   _check_pairwise_moment(   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_cov_pairwise	  s    c         C   s   |  j  } | t t |   } | j d d d d  j |  } t j | d t j | d | d  d  t j	   } t j	   } t j
 | d	 *t j
 | d
 *| j d t |  d d  j |  } t j | d | j |   d  S(   NRC   i2   R   i   iii    i   i   i
   (   i    i   (   R6   R   Rc  RD   R  R   R.  R0   t   corrcoeft   makeTimeSeriesR]   (   R:   RK   RL   R_   R   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_corr 
  s    	!,'c         C   s    |  j  d d d d d d d  S(   NRD   R  RC   i
   R   i   (   RQ  (   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_corr_pairwise
  s    RC   i   c         C   sd   t  j t j d   } t  j t j d   } | j d |  j d |  j   j   s` t	  d  S(   Ni   RC   t   other(
   Rm   R   R0   R  R8   RD   R  R   Rb  RH   (   R:   RC   R   RW  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt$   test_rolling_corr_with_zero_variance
  s    c            s   d      f d  } | |  j  } | j t d   d f d f } | j j d  | _ | |  j d |  j d  } t j | | d t d  S(   Nc            s"   t  t  |          |  S(   N(   R   (   R  R  (   t   dispatchR  RG   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR  
  s    i   i   R  (	   R   R9   t   loct   sliceR-   t	   droplevelR   R   R   (   R:   RY  RG   R  R  R_   R`   (    (   RY  R  RG   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRQ  
  s    c         C   s    t  j t t j d d d   d  S(   Ni   i   (   RO   RP   Rb   R   t   _flex_binary_momentR   (   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_flex_binary_moment&
  s    c      	   C   s"  t  t j d d g d d g d d g d d g d	 d
 g d d g g   } | d j d d t j | d  } t d   | D  s t  x t d  D] } t  t j	 j
 d d   } | d j d d t j | d  } y  t d   | D  s t  Wq t k
 r| GHq Xq Wd  S(   NgF$?g)?gT5?g?'N?gFr1?g+	C-?gR	`?g1:b%?g9T!X4!?gXS_?gS= ?g\+Lt?i    i   R   i   c         s   s-   |  ]# } t  j t  j |   d  k Vq d S(   i   N(   R0   R  t
   nan_to_num(   R  R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pys	   <genexpr>3
  s    i
   i   i   c         s   s-   |  ]# } t  j t  j |   d  k Vq d S(   i   N(   R0   R  R_  (   R  R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pys	   <genexpr>:
  s    (   R	   R0   R>   RD   Rp   R  Rb  RH   R   R   R  (   R:   RS   t   resR5  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_corr_sanity+
  s    	&& RA   c            s   j  d  t  j d d     j   } t  j  j d d      }  j  j   f d    } t j | |  t j | |   j  j     t j j	   j
     j (t  j  j d d       } t     f d    j  D  } t j | |  d  S(   Ni   RC   i
   c            s   t   j d d     |   S(   NRC   i
   (   R   RD   (   R~   (   RA   R6   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   D
  s   c            s?   i  |  ]5 } t   j | j d  d      |  |  q S(   RC   i
   (   R   R9   RD   (   R  t   k(   t   frame2RA   R:   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pys
   <dictcomp>N
  s   	(   R9   R   RD   R   R   R   R5   R0   R   R   Rx  Rz  R	   (   R:   RA   R`  t   res2R,  t   res3(    (   Rc  RA   R:   R6   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_flex_binary_frame>
  s    $$$c         C   s   |  j  d  d  S(   NR   (   t   _check_binary_ew(   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ewmcovR
  s    c         C   s    |  j  d d d d d d d  S(   NR  R   R  i
   R   i   (   RQ  (   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ewmcov_pairwiseU
  s    c         C   s   |  j  d  d  S(   NR  (   Rg  (   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ewmcorrX
  s    c         C   s    |  j  d d d d d d d  S(   NR  R  R  i
   R   i   (   RQ  (   R:   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ewmcorr_pairwise[
  s    c            s    f d   } t  t d  d t j d  } | d t d  } t j | d *t j | d )| | | d d	 d
 } t j | j d   j   s t  t j | j d  j	   s t  x d D] } | | | d d	 | } t j | j d   j   st  t j | j d  j	   s%t  | t  g   t  g   d d	 | } t
 j | t  g    | t  d g  t  d g  d d	 | } t
 j | t  t j g   q Wt j t | | t d  d d	 d
 d  S(   Nc            s   t  |  j | |     |  S(   N(   R   R  (   RK   RL   R  R  (   RG   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR   _
  s    i2   R-   i   i0   i
   ii   R   i   i   i    i   i   g      ?(   i    i   i   (   R   R   R0   R8   R1   Ra  Rz  Rb  RH   R  R   R   RO   RP   t	   Exception(   R:   RG   R   RK   RL   R_   R   (    (   RG   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRg  ^
  s$    !"#"#$' c         C   s   d   } t  t j j d d   } | j   j t j d | d } | j   j | d | d d	 } t j | |  | j   j | d | d i d d 6} t j | |  d  S(
   Nc         S   s   t  j |   | S(   N(   R0   Re   (   R~   t   const(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt
   mean_w_arg
  s    i   i   R   g      4@t   argsR  Rm  (   i   (	   R	   R0   R   R  R   R   Re   R   R   (   R:   R   Rn  RS   R`   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt    test_expanding_apply_args_kwargs
  s    	"	c         C   sy   |  j  j   } | t t |   d  } | j   j |  } | j d t |  d d  j |  } t j | |  d  S(   NiRC   R   i   (	   R6   R  R   Rc  R   R  RD   R   R.  (   R:   RK   RL   R_   t   rolling_result(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_expanding_corr
  s
    'c         C   sG   |  j  j   j   } t j | |  j  j d t |  j    j    d  S(   NRC   (   R6   R   R   R   R.  RD   Rc  (   R:   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_expanding_count
  s    c         C   sY   |  j  j   j d  } |  j  j d t |  j   d d  j d  } t j | |  d  S(   Ng      ?RC   R   i   (   R6   R   R  RD   Rc  R   R.  (   R:   R_   Rq  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_expanding_quantile
  s    c         C   ss   |  j  } | t t |   d  } | j   j |  } | j d t |  d d  j |  } t j | |  d  S(   NiRC   R   i   (   R6   R   Rc  R   R   RD   R   R.  (   R:   RK   RL   R_   Rq  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_expanding_cov
  s
    	'c         C   sS   |  j  j   j   } |  j  j d t |  j   d d  j   } t j | |  d  S(   NRC   R   i   (   R9   R   R  RD   Rc  R   R   (   R:   R_   Rq  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_expanding_cov_pairwise
  s    c         C   sS   |  j  j   j   } |  j  j d t |  j   d d  j   } t j | |  d  S(   NRC   R   i   (   R9   R   R  RD   Rc  R   R   (   R:   R_   Rq  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_expanding_corr_pairwise
  s    c         C   sN  t  d d d g d d d d g } t  d d g d d d g } | j   j |  } t  d  d  d g  } t j | |  t  d d  d g d d d d g } | j   j |  } t j | |  t  d d d	 g d d d d g } t  d d
 d	 g d d d d g } | j   j |  } t  d  d  d  d g  } t j | |  d  S(   Ni   i   i   R-   i    g       @i   i   i
   i	   g      @(   R   R   R   R   R   R   (   R:   R  R   R_   R`   t   s2a(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_expanding_cov_diff_index
  s    $$$$c         C   sN  t  d d d g d d d d g } t  d d g d d d g } | j   j |  } t  d  d  d g  } t j | |  t  d d  d g d d d d g } | j   j |  } t j | |  t  d d d	 g d d d d g } t  d d
 d	 g d d d d g } | j   j |  } t  d  d  d  d g  } t j | |  d  S(   Ni   i   i   R-   i    g      ?i   i   i
   i	   (   R   R   R  R   R   R   (   R:   R  R   R_   R`   Rx  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_expanding_corr_diff_index
  s    $$$$c         C   s   t  d d d g d d d d g } t  d d g d d d g } | j d d d d  j |  } t  d  d  d g  } t j | |  t  d d  d g d d d d g } | j d d d d  j |  } t j | |  d  S(	   Ni   i   i   R-   i    RC   R   g       @(   R   RD   R   R   R   R   (   R:   R  R   R_   R`   Rx  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_cov_diff_length
  s    $!$!c         C   s   t  d d d g d d d d g } t  d d g d d d g } | j d d d d  j |  } t  d  d  d g  } t j | |  t  d d  d g d d d d g } | j d d d d  j |  } t j | |  d  S(	   Ni   i   i   R-   i    RC   R   g      ?(   R   RD   R  R   R   R   (   R:   R  R   R_   R`   Rx  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_corr_diff_length
  s    $!$!R   c         C   s%   |  j  d d d d  j |  d t S(   NRC   i
   R   i   R  (   RD   R   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s   c         C   s%   |  j  d d d d  j |  d t S(   NRC   i
   R   i   R  (   RD   R  R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s   c         C   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   RX   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   Re   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   Rf   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   	  s    c         C   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   
  s    c         C   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   R  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   R  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s"   |  j  d d d d  j d d  S(   NRC   i
   R   i   R  g      ?(   RD   R  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s   	c         C   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   R  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    c         C   s%   |  j  d d d d  j t d t S(   NRC   i
   R   i   R   (   RD   R   RX   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s   c         C   s%   |  j  d d d d  j t d t S(   NRC   i
   R   i   R   (   RD   R   RX   Rp   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s   c         C   s"   |  j  d d d d d d  j   S(   NR   R   RC   i
   R   i   (   RD   Re   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s   c         C   s   t  t d   } t  t j d | j } t d d g d d g d d g d d	 g g d
 d d g } t t j d | j d
 | j } y< | |  } t j | |  | |  } t j	 | |  Wn t
 k
 r t j d  n Xd  S(   Ni   R-   i   i   i   i   i	   ii    R.   RK   RL   s   scipy not available(   R   R   R0   R]   R-   R	   R.   R   R   R   t   ImportErrorRO   RQ  (   R:   R   R   t
   s_expectedRS   t   df_expectedt   s_resultt	   df_result(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt+   test_rolling_functions_window_non_shrinkage
  s    <!c      	   C   s   t  d d g d d g d d g d d g g d t d	 d
 g d d d t t d  d d } t  d t d	 d
 g d d d t j j | j | j g d d d g d d  } d   d   g } x* | D]" } | |  } t j	 | |  q Wd  S(   Ni   i   i   i   i	   ii    R.   RK   RL   RG   R[   R-   i   t   barR   R   R   c         S   s%   |  j  d d d d  j |  d t S(   NRC   i
   R   i   R  (   RD   R   Rp   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   3  s   c         S   s%   |  j  d d d d  j |  d t S(   NRC   i
   R   i   R  (   RD   R  Rp   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   5  s   (
   R	   R
   R   Rm   Rn   Ro   R-   R.   R   R   (   R:   RS   R  RF  R   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt2   test_rolling_functions_window_non_shrinkage_binary(  s    -	c         C   s  t    } | } t   } | } t d d g  } | d j d  | d <| } d   d   d   d   d   d	   d
   d   d   d   d   d   d   d   d   d   d   d   d   d   d   d   d   d   d   d   d   d   d    d!   d"   g } x} | D]u } yX | |  }	 t j |	 |  | |  }
 t j |
 |  | |  } t j | |  Wqt k
 rqqXqWd  S(#   NR.   R   R   c         S   s   |  j    j   S(   N(   R   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   E  s    c         S   s   |  j  d d  j |  d t S(   NR   i   R  (   R   R   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   F  s   c         S   s   |  j  d d  j |  d t S(   NR   i   R  (   R   R  R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   H  s   c         S   s   |  j  d d  j   S(   NR   i   (   R   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   J  s    c         S   s   |  j  d d  j   S(   NR   i   (   R   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   K  s    c         S   s   |  j  d d  j   S(   NR   i   (   R   RX   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   L  s    c         S   s   |  j  d d  j   S(   NR   i   (   R   Re   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   M  s    c         S   s   |  j  d d  j   S(   NR   i   (   R   Rf   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   N  s    c         S   s   |  j  d d  j   S(   NR   i   (   R   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   O  s    c         S   s   |  j  d d  j   S(   NR   i   (   R   R  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   P  s    c         S   s   |  j  d d  j   S(   NR   i   (   R   R  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   Q  s    c         S   s   |  j  d d  j d  S(   NR   i   g      ?(   R   R  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   R  s    c         S   s   |  j  d d  j   S(   NR   i   (   R   R  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   S  s    c         S   s   |  j  d d  j t d t S(   NR   i   R   (   R   R   RX   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   T  s   c         S   s   |  j  d d  j t d t S(   NR   i   R   (   R   R   RX   Rp   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   V  s   c         S   s   |  j  d d  j   S(   NRC   i
   (   RD   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   X  s    c         S   s%   |  j  d d d d  j |  d t S(   NRC   i
   R   i   R  (   RD   R   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   Y  s   c         S   s%   |  j  d d d d  j |  d t S(   NRC   i
   R   i   R  (   RD   R  R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   [  s   c         S   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   ]  s    c         S   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   ^  s    c         S   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   RX   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   _  s    c         S   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   Re   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   `  s    c         S   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   Rf   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   a  s    c         S   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   b  s    c         S   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   R  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   c  s    c         S   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   R  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   d  s    c         S   s   |  j  d d d d  j d  S(   NRC   i
   R   i   g      ?(   RD   R  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   e  s   	c         S   s   |  j  d d d d  j   S(   NRC   i
   R   i   (   RD   R  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   g  s    c         S   s%   |  j  d d d d  j t d t S(   NRC   i
   R   i   R   (   RD   R   RX   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   h  s   c         S   s%   |  j  d d d d  j t d t S(   NRC   i
   R   i   R   (   RD   R   RX   Rp   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   j  s   c         S   s"   |  j  d d d d d d  j   S(   NR   R   RC   i
   R   i   (   RD   Re   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   l  s   (   R   R	   R   R   R   R   R}  (   R:   R   R~  t   df1t   df1_expectedR  t   df2_expectedRF  R   R  t
   df1_resultt
   df2_result(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt!   test_moment_functions_zero_length;  s`    		c   	      C   sB  t    } | } t  d t d g d d d t g  d d  } | d j d  | d <t  d t j j | j | j g  d t g    } t  d t j j | j | j g d d d g d t d g d d d	 d  } d
   d   d   d   g } xF | D]> } | |  } t j	 | |  | |  } t j	 | |  q Wd  S(   NR.   R   RG   R[   R-   R  R   R   R   c         S   s   |  j  d d  j |  d t S(   NR   i   R  (   R   R   Rp   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s   c         S   s   |  j  d d  j |  d t S(   NR   i   R  (   R   R  Rp   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s   c         S   s%   |  j  d d d d  j |  d t S(   NRC   i
   R   i   R  (   RD   R   Rp   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s   c         S   s%   |  j  d d d d  j |  d t S(   NRC   i
   R   i   R  (   RD   R  Rp   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s   (
   R	   R
   R   Rm   Rn   Ro   R-   R.   R   R   (	   R:   R  R  R  R  RF  R   R  R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt*   test_moment_functions_zero_length_pairwise~  s,    		c   
   	   C   s  t  d d g d d g d d g g d t d d g d	 d
 } t  d d g d d g g d d d g d t d d g d	 d
 } t  d d g d  d  g d d g g d t d d g d	 d
 } t  d d g d d g g d d d g d t d d g d	 d
 } | j   j | d t j d } | j   j | d t j d } | j   j | d t j d } | j   j | d t j d } t  d d g d d g g d t d d g d	 d
 d t d d g d	 d
 }	 t j | |	  t j | |	  t j | |	  t j | |	  d  S(   Ni   i   i   i   i	   R.   RK   RL   RG   R[   R-   i    i   R  R  R  g      g      g      g      $(	   R	   R
   R   R   R   Rp   RZ  R   R   (
   R:   R  t   df1aR  t   df2aR  R  t   result3t   result4R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt'   test_expanding_cov_pairwise_diff_length  s*    $$""""c   
   	   C   s"  t  d d g d d g d d g g d d d g d t t d  d	 d
 } t  d d g d d g g d t d d g d	 d
 d d d g } t  d d g d  d  g d d g g d d d g d t t d  d	 d
 } t  d d g d d g g d t d d g d	 d
 d d d g } | j   j | d t j d } | j   j | d t j d } | j   j | d t j d } | j   j | d t j d } t  d d g d d g g d d d g d t d d g  }	 t j	 | |	  t j	 | |	  t j	 | |	  t j	 | |	  d  S(   Ni   i   i   i   R.   RK   RL   R-   RG   R  i    i   i   R  R  R  g      (
   R	   R
   R   R   R   R  Rp   RZ  R   R   (
   R:   R  R  R  R  R  R  R  R  R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt(   test_expanding_corr_pairwise_diff_length  s.    $$""""c         C   s   t  t j g d  } t  d g d  } | j d d  j   } t j | |  t  t j j d   } | j d d  j   } t j | |  t  d d d d d	 g  } t  t j t j t j d
 d g  } | j d d  j   } t j | |  d  S(   Ni   i   RC   i   gH"gT,#gsRNj?gm
;?g6ܭ?gA.q?g(?i   (	   R   R0   R1   RD   R  R   R   R   R   (   R:   t   all_nanR+  R~   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_skew_edge_cases  s    $c         C   s   t  t j g d  } t  d g d  } | j d d  j   } t j | |  t  t j j d   } | j d d  j   } t j | |  t  d d d d d	 g  } t  t j t j t j d
 d g  } | j d d  j   } t j | |  d  S(   Ni   i   RC   i   gH"gT,#gsRNj?gm
;?g6ܭ?g8?g_":_@i   (	   R   R0   R1   RD   R  R   R   R   R   (   R:   R  R+  R~   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_kurt_edge_cases  s    $c         C   sD   t  d g d  j d d  j   } t j |  j   s@ t  d  S(   Ng?i   RC   i
   (   R   RD   R  R0   Ra  Rb  RH   (   R:   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt    test_rolling_skew_eq_value_fperr  s    %c         C   sD   t  d g d  j d d  j   } t j |  j   s@ t  d  S(   Ng?i   RC   i
   (   R   RD   R  R0   Ra  Rb  RH   (   R:   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt    test_rolling_kurt_eq_value_fperr  s    %s   func,static_compt   idsc            s2   d t  d   f d  } |  j | | d t  d  S(   Ni   i    c            s.   |  j  d | d | d |  } t |      S(   NR   R   Rd   (   R   R   (   R~   R   R   Rd   R,  (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   expanding_func  s    R  (   R   t   _check_expanding(   R:   R   R  R  (    (   R   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_expanding_func  s    c            s   d   f d  } |  j  | t j d t t g   } t j | | j   j d   d    t d  d  d  g  } | j d d  j d   d   } t d	 d
 d g  } t j | |  d  S(   Ni   c            s.   |  j  d |  } | j d   d   } | S(   NR   c         S   s
   |  j    S(   N(   Re   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    R   (   R   R   (   R~   R   R,  R_   (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   expanding_mean  s    R  c         S   s
   |  j    S(   N(   Re   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   !  s    R   R   i    c         S   s
   t  |   S(   N(   Rc  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   %  s    g      ?g       @g      @(
   R  R0   Re   R   R   R   R   R   R   R   (   R:   R   R  R   R   R_   R`   (    (   R   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_expanding_apply  s    $c         C   s  | |  j   } t | t  s$ t  | |  j  } t | t  sH t  | |  j   } t j | d | |  j  d    | r | j |  j	 j
   j   s t  n  t t d   }	 | r| |	 d d } | d  j
   j   s t  t j | j d | |	 d    | |	 d d } t
 | j d	  s5t  t | j d
  sNt  t t d   }
 | |
 d d } t
 | d  st  t | d  st  | |	 d d } | |	 d d } t j | |  n- | |	  } t j | j d | |	 d    d  S(   Ni
   i   i2   R   i   i   ii   i   i   i   i   i   i   i    i   (   R6   R   R   RH   R9   R	   R   R.  R  R2   R   Rb  R   R   (   R:   R   R  RY  R  R  R  R  R_   R   t   ser2R  R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR  )  s2    !%!c      
   C   s  g  t  d d  D] } t d d |  ^ q } | j t d d d d d   t t  d d  d | } | j d    } | j   } t d	 d
 d d d g d g  t  d d  D] } t d d | d  ^ q } | j d  j   j d d  j   } t	 j
 | |  d S(   s%   Replicate result expected in GH #6297i   i   i  i   i    i   R-   c         S   s
   t  |   S(   N(   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   X  s    g      ?g       @g      @g      @g      @R   RC   N(   R   R   R   R   t   mapt
   sort_indexR  R   RD   R   R   (   R:   R  t   indicesR6   R`   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_max_gh6297P  s    .4'c      
   C   sF  g  t  d d  D] } t d d |  ^ q } | j t d d d d   | j t d d d d   t t t  d d   d d g d	 | } | j d
    } | j   } t d d d d d g d	 g  t  d d  D] } t d d | d  ^ q } | j d  j   j	 d d  j   } t
 j | |  t d d d d d g d	 g  t  d d  D] } t d d | d  ^ qZ} | j d  j   j	 d d  j   } t
 j | |  d d } t d d d d | g d	 g  t  d d  D] } t d d | d  ^ q} | j d  j   j	 d d  j   } t
 j | |  d  S(   Ni   i   i  i   i   i    i
   i   R-   c         S   s
   t  |   S(   N(   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   i  s    g        g      ?g       @g      @g      4@R   RC   g      $@g      @g      ,@g      A@(   R   R   R   R   R^   R  R  R  R   RD   R   R   R  Re   (   R:   R  R  R6   R`   R~   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_max_resamplea  s&    .+4'4'
4'c      
   C   s6  g  t  d d  D] } t d d |  ^ q } | j t d d d d   | j t d d d d   t t t  d d   d d g d	 | } | j d
    } | j   } t d d d d d g d	 g  t  d d  D] } t d d | d  ^ q } | j d  j   j	 d d  } t
 j | | j    d  S(   Ni   i   i  i   i   i    i
   i   R-   c         S   s
   t  |   S(   N(   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    g        g      ?g       @g      @g      @R   RC   (   R   R   R   R   R^   R  R  R  R   RD   R   R   (   R:   R  R  R6   R`   RI   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_min_resample  s    .+4!c      
   C   s6  g  t  d d  D] } t d d |  ^ q } | j t d d d d   | j t d d d d   t t t  d d   d d g d	 | } | j d
    } | j   } t d d d d d g d	 g  t  d d  D] } t d d | d  ^ q } | j d  j   j	 d d  j   } t
 j | |  d  S(   Ni   i   i  i   i   i    i
   i   R-   c         S   s
   t  |   S(   N(   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    g        g      ?g       @g      @R   RC   (   R   R   R   R   R^   R  R  R  R  RD   R   R   (   R:   R  R  R6   R`   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_median_resample  s    .+4'c         C   sf   d } t  t j j |   j d d d t  j   t  t j j |   j d d d t  j   d  S(   Ni N  RC   i   R   (   R   R0   R   R   RD   R   R  (   R:   R   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt    test_rolling_median_memory_error  s    .c         C   s2  g  d d g D] } t  j d j |   ^ q } | j g  d d d d g D]. } d D]! } t  j d j | |   ^ qT qJ  x | D] } t t  j d d	 |  j d
 d  j   } | j d t  j d  k s t	  t t  j d d	 |  j d
 d  j
   } | j d t  j d  k s t	  q Wd  S(   Ni   i   s   f{}i   i   t   uis   {}{}i   R   RC   i   i    t   f8(   R0   R   t   formatt   extendR	   R8   RD   R   t   dtypesRH   R   (   R:   Ro  t
   types_testt   signt	   data_typeR_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt"   test_rolling_min_max_numeric_types  s    1	E"N(K   R<   R=   R   R0   t   nanmaxt   nanminRV  t   nanmeant	   nanmedianRD  R   R   RX   Re   R  RE  R;   RB   R2  RO   R   t   slowR   Rp   R   RA  RK  R^   R  RO  RP  RR  RU  RV  R   RX  RQ  R^  Ra  Rf  Rh  Ri  Rj  Rk  Rg  Rp  Rr  Rs  Rt  Ru  Rv  Rw  Ry  Rz  R{  R|  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR  C  s   			o	!-`		'I		!c				$	
		$					!		
			
									C	!							&					t   TestGrouperGroupingc           B   sk   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d	   Z d
   Z RS(   c         C   s_   t  t j d   |  _ t i d g d d g d d g d d 6t j d	  d
 6 |  _ d  S(   Ni
   i   i   i   i   i   i   RK   i(   RL   (   R   R0   R8   R6   R	   R9   (   R:   RA   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRB     s    *c            sl     f d   } t  j t |    j j d  } | j sA t    j j d d t } | j sh t  d  S(   Nc              s     j  j d d d d  S(   NRK   R[   i   (   R9   R   (    (   R:   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR     s    RK   t   mutated(   RO   RP   Rb   R9   R   R  RH   Rp   (   R:   R   RT   (    (   R:   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_mutated  s    c         C   s   |  j  j d  } |  j  j d d t } | j j d    } | j d  j   j } t j | |  | j d  j j   } t j | |  | j j d  j   } t j | |  |  j  j j |  j  j	  j d  j   } t j | |  d  S(   NRK   R  c         S   s   |  j  d  j   S(   Ni   (   RD   Re   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    i   (
   R9   R   Rp   RL   R   RD   Re   R   R   RK   (   R:   RT   t	   g_mutatedR`   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRJ     s    *c         C   s   |  j  j d  } | j d  } |  j  j d d t } | j j d    } | j j   } t j | |  | j j   } t j | |  d  S(   NRK   i   R  c         S   s   |  j  d  j   S(   Ni   (   RD   R   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    (	   R9   R   RD   Rp   RL   R   R   R   R   (   R:   RT   RI   R  R`   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_getitem_multiple  s    c            s  |  j  j d  } | j d d  } x] d d d d d d	 d
 g D]@   t |      } | j   f d    } t j | |  q@ WxT d d g D]F   t |    d d  } | j   f d    } t j | |  q W| j d  } | j d    } t j | |  d  S(   NRK   RC   i   RX   Re   R   R   R   R  R  c            s   t  |  j d       S(   Ni   (   R   RD   (   R~   (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    Rf   R   R}   i   c            s   t  |  j d     d d  S(   Ni   R}   i   (   R   RD   (   R~   (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    g      ?c         S   s   |  j  d  j d  S(   Ni   g      ?(   RD   R  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    (   R9   R   RD   R   R   R   R   R  (   R:   RT   RI   R_   R`   (    (   R   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling  s    "c            s    j  j d  } | j d d  } x d d g D]   t |     j   }    f d   } | j |  } t j | |  t | j    d t  }   f d   } | j |  } t j	 | |  q1 Wd  S(	   NRK   RC   i   R  R   c            s   t  |  j d      j  S(   Ni   (   R   RD   R9   (   R~   (   R   R:   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR     s    R  c            s"   t  |  j j d     d t  S(   Ni   R  (   R   RL   RD   Rp   (   R~   (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR     s    (
   R9   R   RD   R   R   R   R   RL   Rp   R   (   R:   RT   RI   R_   R   R`   (    (   R   R:   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_corr_cov  s    c            sh   |  j  j d  } | j d d  } | j d   d   } | j   f d    } t j | |  d  S(   NRK   RC   i   c         S   s
   |  j    S(   N(   RX   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    R   c            s   |  j  d  j d   d   S(   Ni   c         S   s
   |  j    S(   N(   RX   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    R   (   RD   R   (   R~   (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    (   R9   R   RD   R   R   R   (   R:   R   RT   RI   R_   R`   (    (   R   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR    s    c         C   s  t  j i d g d d g d d 6d g d d 6 } | j d  } t  j j d d d d d d g  } d d  g | _ t  j t j d d g d d d g d | } | j	 d d  j
   } t j | |  | j
   | j	 d d  j
   } t j | |  d  S(   NR[   i   R  RK   i   i   RL   i   i   i    i   g       @R.   R-   RC   (   R  i   (   R  i   (   R  i   (   R[   i    (   R[   i   (   R[   i   (   Rm   R	   R   Rn   Rq   R   R   R0   R]   RD   RX   R   R   (   R:   RS   RT   t   miR`   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_apply_mutability  s    6.
c            s
  |  j  j d  } | j   } x] d d d d d d d g D]@   t |      } | j   f d	    } t j | |  q: WxT d
 d g D]F   t |    d d  } | j   f d    } t j | |  q W| j d  } | j d    } t j | |  d  S(   NRK   RX   Re   R   R   R   R  R  c            s   t  |  j        S(   N(   R   R   (   R~   (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   ;  s    Rf   R   R}   i    c            s   t  |  j      d d  S(   NR}   i    (   R   R   (   R~   (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   @  s    g      ?c         S   s   |  j    j d  S(   Ng      ?(   R   R  (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   D  s    (   R9   R   R   R   R   R   R   R  (   R:   RT   RI   R_   R`   (    (   R   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_expanding4  s    "c            s    j  j d  } | j   } x d d g D]   t |     j   }    f d   } | j |  } t j | |  t | j    d t  }   f d   } | j |  } t j	 | |  q+ Wd  S(   NRK   R  R   c            s   t  |  j       j  S(   N(   R   R   R9   (   R~   (   R   R:   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR   N  s    R  c            s   t  |  j j      d t  S(   NR  (   R   RL   R   Rp   (   R~   (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR   U  s    (
   R9   R   R   R   R   R   R   RL   Rp   R   (   R:   RT   RI   R_   R   R`   (    (   R   R:   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_expanding_corr_covG  s    c            sb   |  j  j d  } | j   } | j d   d   } | j   f d    } t j | |  d  S(   NRK   c         S   s
   |  j    S(   N(   RX   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   _  s    R   c            s   |  j    j d   d   S(   Nc         S   s
   |  j    S(   N(   RX   (   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   a  s    R   (   R   R   (   R~   (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   a  s    (   R9   R   R   R   R   R   (   R:   R   RT   RI   R_   R`   (    (   R   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR  Z  s    (   R<   R=   RB   R  RJ   R  R  R  R  R  R  R  R  (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR    s   							
			t   TestRollingTSc           B   s  e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d	   Z d
   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z RS(   c         C   s   t  i t j d d d d d d 6t d  d 6 j d  |  _ t  i t d  d 6 |  _ t d  t d	  t d
  t d  t d  g |  j _ d  S(   NR  R,   i   R   R   RK   RL   s   20130101 09:00:00s   20130101 09:00:02s   20130101 09:00:03s   20130101 09:00:05s   20130101 09:00:06(	   R	   Rm   R   R   t	   set_indext   regulart   raggedR   R-   (   R:   RA   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRB   j  s    
				c      	   C   ss   t  i d d d t j d g d 6d t d  t d  t d	  t d
  t d  g } | | j d  j   d  S(   Ni    i   i   i   RL   R-   s   20130101 09:00:00s   20130101 09:00:02s   20130101 09:00:03s   20130101 09:00:05s   20130101 09:00:06R  (   R	   R0   R]   R   RD   RX   (   R:   RS   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR   x  s    "				c         C   sb  |  j  } t j t   | j d d  Wd  QXt j t   | j   j d d  Wd  QXxF d t j j d  g D], } t j t   | j d |  Wd  QXqt Wx3 d t j j	 d  d g D] } | j d |  q WxU d d t
 j d	 d d
 g  g D]2 } t j t   | j d d d |  Wd  QXq Wt j t   | j d d d t  Wd  QXd  S(   NRC   R   t   2MSi   t   1Dt   2msg      ?R[   i   i   R   R   (   R  RO   RP   R   RD   R  Rm   R  t
   MonthBegint   DayR0   R>   R  Rp   (   R:   RS   R   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt
   test_valid  s    	"( c      
   C   s   |  j  } t j t   | j d d d d  Wd  QX| j   } t j d d t |  | d <| j d d d d  j	   t j t   | j d d d d	  Wd  QX| j d d d d  j
 j	   d  S(
   NRC   R  t   onR   R  R,   RM   R   RL   (   R  RO   RP   R   RD   R5   Rm   R   Rc  RX   RL   (   R:   RS   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_on  s    	c      	   C   s'  t  i t j d d d d d d 6t d  d 6 } | j j sG t  | j d d	 d j   | j	 d  } | j
 j s t  | j d  j   t | j
 j    | _
 | j
 j s t  t j t   | j d  j   Wd  QX| j   } t j t   | j d d	 d j   Wd  QXd  S(
   NR  R,   i   R   R   RK   RL   R  R  (   R	   Rm   R   R   RK   t   is_monotonicRH   RD   RX   R  R-   t   reversedR  RO   RP   R   R  (   R:   RS   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_monotonic_on  s     
c         C   s2  t  i t d  d 6t j d d d d d d 6 } t d  t d  t d	  t d
  t d  g | d <| j d  j d  j j   j	 d t
  } | j d d d j j   } t j | |  | j d  j d  d g j   j	   d d g } | j d d d d g j   } t j | |  d  S(   Ni   RL   s   20130101 09:00:00R,   R   t   3sRM   s   20130101 09:00:02s   20130101 09:00:03s   20130101 09:00:05s   20130101 09:00:06RK   R  R   R  (   R	   R   Rm   R   R   R  RD   RL   RX   R  Rp   R   R   R   (   R:   RS   R`   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_frame_on  s&    					"c      	   C   s  t  i d d d d d g d 6d d d t j d g d 6t t d  t d	  t d
  t d  t d  g  d 6d d d d g } t  i d d d d d g d 6d d d t j d g d 6| d d 6d d d d g } | j d d d j   } | } t j | |  t	 d d d t j d g d d } | j d d d j
 j   } t j | |  | d d d g } | j d d d d d d g j   } t j | |  d  S(   Ni    i   i   i   i   RK   RL   s   20130101 09:00:00s   20130101 09:00:02s   20130101 09:00:03s   20130101 09:00:05s   20130101 09:00:06RM   R.   g        i   R  R  RG   (   R	   R0   R]   R
   R   RD   RX   R   R   R   RL   R   (   R:   RS   t	   expected1R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_frame_on2  s*    			$(c         C   sm  |  j  j   } t j d d d d d | _ | j d d d d  j   } | j d d	  j   } t j | |  t j d d d d d
 | _ | j d d d d  j   } | j d d
 d d  j   } t j | |  | j d d d d  j   } | j d d
 d d  j   } t j | |  | j d d  j   } | j d d
  j   } t j | |  d  S(   NR  R,   i   R   R   RC   i   R   R  t   2D(	   R  R5   Rm   R   R-   RD   RX   R   R   (   R:   RS   R`   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_basic_regular  s    c         C   s   |  j  } | j d d d j   } | j d  j   } t j | |  | j d d d j   } | j d d d j   } t j | |  d  S(   Ni   R   i   R  (   R  RD   RX   R   R   (   R:   RS   R`   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_min_periods-  s    	c      	   C   s  t  i d g d d 6d t d  t d  t d  t d  t d	  g } t j t   |  j j d
 d d d  Wd  QX| j   } d d d d d g | d <| j d d d j   } t	 j
 | |  | j d  j   } t	 j
 | |  | j   } d d d d d g | d <| j d d d j   } t	 j
 | |  | j   } t j d d d d g | d <| j d d d j   } t	 j
 | |  | j   } t j d d d t j g | d <| j d d d j   } t	 j
 | |  d  S(   Ni   i   RK   R-   s   20130101 09:00:01s   20130101 09:00:02s   20130101 09:00:03s   20130101 09:00:04s   20130101 09:00:06RC   R  R   t   blablag      ?i   R   i   R   R   R   (   R	   R   RO   RP   R   R  RD   R5   RX   R   R   R0   R]   (   R:   RS   R`   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR   ;  s4    				c         C   s  |  j  } | j d d d d  j   } | j   } d d d d d g | d	 <t j | |  | j d d
 d d  j   } | j   } d d d d d g | d	 <t j | |  | j d d
 d d  j   } | j   } t j t j d t j d g | d	 <t j | |  | j d d d d  j   } | j   } d d d d d g | d	 <t j | |  | j d d  j   } | j   } d d d d d g | d	 <t j | |  | j d d d d  j   } | j   } d d d d d g | d	 <t j | |  | j d d d d  j   } | j   } t j t j d d d g | d	 <t j | |  | j d d d d  j   } | j   } d d d d d g | d	 <t j | |  d  S(   NRC   R   R   i   g        i   i   i   RL   R  i   R  i   t   4si   i	   t   5si
   (   R  RD   RX   R5   R   R   R0   R]   (   R:   RS   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ragged_sumb  sB    	"c         C   s   |  j  } | j d d d d  j   } | j   } d d d d d g | d	 <t j | |  | j d d
 d d  j   } | j   } d d d d d g | d	 <t j | |  d  S(   NRC   R   R   i   g        i   i   i   RL   R  g      ?g      @g      @(   R  RD   Re   R5   R   R   (   R:   RS   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ragged_mean  s    	c         C   s   |  j  } | j d d d d  j   } | j   } d d d d d g | d	 <t j | |  | j d d
 d d  j   } | j   } d d d d d g | d	 <t j | |  d  S(   NRC   R   R   i   g        i   i   i   RL   R  g      ?g      @g      @(   R  RD   R  R5   R   R   (   R:   RS   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ragged_median  s    	c         C   s   |  j  } | j d d d d  j d  } | j   } d d d d d	 g | d
 <t j | |  | j d d d d  j d  } | j   } d d d d d g | d
 <t j | |  d  S(   NRC   R   R   i   g      ?g        i   i   i   RL   R  g      ?g      @g      @(   R  RD   R  R5   R   R   (   R:   RS   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ragged_quantile  s    	!!c         C   sf  |  j  } | j d d d d  j d d  } | j   } d g d | d	 <t j | |  | j d d d d  j d d  } | j   } t j g d | d	 <t j | |  | j d d
 d d  j d d  } | j   } d g d g d | d	 <t j | |  | j d d d d  j d d  } | j   } t j d d d d g | d	 <t j | |  d  S(   NRC   R   R   i   R}   i    g        i   RL   R  g      ?i   R  g۞?g      ?gPS?(   R  RD   Rf   R5   R   R   R0   R]   (   R:   RS   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ragged_std  s"    	$$$$c         C   sn  |  j  } | j d d d d  j d d  } | j   } d g d | d	 <t j | |  | j d d d d  j d d  } | j   } t j g d | d	 <t j | |  | j d d
 d d  j d d  } | j   } d g d g d | d	 <t j | |  | j d d d d  j d d  } | j   } t j d d d d d d g | d	 <t j | |  d  S(   NRC   R   R   i   R}   i    g        i   RL   R  g      ?i   R  g      ?g      ?i   g      @(   R  RD   R   R5   R   R   R0   R]   (   R:   RS   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ragged_var  s"    	$$$$$c         C   s   |  j  } | j d d d d  j   } | j   } t j g d | d <t j | |  | j d d d d  j   } | j   } t j g d d	 d	 d	 g | d <t j | |  d  S(
   NRC   R  R   i   i   RL   R  i   g        (   R  RD   R  R5   R0   R]   R   R   (   R:   RS   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ragged_skew  s    	!c         C   s   |  j  } | j d d d d  j   } | j   } t j g d | d <t j | |  | j d d d d  j   } | j   } t j g d d	 g | d <t j | |  d  S(
   NRC   R  R   i   i   RL   R  i   g333333(   R  RD   R  R5   R0   R]   R   R   (   R:   RS   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ragged_kurt  s    	c         C   s@  |  j  } | j d d d d  j   } | j   } d d d d d g | d <t j | |  |  j  } | j d d  j   } t j | |  | j d d d d  j   } | j   } d d d d d g | d <t j | |  | j d d d d  j   } | j   } t j t j d t j d g | d <t j | |  d  S(	   NRC   R   R   i   g      ?RL   R  i   (   R  RD   R   R5   R   R   R0   R]   (   R:   RS   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ragged_count  s     		"c         C   s  t  i t j d d d d d d 6d d d	 d
 d g d 6 j d  } | j d  j   } | j   } d d d	 d
 d g | d <t j | |  t  i t j d d d d d d 6d d d
 d d g d 6 j d  } t j | |  | j d  j   } | j   } d d d
 d
 d g | d <t j | |  | j d  j   } | j   } d d d
 d
 d
 g | d <t j | |  d  S(   NR  R,   i   R   R   RK   g        i   i   i   i   RL   R   R  g      @R  (	   R	   Rm   R   R  RD   R   R5   R   R   (   R:   RS   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_regular_min  s*    
%
%c         C   s  |  j  } | j d d d d  j   } | j   } d d d d d g | d	 <t j | |  | j d d
 d d  j   } | j   } d d d d d g | d	 <t j | |  | j d d d d  j   } | j   } d d d d d g | d	 <t j | |  d  S(   NRC   R   R   i   g        i   i   i   RL   R  R  i    (   R  RD   R   R5   R   R   (   R:   RS   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ragged_min-  s    	c      	   C   s   d } t  i t j j |  d 6d t j d d | d d } | j d d	 d
 j   } | j d  j   } | | d k  j   j	   s t
  | j d d	 d
 j   } | j d  j   } | | d k  j   j	   s t
  d  S(   Ni'  RL   R-   R  R,   R   R   i   R   i   R  g{Gz?i   t   200s(   R	   R0   R   R   Rm   R   RD   R   Rb  t   boolRH   (   R:   R/   t   dfpR`   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_perf_min@  s    "c         C   s  |  j  } | j d d d d  j   } | j   } d d d d d g | d	 <t j | |  | j d d
 d d  j   } | j   } d d d d d g | d	 <t j | |  | j d d d d  j   } | j   } d d d d d g | d	 <t j | |  d  S(   NRC   R   R   i   g        i   i   i   RL   R  R  (   R  RD   R   R5   R   R   (   R:   RS   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ragged_maxP  s    	c         C   s   |  j  } d   } | j d d d d  j | d | } | j   } d | d <t j | |  | j d d	 d d  j | d | } | j   } d | d <t j | |  | j d d
 d d  j | d | } | j   } d | d <t j | |  d  S(   Nc         S   s   d S(   Ni   (    (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW   g  s    RC   R   R   i   R   g      ?RL   R  R  (   R  RD   R   R5   R   R   (   R:   R   RS   R   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_ragged_applyc  s    		'
'
'
c      
   C   s   |  j  d } | j d d  } | j d d  } x` d d d d d	 d
 d d d d g
 D]: } t | |    } t | |    } t j | |  qV W| j d  } | j d  } t j | |  d  S(   Ni   RC   i   R   RX   Re   R   R  Rf   R   R  R  R   R   g      ?(   R  RD   R   R   R   R  (   R:   RS   t   erRI   R   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_allw  s    c         C   su   |  j  d } | j d d  } | j d d  } | j d   d | } | j d   d | } t j | |  d  S(   Ni   RC   i   R   c         S   s   d S(   Ni   (    (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    R   c         S   s   d S(   Ni   (    (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    (   R  RD   R   R   R   (   R:   R   RS   R  RI   R_   R`   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_all_apply  s    c      
      s   t  i t j d  d 6d t j d d d d d } | j d d	  } | j d
 d  } x d d d d d d d d d d g
 D]g   t |      }   f d   } | j | j	 j
  j |  j d d d t  } t j | |  q Wd  S(   Ni2   RL   R-   R  R,   R   t   Hs   09:00s   16:00RC   t   5HRX   Re   R   R  Rf   R   R  R  R   R   c            s1   |  j  d d  }  t |  j d d d      S(   Ns   09:00s   16:00i   R   i   (   t   between_timeR   RD   (   R~   (   R   (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt
   agg_by_day  s    t   leveli    R   (   R	   R0   R8   Rm   R   R  RD   R   R   R-   t   dayR   R  Rp   R   R   (   R:   RS   t   dftRI   R_   R  R`   (    (   R   s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt	   test_all2  s    c         C   s  d d d g d d d g d d d g d d d g d	 d
 d g d	 d d g d	 d d g d d d g d d d g d d d g g
 } t  d | d d d d g  } t j | d  | d <| j d  j d  j d    } | j d  j d d d d j   } t j	 | |  d  S(   Nt   Davids   1/1/2015id   s   1/5/2015i  s	   5/30/2015i2   s	   7/25/2015t   Ryans   1/4/2014s	   1/19/2015s	   3/31/2016t   Joes   7/1/2015s   9/9/2015s
   10/15/2015R   R.   RG   t   datet   amountc         S   s   |  j  d  d j   S(   Nt   180DR  (   RD   RX   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    R  R  (
   R	   Rm   t   to_datetimeR  R   R   RD   RX   R   R   (   R:   R   RS   R`   R_   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_groupby_monotonic  s    (c         C   s  t  j d d d d d d  } t i d g d d g d	 d
 g d d 6t j | | f  d 6t j d  d 6 } | j d  j d d d j j	   } | j
 d  j d  j d    } t j | |  | j d  } | j d  j d d d j j	   } t j | |  d  S(   Nt   starts   2016-01-01 09:30:00R,   i   R   R   i   i   i   i   i   RK   RL   i(   RM   R  R  c         S   s   |  j  d  d j   S(   NR  RM   (   RD   Re   (   R~   (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyRW     s    (   Rm   R   R	   R0   t   concatenateR8   R   RD   RM   Re   R  R   R   R   t   sort_values(   R:   t   datesRS   R_   R`   R  (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_non_monotonic  s    *''c         C   s=  t  j d d d d d } t t j t |   d | } | j d  j   } t t j g d g t |  d	 d | } t	 j
 | |  | j d
 d d	 j   } t	 j
 | |  | j d  j   } t t j d g d g t |  d
 d | } t	 j
 | |  | j d d d	 j   } t	 j
 | |  d  S(   Ns
   2017-01-01R,   i   R   t   1hR-   t   2hg      ?i   i   R   t   3hg      ?i   (   Rm   R   R   R0   R8   Rc  RD   R   R]   R   R   (   R:   R{  t   ssR_   R`   t	   expected2(    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   test_rolling_cov_offset  s    !-0(    R<   R=   RB   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   R  (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyR  e  s<   						,				'	+															
			(]   t   collectionsR    R   R   t	   itertoolsR   Rr   R   t   numpyR0   t   numpy.randomR   RO   t   pandas.compatR   R   t   pandas.errorsR   t   pandas.util._test_decoratorst   utilt   _test_decoratorsR   t   pandasRm   R	   R
   R   R   R   R   R   R   t   pandas.core.baseR   t   pandas.core.sortingR   t   pandas.core.windowt   coreRC   R   t   pandas.util.testingt   testingR   t   pandas.tseries.offsetst   tseriesR  R/   R7   R   t   fixtureRp   R   R   R&   R*   R1  R+   R@   R   R   R   R   R
  R  R  R0  R2  R3  R5  R7  R9  R;  R<  R>  R@  RB  RD  RE  RG  RI  RJ  RM  RN  RO  RP  RR  R  R  R  R  R  R  R  (    (    (    s7   lib/python2.7/site-packages/pandas/tests/test_window.pyt   <module>   s   :	!$ -5iIa   F	4			    }