
    M/Ph}	                     d    d dl Zd dlZ d dlmZmZ d dlmZ d dlmc m	Z
  G d d          Zd ZdS )    N)assert_almost_equalassert_equal)Contrastc                   <    e Zd Zed             Zd Zd Zd Zd ZdS )TestContrastc                     t           j                            d           t           j                            d          | _        d S )Ni1  )(   
   )numpyrandomseedstandard_normalX)clss    e/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/statsmodels/stats/tests/test_contrast.pysetup_classzTestContrast.setup_class	   s3    %   ,,W55    c                     t          j        | j        d d df         | j        d d df         f          }t          || j                  }dgdgdz  z   dgdz  dgz   dgdz  z   g}t	          ||j                   d S )Nr         	      )npcolumn_stackr   r   r   contrast_matrix)selftermctest_contrasts       r   test_contrast1zTestContrast.test_contrast1   s    qqqsTVAAAaC[9::T46""s1uqc!eqckQCE&9:M1+<=====r   c                     t          j        d          }t          j        || j        d d df         f          }t	          || j                  }dgdz  dgz   dgdz  z   }t          ||j                   d S )N)r	   r   r   r   r   )r   zerosr   r   r   r   r   )r   zeror   r   r   s        r   test_contrast2zTestContrast.test_contrast2   sw    xdfQQQqSk233T46""Aqc!e+M1+<=====r   c                    t          j        | j        t           j                            | j                            }t          j        d          |z
  }t          j        |t          j                            d                    }t          j	        || j        d d df         f          }t          || j                  }t          |j        j        d           d S )Nr	   )r	      r   )r
   )r   dotr   linalgpinvidentityr   r   r   r   r   r   r   shape)r   Presidnoiser   r   s         r   test_contrast3zTestContrast.test_contrast3   s    F4629>>$&1122B!#uel::7CCDDtvaaac{344T46""Q&,e44444r   c                     t          j        | j        | j        d d df         f          }t          | j        d d df         |          }d S )Nr&   )r   r   r   r   )r   X2r   s      r   test_estimablezTestContrast.test_estimable$   sG    _dfdfQQQqSk233TVAAAaC[$$r   N)	__name__
__module____qualname__classmethodr   r    r$   r/   r2    r   r   r   r      si        6 6 [6> > >> > >5 5 5% % % % %r   r   c            	         t          j        ddd          } t          j        g dg dg dg dg d	g d
g          }t          j        |           }t          ||           t          j        ddd          }t          ||           t          j        g dg dg dg dg dg dg          }t          j        | dd          }t          ||           t          j        ddd          }t          ||           d S )N      )k)      ?        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=   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=   r>   r>      r   )k_params	idx_start)r   eyearraysmc_constraints_factorr   _contrast_pairs)cm_cpairsc0c1cpairs2s        r   test_constraintsrM   *   s>   
&A


CX&&&&&( ) )F 
	 	%	%BV		Q1	%	%BV h6666666666666666668 9 9G 
	 qA	>	>	>BW		Q1	%	%BWr   )r   r   numpy.randomnumpy.testingr   r   statsmodels.stats.contrastr   statscontrastrE   r   rM   r7   r   r   <module>rS      s            ; ; ; ; ; ; ; ; / / / / / / ( ( ( ( ( ( ( ( (% % % % % % % %D    r   