ó
áp7]c           @` sƒ  d  Z  d d l m Z m Z m Z d d l Z d d l Z d d l m	 Z	 m
 Z
 d d l Z d d l Z d d l m Z d d l m Z d d l m Z d d l m Z e j j e j j e ƒ ƒ Z d	 e f d
 „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ  d e f d „  ƒ  YZ! d e f d „  ƒ  YZ" d e f d „  ƒ  YZ# d „  Z$ d S(   si  
Tests for univariate treatment of multivariate models

TODO skips the tests for measurement disturbance and measurement disturbance
covariance, which do not pass. The univariate smoother *appears* to be
correctly implemented against Durbin and Koopman (2012) chapter 6, yet still
gives a different answer from the conventional smoother. It's not clear if
this is intended (i.e. it has to be at least slightly different, since the
conventional smoother can return a non-diagonal covariance matrix whereas the
univariate smoother must return a diagonal covariance matrix).

Author: Chad Fulton
License: Simplified-BSD
i    (   t   divisiont   absolute_importt   print_functionN(   t   assert_almost_equalt   assert_allclose(   t   datasets(   t   MLEModel(   t   results_kalman_filter(   t   SARIMAXt   TestClark1989c           B` sÅ   e  Z d  Z e e 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 RS(   sj  
    Clark's (1989) bivariate unobserved components model of real GDP (as
    presented in Kim and Nelson, 1999)

    Tests two-dimensional observation data.

    Test data produced using GAUSS code described in Kim and Nelson (1999) and
    found at http://econ.korea.ac.kr/~cjkim/SSMARKOV.htm

    See `results.results_kalman_filter` for more information.
    c         K` s  t  j |  _ t j |  j d ƒ |  _ t j |  j d d t j d d d d ƒd d	 d
 g ƒd } t j | d	 ƒ | d	 <| d
 d | d
 <d } t	 | d | | |  _
 |  j
 j |  _ d d d d d d g d d d d d d g g |  j j d  d  … d  d  … d f <d d d d d d d d g |  j j d d d d d d d d g d d d d d d d d g d d d d d d d d g f <t j |  j j ƒ |  j _ t j |  j d ƒ \
 } } } }	 }
 } } } } } | | | g |  j j d d d g d d d g d d d g f <| | g |  j j d d g d d g d d g f <|
 d |  j j d <| d | d d d | d |	 d g |  j j t j | ƒ t j | d t ƒf <t j | f ƒ } t j | ƒ d } | s0t j t j |  j j d  d  … d  d  … d f | ƒ |  j j d  d  … d  d  … d f j ƒ } n t |  j _ |  j j | | ƒ t |  j _ |  j j ƒ  |  _ |  j j  |  j j! |  j j" } |  j j# d t j | ƒ d t j |  j j ƒ ƒ |  _$ t |  j _% |  j j ƒ  |  _& |  j j# d t j | ƒ d t j |  j j ƒ ƒ |  _' d  S(   Nt   statest   datat   indexs
   1947-01-01s
   1995-07-01t   freqt   QSt   columnst   GDPt   UNEMPi   id   i   t   k_statesi   i    i   i   i   t
   parameterst   dtypet   disturbance_variatest   initial_state_variates(   i   i   i    ((   R   t   uc_bit   truet   pdt	   DataFramet   true_statest
   date_ranget   npt   logR   t   mlemodelt   ssmt   modelt   designt
   transitiont   eyeR   t	   selectiont   arrayt   obs_covt	   state_covt   diag_indicest   zerost   intt   dott   Tt   Truet   timing_init_filteredt   initialize_knownt   filter_conventionalt   smootht   conventional_resultst   k_endogt   k_posdeft   nobst   simulation_smoothert   conventional_simt   filter_univariatet   univariate_resultst   univariate_sim(   t   clsR   t   alternate_timingt   kwargsR   R   t   sigma_vt   sigma_et   sigma_wt   sigma_vlt   sigma_ect   phi_1t   phi_2t   alpha_1t   alpha_2t   alpha_3t   initial_statet   initial_state_covt   n_disturbance_variates(    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt   setup_class+   sP    Oy.=1Q.. c         C` sW   |  j  j s t ‚ |  j j s% t ‚ t |  j  j d d ƒ t |  j j d d ƒ d  S(   Ni   i    gÛ+÷1áa@gEKÐš_*^@(   i   i   i    (   i   i   i    (   R3   R9   t   AssertionErrorR:   R   t   forecasts_error_cov(   t   self(    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt   test_using_univariatew   s    c         C` s@   t  |  j j d d  d  … f |  j j d d  d  … f d ƒ d  S(   Ni    i	   (   R   R3   t	   forecastsR:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt   test_forecastsˆ   s    c         C` s@   t  |  j j d d  d  … f |  j j d d  d  … f d ƒ d  S(   Ni    i	   (   R   R3   t   forecasts_errorR:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt   test_forecasts_errorŽ   s    c         C` sF   t  |  j j d d d  d  … f |  j j d d d  d  … f d ƒ d  S(   Ni    i	   (   R   R3   RN   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt   test_forecasts_error_cov”   s    c         C` s    t  |  j j |  j j d ƒ d  S(   Ni   (   R   R3   t   filtered_stateR:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt   test_filtered_stateš   s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R3   t   filtered_state_covR:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt   test_filtered_state_cov    s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni   (   R   R3   t   predicted_stateR:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt   test_predicted_state¦   s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R3   t   predicted_state_covR:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt   test_predicted_state_cov¬   s    	c         C` s   t  |  j j |  j j ƒ d  S(   N(   R   R3   t   llf_obsR:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt   test_loglike²   s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni   (   R   R3   t   smoothed_stateR:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt   test_smoothed_states¸   s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni   (   R   R3   t   smoothed_state_covR:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt   test_smoothed_states_cov¾   s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R3   t    smoothed_measurement_disturbanceR:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt%   test_smoothed_measurement_disturbanceÄ   s    	c         C` s8   |  j  } |  j } t | j j ƒ  | j j ƒ  d ƒ d  S(   Ni	   (   R3   R:   R   t$   smoothed_measurement_disturbance_covt   diagonal(   RO   t   convt   univ(    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt)   test_smoothed_measurement_disturbance_covÊ   s
    		c         C` s#   t  |  j j |  j j d d ƒd  S(   Nt   atolgH¯¼šò×z>(   R   R3   t   smoothed_state_disturbanceR:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt   test_smoothed_state_disturbanceÒ   s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R3   t   smoothed_state_disturbance_covR:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt#   test_smoothed_state_disturbance_covÙ   s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R8   t   simulated_stateR;   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt   test_simulation_smoothed_stateß   s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R8   t!   simulated_measurement_disturbanceR;   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt0   test_simulation_smoothed_measurement_disturbanceå   s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R8   t   simulated_state_disturbanceR;   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt*   test_simulation_smoothed_state_disturbanceë   s    	(   t   __name__t
   __module__t   __doc__t   classmethodt   floatt   FalseRL   RP   RR   RT   RU   RW   RY   R[   R]   R_   Ra   Rc   Re   Rj   Rm   Ro   Rq   Rs   Ru   (    (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyR	      s*   K																	t   TestClark1989Alternatec           B` s    e  Z e d  „  ƒ Z d „  Z RS(   c         O` s#   t  t |  ƒ j d t | | Ž d  S(   NR=   (   t   superR|   RL   R.   (   R<   t   argsR>   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRL   ó   s    c         C` s   |  j  j j d k s t ‚ d  S(   Ni   (   R!   t   _kalman_filtert   filter_timingRM   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt   test_using_alterateø   s    (   Rv   Rw   Ry   RL   R   (    (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyR|   ò   s   t    MultivariateMissingGeneralObsCovc           B` sã   e  Z e e 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 e j j d „  ƒ Z e j j d „  ƒ Z d „  Z d „  Z d „  Z e j j d „  ƒ Z d „  Z RS(   c         K` s7  t  j j t d d ƒ } t j | ƒ |  _ t j j	 ƒ  j
 } t j d d d d d d ƒ | _ | d	 d
 d g j ƒ  j d } | d k rÐ t j | j d  d … d  d  … f <t j | j d d … d  d  … f <nâ | d k rt j | j d d … d f <t j | j d d … d f <n› | d k r²t j | j d d … d f <t j | j d d … d f <t j | j d d … d f <t j | j d d … d f <t j | j d d … d f <n  t | d d d d | } t j d ƒ | d <t j d ƒ d j d& ƒ d }	 t j |	 |	 j ƒ | d <t j d ƒ | d  <t j d ƒ | d! <t j d ƒ | d" <| j d# ƒ | j |  _ t |  j _ |  j j ƒ  |  _ |  j j |  j j |  j j  }
 |  j j! d$ t j" |
 ƒ d% t j" |  j j# ƒ ƒ |  _$ t |  j _% |  j j ƒ  |  _& |  j j! d$ t j" |
 ƒ d% t j" |  j j# ƒ ƒ |  _' d  S('   Nt   resultss%   results_smoothing_generalobscov_R.csvt   starts
   1959-01-01t   ends	   2009-7-01R   R   t   realgdpt   realconst   realinvi   t   alli2   iw   i‚   t   partiali    t   mixedi   iF   i'   iZ   i   R   i   R5   R"   i	   g      $@R'   R#   R%   R(   g    €„.AR   R   (   i   i   ((   t   ost   patht   joint   current_pathR   t   read_csvt   desiredR   t	   macrodatat   load_pandasR   R   R   t   difft   ilocR   t   nanR   R$   t   aranget   reshapeR,   R-   t   initialize_approximate_diffuseR    R!   R.   R1   R2   R3   R4   R5   R6   R7   R*   R   R8   R9   R:   R;   (   R<   t   whichR   R=   R>   R   t   dtat   obst   modt   XRK   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRL   ý   sN    	 "%  c         C` sW   |  j  j s t ‚ |  j j s% t ‚ t |  j  j d d ƒ t |  j j d d ƒ d  S(   Ni   i    g¤p=Š„.A(   i   i   i    (   i   i   i    (   R3   R9   RM   R:   R   RN   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRP   5  s    c         C` s@   t  |  j j d d  d  … f |  j j d d  d  … f d ƒ d  S(   Ni    i	   (   R   R3   RQ   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRR   F  s    c         C` s@   t  |  j j d d  d  … f |  j j d d  d  … f d ƒ d  S(   Ni    i	   (   R   R3   RS   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRT   L  s    c         C` sF   t  |  j j d d d  d  … f |  j j d d d  d  … f d ƒ d  S(   Ni    i	   (   R   R3   RN   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRU   R  s    c         C` s    t  |  j j |  j j d ƒ d  S(   Ni   (   R   R3   RV   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRW   X  s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R3   RX   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRY   ^  s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni   (   R   R3   RZ   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyR[   d  s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R3   R\   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyR]   j  s    	c         C` s   t  |  j j |  j j ƒ d  S(   N(   R   R3   R^   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyR_   p  s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni   (   R   R3   R`   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRa   v  s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni   (   R   R3   Rb   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRc   |  s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R3   Rd   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRe   ‚  s    	c         C` s8   |  j  } |  j } t | j j ƒ  | j j ƒ  d ƒ d  S(   Ni	   (   R3   R:   R   Rf   Rg   (   RO   Rh   Ri   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRj   ‰  s
    		c         C` s#   t  |  j j |  j j d d ƒd  S(   NRk   gH¯¼šò×z>(   R   R3   Rl   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRm   ’  s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R3   Rn   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRo   ™  s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R8   Rp   R;   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRq   Ÿ  s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R8   Rr   R;   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRs   ¥  s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R8   Rt   R;   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRu   ¬  s    	(   Rv   Rw   Ry   Rz   R{   RL   RP   RR   RT   RU   RW   RY   R[   R]   R_   Ra   Rc   t   pytestt   markt   skipRe   Rj   Rm   Ro   Rq   Rs   Ru   (    (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyR‚   ü   s(   7															t   TestMultivariateGeneralObsCovc           B` s   e  Z d  Z e d „  ƒ Z RS(   s¸   
    This class tests the univariate method when the observation covariance
    matrix is not diagonal and all data is available.

    Tests are against the conventional smoother.
    c         O` s   t  t |  ƒ j d ƒ d  S(   Nt   none(   R}   R¢   RL   (   R<   R~   R>   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRL   º  s    (   Rv   Rw   Rx   Ry   RL   (    (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyR¢   ³  s   t'   TestMultivariateAllMissingGeneralObsCovc           B` s   e  Z d  Z e d „  ƒ Z RS(   sÍ   
    This class tests the univariate method when the observation covariance
    matrix is not diagonal and there are cases of fully missing data only.

    Tests are against the conventional smoother.
    c         O` s   t  t |  ƒ j d ƒ d  S(   NR‰   (   R}   R¤   RL   (   R<   R~   R>   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRL   Ç  s    (   Rv   Rw   Rx   Ry   RL   (    (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyR¤   ¿  s   t+   TestMultivariatePartialMissingGeneralObsCovc           B` s/   e  Z d  Z e d „  ƒ Z d „  Z d „  Z RS(   sÑ   
    This class tests the univariate method when the observation covariance
    matrix is not diagonal and there are cases of partially missing data only.

    Tests are against the conventional smoother.
    c         O` s   t  t |  ƒ j d ƒ d  S(   NRŠ   (   R}   R¥   RL   (   R<   R~   R>   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRL   Ô  s    c         C` s@   t  |  j j d d  d  … f |  j j d d  d  … f d ƒ d  S(   Ni    i   (   R   R3   RQ   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRR   Ù  s    c         C` s@   t  |  j j d d  d  … f |  j j d d  d  … f d ƒ d  S(   Ni    i   (   R   R3   RS   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRT   ß  s    (   Rv   Rw   Rx   Ry   RL   RR   RT   (    (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyR¥   Ì  s   	t)   TestMultivariateMixedMissingGeneralObsCovc           B` s/   e  Z d  Z e d „  ƒ Z d „  Z d „  Z RS(   sç   
    This class tests the univariate method when the observation covariance
    matrix is not diagonal and there are cases of both partially missing and
    fully missing data.

    Tests are against the conventional smoother.
    c         O` s   t  t |  ƒ j d ƒ d  S(   NR‹   (   R}   R¦   RL   (   R<   R~   R>   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRL   ï  s    c         C` s@   t  |  j j d d  d  … f |  j j d d  d  … f d ƒ d  S(   Ni    i   (   R   R3   RQ   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRR   ô  s    c         C` s@   t  |  j j d d  d  … f |  j j d d  d  … f d ƒ d  S(   Ni    i   (   R   R3   RS   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRT   ú  s    (   Rv   Rw   Rx   Ry   RL   RR   RT   (    (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyR¦   æ  s   	t   TestMultivariateVARc           B` s×   e  Z e d  d „ ƒ Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z d
 „  Z d „  Z e j j d „  ƒ Z e j j d „  ƒ Z d „  Z d „  Z d „  Z e j j d „  ƒ Z d „  Z RS(   R£   c         K` s}  t  j j t d d ƒ } t j | ƒ |  _ t j j	 ƒ  j
 } t j d d d d d d ƒ | _ | d	 d
 d g j ƒ  j d } | d k rÐ t j | j d  d … d  d  … f <t j | j d d … d  d  … f <nâ | d k rt j | j d d … d f <t j | j d d … d f <n› | d k r²t j | j d d … d f <t j | j d d … d f <t j | j d d … d f <t j | j d d … d f <t j | j d d … d f <n  t | d d d d | } t j d ƒ | d <t j d d d g d d d g d d d  g g ƒ | d! <t j d" d# d$ g d% d& d' g d( d) d* g g ƒ | d+ <t j d ƒ | d, <t j d- d. d/ g d. d0 d1 g d/ d1 d2 g g ƒ | d3 <| j d4 ƒ | j |  _ t |  j _ |  j j ƒ  |  _ |  j j |  j j |  j j } |  j j d5 t j | ƒ d6 t j |  j j  ƒ ƒ |  _! t |  j _" |  j j ƒ  |  _# |  j j d5 t j | ƒ d6 t j |  j j  ƒ ƒ |  _$ d  S(7   NRƒ   s%   results_smoothing_generalobscov_R.csvR„   s
   1959-01-01R…   s	   2009-7-01R   R   R†   R‡   Rˆ   i   R‰   i2   iw   i‚   RŠ   i    R‹   i   iF   i'   iZ   i   R   i   R5   R"   gßÙé˜ƒ@g        g=–z²4
þ?g%'Q+_@R'   g ‘^ôé¿g
GéùÎü?g
ó{³vXð?gÎ¯ÜE.Áÿ¿gXOÂæE@gœÆ¹÷·Òþ?gí™jaí?g„û®4CÏ¿g¹£8†uä¿R#   R%   g1=NçC˜@gÌ¿Qƒ¿%ƒ@gT|Þþìl‹@gö+¯©û=}@gpqê¦Q@g˜¢æ0Z$Œ@R(   g    €„.AR   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.   R1   R2   R3   R4   R5   R6   R7   R*   R   R8   R9   R:   R;   (   R<   Rš   R>   R   R›   Rœ   R   RK   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRL     s^    	 "% c         C` s@   t  |  j j d d  d  … f |  j j d d  d  … f d ƒ d  S(   Ni    i	   (   R   R3   RQ   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRR   B  s    c         C` s@   t  |  j j d d  d  … f |  j j d d  d  … f d ƒ d  S(   Ni    i	   (   R   R3   RS   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRT   H  s    c         C` sF   t  |  j j d d d  d  … f |  j j d d d  d  … f d ƒ d  S(   Ni    i	   (   R   R3   RN   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRU   N  s    c         C` s    t  |  j j |  j j d ƒ d  S(   Ni   (   R   R3   RV   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRW   T  s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R3   RX   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRY   Z  s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni   (   R   R3   RZ   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyR[   `  s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R3   R\   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyR]   f  s    	c         C` s   t  |  j j |  j j ƒ d  S(   N(   R   R3   R^   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyR_   l  s    	c         C` s   t  |  j j |  j j ƒ d  S(   N(   R   R3   R`   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRa   r  s    	c         C` s#   t  |  j j |  j j d d ƒd  S(   NRk   g•Ö&è.>(   R   R3   Rb   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRc   x  s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R3   Rd   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRe   ~  s    	c         C` s;   |  j  j } |  j } t | j j ƒ  | j j ƒ  d ƒ d  S(   Ni	   (   RO   R3   R:   R   Rf   Rg   (   RO   Rh   Ri   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRj   …  s    	c         C` s#   t  |  j j |  j j d d ƒd  S(   NRk   gH¯¼šò×z>(   R   R3   Rl   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRm     s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R3   Rn   R:   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRo   –  s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R8   Rp   R;   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRq   œ  s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R8   Rr   R;   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRs   ¢  s    	c         C` s    t  |  j j |  j j d ƒ d  S(   Ni	   (   R   R8   Rt   R;   (   RO   (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyRu   ©  s    	(   Rv   Rw   Ry   RL   RR   RT   RU   RW   RY   R[   R]   R_   Ra   Rc   RŸ   R    R¡   Re   Rj   Rm   Ro   Rq   Rs   Ru   (    (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyR§     s&   ?										
			c    	      C` s)  t  j d d d d d d d g ƒ }  t  j d ƒ } d | d d  d … f <d	 | d d d  … f <t |  d
 d d t ƒ} | j d d d g ƒ | | j d <| j j ƒ  } t |  d
 d d t ƒ} t | j _ | j d d d g ƒ | | j d <| j j ƒ  } | j	 | j
 | j } | j d t  j | ƒ d t  j | j ƒ ƒ } | j d t  j | ƒ d t  j | j ƒ ƒ } t | j d d  d  … f | j d d  d  … f ƒ t | j d d  d  … f | j d d  d  … f ƒ t | j d d d  d  … f | j d d d  d  … f ƒ t | j | j ƒ t | j | j ƒ t | j | j ƒ t | j | j ƒ t | j | j ƒ t | j | j ƒ t | j | j ƒ t | j | j ƒ t | j j ƒ  | j j ƒ  ƒ t | j | j ƒ t | j | j ƒ t | j | j ƒ t | j  | j  ƒ t | j! | j! ƒ d  S(   Ni
   i   g      @g      ô?i   i   g      à?.i   t   orderi    t   measurement_errorg       @g      ð?R#   R   R   (   i   i   i   (   i   i    i    (   i   i    i    ("   R   R&   t   onesR   R.   t   updateR    R2   R9   R4   R5   R6   R7   R*   R   R   RQ   RS   RN   RV   RX   RZ   R\   R^   R`   Rb   Rd   Rf   Rg   Rl   Rn   Rp   Rr   Rt   (	   t   endogR#   t   mod1t   res1t   mod2t   res2RK   t   sim1t   sim2(    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt   test_time_varying_transition°  sX    $		33	
	
	
	
	(%   Rx   t
   __future__R    R   R   RŒ   t   numpyR   t   numpy.testingR   R   t   pandasR   RŸ   t   statsmodelsR   t#   statsmodels.tsa.statespace.mlemodelR   t(   statsmodels.tsa.statespace.tests.resultsR   t"   statsmodels.tsa.statespace.sarimaxR   R   t   dirnamet   abspatht   __file__R   t   objectR	   R|   R‚   R¢   R¤   R¥   R¦   R§   R³   (    (    (    sO   lib/python2.7/site-packages/statsmodels/tsa/statespace/tests/test_univariate.pyt   <module>   s.   Ó
·¯