当我想在python中存储recall_分数时,如何为每个值指定一个类标签?
在一个多类分类问题(包括15个类)中,我想存储召回分数(或精度分数) 如何在字典中存储回忆分数以访问每个类的值当我想在python中存储recall_分数时,如何为每个值指定一个类标签?,python,dictionary,scikit-learn,multiclass-classification,precision-recall,Python,Dictionary,Scikit Learn,Multiclass Classification,Precision Recall,在一个多类分类问题(包括15个类)中,我想存储召回分数(或精度分数) 如何在字典中存储回忆分数以访问每个类的值 clf = RandomForestClassifier(n_estimators=30) X_train, X_test, y_train, y_test = data clf.fit(X_train, y_train) y_pred = clf.predict(X_test) labels = list(set(y_pred)) recall_scores = s
clf = RandomForestClassifier(n_estimators=30)
X_train, X_test, y_train, y_test = data
clf.fit(X_train, y_train)
y_pred = clf.predict(X_test)
labels = list(set(y_pred))
recall_scores = sklearn.metrics.recall_score(y_test, y_pred, average=None, labels=labels, zero_division=1)
虽然我设置了labels属性,但我无法识别每个类的值
这就是我得到的:
[50.0, 100.0, 75.0, 75.0, 100.0, 100.0, 100.0, 100.0, 75.0, 75.0, 75.0, 100.0, 100.0, 75.0, 100.0]
但这正是我想要的:
{'A': 50.0, 'B': 100.0, 'C': 75.0, 'D': 75.0, 'E': 100.0,
'F': 100.0, 'G': 100.0, 'H': 100.0, 'I': 75.0, 'J': 75.0,
'K': 75.0, 'L': 100.0, 'M': 100.0, 'N': 75.0, 'O': 100.0}
我认为这应该做
dict(zip(标签,回忆分数))
@DaveIdito实际上我不想手动做。我希望当值这些都是存储的。如何在recall_score函数中使用“labels”属性?我真的不明白这个函数中标签属性的存在与否有什么帮助。除非您自己编写实现,否则您必须手动执行,而且您不需要这样做,因为您可以解释结果而不会产生任何歧义<需要代码>标签1。对于非二进制分类2。获取每个标签/类别的分数。