FactorSVResult._summary_table#

FactorSVResult._summary_table()[source]#

Build the structured summary.

Return type:

SummaryTable

Returns:

One row per series with each loading as a posterior mean and 68% band – the fixed cells of the triangular convention printed as such – and the communality; the notes state the sampler, the identification, the factor persistences and that a posterior carries no likelihood or criteria.

Example

>>> import numpy as np
>>> rng = np.random.default_rng(1)
>>> factors = rng.standard_normal((250, 2))
>>> lam = np.array([[1.0, 0.0], [0.5, 1.0], [0.7, -0.3], [0.2, 0.6]])
>>> y = factors @ lam.T + 0.4 * rng.standard_normal((250, 4))
>>> res = FactorSV(y, n_factors=2, series_names=("a", "b", "c", "d")).fit(
...     n_draws=200, n_burn=50, seed=0
... )
>>> table = res._summary_table()
>>> table.columns
('series', 'loading f1 (68%)', 'loading f2 (68%)', 'communality')
>>> table.rows[0][:3], table.rows[1][2]
(('a', '1 (fixed)', '0 (fixed)'), '1 (fixed)')
>>> len(table.notes), table.metadata[3]
(4, ('Draws kept', '150'))