
    "g              
       .   d Z ddlZddlZddlmZmZ ddlmZm	Z	m
Z
 d Zd Zej                  j                  dej                   ej                   ddd	       ej                   dd
d	      f   ddgddgf ej                   ddd	      ddfg      d        Zy)zH
unit test for spline and other smoother classes

Author: Luca Puggini

    N)assert_allcloseassert_equal)UnivariatePolynomialSmootherPolynomialSmootherBSplinesc                      t        j                  ddd      } t        | d      }t        |j                  j
                  d       t        |j                  d d df   | j                         dz         y )Nr            degree)r
   r      )nplinspacer   r   basisshaper   ravel)xpols     d/var/www/dash_apps/app1/venv/lib/python3.12/site-packages/statsmodels/gam/tests/test_smooth_basis.py#test_univariate_polynomial_smootherr      sR    
Aq!A
&q
3C&)CIIadOQWWY!^4    c                  L   t         j                  j                  d       t         j                  j                  ddd      } ddg}t	        | |      }t        |      D ]F  \  }}t        | d d |f   |      j                  }t        |j                  |   j                  |       H y )Nr	   r   )
   r   r      r   )
r   randomseednormalr   	enumerater   r   r   	smoothers)r   degreesmpsideguv_basiss         r   "test_multivariate_polynomial_basisr&      s    IINN1
		Aw'A!fG
Q
(CG$ :3/!Q$DJJa(..9:r   zx, df, degreer	   d   r   r
      r   c                 @    t        | ||      }|j                  |        y )N)r   	transform)r   dfr   bsplines       r   test_bsplinesr-   !   s      q"f%Gar   )__doc__pytestnumpyr   numpy.testingr   r   statsmodels.gam.smooth_basisr   r   r   r   r&   markparametrizec_r   r-    r   r   <module>r7      s      74 4
5:  EE+"++aC(+"++aS*AABFF	

 
Q3	A&

r   