U
    Kvf                  >   @   st  d 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	 Z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'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBg<e_edCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}d~g<e_edddddddddddddddddddddddddddddddddpdddddddddddddddddddddddddddg<e_eddddddddddddddddddddddddddddddddddddddddddddddddsddddddddddddg<e_eddddddddddddddd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 d!d"d#d$d%d&d'd(d)d*d+d,g<e_G d-d. d.ZG d/d0 d0eZG d1d2 d2ZdS (3  z>

Created on Sun Jun 30 20:25:22 2013

Author: Josef Perktold
    N)assert_allclose)add_constant)Holder)TLinearModelzApr.1982zApr.1983zApr.1984zApr.1985zApr.1986zAug.1982zAug.1983zAug.1984zAug.1985zAug.1986zDec.1982zDec.1983zDec.1984zDec.1985zDec.1986zFeb.1284zFeb.1982zFeb.1983zFeb.1985zFeb.1986zJan.1982zJan.1983zJan.1984zJan.1985zJan.1986zJul.1982ZJuly1983ZJuly1984ZJuly1985ZJuly1986ZJune1982ZJune1983ZJune1984ZJune1985ZJune1986zMar.1982zMar.1983zMar.1984zMar.1985zMar.1986ZMay1982ZMay1983ZMay1984ZMay1985ZMay1986zNov.1982zNov.1983zNov.1984zNov.1985zNov.1986zOct.1982zOct.1983zOct.1984zOct.1985zOct.1986z	Sept.1982z	Sept.1983z	Sept.1984z	Sept.1985z	Sept.1986gFxgr鷯gq=
ףpg	c?gH.!gZڊg\mgc]F?gʡEg(\µ?~jth?gvOjM?g0*gbX9ȶg1?gO@aӻ?g333333?gJY?g5;Nё?g:pΈg333333?g%ugX9vgݓZgX5;N?gjMStg%uggs?g<R!gH}mgw-!l?g=
ףp=?gx$(~gSt$?g48EGgc]F?g@?g|Pk?g	^)ˠga2U0*gH?g 	gL7A`?gQg	c¿g9vzg+?gͪՖ?gDlg6[ ?g?g o_y?geX?gb=ygZӼgfaִ?gRI&¶g0'g_L?gKY8ŽgQg<,Ԛ歿g:pΈgK=U?gjMSgh|?5gvq-g%u?gQ~?gQ?gZӼ?g~jt?g:pΈҞ?gea?gq?gS㥛İ?g~jthgp=
ף?g&gnt?g/$?gp_QgΈ?gX9vgL7A`吿gI+gUN@?gǺfgcZBgvq-?gtF_g7d?gS!uq{go_gUN@?gò?gy&1|gׁsFg[B>٬?ggj+?gZӼㄿg'饿gUN@?g2U0*?gMJ?g-C6*?g"u?g+e?g5;NёgZd;O?g{Gz?gBig rh?g
h"lxzg-?g_Qڋ?g?ܵ|g2%䃮g(\ſglxz,C?gw?ggsg
ףp=
?g+e☿guV?gm{ggj+?gͪՖg_LegSt$?g oŏ?glV}?gAf?g_vO?gΈg,eXgȘ?gy&1l?gN@?gHPsgW2ı?g@߾gy)gj+ݓg6<Rg?g/ng^I+?g?g_vOvg	^)ˀ?g@ǘ?gK=U?g-C6Z?gy&1?g/n?g'Wʲ?gT㥛 ?glxz,Cgǘ?g(\gޓZӬ?g?g}гY?gD?g~jtgHPgfj+?gH?g(y?g8d`g	g?gPsg?߾      $      )            8   3   .            %      *             9   4   /            &      +   !         :   5   0            '      ,   "      	   ;   6   1            (      -   #      
   <   7   2      c                   @   sD   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zej	j
dd ZdS )CheckTLinearModelMixinc                 C   s  | j }| j}t|jd d |jjdd t|jd d |jjd d df ddd t|jd d |jjd d df ddd t|j	d d |jjd d d	f d
dd t|jd |j
dd t|jd |jddd t|jj }t|jd |dd t|j|jdd d S )NgiUMu>atolr
   r   gh㈵>rtolrF   r   r"   g;On?-C6
?rH   g{Gz?)res1res2r   paramsloc_fitZcoefficientsbsetableZtvaluesZpvaluesZdofZdofsenpsqrtZ	scale_fitfitted_valuesZmeanZllfZlogLik)selfrL   rM   Z	scale_est rV   L/tmp/pip-unpacked-wheel-2v6byqio/statsmodels/miscmodels/tests/test_tmodel.py
test_basicI   s    ***z!CheckTLinearModelMixin.test_basicc                 C   s2   | j }t|j|jddd t|j|jddd d S )Ng333333?gMb`?rG   g?gMbp?)rL   r   ZbsejacrP   )rU   rL   rV   rV   rW   test_bse[   s    zCheckTLinearModelMixin.test_bsec                 C   sH   | j }| j}| }|jj| }t||jjdd t||jjdd d S )NgMb0?rJ   g>rE   )	rL   rM   Zpredictmodelendogr   rO   rT   Z	residuals)rU   rL   rM   ZfittedvaluesZresidrV   rV   rW   test_fitteda   s    z"CheckTLinearModelMixin.test_fittedc                 C   s`   | j }| j}t|j|jdd t|j|jdd t|jj|jjdd t|jj|jjdd d S )Ng-C6?rE   rI   rJ   g|=)rL   resfr   rN   rP   rZ   r[   exog)rU   rL   r]   rV   rV   rW   test_formulam   s    z#CheckTLinearModelMixin.test_formulac                 C   sb   | j }t| dd}|jjj\}}|j|| | ks6t|j|d ksHtt|j	|| ks^td S )Nk_extrar   r
   )
rL   getattrrZ   r^   shapeZdf_residAssertionErrorZdf_modellenrN   )rU   resr`   ZnobsZk_varsrV   rV   rW   test_dfw   s    zCheckTLinearModelMixin.test_dfc                 C   sX   | j }| j}tt|j}|  || || |  || || d S N	rL   r]   rR   Zeyerd   rN   summaryZt_testZf_testrU   rL   r]   ZcontrrV   rV   rW   
test_smoke   s    


z!CheckTLinearModelMixin.test_smokeN)__name__
__module____qualname__rX   rY   r\   r_   rf   pytestmarksmokerk   rV   rV   rV   rW   rC   G   s   
rC   c                   @   s   e Zd Zedd ZdS )
TestTModelc                 C   sv   t j}tt j}t||}|jddd}tjdt jt jdd}|jddd}ddlm} || _	|| _
|| _d	| _d S )
NbfgsFmethodZdispprice ~ CRSPZpriceCRSP)datar
   )res_t_dfestr   )mm
m_mariettar   rx   r   fitfrom_formulaZresults_tmodelrz   rM   rL   r]   r`   )clsr[   r^   modre   modfr]   rM   rV   rV   rW   setup_class   s    

zTestTModel.setup_classN)rl   rm   rn   classmethodr   rV   rV   rV   rW   rr      s   rr   c                   @   s(   e Zd Zedd Zejjdd ZdS )TestTModelFixedc                 C   sj   t j}tt j}t||dd}|jddd}tjdt jt jddd}|jddd}|| _|| _d	| _	d S )
Nr"   )fix_dfrs   Frt   rv   rw   )ry   r   r
   )
r{   r|   r   rx   r   r}   r~   rL   r]   r`   )r   r[   r^   r   re   r   r]   rV   rV   rW   r      s    
zTestTModelFixed.setup_classc                 C   sX   | j }| j}tt|j}|  || || |  || || d S rg   rh   rj   rV   rV   rW   rk      s    


zTestTModelFixed.test_smokeN)	rl   rm   rn   r   r   ro   rp   rq   rk   rV   rV   rV   rW   r      s   
r   )__doc__ro   ZnumpyrR   Znumpy.testingr   Zstatsmodels.tools.toolsr   Zstatsmodels.tools.testingr   Zstatsmodels.miscmodels.tmodelr   r{   Z
date_labelarrayr|   rx   Zam_candaterC   rr   r   rV   rV   rV   rW   <module>   sv  
                                                                                               
                                                    
                                                    
                                                        H