'Experimental summary function for ARIMA Results
Parameters
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
float_format: string
print format for floats in parameters summary
Returns
smry : Summary instance
This holds the summary table and text, which can be printed or
converted to various output formats.
See Also
statsmodels.iolib.summary2.Summary : class to hold summary
results'

def summary2(self, title=None, alpha=0.05, float_format='%.4f'):

    from pandas import DataFrame
    k_diff = getattr(self, 'k_diff', 0)
    if ('mle' in self.model.method):
        start = k_diff
    else:
        start = (k_diff + self.k_ar)
    if (self.data.dates is not None):
        dates = self.data.dates
        sample = [dates[start].strftime('%m-%d-%Y')]
        sample += [dates[(-1)].strftime('%m-%d-%Y')]
    else:
        sample = ((str(start) + '    -    ') + str(len(self.data.orig_endog)))
    (k_ar, k_ma) = (self.k_ar, self.k_ma)
    if (k_ma and k_ar):
        arstubs = [('AR.%d' % i) for i in range(1, (k_ar + 1))]
        mastubs = [('MA.%d' % i) for i in range(1, (k_ma + 1))]
        stubs = (arstubs + mastubs)
        roots = np.r_[(self.arroots, self.maroots)]
        freq = np.r_[(self.arfreq, self.mafreq)]
    elif k_ma:
        mastubs = [('MA.%d' % i) for i in range(1, (k_ma + 1))]
        stubs = mastubs
        roots = self.maroots
        freq = self.mafreq
    elif k_ar:
        arstubs = [('AR.%d' % i) for i in range(1, (k_ar + 1))]
        stubs = arstubs
        roots = self.arroots
        freq = self.arfreq
    else:
        stubs = []
    if len(stubs):
        modulus = np.abs(roots)
        data = np.column_stack((roots.real, roots.imag, modulus, freq))
        data = DataFrame(data)
        data.columns = ['Real', 'Imaginary', 'Modulus', 'Frequency']
        data.index = stubs
    from statsmodels.iolib import summary2
    smry = summary2.Summary()
    model_info = summary2.summary_model(self)
    model_info['Method:'] = self.model.method
    model_info['Sample:'] = sample[0]
    model_info['            '] = sample[(-1)]
    model_info['S.D.    of    innovations:'] = ('%#5.3f' % (self.sigma2 ** 0.5))
    model_info['HQIC:'] = ('%#5.3f' % self.hqic)
    model_info['No.    Observations:'] = str(len(self.model.endog))
    params = summary2.summary_params(self)
    smry.add_dict(model_info)
    smry.add_df(params, float_format=float_format)
    if len(stubs):
        smry.add_df(data, float_format='%17.4f')
    smry.add_title(results=self, title=title)
    return smry
