
    M/Phl
                     T    d dl Zd dlmZ d dlZd dlmZ d dlmZ  G d d          Z	dS )    N)assert_allclose)WLS)_MinimalWLSc                       e Zd Zed             Zej                            dddg          d             Zej                            de	j
        e	j        g          d             ZdS )	TestMinimalWLSc                 b   t           j                            d          }|                    dd          | _        | j                            d          |                    d          z   | _        dt          j        t          j        d          dz  t           j	        z            z   | _
        |                    dd          | _        d	| j                                        z  |                    d          z   | _        dt          j        t          j        dd
                    z   | _        d S )Ni           g      ?g      i@g      Y@2   g333333?g     I@)nprandomRandomStaterandnexog1sumendog1sinarangepiweights1exog2ravelendog2logweights2)clsrss     g/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/statsmodels/regression/tests/test_tools.pysetup_classzTestMinimalWLS.setup_class
   s    Y""4((HHS!$$	Y]]1%%5
RVBIe$4$4u$<ru$DEEEHHROO	39??,,,rxx||;
RVBIc4$8$8999    checkTFc                    t          | j        | j                                                  }t	          | j        | j        ||                                          }t          |j        |j                   t          |j        |j                   t          | j        | j	                                                  }t	          | j        | j	        ||                                          }t          |j        |j                   t          |j        |j                   t          | j        | j        | j
                                                  }t	          | j        | j        | j
        ||                                          }t          |j        |j                   t          |j        |j                   t          | j        | j	        | j                                                  }t	          | j        | j	        | j        ||                                          }t          |j        |j                   t          |j        |j                   d S )Ncheck_endogcheck_weights)weights)r'   r%   r&   )r   r   r   fitr   r   paramsresidr   r   r   r   )selfr"   resminress       r   test_equivalence_with_wlsz(TestMinimalWLS.test_equivalence_with_wls   s   $+tz**..00T[$*).eE E EEHSUU 	
FM222	6<000$+tz**..00T[$*).eE E EEHSUU 	
FM222	6<000$+tz4=AAAEEGGT[$*dm).eE E EEHSUU 	
FM222	6<000$+tz4=AAAEEGGT[$*dm).eE E EEHSUU 	
FM222	6<00000r!   	bad_valuec                    t          j        t          d          5  | j                                        }||d<   t          || j        | j        dd                                           d d d            n# 1 swxY w Y   t          j        t          d          5  | j                                        }||d<   t          | j        | j        |dd                                           d d d            d S # 1 swxY w Y   d S )Nz(detected in endog, estimation infeasible)matchr   Tr$   z*detected in weights, estimation infeasible)	pytestraises
ValueErrorr   copyr   r   r   r(   )r+   r/   endogr'   s       r   test_inf_nanzTestMinimalWLS.test_inf_nan.   s   ]AC C C 	D 	D K$$&&E E!Htz4=$(> > >>Aceee	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D ]CE E E 	D 	D m((**G#GBKTZ$(> > >>Aceee	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	Ds%   AA77A;>A;AC99C= C=N)__name__
__module____qualname__classmethodr    r3   markparametrizer.   r   naninfr8    r!   r   r   r   	   s        : : [: [WtUm441 1 5412 [[2626*:;;D D <;D D Dr!   r   )
numpyr   numpy.testingr   r3   #statsmodels.regression.linear_modelr   statsmodels.regression._toolsr   r   rA   r!   r   <module>rF      s        ) ) ) ) ) )  3 3 3 3 3 3 5 5 5 5 5 55D 5D 5D 5D 5D 5D 5D 5D 5D 5Dr!   