
p7]c           @   s   d  Z  d d l Z d d l m Z m Z m Z d d l m Z d d l	 m
 Z
 d d l m Z d e f d     YZ d	 e f d
     YZ d e f d     YZ e d k r d d l Z e j e d d d g  n  d S(   sY   Testing GLSAR against STATA

Created on Wed May 30 09:25:24 2012

Author: Josef Perktold
iN(   t   assert_almost_equalt   assert_allcloset   assert_equal(   t   GLSAR(   t   add_constant(   t	   macrodatat   CheckStataResultsMixinc           B   s   e  Z d    Z RS(   c         C   s   |  j  |  j } } t | j | j d  t | j | j d  t | j | j d d d d t | j | j d d d d d  S(   Ni   t   atoli    t   rtolgMbp?gHz>(   t   rest   resultsR    t   paramst   bseR   t   tvaluest   pvalues(   t   selfR	   R
   (    (    sL   lib/python2.7/site-packages/statsmodels/regression/tests/test_glsar_stata.pyt   test_params_table   s
    (   t   __name__t
   __module__R   (    (    (    sL   lib/python2.7/site-packages/statsmodels/regression/tests/test_glsar_stata.pyR      s   t   CheckStataResultsPMixinc           B   s   e  Z d    Z RS(   c         C   s[   |  j  |  j } } t | j | j d d | j | j j  } t | | j d d d  S(   NR   gMb`?g-C6Z?(   R	   R
   R   t   fittedvaluest   predictt   modelt   exog(   R   R	   R
   t	   predicted(    (    sL   lib/python2.7/site-packages/statsmodels/regression/tests/test_glsar_stata.pyt   test_predicted   s    (   R   R   R   (    (    (    sL   lib/python2.7/site-packages/statsmodels/regression/tests/test_glsar_stata.pyR      s   t   TestGLSARCorcc           B   s2   e  Z e d     Z d   Z d   Z d   Z RS(   c         C   s   t  j   j } d t j t j | d j   } d t j t j | d j   } t t j | | d d  j f d t	 } t
 | | d  } | j d  |  _ d d	 l m } | |  _ d  S(
   Ni  t   realgdpt   realinvt   realintit   prependi   i   (   R
   (   R   t   load_pandast   datat   npt   difft   logt   valuesR   t   c_t   FalseR   t   iterative_fitR	   t   results.macro_gr_corc_stataR
   (   t   clst   d2t   g_gdpt   g_invt   exoggt   mod1R
   (    (    sL   lib/python2.7/site-packages/statsmodels/regression/tests/test_glsar_stata.pyt   setup_class'   s    ##*c         C   s?   t  |  j j j |  j j d  t  |  j j |  j j d  d  S(   Ni   i   (   R    R	   R   t   rhoR
   t   llft   ll(   R   (    (    sL   lib/python2.7/site-packages/statsmodels/regression/tests/test_glsar_stata.pyt   test_rho4   s    c   	   	   C   s  d d l  m } |  j j j } |  j j j } t | | d  } | j d  } | | d d d | d  d   d  d  f } | j d d	 d
 d d d  } t	 | j
 | j
 d d d g d d d d t	 | j j | j
 d d d d d t	 | j | j d d d g d d d d t t | j d  d  t | j d d | j
  | j d d d } t t | j d  d  t t | j d  d  d  S(   Ni(   t   ARMAi   i
   t   orderi    R   t   methodt   csst   iprintt   dispi   i   R   g{Gz?R   gMbP?g?gQ?R   i   i   R0   (   i   i    (   t   statsmodels.tsa.arima_modelR4   R	   R   t   endogR   R   R'   t   fitR   R   R0   R   R   t   lent   history(	   R   R4   R;   R   R.   R	   t   mod_armat   res_armat   res2(    (    sL   lib/python2.7/site-packages/statsmodels/regression/tests/test_glsar_stata.pyt   test_glsar_arima:   s    .,&,c         C   s   |  j  j j } |  j  j j } t j d d d g  } t | | |  } | j   } | j d  } | j d  } t	 | j
 | j
 d d t	 | j
 | j
 d d t	 | j j | d d t	 | j j | d d d  S(   Ng"~?g?gI+?i    i   R   gdy=(   R	   R   R;   R   R!   t   arrayR   R<   R'   R   R   R0   (   R   R;   R   R0   R.   t   res1t   res0t   res0b(    (    sL   lib/python2.7/site-packages/statsmodels/regression/tests/test_glsar_stata.pyt   test_glsar_iter0P   s    (   R   R   t   classmethodR/   R3   RB   RG   (    (    (    sL   lib/python2.7/site-packages/statsmodels/regression/tests/test_glsar_stata.pyR   %   s   		t   __main__s   -vvss   -xs   --pdb(   t   __doc__t   numpyR!   t   numpy.testingR    R   R   t#   statsmodels.regression.linear_modelR   t   statsmodels.tools.toolsR   t   statsmodels.datasetsR   t   objectR   R   R   R   t   pytestt   maint   __file__(    (    (    sL   lib/python2.7/site-packages/statsmodels/regression/tests/test_glsar_stata.pyt   <module>   s   

;