def means(self):
    "\n        display descriptive statistics for the table; summary statistics. This is an alias for 'describe'\n\n        :return:\n        "
    dsopts = self._dsopts().partition(';\n\tformat')
    code = ((((('proc means data=' + self.libref) + '.') + self.table) + dsopts[0]) + ' stackodsoutput n nmiss median mean std min p25 p50 p75 max;')
    code += ((dsopts[1] + dsopts[2]) + 'run;')
    if self.sas.nosub:
        print(code)
        return
    ll = self._is_valid()
    if (self.results.upper() == 'PANDAS'):
        code = ('proc means data=%s.%s %s stackodsoutput n nmiss median mean std min p25 p50 p75 max; %s ods output Summary=work._summary; run;' % (self.libref, self.table, dsopts[0], (dsopts[1] + dsopts[2])))
        return self._returnPD(code, '_summary')
    elif self.HTML:
        if (not ll):
            ll = self.sas._io.submit(code)
        if (not self.sas.batch):
            self.sas.DISPLAY(self.sas.HTML(ll['LST']))
        else:
            return ll
    else:
        if (not ll):
            ll = self.sas._io.submit(code, 'text')
        if (not self.sas.batch):
            print(ll['LST'])
        else:
            return ll
display descriptive statistics for the table; summary statistics. This is an alias for 'describe'

:return:
def means(self):
    "\n        display descriptive statistics for the table; summary statistics. This is an alias for 'describe'\n\n        :return:\n        "
    dsopts = self._dsopts().partition(';\n\tformat')
    code = ((((('proc means data=' + self.libref) + '.') + self.table) + dsopts[0]) + ' stackodsoutput n nmiss median mean std min p25 p50 p75 max;')
    code += ((dsopts[1] + dsopts[2]) + 'run;')
    if self.sas.nosub:
        print(code)
        return
    ll = self._is_valid()
    if (self.results.upper() == 'PANDAS'):
        code = ('proc means data=%s.%s %s stackodsoutput n nmiss median mean std min p25 p50 p75 max; %s ods output Summary=work._summary; run;' % (self.libref, self.table, dsopts[0], (dsopts[1] + dsopts[2])))
        return self._returnPD(code, '_summary')
    elif self.HTML:
        if (not ll):
            ll = self.sas._io.submit(code)
        if (not self.sas.batch):
            self.sas.DISPLAY(self.sas.HTML(ll['LST']))
        else:
            return ll
    else:
        if (not ll):
            ll = self.sas._io.submit(code, 'text')
        if (not self.sas.batch):
            print(ll['LST'])
        else:
            return ll