'Summarize the Regression Results
Parameters
yname : string, optional
Default is `y`
xname : list of strings, optional
Default is `var_##` for ## in p the number of regressors
title : string, optional
Title for the top table. If not None, then this replaces the
default title
alpha : float
significance level for the confidence intervals
Returns
smry : Summary instance
this holds the summary tables and text, which can be printed or
converted to various output formats.
See Also
statsmodels.iolib.summary.Summary : class to hold summary
results'

def summary(self, yname=None, xname=None, title=None, alpha=0.05):

    eigvals = self.eigenvals
    condno = self.condition_number
    top_left = [('Dep.    Variable:', None), ('Model:', None), ('Method:', ['Least    Squares']), ('Date:', None), ('Time:', None)]
    top_right = [('Pseudo    R-squared:', [('%#8.4g' % self.prsquared)]), ('Bandwidth:', [('%#8.4g' % self.bandwidth)]), ('Sparsity:', [('%#8.4g' % self.sparsity)]), ('No.    Observations:', None), ('Df    Residuals:', None), ('Df    Model:', None)]
    if (title is None):
        title = ((self.model.__class__.__name__ + '    ') + 'Regression    Results')
    from statsmodels.iolib.summary import Summary
    smry = Summary()
    smry.add_table_2cols(self, gleft=top_left, gright=top_right, yname=yname, xname=xname, title=title)
    smry.add_table_params(self, yname=yname, xname=xname, alpha=0.05, use_t=True)
    etext = []
    if (eigvals[(-1)] < 1e-10):
        wstr = 'The    smallest    eigenvalue    is    %6.3g.    This    might    indicate    '
        wstr += 'that    there    are\n'
        wstr += 'strong    multicollinearity    problems    or    that    the    design    '
        wstr += 'matrix    is    singular.'
        wstr = (wstr % eigvals[(-1)])
        etext.append(wstr)
    elif (condno > 1000):
        wstr = 'The    condition    number    is    large,    %6.3g.    This    might    '
        wstr += 'indicate    that    there    are\n'
        wstr += 'strong    multicollinearity    or    other    numerical    '
        wstr += 'problems.'
        wstr = (wstr % condno)
        etext.append(wstr)
    if etext:
        smry.add_extra_txt(etext)
    return smry
