
    M/PhW                         d dl Zd dlZd dlmZmZmZmZ d dl	m
Z
mZ d Zd Zd Zd Zd Zd	 Zd
 Zd Zd Zd Zd ZdS )    N)assert_assert_equalassert_allcloseassert_raises)specificationparamsc            	      
   t          j        dggdg          } t          j        | dd          }t	          j        |          }t          |j        |           t          |j        dg           t          |j	        dg           t          |j
        d	g           t          |j        d
g           t          |j        dg           t          |j        g d           t          |j        d           t          |j        d           t          |j        d           t          |j        d           t          |j        d           t          |j        d           t          |j        t(          j                   t          |j        t(          j        g           t          |j        t(          j        g           t          |j        t(          j        g           t          |j        t(          j        g           t          |j        t(          j                   t          |j        j        t(          j        dt(          j        f                    t          |j        j        t(          j        dt(          j        f                    t          |j        j        t(          j        ddddt(          j        f                    t          |j         j        t(          j        ddddt(          j        f                    t          |j!        j        t(          j        dt(          j        gdz  f                    t          |j"        j        t(          j        dt(          j        gdz  f                    tG          |j$                    tG          |j%                    tM          tN          |j(        d           tM          tN          |j(        d           t(          j        gt(          j        gt(          j        gt(          j        gt(          j        gt(          j        d}t          |)                                |           t          j*        t(          j        g|j        z  |j                  }tW          |,                                |           t          j        ddggddg          } t          j        | dd          }t	          j        |          }t          |j        d           t          |j        d           t          |j        d           t          |j        d           t          |j        d           t          |j        d           d S )Nr   acolumns   r   r   r   r   r      exogorderseasonal_orderspecar.L1ma.L1ar.S.L4ma.S.L4)r
   r   r   r   r   sigma2r         is_stationaryis_invertible)exog_params	ar_params	ma_paramsseasonal_ar_paramsseasonal_ma_paramsr   )indexb)   r      )r   r   r   r   r(   r'      )-pd	DataFramer   SARIMAXSpecificationr   SARIMAXParamsr   r   
exog_namesar_namesma_namesseasonal_ar_namesseasonal_ma_namesparam_namesk_exog_paramsk_ar_paramsk_ma_paramsk_seasonal_ar_paramsk_seasonal_ma_paramsk_paramsnpnanr!   r"   r#   r$   r   ar_polycoefr_ma_polyseasonal_ar_polyseasonal_ma_polyreduced_ar_polyreduced_ma_polyr   is_completeis_validr   
ValueError__getattribute__to_dictSeriesr   	to_pandas)r   r   pdesireds       g/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/statsmodels/tsa/arima/tests/test_params.py	test_initrN   	   sq    <!u---D-<A A AD$'''A u%%%gY'''gY'''$yk222$yk222 !+ !+ !+ , , , !$$$""""""'+++'+++Q 26"""rvh'''rvh'''%x000%x00026"""q"&y!1222q"&y!1222#("%1aBF0B*CDDD#("%1aBF0B*CDDD"'q26(Q,)?@@@"'q26(Q,)?@@@ 
N*a0/BBB*a0/BBBxfXfX!vh!vh& G g&&&i4=08HIIIGAKKMM7+++ <!Q3*555D-<A A AD$'''A !$$$""""""'+++'+++233333    c                  "   t          j        dggdg          } t          j        | dd          }t	          j        |          d3fd		}d
_         |             d_         |             d_         |             d_	         |d           d_
         |dd           d_        t          j                   t          j                    t          j        g d           t          j        dg           t          j        dg           t          j        dg           t          j	        dg           t          j
        dg           t          j        d           t          j        j        t$          j        d                    t          j        j        t$          j        d                    t          j        j        t$          j        d                    t          j        j        t$          j        d                    t          j        j        t$          j        d                    t          j        j        t$          j        d                    dg_        d g_        d!g_        d"g_	        d#g_
        d$g_        g d%_        t          j        g d%           t          j        d&g           t          j        d'g           t          j        d(g           t          j	        d)g           t          j
        d*g           t          j        d$           t%          j        d$          _        t%          j        d#          _        t%          j        d"          _        t%          j        d!          _	        t%          j        d           _
        t%          j        d          _        t          j        g d+           t          j        d,g           t          j        d*g           t          j        d)g           t          j	        d(g           t          j
        d'g           t          j        d           g d%_        t          j        g d%           t          j        d&g           t          j        d'g           t          j        d(g           t          j	        d)g           t          j
        d*g           t          j        d$           t          j        j        t$          j        d-                    t          j        j        t$          j        d.                    t          j        j        t$          j        d/                    t          j        j        t$          j        d0                    t          j        j        t$          j        d1                    t          j        j        t$          j        d2                    d S )4Nr   r
   r   r   r   r   r   raisec                 :   t          j                    t          j                    | dk    rt          t          j        d           nt          j        |            |dk    rt          t          j        d           d S t          j        |           d S NrQ   r   r   	r   rD   rE   r   rF   rG   r   r   r   r   r   rK   s     rM   checkz%test_set_params_single.<locals>.checkZ       AM!"""AJG##*a&8/JJJJ-888G##*a&8/JJJJJ-88888rO                           Fr          r   r         ra   rb   rc   rd   re   )r   r   )r   rc   )r   r   r   r   r'   )r   r   r   r   re   )r   r   r   r   r'      )r   rc   r   r   re            ?g       @g      @g      @g      @      @r   r(   r'   r   r   r   r   r(   r'   r   r   )r   r   r   r'   r(   r   r   )r   re   )r   r'   )r   r   r   r   rc   )r   r   r   r   r   )r   re   r   r   rc   rh   )r   r'   r   r   r   rg   rQ   rQ   )r*   r+   r   r,   r   r-   r    r!   r"   r#   r$   r   r   rD   rE   r   r<   r=   r:   r>   r?   r@   rA   rB   rC   arrayr   r   rV   rK   s      @rM   test_set_params_singlero   Q   s`    <!u---D-<A A AD$'''A
9 
9 
9 
9 
9 
9 AM	EGGGAK	EGGGAK	EGGGA	EA	EU3333AHAM
N333444%%%rd###rd###%t,,,%t,,,3 t---u...#("%*>???#("%*?@@@"'/@)ABBB"'/A)BCCC DAM$AK$AK4A4AtAH!!!AH---...$$$qc"""qc"""%s+++%s+++2 HRLLAM(2,,AK(2,,AK8B<<A8B<<Ax||AH---...$$$qc"""qc"""%s+++%s+++2 "!!AH---...$$$qc"""qc"""%s+++%s+++2 u...t---#("%*?@@@#("%*>???"'/A)BCCC"'/@)ABBBBBrO   c                  "   t          j        dggdg          } t          j        | ddgdddgfddgdddgdf          }t	          j        |          d*fd		}d
_         |             d_         |             d_         |             d_	         |d           d_
         |dd           d_        t          j                   t          j                    t          j        g d           t          j        dg           t          j        dg           t          j        dg           t          j	        dg           t          j
        dg           t          j        d           t          j        j        g d           t          j        j        g d           t          j        j        g d           t          j        j        g d           t          j        j        g d           t          j        j        g d           g d_        t          j        g d           t          j        dg           t          j        d g           t          j        d!g           t          j	        dg           t          j
        d"g           t          j        d#           t          j        j        t.          j        d$                    t          j        j        t.          j        d%                    t          j        j        g d&           t          j        j        g d'           t          j        j        g d(           t          j        j        g d)           d S )+Nr   r
   r   r   r   r   r   rQ   c                 :   t          j                    t          j                    | dk    rt          t          j        d           nt          j        |            |dk    rt          t          j        d           d S t          j        |           d S rS   rT   rU   s     rM   rV   z4test_set_params_single_nonconsecutive.<locals>.check   rW   rO   rX   rY   rZ   r[   Fr\   r]   r^   r_   r`   ra   rb   rc   rd   re   )r   r   r   )r   r   rc   )	r   r   r   r   r   r   r   r   r'   )	r   r   r   r   r   r   r   r   re   )r   r   r   r   r   r   r   r   r'   r   rg   )r   r   rc   r   r   r   r   r   re   r   rh   rk   r(   r'   r   rj   )r   r   re   )r   r   r'   )	r   r   r   r   r   r   r   r   rc   )	r   r   r   r   r   r   r   r   r   )r   r   re   r   r   r   r   r   rc   r   rh   )r   r   r'   r   r   r   r   r   r   r   rg   rl   )r*   r+   r   r,   r   r-   r    r!   r"   r#   r$   r   r   rD   rE   r   r<   r=   r?   r@   rA   rB   rC   r:   r>   rn   s      @rM   %test_set_params_single_nonconsecutiverr      s   
 <!u---D-1a&!aV,AAq61-/ / /D 	$'''A
9 
9 
9 
9 
9 
9 AM	EGGGAK	EGGGAK	EGGGA	EA	EU3333AHAM
N333444%%%rd###rd###%t,,,%t,,,3 +++,,,#(*E*E*EFFF#(*F*F*FGGG"')K)K)KLLL"')L)L)LMMM "!!AH---...$$$qc"""qc"""%s+++%s+++2 x111w000#(*F*F*FGGG#(*E*E*EFFF"')L)L)LMMM"')K)K)KLLLLLrO   c                     t          j        ddggddg          } t          j        | dd          }t	          j        |          }g d	|_        t          |j        g d	           t          |j        d
dg           t          |j        ddg           t          |j	        ddg           t          |j
        ddg           t          |j        ddg           t          |j        d           t          |j        j        t          j        d                    t          |j        j        t          j        d                    t          |j        j        t          j        d                    t          |j        j        t          j        d                    t          |j        j        g d           t          |j        j        g d           d S )Nr   r
   r&   r   r(   r   r(   r(   r   r(   r   r   r   rf   r(   rd   r   rb   r   rh   
   rf   r(   rd   r   rb   r   rw   rh   rx   ry   rz   r   r'   rc   r   rb   r   	r   r   r   r      r   r   r   	r   r   r   r   rx   r   r   r   ry   )r   r'   rc   r   r~      ir   r   i    )r   rb   r   r   rx   -   ir   ry   i<   )r*   r+   r   r,   r   r-   r   r    r!   r"   r#   r$   r   r<   r=   r:   r>   r?   r@   rA   rB   rC   r   r   rK   s      rM   test_set_params_multipler     s    <!Q3*555D-<A A AD$'''A888AH:::< < <Q(((r1g&&&r1g&&&%Aw///%Bx0003 x111x111#("%0J*KLLL#("%0K*LMMM "'NNNP P P "'. . ./ / / / /rO   c                     t          j        ddggddg          } t          j        | dd          }t	          j        |          }d	d
g|_        t          |j        dg           t          j
                            d	dg          |_        t          |j        dg           d	dg|_        t          |j        dg           t          j
                            d	dg          |_        t          |j        dg           g d|_        t          |j        dg           t          j
                            g d          |_        t          |j        dg           g d|_        t          |j        dg           t          j
                            g d          |_        t          |j        dg           t%          t&          |j        ddd
g           t%          t&          |j        dddg           t%          t&          |j        dg d           t%          t&          |j        dg d           t%          t&          |j        dd	           t%          t&          |j        dd	g           t%          t&          |j        dd	           t%          t&          |j        dd	g           t%          t&          |j        dd	           t%          t&          |j        dd	g           t%          t&          |j        dg d           t%          t&          |j        dd	           t%          t&          |j        dd	g           t%          t&          |j        dg d           t%          t&          |j        dg d            t%          t&          |j        dg d!           t%          t&          |j        dg d"           t%          t&          |j        dg d"           t%          t&          |j        dg d#           t%          t&          |j        dg d$           d S )%Nr   r
   r&   r   r   r   r   r   r               ?皙皙?333333?ffffff?)r   r   r   r   皙ɿ皙?)r   r   r   r         п      ?)r   r   r   r   皙?r   )r   r   r   r   333333?r   r<   r(   r?   r@   )r(   r   r   r   r   rA   )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:   
polynomial
Polynomialr?   r"   r@   r#   rA   r$   r   rF   __setattr__r   s      rM   test_set_poly_short_lagsr   9  s   <!Q3*555D-<A A AD$'''A D	AIse$$$((!U44AItf%%%CAIse$$$((!T33AItf%%%+++A%u---112E2E2EFFA%v...***A%u---112D2D2DEEA%v... *amYD	BBB*amYCAAA*am-?$$$& & &*am-?###% % % *amY:::*amY<<<*amY:::*amY<<<*am-?CCC*am-?!EEE*am-?NNN*am-?CCC*am-?!EEE*am-?NNN*amYGGG*amYFFF*am-?&&&( ( (*am-?&&&( ( ( *am-?''') ) )*am-?&&&( ( ( ( (rO   c                  z   t          j        ddggddg          } t          j        | ddgdddgfddgdddgdf          }t	          j        |          }g d	|_        t          |j        d
g           t          j
                            g d          |_        t          |j        dg           g d|_        t          |j        dg           t          j
                            g d          |_        t          |j        dg           g d|_        t          |j        dg           t          j
                            g d          |_        t          |j        dg           g d|_        t          |j        dg           t          j
                            g d          |_        t          |j        dg           t%          t&          |j        dg d           t%          t&          |j        dg d           t%          t&          |j        dg d           t%          t&          |j        dg d            d S )!Nr   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   )	r   r   r   r   r   r   r   r   r   r   r<   )r   r   r   r?   )r   r   r   r@   )	r   r   r   r   ri   r   r   r   r   rA   )	r   r   r   r   ri   r   r   r   r   r   r   s      rM   'test_set_poly_short_lags_nonconsecutiver   t  sN   <!Q3*555D-1a&!aV,AAq61-/ / /D 	$'''A AIse$$$((77AItf%%%AIse$$$((66AItf%%%777A%u---
  !@!@!@AA %v...666A%u---
  !?!?!?@@ %v...
 *amYEEE*amYDDD*am-?1113 3 3*am-?0002 2 2 2 2rO   c                     t          j        ddggddg          } t          j        | dd          }t	          j        |          }d	d
g|_        d|_        t          j	        d         |_
        t          j	        d         |_        t          j	        d         |_        t          j	        d         |_        t          |j        g d           t          |j        d	d
g           t          |j        ddg           t          |j        ddg           t          |j        ddg           t          |j        ddg           t          |j        d           d S )Nr   r
   r&   r   rt   ru   r   r   rf   r(   rz   r{   r|   r}   r   rv   rd   r   rb   r   rw   rh   rx   ry   )r*   r+   r   r,   r   r-   r    r   r:   r>   r<   r?   r@   rA   r   r!   r"   r#   r$   r   s      rM   test_set_poly_longer_lagsr     sM   <!Q3*555D-<A A AD$'''A GAMAH hAIhAI9:A:;A :::< < <Q(((r1g&&&r1g&&&%Aw///%Bx0003rO   c                  p   t          j        dd          } t          j        |           }t	          t
          |j        d           dg|_        dg|_        t          |j
                   dg|_        t          |j
                    dg|_        dg|_        t          |j
                   dg|_        t          |j
                    d	g|_        d	g|_        t          |j
                   d
g|_        d
g|_        t          |j
                   dg|_        dg|_        t          |j
                    d S )Nr   r   r   r   r   r   r   r   ri   r   Gz?)r   r,   r   r-   r   rF   rG   r!   r#   r   r   r   rK   s     rM   test_is_stationaryr     9   -6 6 6D$'''A *a0/BBB%AK3AAO%AK   #AK5AAO5A   %AK5AAO&AK 6AAO$AK4A     rO   c                  p   t          j        dd          } t          j        |           }t	          t
          |j        d           dg|_        dg|_        t          |j
                   dg|_        t          |j
                    dg|_        dg|_        t          |j
                   dg|_        t          |j
                    d	g|_        d	g|_        t          |j
                   d
g|_        d
g|_        t          |j
                   dg|_        dg|_        t          |j
                    d S )Nr   r   r   r   r   r   r   ri   r   r   )r   r,   r   r-   r   rF   rG   r"   r$   r   r   r   s     rM   test_is_invertibler     r   rO   c                     t          j        dddd          } t          j        |           }t	          |j                    g d|_        t	          |j                   g d|_        t	          |j                    g d|_        t	          |j                    g d	|_        t	          |j                    g d
|_        t	          |j                    d S )Nr   r   T)r   r   enforce_stationarityenforce_invertibilityr   )r   r   r   r   ri   )ri   r   r   r   ri   )r   ri   r   r   ri   )r   r   ri   r   ri   )r   r   r   ri   ri   )r   r,   r   r-   r   rE   r   s     rM   test_is_validr     s     -!? ? ?D 	$'''A 
N'''AHAJ&&&AH
N&&&AH
N&&&AH
N&&&AH
NrO   c                     t          j        ddggddg          } t          j        | dd          }t	          j        |          }t          t          |          d	           d
dg|_        t          t          |          d           dg|_	        t          t          |          d           dg|_
        t          t          |          d           dg|_        t          t          |          d           dg|_        t          t          |          d           d|_        t          t          |          d           d S )Nr   r
   r&   r   r   r   r   r   zcSARIMAXParams(exog=[nan nan], ar=[nan], ma=[nan], seasonal_ar=[nan], seasonal_ma=[nan], sigma2=nan)r   r(   zaSARIMAXParams(exog=[1. 2.], ar=[nan], ma=[nan], seasonal_ar=[nan], seasonal_ma=[nan], sigma2=nan)r   zaSARIMAXParams(exog=[1. 2.], ar=[0.5], ma=[nan], seasonal_ar=[nan], seasonal_ma=[nan], sigma2=nan)r   zaSARIMAXParams(exog=[1. 2.], ar=[0.5], ma=[0.2], seasonal_ar=[nan], seasonal_ma=[nan], sigma2=nan)gMbP?zcSARIMAXParams(exog=[1. 2.], ar=[0.5], ma=[0.2], seasonal_ar=[0.001], seasonal_ma=[nan], sigma2=nan)gMbPzfSARIMAXParams(exog=[1. 2.], ar=[0.5], ma=[0.2], seasonal_ar=[0.001], seasonal_ma=[-0.001], sigma2=nan)g">$@ziSARIMAXParams(exog=[1. 2.], ar=[0.5], ma=[0.2], seasonal_ar=[0.001], seasonal_ma=[-0.001], sigma2=10.123))r*   r+   r   r,   r   r-   r   reprr    r!   r"   r#   r$   r   r   s      rM   test_repr_strr     s   <!Q3*555D-<A A AD$'''A a O P P P FAMa O P P P %AKa O P P P %AKa O P P P "7Aa ) * * * #8Aa ) * * * AHa , - - - - -rO   )numpyr:   pandasr*   numpy.testingr   r   r   r   statsmodels.tsa.arimar   r   rN   ro   rr   r   r   r   r   r   r   r   r    rO   rM   <module>r      s           O O O O O O O O O O O O 7 7 7 7 7 7 7 7E4 E4 E4PkC kC kC\LM LM LM^(/ (/ (/V8( 8( 8(v%2 %2 %2P     8! ! !>! ! !>  0+- +- +- +- +-rO   