quantlab.model.evaluation.regression_panel_metrics#

quantlab.model.evaluation.regression_panel_metrics(pred, target, *, return_series=False)[source]#

Return the eight panel metrics keyed mse, rmse, mae, r2, ic, rank_ic, icir, rank_icir.

ic and icir are the mean and the information_ratio of one cross_sectional_ic_series, and rank_ic and rank_icir of one cross_sectional_rank_ic_series, so each series is computed once.

Parameters:
predarray_like

A 2-D [T, S] panel of predictions.

targetarray_like

A 2-D [T, S] panel of realised values.

return_seriesbool, default False

Also return the two per-row series the IC metrics were computed from, as {"ic": ..., "rank_ic": ...} (length T, NaN on a skipped row).

Returns:
dict or tuple

The metrics, or (metrics, series) when return_series is True.

Examples

>>> metrics = regression_panel_metrics(pred, target)
>>> sorted(metrics)
['ic', 'icir', 'mae', 'mse', 'r2', 'rank_ic', 'rank_icir', 'rmse']
>>> metrics["rank_ic"]
1.0
>>> metrics, series = regression_panel_metrics(pred, target, return_series=True)
>>> series["rank_ic"]
array([1., 1.])