CrossValidationReport.metrics.report_metrics#
- CrossValidationReport.metrics.report_metrics(*, data_source='test', X=None, y=None, scoring=None, scoring_names=None, scoring_kwargs=None, pos_label=None, indicator_favorability=False, flat_index=False, aggregate=('mean', 'std'))[source]#
- Report a set of metrics for our estimator. - Parameters:
- data_source{“test”, “train”, “X_y”}, default=”test”
- The data source to use. - “test” : use the test set provided when creating the report. 
- “train” : use the train set provided when creating the report. 
- “X_y” : use the train set provided when creating the report and the target variable. 
 
- Xarray-like of shape (n_samples, n_features), default=None
- New data on which to compute the metric. By default, we use the validation set provided when creating the report. 
- yarray-like of shape (n_samples,), default=None
- New target on which to compute the metric. By default, we use the target provided when creating the report. 
- scoringlist of str, callable, or scorer, default=None
- The metrics to report. You can get the possible list of string by calling - report.metrics.help(). When passing a callable, it should take as arguments- y_true,- y_predas the two first arguments. Additional arguments can be passed as keyword arguments and will be forwarded with- scoring_kwargs. If the callable API is too restrictive (e.g. need to pass same parameter name with different values), you can use scikit-learn scorers as provided by- sklearn.metrics.make_scorer().
- scoring_nameslist of str, default=None
- Used to overwrite the default scoring names in the report. It should be of the same length as the - scoringparameter.
- scoring_kwargsdict, default=None
- The keyword arguments to pass to the scoring functions. 
- pos_labelint, float, bool or str, default=None
- The positive class. 
- indicator_favorabilitybool, default=False
- Whether or not to add an indicator of the favorability of the metric as an extra column in the returned DataFrame. 
- flat_indexbool, default=False
- Whether to flatten the - MultiIndexcolumns. Flat index will always be lower case, do not include spaces and remove the hash symbol to ease indexing.
- aggregate{“mean”, “std”}, list of such str or None, default=(“mean”, “std”)
- Function to aggregate the scores across the cross-validation splits. None will return the scores for each split. 
 
- Returns:
- pd.DataFrame
- The statistics for the metrics. 
 
 - Examples - >>> from sklearn.datasets import load_breast_cancer >>> from sklearn.linear_model import LogisticRegression >>> from skore import CrossValidationReport >>> X, y = load_breast_cancer(return_X_y=True) >>> classifier = LogisticRegression(max_iter=10_000) >>> report = CrossValidationReport(classifier, X=X, y=y, cv_splitter=2) >>> report.metrics.report_metrics( ... scoring=["precision", "recall"], ... pos_label=1, ... indicator_favorability=True, ... ) LogisticRegression Favorability mean std Metric Precision 0.94... 0.02... (↗︎) Recall 0.96... 0.02... (↗︎)