SummaryTable#

class cultivars.summary.SummaryTable(title, metadata=(), columns=(), rows=(), notes=())#

A rendered-on-demand estimation summary.

Holds the structure of a summary rather than a formatted string, so the same object can render as fixed-width text in a terminal, as HTML in a notebook, or as a dataframe for further analysis. Nothing is formatted until a renderer is called, and no optional dependency is imported unless one of the frame renderers is.

The shape is deliberately narrow: a title, a block of scalar metadata rendered two pairs per line, one coefficient table, and a block of closing notes. That is what an estimation summary is; anything richer belongs in a purpose-built object rather than a general table.

Variables:
  • title – Headline, typically the model specification.

  • metadata – Label/value pairs describing the fit – sample size, method, information criteria.

  • columns – Column headers for the coefficient table.

  • rows – Coefficient table rows. The first entry of each row is the parameter name; the rest align with columns[1:].

  • notes – Closing lines, typically diagnostics or warnings.

Attributes#

Methods#

to_pandas()

Return the coefficient table as a pandas.DataFrame.

to_polars()

Return the coefficient table as a polars.DataFrame.

to_text()

Render the summary as fixed-width text.