
    'YHh                         d dl mZ d dlmZ d dlZd dlmZ ej                  Z	 e
dddddddd	d	d
dddd      Z G d d      Zd Zd ZddZddZy)    )lzip)StringION)SimpleTable   =-%scrltxt)
empty_cellcolseprow_prerow_posttable_dec_abovetable_dec_belowheader_dec_below
header_fmtstub_fmttitle_alignheader_aligndata_alignsstubs_alignfmtc                       e Zd Z eg dddddddddddddd	d
      Z eedgdddd      Z eeg dddddd      Zd Zd ZddZ	d Z
d Zd Zd Zy)
VARSummary)%#15.6Fr   %#15.3Fz%#14.3Fr   r   r   r	   r
   r   r   r   r   )	data_fmtsr   r   r   r   r   r   r   r   r   r   r   r   r   r       N)r!   	colwidthsr   r   r   )%#12.6gr%   z%#10.4gz%#5.4gz    )r!   r$   r   r   r   r   c                 <    || _         | j                         | _        y N)modelmakesummary)self	estimators     Y/var/www/html/planif/env/lib/python3.12/site-packages/statsmodels/tsa/vector_ar/output.py__init__zVARSummary.__init__E   s    
yy{    c                     | j                   S r'   )r*   )r+   s    r-   __repr__zVARSummary.__repr__I   s    ||r/   c                 F   t               }|j                  | j                         dz          |j                  | j                         dz          |j                  | j	                         dz          |j                  | j                         dz          |j                         S )z&
        Summary of VAR model
        
)r   write_header_table_stats_table_coef_table_resid_infogetvalue)r+   endog_names
exog_namesbufs       r-   r)   zVARSummary.makeL   s     j		$$$&-.		$##%,-		$""$t+,		$""$t+,||~r/   c                     dd l }| j                  }|j                         }d}|j                  gdg|j	                  d|      g|j	                  d|      gg}d }d}t        ||||| j                        }t        |      S )Nr   zSummary of Regression ResultsOLSz%a, %d, %b, %Yz%H:%M:%S)zModel:zMethod:zDate:zTime:titletxt_fmt)timer(   	localtime_model_typestrftimer   	part1_fmtstr)	r+   rB   r(   t
part1title	part1datapart1header
part1stubspart1s	            r-   r5   zVARSummary._header_tableY   s    

NN 5
''(Wmm$4a89mmJ235	 
 I{J",dnnF 5zr/   c                    | j                   }d}d}|j                  g|j                  g|j                  g|j                  gg}|j
                  g|j                  g|j                  g|j                  gg}d }t        |||| j                        }t        |||| j                        }|j                  |       t        |      S )N)zNo. of Equations:zNobs:zLog likelihood:zAIC:)zBIC:zHQIC:zFPE:zDet(Omega_mle):)rA   )r(   neqsnobsllfaicbichqicfpedetomegar   	part2_fmtextend_rightrG   )	r+   r(   part2Lstubspart2Rstubs
part2Ldata
part2Rdatapart2Lheaderpart2Lpart2Rs	            r-   r6   zVARSummary._stats_tables   s    
 

* zzlUZZL599+		{K
yykEJJ<%))u~~>NO
Z{'+~~7Z{'+~~7F#6{r/   c                 :   | j                   }|j                  }| j                   j                  }t        |j                  j
                  j                         |j                  j
                  j                         |j                  j
                  j                         |j                  j
                  j                               }d}t               }||j                  z  |j                  z   |j                  z   }t        |      D ]  }d|j                  |   z  }	|j!                  |	dz          t#        |||z  ||dz   z   ||d | j$                        }
|j!                  t'        |
      dz          ||dz
  k  su|j!                  d        |j)                         S )N)coefficientz
std. errorzt-statprobzResults for equation %sr3      r?   )r(   rO   r;   r   paramsTravelstderrtvaluespvaluesr   k_ark_trendk_exog_userrangenamesr4   r   default_fmtrG   r9   )r+   r(   kXnamesdataheaderr<   dimisectiontables              r-   r7   zVARSummary._coef_table   sH   

JJ&&ELLNN((*LLNN((*MMOO))+MMOO))+-
 >j%**nu}},u/@/@@q 		 A/%++a.@GIIgn%S1Wsa!e} =v &dd>N>NPEIIc%j4'(1q5y		$		  ||~r/   c                     t               }| j                  j                  }|j                  d       |j                  t	        | j                  j
                  ||      dz          |j                         S )Nz Correlation matrix of residuals
r3   )r   r(   rn   r4   pprint_matrix
resid_corrr9   )r+   r<   rn   s      r-   r8   zVARSummary._resid_info   sU    j

  		:;		-

 5 5ueDtKL||~r/   NN)__name__
__module____qualname__dictro   rF   rW   r.   r1   r)   r5   r6   r7   r8    r/   r-   r   r      s     >%K* FI <I#448r/   r   c                 $    d}d}t        | ||      S )Nz"Normality skew/kurtosis Chi^2-testz3H_0: data generated by normally-distributed process)hypothesis_test_table)resultsr@   null_hyps      r-   normality_summaryr      s    0EDH %::r/   c           	         t        t        g d      }t               }t        | d   | d   | d   t	        | d         ggg ddgd |	      }|j                  |d
z          |j                  t	        |      d
z          |j                  |d
z          |j                  d| d   z         |j                  d| d   dz  z         |j                         S )N)r   r   r    r
   )r!   	statistic
crit_valuepvaluedf)zTest statisticzCritical Valuezp-valuer   r   r?   r3   zConclusion: %s H_0
conclusionz at %.2f%% significance levelsignifd   )r   _default_table_fmtr   r   rG   r4   r9   )r   r@   r   r   r<   rw   s         r-   r   r      s    
!>@C *C'+.!,/!(+gdm,. /!#D#?E IIedlIIc%j4 IIhoII"W\%::;II-1BS1HIJ<<>r/   c           
         t               }t        |      t        |      }}|1d}|D cg c]#  }t        t        t        |            dz   |      % }}n|f|z  }t        |D 	cg c]  }	t        t        |	             c}	      dz   }
t	        d|
      }t        |      D ]  \  }}|t	        |||         z  } |j                  |dz          t        |      D ]T  \  }}d|z  j                  |
      }t        |      D ]  }|t	        | ||f   ||         z  } |j                  |dz          V |j                         S c c}w c c}	w )N
      r   r3   r
   )
r   lenmaxrG   _pfixed	enumerater4   ljustrm   r9   )valuesrlabelsclabels	col_spacer<   re   K	min_spacer   x	row_spaceheadjhru   rlablines                    r-   ry   ry      sK   
*Cw<WqA	>EFSSVq)4F	FL1$	'2QSQ[23a7I2y!D'" )19Q<(() IIdTkW% 4t""9-q 	7AGF1Q3K166D	7 			$+ <<>+ G 3s   (D?#Ec                     t        | t              r!|r	 ||       }nd| z  }|j                  |      S d| z  d | j                  |      S )Nz%#8.6Fr
   )
isinstancefloatrjust)sspacenanRepfloat_format	formatteds        r-   r   r      sL    !U$QI 1Iu%%q&5!''..r/   r'   r{   )statsmodels.compat.pythonr   ior   numpynpstatsmodels.iolibr   arraymatr   r   r   r   r   ry   r   r   r/   r-   <module>r      sp    *   )hh
 $S Sl;.>	/r/   