report#
- scikitplot.kds.report(y_true, y_probas, *, pos_label=None, class_index=1, display_term_tables=True, digits=3, ax=None, fig=None, figsize=(12, 7), title_fontsize='large', text_fontsize='medium', plot_style=None, data=None, **kwargs)[source]#
Generates a decile table and four plots:
Lift
->plot_lift
Lift@Decile
->plot_lift_decile_wise
Gain
->plot_cumulative_gain
KS
->plot_ks_statistic
from labels and probabilities.
- Parameters:
- y_truearray-like, shape (n_samples,)
Ground truth (correct) target values.
- y_probasarray-like, shape (n_samples, n_classes)
Prediction probabilities for each class returned by a classifier.
- class_indexint, optional, default=1
Index of the class of interest for multi-class classification. Ignored for binary classification.
- labelsbool, optional, default=True
If True, prints a legend for the abbreviations of decile table column names.
Deprecated since version 0.3.9: This parameter is deprecated and will be removed in version 0.5.0. Use
display_term_tables
instead.- display_term_tablesbool, optional, default=True
If True, prints a legend for the abbreviations of decile table column names.
Added in version 0.3.9.
- axmatplotlib.axes.Axes, optional, default=None
The axes upon which to plot. If None, a new set of axes is created.
- figsizetuple of int, optional, default=None
Tuple denoting figure size of the plot (e.g., (6, 6)).
- title_fontsizestr or int, optional, default=’large’
Font size for the plot title. Use e.g., “small”, “medium”, “large” or integer-values.
- text_fontsizestr or int, optional, default=’medium’
Font size for the text in the plot. Use e.g., “small”, “medium”, “large” or integer-values.
- digitsint, optional, default=3
Number of digits for formatting output floating point values. Use e.g., 2 or 4.
Added in version 0.3.9.
- plot_stylestr, optional, default=None
Check available styles with “plt.style.available”. Examples include: [‘ggplot’, ‘seaborn’, ‘bmh’, ‘classic’, ‘dark_background’, ‘fivethirtyeight’, ‘grayscale’, ‘seaborn-bright’, ‘seaborn-colorblind’, ‘seaborn-dark’, ‘seaborn-dark-palette’, ‘tableau-colorblind10’, ‘fast’].
Added in version 0.3.9.
- Returns:
- pandas.DataFrame
The dataframe containing the decile table with the deciles and related information.
See also
plot_lift
Generates the Decile based cumulative Lift Plot from labels and probabilities.
plot_lift_decile_wise
Generates the Decile-wise Lift Plot from labels and probabilities.
plot_cumulative_gain
Generates the cumulative Gain Plot from labels and probabilities.
plot_ks_statistic
Generates the Kolmogorov-Smirnov (KS) Statistic Plot from labels and probabilities.
print_labels
A legend for the abbreviations of decile table column names.
decile_table
Generates the Decile Table from labels and probabilities.
References
[1] tensorbored/kds
Examples
>>> from sklearn.datasets import load_breast_cancer as data_2_classes >>> from sklearn.model_selection import train_test_split >>> from sklearn.tree import DecisionTreeClassifier >>> import scikitplot as skplt >>> X, y = data_2_classes(return_X_y=True, as_frame=True) >>> X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.5, random_state=0) >>> clf = DecisionTreeClassifier(max_depth=1, random_state=0).fit(X_train, y_train) >>> y_prob = clf.predict_proba(X_test) >>> dt = skplt.kds.report( >>> y_test, y_prob, class_index=1 >>> ) >>> dt
LABELS INFO: prob_min : Minimum probability in a particular decile prob_max : Minimum probability in a particular decile prob_avg : Average probability in a particular decile cnt_events : Count of events in a particular decile cnt_resp : Count of responders in a particular decile cnt_non_resp : Count of non-responders in a particular decile cnt_resp_rndm : Count of responders if events assigned randomly in a particular decile cnt_resp_wiz : Count of best possible responders in a particular decile resp_rate : Response Rate in a particular decile [(cnt_resp/cnt_cust)*100] cum_events : Cumulative sum of events decile-wise cum_resp : Cumulative sum of responders decile-wise cum_resp_wiz : Cumulative sum of best possible responders decile-wise cum_non_resp : Cumulative sum of non-responders decile-wise cum_events_pct : Cumulative sum of percentages of events decile-wise cum_resp_pct : Cumulative sum of percentages of responders decile-wise cum_resp_pct_wiz : Cumulative sum of percentages of best possible responders decile-wise cum_non_resp_pct : Cumulative sum of percentages of non-responders decile-wise KS : KS Statistic decile-wise lift : Cumuative Lift Value decile-wise
decile prob_min prob_max prob_avg cnt_cust cnt_resp cnt_non_resp cnt_resp_rndm cnt_resp_wiz resp_rate cum_cust cum_resp cum_resp_wiz cum_non_resp cum_cust_pct cum_resp_pct cum_resp_pct_wiz cum_non_resp_pct KS lift 0 1 0.923 0.923 0.923 29.0 26.0 3.0 18.4 NaN 89.655 29.0 26.0 NaN 3.0 10.175 14.130 NaN 2.970 11.160 1.389 1 2 0.923 0.923 0.923 28.0 25.0 3.0 18.4 29.0 89.286 57.0 51.0 29.0 6.0 20.000 27.717 15.761 5.941 21.776 1.386 2 3 0.923 0.923 0.923 29.0 27.0 2.0 18.4 28.0 93.103 86.0 78.0 57.0 8.0 30.175 42.391 30.978 7.921 34.470 1.405 3 4 0.923 0.923 0.923 28.0 23.0 5.0 18.4 29.0 82.143 114.0 101.0 86.0 13.0 40.000 54.891 46.739 12.871 42.020 1.372 4 5 0.923 0.923 0.923 29.0 26.0 3.0 18.4 28.0 89.655 143.0 127.0 114.0 16.0 50.175 69.022 61.957 15.842 53.180 1.376 5 6 0.923 0.923 0.923 28.0 26.0 2.0 18.4 29.0 92.857 171.0 153.0 143.0 18.0 60.000 83.152 77.717 17.822 65.330 1.386 6 7 0.049 0.923 0.833 29.0 24.0 5.0 18.4 28.0 82.759 200.0 177.0 171.0 23.0 70.175 96.196 92.935 22.772 73.424 1.371 7 8 0.049 0.049 0.049 28.0 2.0 26.0 18.4 13.0 7.143 228.0 179.0 184.0 49.0 80.000 97.283 100.000 48.515 48.768 1.216 8 9 0.049 0.049 0.049 29.0 1.0 28.0 18.4 0.0 3.448 257.0 180.0 184.0 77.0 90.175 97.826 100.000 76.238 21.588 1.085 9 10 0.049 0.049 0.049 28.0 4.0 24.0 18.4 0.0 14.286 285.0 184.0 184.0 101.0 100.000 100.000 100.000 100.000 0.000 1.000