U
    Kvf}	                     @   sX   d dl Zd dlZ d dlmZmZ d dlmZ d dlm  m	Z
 G dd dZdd ZdS )    N)assert_almost_equalassert_equal)Contrastc                   @   s8   e Zd Zedd Zdd Zdd Zdd Zd	d
 ZdS )TestContrastc                 C   s   t jd t jd| _d S )Ni1  )(   
   )numpyrandomseedstandard_normalX)cls r   I/tmp/pip-unpacked-wheel-2v6byqio/statsmodels/stats/tests/test_contrast.pysetup_class	   s    zTestContrast.setup_classc                 C   sp   t | jd d df | jd d df f}t|| j}dgdgd  dgd dg dgd  g}t||j d S )Nr         	      )npcolumn_stackr   r   r   contrast_matrix)selftermctest_contrastr   r   r   test_contrast1   s    **zTestContrast.test_contrast1c                 C   s\   t d}t || jd d df f}t|| j}dgd dg dgd  }t||j d S )N)r   r   r   r   r   )r   zerosr   r   r   r   r   )r   Zzeror   r   r   r   r   r   test_contrast2   s
    
zTestContrast.test_contrast2c                 C   st   t | jt j| j}t d| }t |tjd}t 	|| jd d df f}t
|| j}t|jjd d S )Nr   )r      r   )r   )r   dotr   ZlinalgZpinvidentityr   r	   r   r   r   r   r   shape)r   PZresidZnoiser   r   r   r   r   test_contrast3   s    zTestContrast.test_contrast3c                 C   s:   t | j| jd d df f}t| jd d df |}d S )Nr   )r   r   r   r   )r   ZX2r   r   r   r   test_estimable$   s    zTestContrast.test_estimableN)	__name__
__module____qualname__classmethodr   r   r   r$   r%   r   r   r   r   r      s   
	r   c                  C   s
  t jdddd} t dddgdddgdddgdddgdddgdddgg}t| }t|| tddd}t|| t 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}tj| d	d
d}t|| td	dd
}t|| d S )N      )kg      ?g        g      r      r   )Zk_paramsZ	idx_start)r   ZeyearraysmcZ_constraints_factorr   Z_contrast_pairs)Zcm_ZcpairsZc0Zc1Zcpairs2r   r   r   test_constraints*   s.    



r1   )r   r   Znumpy.randomZnumpy.testingr   r   Zstatsmodels.stats.contrastr   statsZcontrastr0   r   r1   r   r   r   r   <module>   s   "