
p7]c           @   s  d  Z  d d l m Z d d l Z d d l Z d d l m Z m Z m	 Z	 m
 Z
 d d l Z d d l m Z m Z d d l j Z d d l j j Z d d l j j Z d d l m Z m Z d d l m Z d d l m Z m Z m  Z  m! Z! e j" j# Z$ e$ d	 d
 Z% e$ d
 Z& d   Z' d   Z( d   Z) d   Z* d   Z+ e j, j- d    Z. d   Z/ d   Z0 d   Z1 d   Z2 d   Z3 d   Z4 d e5 f d     YZ6 d   Z7 d e5 f d     YZ8 d e5 f d     YZ9 d e5 f d     YZ: d S(    s/   tests for some time series analysis functions

i(   t   zipN(   t   assert_array_almost_equalt   assert_equalt   assert_raisest   assert_array_equal(   t   assert_frame_equalt   assert_series_equal(   t   vect   vech(   t   savedrvs(   t   mlacft   mlccft   mlpacft   mlywarig     @@c          C   st   t  j t d t d t d  }  t t j j   |  d  t  j t d t d t d  }  t t j	 j   |  d  d  S(   Nt   unbiasedt   ffti   i   (
   t   tsat   acft   x100t   FalseR   R
   t   acf100t   ravelt   x1000t   acf1000(   t   acf_x(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_acf   s    c          C   s   t  j t d t d  d t d  }  t t j j   d  d  d  d  |  d  t  j t d t d  d t d  }  t t j	 j   d  d  d  d  |  d  d  S(   Ni   iR   i   ii   (
   R   t   ccfR   R   R   R   t   ccf100R   R   t   ccf1000(   t   ccf_x(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_ccf"   s    $*$c          C   sf   t  j t d d d }  t t j j   |  d  t  j t d d d }  t t j j   |  d  d  S(   Ni   t   methodt   mlei   i   (	   R   t   pacf_ywR   R   R   t   pacf100R   R   t   pacf1000(   t   pacfyw(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_pacf_yw)   s    c          C   sZ   t  j t d  }  t t j j   |  d  t  j t d  }  t t j j   |  d  d  S(   Ni   i   (	   R   t   pacf_olsR   R   R   R"   R   R   R#   (   t   pacfols(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_pacf_ols1   s    c           C   sf   t  t j d t j j t d d d d d  t  t j d t j j t d d d d d  d  S(   Ni   i
   R   R    i    i   i   (	   R   R   t	   arcoef100t   smt
   regressiont   yule_walkerR   t
   arcoef1000R   (    (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_ywcoef9   s    c          C   sG   t  j d d d d d d d d d d d g  }  t j j |  d  d  S(   Ni   ii   i    iii   (   t   npt   arrayR*   R+   R,   (   t   x(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_yule_walker_interC   s    0c         C   s   x} t  d d  D]l } t j t j j | | d d   } t j |  } t j t |  t j	 | t
 |    s t  q Wd  S(   Ni   i
   i   (   t   ranget   toolst   unvechR/   t   randomt   randnt   duplication_matrixt   array_equalR   t   dotR   t   AssertionError(   t   reset_randomstatet   kt   mt   Dk(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_duplication_matrixK   s    'c         C   sr   xk t  d d  D]Z } t j j | |  } t j |  } t j t |  t j | t	 |    s t
  q Wd  S(   Ni   i
   (   R3   R/   R6   R7   R4   t   elimination_matrixR9   R   R:   R   R;   (   R<   R=   R>   t   Lk(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_elimination_matrixR   s    c         C   s^   t  j j d d  } t j d d  } t  j t | j  t  j | t |    sZ t	  d  S(   Ni   i   (
   R/   R6   R7   R4   t   commutation_matrixR9   R   t   TR:   R;   (   R<   R>   t   K(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_commutation_matrixY   s    c          C   sO   t  j d d g d d g g  }  t  j t |   d d d d g  sK t  d  S(   Ni   i   i   i   (   R/   R0   R9   R   R;   (   t   arr(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_vec_   s    c          C   sg   t  j d d d g d d d g d d d	 g g  }  t  j t |   d d d d d d	 g  sc t  d  S(
   Ni   i   i   i   i   i   i   i   i	   (   R/   R0   R9   R   R;   (   RH   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt	   test_veche   s    c       
   C   sS   t  j d d d d d d d d d g	  }  t  j t j |    j   sO t  d  S(	   Ng     @g      Yg      $g      ?g        g      $@g      Y@g     @@(   R/   R0   t   isnanR4   t   _ar_transparamst   anyR;   (   RH   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_ar_transparamsl   s    *t
   TestLagmatc           B   s   e  Z e 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  j j j   } | j d d d d g |  _ t |  j j  } | j d  |  _	 | j d  |  _
 t j j d  t j j d  |  _ g  t |  j j |  j j  D]2 \ } } t t |   d t t |   ^ q } | |  j _ |  j j |  _ d  S(   Nt   yeart   quartert   realgdpt   cpii90  id   s   -Q(   R*   t   datasetst	   macrodatat   load_pandast   datat   macro_dft   listt   columnst   indext   realgdp_loct   cpi_locR/   R6   t   seedR7   t   random_dataR    RP   RQ   t   strt   intRS   t   series(   t   clsRW   t   colst   yrt   quR[   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   setup_classr   s    Qc         C   s   |  j  j } | j t  } t j j | d  d   d f d d d } t j | d d   d  d  f | | d d   d f f  } t j j	 | |  j
 d  } t | |  d  S(   Ni   i   t   trimt   Bothi(   RX   t   valuest   astypet   floatR*   R   t   lagmatR/   t   column_stackt   add_lagR\   R   (   t   selfRW   t   nddataRm   t   resultst   lag_data(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_add_lag_insert   s    +>c         C   s   |  j  j } | j t  } t j j | d  d   d f d d d } t j | d d   d  d   f | f  } t j j	 | |  j
 d d t } t | |  d  S(   Ni   i   Rh   Ri   t   insert(   RX   Rj   Rk   Rl   R*   R   Rm   R/   Rn   Ro   R\   R   R   (   Rp   RW   Rq   Rm   Rr   Rs   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_add_lag_noinsert   s    ++!c         C   s   |  j  j } | j t  } t j j | d  d   d f d d d } t j | d d   d  d   f | f  } t j j	 | |  j
 d d t } t | |  t j j	 | |  j
 d d t } t | |  d  S(   Nii   Rh   Ri   Ru   (   RX   Rj   Rk   Rl   R*   R   Rm   R/   Rn   Ro   R]   R   R   t   True(   Rp   RW   Rq   Rm   Rr   Rs   t	   lag_data2(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_add_lag_noinsert_atend   s    ++!!c         C   s   |  j  j } | j t  } t j j | d  d   d f d d d } t j | d d   d  d  f | | d d   d f f  } t j j	 | d d  } t
 | |  d  S(   Ni   i   Rh   Ri   i(   RX   Rj   Rk   Rl   R*   R   Rm   R/   Rn   Ro   R   (   Rp   RW   Rq   Rm   Rr   Rs   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_add_lag_ndarray   s    +>c         C   s   |  j  j } | j t  } t j j | d  d   d f d d d } t j | d d   d  d   f | f  } t j j	 | d d d t
 } t | |  d  S(   Ni   i   Rh   Ri   Ru   (   RX   Rj   Rk   Rl   R*   R   Rm   R/   Rn   Ro   R   R   (   Rp   RW   Rq   Rm   Rr   Rs   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_add_lag_noinsert_ndarray   s    ++c         C   s   |  j  j } | j t  } t j j | d  d   d f d d d } t j | d d   d  d   f | f  } t j j	 | d d d t
 } t | |  t j j	 | d d d t } t | |  d  S(   Nii   Rh   Ri   Ru   (   RX   Rj   Rk   Rl   R*   R   Rm   R/   Rn   Ro   R   R   Rw   (   Rp   RW   Rq   Rm   Rr   Rs   Rx   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt"   test_add_lag_noinsertatend_ndarray   s    ++c   	      C   s   |  j  } | j d } t j j | d d d d d \ } } t j | d d f  } x. t d  D]  } | | | | |  | f <qc W| d  d   d  d  f } | d  d   d d   f } t | |  t | |  d  S(	   Ni    i   Rh   t   nonet   originalt   sepi   i   (	   R_   t   shapeR*   R   Rm   R/   t   zerosR3   R   (	   Rp   RW   t   nRm   t   leadst   expectedt   it   expected_leadst   expected_lags(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_sep_return   s    	'c         C   s   |  j  } t j j | d d d } t j | d | f  } t j j | d d d t } t | |  | d  d   d  f } t j j | d d d } t j | d | f  } t j j | d d d t } t | |  d  S(   Ni   Rh   Ri   t   lagsRu   (
   R_   R*   R   Rm   R/   Rn   Ro   Rw   R   t   None(   Rp   RW   Rm   Rr   Rs   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_add_lag1d   s    	c         C   s   |  j  } t j j | d d d } t j j | d d d t d t } t | |  t j j | d d d t d t } t | |  d  S(   Ni   Rh   Ri   R   t   dropRu   (   R_   R*   R   Rm   Ro   Rw   R   R   (   Rp   RW   Rm   Rs   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_add_lag1d_drop   s    	$$c         C   s
  t  j d d d t f g } |  j } | | d <t j j | d d d d d } t j j | d d	 d d
 t } t	 | | j
 t d f   t j j | d d	 d d
 t } t	 | | j
 t d f   t j j | d	 d d
 t } t	 | | j
 t d f   d  S(   Nid   t   dtypet   variablei   Rh   Ri   R~   t   inR   Ru   i   (   R/   R   Rl   R_   R*   R   Rm   Ro   Rw   R   t   viewR   (   Rp   RW   Rq   Rm   Rs   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_add_lag1d_struct   s    	
!!!c         C   s   t  j d d d t f g } |  j } | | d <t j j | d d d } t j j | d d d t } t	 | | j
 t d f   d  S(	   Nid   R   R   i   Rh   Ri   R   R   (   R/   R   Rl   R_   R*   R   Rm   Ro   Rw   R   R   (   Rp   RW   Rq   Rm   Rs   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_add_lag_1d_drop_struct   s    	
c         C   s   |  j  j } | j t  } t j j | d  d   d f d d d } t j | d d   d  d  f | | d d   d f f  } t j j	 | |  j
 d d t } t | |  d  S(   Ni   i   Rh   Ri   iR   (   RX   Rj   Rk   Rl   R*   R   Rm   R/   Rn   Ro   R\   Rw   R   (   Rp   RW   Rq   Rm   Rr   Rs   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_add_lag_drop_insert   s    +>!c         C   s   |  j  j } | j t  } t j j | d  d   d f d d d } t j | d d   t j	 d d d g  f | f  } t j j
 | |  j d d t d t } t | |  d  S(	   Ni   i   Rh   Ri   i    i   Ru   R   (   RX   Rj   Rk   Rl   R*   R   Rm   R/   Rn   R0   Ro   R\   R   Rw   R   (   Rp   RW   Rq   Rm   Rr   Rs   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_add_lag_drop_noinsert   s    +7'c         C   s  |  j  } t j j | d d d d d } t j j | j d d d d d } t | |  t j j | d d d d d } t j j | j d d d d d } t | |  t j j | d d d d d	 \ } } t j j | j d d d d d	 \ } } t | |  t | |  d  S(
   Ni   Rh   t   bothR~   R   R}   t   ext   forwardR   (   RX   R*   R   Rm   Rj   R   (   Rp   RW   R   t   both_npR   t   lags_npt   leadt   lead_np(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_dataframe_without_pandas  s    	!$!$'*c      	   C   s  |  j  } t | j  } | j d } t j | d d f  } | j | d  |  d  d  f <xz t d d  D]i } g  | D] } | d t |  ^ qz } | j	 |  | j | | | |  d | d | d  f <qm W| j
 } | |  } t j | d | d | }	 |	 j d }	 t j j |  j  d d	 d
 d d d t }
 t |
 |	  t j j |  j  d d	 d
 d d d t } t | |	 j d  d   d d   f  t j j |  j  d d	 d
 d d d t \ } } t | |	 j d  d   d d   f  t | |	 j d  d   d  d  f  d  S(   Ni    i   i   i   i   s   .L.RZ   R[   Rh   R   R~   R   t
   use_pandasR   R   (   RX   RY   RZ   R   R/   R   Rj   R3   R`   t   extendR[   t   pdt	   DataFramet   ilocR*   R   Rm   Rw   R   (   Rp   RW   RZ   R   Rj   t   lagt   colt   new_colsR[   R   R   R   R   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_dataframe_both  s*    	'3	
**&&c         C   sE   t  t t j j |  j d d t t  t t j j |  j j d  d  S(   Ni,  R   (   R   t
   ValueErrorR*   R   Rm   RX   Rw   Rj   (   Rp   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_too_few_observations*  s    "c      	   C   sQ   t  t t j j |  j d d d d t t  t t j j |  j j d d d d  S(   Ni   Rh   t   unknownR   (   R   R   R*   R   Rm   RX   Rw   Rj   (   Rp   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_unknown_trim.  s    c      	   C   s  |  j  } t | j  } | j d } t j | d d f  } | j | d  |  d  d  f <xz t d d  D]i } g  | D] } | d t |  ^ qz } | j	 |  | j | | | |  d | d | d  f <qm W| j
 } | |  } t j | d | d | }	 t j j |  j  d d	 d
 d d d t }
 t |
 |	  t j j |  j  d d	 d
 d d d t } t | |	 j d  d   d d   f  t j j |  j  d d	 d
 d d d t \ } } t | |	 j d  d   d d   f  t | |	 j d  d   d  d  f  d  S(   Ni    i   i   i   i   s   .L.RZ   R[   Rh   R   R~   R   R   R   R   (   RX   RY   RZ   R   R/   R   Rj   R3   R`   R   R[   R   R   R*   R   Rm   Rw   R   R   (   Rp   RW   RZ   R   Rj   R   R   R   R[   R   R   R   R   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_dataframe_forward4  s,    	'3	
!	!	&&c      	   C   s   t  t t j j |  j d d d d t t  t t j j |  j d d d d t t  t t j j |  j d d d d t t  t t j j |  j d d d d t d  S(   Ni   Rh   R}   R   t   backward(   R   R   R*   R   Rm   RX   Rw   Rb   (   Rp   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_pandas_errorsL  s    ((c      	   C   s  t  j d |  j j d d d d d g  } |  j | d <x= t d d  D], } |  j j |  | d	 t t |   <qG W| j d
  } t	 j
 j |  j d d d d d d t } t | |  t	 j
 j |  j d d d d d d t } t | | j d  d   d d   f  t	 j
 j |  j d d d d d d t \ } } t | | j d  d   d  d  f  t | | j d  d   d d   f  d  S(   NR[   RZ   RS   s   cpi.L.1s   cpi.L.2s   cpi.L.3i   i   s   cpi.L.g        i   Rh   R   R~   R   R   R   R   (   R   R   Rb   R[   R3   t   shiftR`   Ra   t   fillnaR*   R   Rm   Rw   R   R   (   Rp   R   R   R   R   R   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_series_forwardT  s    	***&&c      	   C   s  t  j d |  j j d d d d d g  } |  j | d <x= t d d  D], } |  j j |  | d	 t t |   <qG W| j d
 } t	 j
 j |  j d
 d d d d d t } t | |  t	 j
 j |  j d
 d d d d d t } t | | j d  d   d d   f  t	 j
 j |  j d
 d d d d d t \ } } t | | j d  d   d  d  f  t | | j d  d   d d   f  d  S(   NR[   RZ   RS   s   cpi.L.1s   cpi.L.2s   cpi.L.3i   i   s   cpi.L.i   Rh   R   R~   R   R   R   R   (   R   R   Rb   R[   R3   R   R`   Ra   R   R*   R   Rm   Rw   R   (   Rp   R   R   R   R   R   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_series_bothf  s    	***&0&(   t   __name__t
   __module__t   classmethodRg   Rt   Rv   Ry   Rz   R{   R|   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   (    (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyRO   q   s,   									
												c       
   C   s   d d l  m }  d d d d d d d	 d
 d d g
 } d d d d d d d d d d g
 } xO t | |  D]> \ } } t t j |  |  t t j |  |   |  qh Wd  S(   Ni(   t	   to_offsett   As   AS-MARt   Qt   QSs   QS-APRt   Ws   W-MONt   Bt   Dt   Hi   i   i4   i   i   i   (   t   pandas.tseries.frequenciesR   R    R   R4   t   freq_to_period(   R   t   freqsR   R   t   j(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_freq_to_periodx  s    $$t   TestDetrendc           B   sD   e  Z e d     Z d   Z d   Z d   Z d   Z d   Z RS(   c         C   s4   t  j d  |  _ t  j d  j d d  |  _ d  S(   Ng      @g      $@i   i   (   R/   t   aranget   data_1dt   reshapet   data_2d(   Rc   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyRg     s    c         C   sc   |  j  } t t j j | d d t j |   t t j j | d d d d d d d g  d  S(   Nt   orderi   i    iii   (   R   R   R*   R   t   detrendR/   t
   zeros_like(   Rp   RW   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_detrend_1d  s    	(c         C   s   |  j  } t t j j | d d d d t j |   t t j j | d d d d d d g d d g d d g d d g d d g g  t t j j | d d d d d	 d
 g d	 d
 g d	 d
 g d	 d
 g d	 d
 g g  d  S(   NR   i   t   axisi    iii   i   g      g      ?(   R   R   R*   R   R   R/   R   (   Rp   RW   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_detrend_2d  s
    	.Rc         C   s   t  j |  j d d } t j j | d d } t | j t j	 |   t
 | t  j | j d d  t j j | d d } t | j t  j d d d d d g   t
 | t  j | j d d  d  S(	   Nt   namet   oneR   i   i    iii   (   R   t   SeriesR   R*   R   R   R   Rj   R/   R   R   (   Rp   RW   t	   detrended(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_detrend_series  s    (c         C   s  d d g } g  d D] } | ^ q } t  j |  j d | d | } t j j | d d d d	 } t | j t j	 |   t
 | t  j | j d | d |  t j j | d d	 d d	 } t | j d
 d
 g d d g d	 d	 g d d g d d g g  t
 | t  j | j d | d |  t j j | d d	 d d } t | j d d g d d g d d g d d g d d g g  t
 | t  j | j d | d |  d  S(   NR   t   twot   abcdeRZ   R[   R   i   R   i    iii   i   g      g      ?(   R   R   R   R*   R   R   R   Rj   R/   R   R   (   Rp   RZ   t   cR[   RW   R   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_detrend_dataframe  s    %=%=c         C   s#   t  t t j j t j d   d  S(   Ni   (   i   i   i   (   R   t   NotImplementedErrorR*   R   R   R/   t   ones(   Rp   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_detrend_dim_too_large  s    (	   R   R   R   Rg   R   R   R   R   R   (    (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyR     s   					t   TestAddTrendc           B   s_   e  Z e d     Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d   Z RS(	   c         C   s   d |  _  t j t |  j    |  _ t j t j t |  j    d  d   d  f d  |  _ t j |  j   |  _	 t j d |  j  d  |  _
 d  S(   Ni   i   g      ?i   (   R   R/   R   Rl   t   arr_1dt   tileR   t   arr_2dR   R   t   t(   Rc   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyRg     s
    	7c         C   s   t  j |  j  } t j |  } t  j |  } |  j | d <t | |  t j | d t } t  j |  } | j	 d d |  j  t | |  t  j |  j  } t j | d d } t  j |  } |  j | d <|  j
 | d <t | |  d  S(   Nt   constt   prependi    t   trendt   ct(   R   R   R   R4   t	   add_trendR   R   R   Rw   Ru   R   (   Rp   t   st   appendedR   t	   prepended(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_series  s    c         C   sG  t  j |  j  } t j |  } | j   } |  j | d <t | |  t j | d t } | j   } | j	 d d |  j  t | |  t  j |  j  } t j | d d } | j   } |  j
 | d <t | |  t  j |  j  } t j | d d } | j   } |  j | d <|  j
 | d <|  j
 d | d <t | |  d  S(	   NR   R   i    R   R   t   ctti   t   trend_squared(   R   R   R   R4   R   t   copyR   R   Rw   Ru   R   (   Rp   t   dfR   R   R   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_dataframe  s*    c         C   s<  t  j |  j  j d t  } t j |  } t  j |  j  } |  j | d <| j d t  } t | |  t j | d t	 } t  j |  j  } | j
 d d |  j  | j d t  } t | |  t j | d d } t  j |  j  } |  j | d <|  j | d <|  j d | d <| j d t  } t | |  d  S(	   NR[   R   R   i    R   R   i   R   (   R   R   R   t
   to_recordsR   R4   R   R   R   Rw   Ru   R   (   Rp   t   recarrayR   R   R   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_recarray  s$    c      	   C   s  t  t t j d |  j d d d d t  t t j d |  j d d d d t j |  j  } t  t t j d | d d d d t  t t j d | d d d d t j |  j d d } t | |  j d  d   d  f  t j |  j d d d d } t	 j
 |  j |  j f  j } t | |  t j |  j d d d d } t	 j
 |  j |  j f  j } t | |  t j |  j d d d d } t	 j
 |  j |  j |  j f  j } t | |  d  S(	   NR1   R   R   t   has_constantt   raiseR   t   skipt   add(   R   R   R4   R   R   R   R   R   R   R/   t   vstackR   RE   (   Rp   R   t   skippedt   skipped_constR   t   added(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_duplicate_const  s     %%"" $c         C   s   t  j d t  j f d t  j f d g  } t  j d d g d | j t  j  } t j | d d } t  j d t  j f d t  j f d d t  j f d t  j f g  } t  j d d g d | j t  j  } t	 | |  d  S(   Nt   c0t   c1t   c2t   S4g      ?i   t   aaaag?i   t   bbbbR   R   R   R   g       @(   R   R   (   g      ?i   R   (   g?i   R   (   R   R   (   g      ?i   R   g      ?g      ?(   g?i   R   g      ?g       @(
   R/   R   t   float64t   int8R0   R   R   R4   R   R   (   Rp   t   dtt   raR   R   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_mixed_recarray  s    *'B'c         C   sN   t  j |  j d d d g } t j | d d t j | d d d t d  S(   NRZ   R   R   R   R   (   R   R   R   R4   R   Rw   (   Rp   R   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_dataframe_duplicate  s    c         C   s!  t  j |  j |  j |  j |  j d f  j } t t j |  j  | d  d   d  d  f  t t j |  j d d | d  d   d d g f  t t j |  j d d | d  d   d  d  f  t t j |  j d d |  t  j	 |  j d  d   d  f |  j d  d   d  f |  j d  d   d  f d |  j f  } t t j |  j d t | d  d   d d d	 g f  t t j |  j d d d t | d  d   d
 d d	 g f  t t j |  j d d d t | d  d   d d
 d d	 g f  t t j |  j d d d t |  d  S(   Ni   R   R   i    R   i   R   R   i   i   (   R/   R   R   R   R   RE   R   R4   R   t   hstackR   R   Rw   (   Rp   t   base(    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt
   test_array   s    ./55[8>Ac         C   s#   t  t t j d |  j d d d  S(   NR1   R   R   (   R   R   R4   R   R   (   Rp   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_unknown_trend-  s    (   R   R   R   Rg   R   R   R   R   R  R  R  R  (    (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyR     s   							t   TestLagmat2DSc           B   sM   e  Z e d     Z e d d   Z d   Z d   Z d   Z d   Z	 RS(   c         C   s   t  j j j   } | j d d d d g |  _ t j j d  t j j	 d  |  _
 g  t |  j j |  j j  D]2 \ } } t t |   d t t |   ^ qo } | |  j _ |  j j |  _ d  S(   NRP   RQ   RR   RS   i90  id   s   -Q(   R*   RT   RU   RV   RW   RX   R/   R6   R^   R7   R_   R    RP   RQ   R`   Ra   R[   RS   Rb   (   Rc   RW   Re   Rf   R[   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyRg   2  s    Qt   frontc         C   s   |  j  \ } } t j | | | d | f  } x t |  D] } x t | d  D]~ } | | k  r |  d  d   | f | | | |  | d | | f <qT |  d  d   | f | | d   | d | | f <qT Wq= W| d k r | |  } n  | S(   Ni   R	  (   R   R/   R   R3   (   RW   R   Rh   R   R=   R   R   R   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   _prepare_expected=  s    !::c         C   s   |  j  } | j } t j j | d  } |  j | d  } t | |  t j j | d  d   d  d  f d  } |  j | d  d   d  d  f d  } t | |  |  j j } t j j | d  } |  j | d  d   d  f d  } t | |  d  S(   Ni   i   i   (	   RX   Rj   R*   R   t	   lagmat2dsR
  R   Rb   R   (   Rp   RW   t   npdataRm   R   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_lagmat2ds_numpyK  s    		+("c         C   s
  |  j  } t j j | d  } |  j | j d  } t | |  t j j | j d  d   d  d  f d d d } |  j | j d  d   d  d  f d  } | d } t | |  |  j } t j j | d  } |  j | j d  d   d  f d  } t | |  d  S(   Ni   i   Rh   R   i   (
   RX   R*   R   R  R
  Rj   R   R   Rb   R   (   Rp   RW   Rm   R   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_lagmat2ds_pandas[  s    	4+
	%c         C   s  |  j  } t j j | d d t } |  j | j d  } g  } x\ | D]T } xK t d  D]= } | d k r{ | j |  qY | j | d t	 |   qY WqF Wt
 j | d | j d | } t | |  t j j | j d  d   d  d  f d d t d d	 } |  j | j d  d   d  d  f d  } g  } xu | j d  d   d  d  f D]T } xK t d
  D]= } | d k r| j |  qg| j | d t	 |   qgWqTWt
 j | d | j d | } | j d } t | |  |  j } t j j | d d t } |  j | j d  d   d  f d  } g  } | j } xK t d  D]= } | d k rk| j |  qI| j | d t	 |   qIWt
 j | d | j d | } t | |  d  S(   Ni   R   i   i    s   .L.R[   RZ   Rh   R   i   i   i   (   RX   R*   R   R  Rw   R
  Rj   R3   t   appendR`   R   R   R[   R   R   Rb   R   R   (   Rp   RW   Rm   R   Rd   R   R   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_lagmat2ds_use_pandask  sB    	#:+&#	%	c         C   st   t  j d  } t j t   t j j | d  Wd  QXt  j d  } t j t   t j j | d  Wd  QXd  S(   Ni   i   id   (   id   i   i   (	   R/   R0   t   pytestt   raisesR   R*   R   R  R   (   Rp   RW   (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   test_3d_error  s    (
   R   R   R   Rg   t   staticmethodR
  R  R  R  R  (    (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyR  1  s   			*(;   t   __doc__t   statsmodels.compat.pythonR    R  t   numpyR/   t   numpy.testingR   R   R   R   t   pandasR   t   pandas.util.testingR   R   t   statsmodels.apit   apiR*   t   statsmodels.tsa.stattoolsR   t	   stattoolst   statsmodels.tsa.tsatoolst   tsatoolsR4   R   R   t   statsmodels.tsa.tests.resultsR	   t)   statsmodels.tsa.tests.results.datamlw_tlsR
   R   R   R   t   rvsdatat   xar2t   xoR   R   R   R   R%   R(   R.   t   markt   smokeR2   R@   RC   RG   RI   RJ   RN   t   objectRO   R   R   R   R  (    (    (    sC   lib/python2.7/site-packages/statsmodels/tsa/tests/test_tsa_tools.pyt   <module>   sB   ""
					
						 		0