def tidy(fit): from statsmodels.iolib.summary import summary_params_frame tidied = summary_params_frame(fit).reset_index() rename_cols = { 'index': 'term', 'coef': 'estimate', 'std err': 'std_err', 't': 'statistic', 'P>|t|': 'p_value', 'Conf. Int. Low': 'conf_int_low', 'Conf. Int. Upp.': 'conf_int_high' } return tidied.rename(columns=rename_cols)
def summary_frame(self, xname=None, alpha=0.05): if self.effect is not None: # we have everything for a params table use_t = (self.distribution == 't') yname='constraints' # Not used in params_frame if xname is None: xname = ['c%d'%ii for ii in range(len(self.effect))] from statsmodels.iolib.summary import summary_params_frame summ = summary_params_frame((self, self.effect, self.sd, self.statistic,self.pvalue, self.conf_int(alpha)), yname=yname, xname=xname, use_t=use_t) return summ else: # TODO: create something nicer raise NotImplementedError('only available for t and z')
def summary_frame(self, xname=None, alpha=0.05): """Return the parameter table as a pandas DataFrame This is only available for t and normal tests """ if self.effect is not None: # we have everything for a params table use_t = (self.distribution == 't') yname = 'constraints' # Not used in params_frame if xname is None: xname = self.c_names from statsmodels.iolib.summary import summary_params_frame summ = summary_params_frame( (self, self.effect, self.sd, self.statistic, self.pvalue, self.conf_int(alpha)), yname=yname, xname=xname, use_t=use_t, alpha=alpha) return summ else: # TODO: create something nicer raise NotImplementedError('only available for t and z')