
p7]c           @   sP  d  d l  Z d  d l Z d  d l m Z d  d l m Z m Z d  d l	 Z	 e j
 d d d d d d	 g d d d
 d d
 d
 g d d d d d d g d d d d d d g d d d d d d g d d d d d d g d d d d d d g d d d d d d g d d d d d d g d d d d  d! d" g d# d d d$ d% d& g d# d d d d d	 g d# d d	 d d d g d# d d d d' d' g d# d d d d d g g d( d) d* d+ d, d- d. g Z xL e d/ d0  D]; Z e j e j d d  e f  e j d d  e f <qWd1   Z d2   Z d3   Z d4   Z d5   Z d6   Z d7   Z d8   Z d9   Z d S(:   iN(   t   _MultivariateOLS(   t   assert_array_almost_equalt   assert_raisest   Morphinet   Ng{Gz?g?g?g{Gz?g{Gz?gQ?gQ?gffffff?gQ?gQ?g(\?g=
ףp=?gffffff?t   Yg
ףp=
?gp=
ף?gQ?t   placebog?gQ?gףp=
?gףp=
?g)\(?g?g\(\?g333333?g(\?gQ?g?t   Trimethaphang
ףp=
	@g{Gz @gGz?gQ?t   columnst   Drugt   Depletedt
   Histamine0t
   Histamine1t
   Histamine3t
   Histamine5i   i   c         C   s  t  j d t  } | j d |   } | j   } d d d d d g d d d d d g d	 d d d d g d	 d d d d g g } t | d
 d j | d d d d d d d g d d d d d g d d d d d g d d d d d g g } t | d d j | d d d d  d! d" d# g d$ d  d! d" d# g d% d  d! d" d# g d% d  d! d" d# g g } t | d& d j | d d d' d( d d) d* g d+ d( d d, d- g d. d( d d/ d0 g d1 d  d d2 d3 g g } t | d4 d j | d d d5 S(6   s   Testing within-subject effect interact with 2 between-subject effect
    Compares with R car library Anova(, type=3) output

    Note: The test statistis Phillai, Wilks, Hotelling-Lawley
          and Roy are the same as R output but the approximate F and degree
          of freedoms can be different. This is due to the fact that this
          implementation is based on SAS formula [1]

    .. [*] https://support.sas.com/documentation/cdl/en/statug/63033/HTML/default/viewer.htm#statug_introreg_sect012.htm
    sC   Histamine0 + Histamine1 + Histamine3 + Histamine5 ~ Drug * Depletedt   methodg~c?i   i   gE+K@g1$~?g#?gˏPB@t	   Interceptt   statt   decimalgTD~?i   g      (@g!i@gstaŕ?gI"?g      ,@g勤zf@g^Ȯ?gJ@g:^ܡ@gXV@g L<?gB` @g      @g^T`)@g߲d?R	   gW?g      @g      @gƃZq	@g,'?g;?g(*< @R
   g>?g       @g	@g0GĶ?ghw?g_X0@gro?gݭ@gYua?@g6E6F?g>F@g{|}J@g	r헑r?s   Drug:DepletedN(   R    t   from_formulat   datat   fitt   mv_testR   t   values(   R   t   modt   rt   a(    (    sS   lib/python2.7/site-packages/statsmodels/multivariate/tests/test_multivariate_ols.pyt   compare_r_output_dogs_data    s2    	c           C   s   t  d d  t  d d  d  S(   NR   t   svdt   pinv(   R   (    (    (    sS   lib/python2.7/site-packages/statsmodels/multivariate/tests/test_multivariate_ols.pyt   test_glm_dogs_exampleI   s    c          C   s  t  j d t  }  |  j   } | j d d d g d  g g  } d d d d d g d	 d d d d g d
 d d d d g d
 d d d d g g } t | d d j | d d d d d g } d d d g } | j d d | | g g  } d d d d d d g d d d d d d g d d d d d d g g } t | d d | d d d d d d g d d d d g d d d d g g } t | d d j | d d d  S(   NsC   Histamine0 + Histamine1 + Histamine3 + Histamine5 ~ Drug * Depletedt
   hypothesesR   g~c?i   i   gE+K@g1$~?g#?gˏPB@R   R   s   Drug[T.Trimethaphan]s   Drug[T.placebo]R   R   R   R   i   i    t
   contrast_Li
   t   transform_M(	   R    R   R   R   R   t   NoneR   R   t   T(   R   R   t   r1R   t   Lt   M(    (    sS   lib/python2.7/site-packages/statsmodels/multivariate/tests/test_multivariate_ols.pyt   test_specify_L_M_by_stringN   s*    	!c          C   sb   t  j   }  |  d |  d <t j d |   } t t | j  t j d |   } t t | j  d  S(   NR	   t   dups>   Histamine0 + Histamine1 + Histamine3 + Histamine5 ~ Drug * dup(   R   t   copyR    R   R   t
   ValueErrorR   (   t   data1R   (    (    sS   lib/python2.7/site-packages/statsmodels/multivariate/tests/test_multivariate_ols.pyt"   test_independent_variable_singularf   s    		c          C   sa  t  j d t  }  |  j d d  } | j   } t j d t d d \ } } t j d d d d d d g g  } t  | |  j d d  } | j d d	 | d  g g  } t
 | d	 d
 j | d	 d
 j d d t  | j | j  j d d  } | j d d	 | d  g g  } t
 | d	 d
 j | d	 d
 j d d t j d d d d d d g d d d d d d g g  } | j d d | d  g g  } t  | |  j d d  } | j d d | d  g g  } t
 | d d
 j | d d
 j d d t  | j | j  j d d  } | j d d | d  g g  } t
 | d d
 j | d d
 j d d d  S(   NsC   Histamine0 + Histamine1 + Histamine3 + Histamine5 ~ Drug * DepletedR   R   t   return_typet	   dataframei   i    R   R   R   R   i   R	   (   R    R   R   R   R   t   patsyt	   dmatricest   npt   arrayR"   R   R   (   R   R   t   r0t   endogt   exogR%   R$   (    (    sS   lib/python2.7/site-packages/statsmodels/multivariate/tests/test_multivariate_ols.pyt   test_from_formula_vs_no_formulas   s8    	$!!c          C   s   t  j d t  }  |  j d d  } t j d d d d d d g  } t t | j d d | d  g g t j d d d d d d g g  } t j d d d d d d g  } t t | j d d | | g g d  S(   NsC   Histamine0 + Histamine1 + Histamine3 + Histamine5 ~ Drug * DepletedR   R   i   i    R   R	   (
   R    R   R   R   R1   R2   R   R*   R   R"   (   R   R   R%   R&   (    (    sS   lib/python2.7/site-packages/statsmodels/multivariate/tests/test_multivariate_ols.pyt   test_L_M_matrices_1D_array   s    	!"$!c          C   s   t  j d t  }  |  j d d  } | j   } d d d d d g d	 d d
 d d g d d d d d g d d d d d g g } t | d d j | d d d  S(   Ns@   Histamine0 + Histamine1 + Histamine3 + Histamine5 ~ 0 + DepletedR   R   gŏ1w-!_?g       @g      4@g0*K@g        gB>٬?g      6@gŏ1w-a:@g{xX@g[Ӽ](@gN@G]@g$(~QW@g      @g      &@g^)p@R
   R   R   i   (   R    R   R   R   R   R   R   (   R   R   R3   R   (    (    sS   lib/python2.7/site-packages/statsmodels/multivariate/tests/test_multivariate_ols.pyt   test_exog_1D_array   s    	c           C   s   t  t t j d t  d  S(   Ns   Histamine0 ~ 0 + Depleted(   R   R*   R    R   R   (    (    (    sS   lib/python2.7/site-packages/statsmodels/multivariate/tests/test_multivariate_ols.pyt   test_endog_1D_array   s    c          C   s=  t  j d t  }  |  j d d  } t j d d d d d d	 g d d
 d d d d g g  } d  } t j d d d d g d d d d g g  } | j d d | | | f g  } d d d d d g d d d d  d! g d" d d# d$ d% g d& d' d( d) d* g g } t | d d+ j	 | d, d | j
 d- t d. t d/ t  d  S(0   NsC   Histamine0 + Histamine1 + Histamine3 + Histamine5 ~ Drug * DepletedR   R   i    g333333?g?g?g      ?gffffff?g	@g @gffffff
@g      @g@i   i   i   i   i   i   i   i   R   t   test1gq?g       @g      (@gjM@gMbP?g?g      ,@gzv@gMb?gjqD3@gI&@gJ++@g-C6Z?gFX2@g      @g      @gǺ@@g-C6?R   R   t   show_contrast_Lt   show_transform_Mt   show_constant_C(   R    R   R   R   R1   R2   R"   R   R   R   t   summaryt   True(   R   R   R%   R&   t   CR3   R   (    (    sS   lib/python2.7/site-packages/statsmodels/multivariate/tests/test_multivariate_ols.pyt   test_affine_hypothesis   s"    	!(   t   numpyR1   t   pandast   pdt)   statsmodels.multivariate.multivariate_olsR    t   numpy.testingR   R   R/   t	   DataFrameR   t   ranget   it   logt   ilocR   R   R'   R,   R6   R7   R8   R9   RA   (    (    (    sS   lib/python2.7/site-packages/statsmodels/multivariate/tests/test_multivariate_ols.pyt   <module>   sB   9	)				#			