【发布时间】:2021-03-03 14:24:14
【问题描述】:
我是 SciKit 和 Python 的新手。
目前我正在尝试从 csv 文件生成多类(3 类)ROC 曲线,如下所示:
probability,predclass,dist0,dist1,dist2,actualclass
99.94571208953857,1,0.00022618949060415616,99.94571208953857,0.054055178770795465,1
99.99398589134216,0,99.99398589134216,0.001082851395040052,0.004925658140564337,0
99.97997879981995,1,0.015142260235734284,99.97997879981995,0.004879535117652267,1
93.58544945716858,2,5.507804825901985,0.9067309089004993,93.58544945716858,2
92.31788516044617,1,7.572370767593384,92.31788516044617,0.10974484030157328,1
62.839555740356445,1,2.3740695789456367,62.839555740356445,34.786370396614075,2
...
我当前的代码是:
df = pd.read_csv('mydata.csv')
pred = ( df.loc[:,['dist0','dist1','dist2']])/100
actual = df['actualclass']
fpr, tpr, _ = roc_curve(actual, pred)
我已经尝试过这个问题的解决方案:https://stackoverflow.com/a/45335434/14482749
通过做:
for i in range(n_classes):
fpr[i], tpr[i], _ = roc_curve(actual, pred[:, i])
roc_auc[i] = auc(fpr[i], tpr[i])
但收到错误:TypeError: '(slice(None, None, None), 0)' is an invalid key at line 2.
我认为问题出在我的 var 'actual' 但我不确定它是什么
【问题讨论】:
标签: python plot scikit-learn roc multiclass-classification