python - Issue with the optional list of label indices to include in the classification report -


i having issues labels , target_names attributes of sklearn.metrics.classification_report.

the documentation says:

  • labels: array, shape = [n_labels]. optional list of label indices include in report.
  • target_names: list of strings. optional display names matching labels (same order).

however, in cases not seem follow specify in labels , target_names.

example:

from sklearn.metrics import classification_report sklearn.preprocessing import labelbinarizer  y_true = ['default_label', 'location', 'date', 'default_label', 'name', 'id', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'date', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'name', 'name', 'name', 'default_label', 'name', 'default_label', 'date', 'default_label', 'date', 'default_label', 'date', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label'] y_pred = ['location', 'location', 'date', 'default_label', 'name', 'id', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'date', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'name', 'name', 'name', 'default_label', 'name', 'default_label', 'date', 'default_label', 'date', 'default_label', 'date', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label', 'default_label']  lb = labelbinarizer() y_true_combined = lb.fit_transform(y_true) y_pred_combined = lb.transform(y_pred)  tagset = set(lb.classes_) - {'default_label'} tagset = list(tagset) tagset = sorted(tagset) class_indices = {cls: idx idx, cls in enumerate(lb.classes_)} labels = [class_indices[cls] cls in tagset]  print(classification_report(y_true_combined, y_pred_combined, labels = labels,                              target_names = tagset)) 

returns:

             precision    recall  f1-score   support         date       1.00      1.00      1.00         5          id       1.00      1.00      1.00         1    location       0.50      1.00      0.67         1        name       1.00      1.00      1.00         5  avg / total       1.00      1.00      1.00       295 

which means default_label label not ignored (in support column, number 295 higher 5+1+1+5 sum), unlike specified.

if comment line tagset = sorted(tagset), expected classification report default_label label ignored:

             precision    recall  f1-score   support         date       1.00      1.00      1.00         5    location       0.50      1.00      0.67         1        name       1.00      1.00      1.00         5          id       1.00      1.00      1.00         1  avg / total       0.96      1.00      0.97        12 

why?

i use scikit-learn 0.17 python 2.7.11 x64.


Comments

Popular posts from this blog

sql - VB.NET Operand type clash: date is incompatible with int error -

SVG stroke-linecap doesn't work for circles in Firefox? -

python - TypeError: Scalar value for argument 'color' is not numeric in openCV -