TimeVaryingNelsonSiegelResult._summary_table#

TimeVaryingNelsonSiegelResult._summary_table()[source]#

Structured summary rendered by every display path.

Four rows – the three factors and the log decay – with mean, persistence and innovation standard deviation; metadata naming the filter beside the approximate likelihood and criteria; notes stating that the likelihood is a filter approximation and where the unconditional and smoothed decays put the curvature hump.

Return type:

SummaryTable

Returns:

The SummaryTable behind summary().

Example

>>> import numpy as np
>>> res = TimeVaryingNelsonSiegelResult(
...     panel=np.zeros((30, 4)), maturities=np.array([1.0, 2.0, 5.0, 10.0]),
...     mu=np.array([5.0, -1.5, 0.5]), ar=np.array([0.95, 0.9, 0.8]),
...     state_innovation_cov=np.eye(3), measurement_var=np.full(4, 0.01),
...     log_decay_mean=np.log(0.6), decay_ar=0.9, decay_sd=0.1,
...     factors=np.zeros((30, 3)), factor_cov=np.tile(np.eye(3), (30, 1, 1)),
...     log_decay=np.full(30, np.log(0.6)), log_decay_std=np.full(30, 0.1),
...     llf=100.0, filter="unscented", nobs=30, n_params=19.0,
... )
>>> table = res._summary_table()
>>> table.title
'Dynamic Nelson-Siegel (time-varying decay) Results'
>>> table.rows[3]
('log decay', '-0.5108', '0.9000', '0.1000')
>>> dict(table.metadata)["Filter"], table.notes[0][:33]
('unscented', 'Likelihood is the unscented filte')