MATLAB中混淆矩阵的ROC曲线

时间:2015-10-16 18:53:16

标签: matlab statistics roc

我正在努力寻找二元结果的最佳预测因子。

对于每种情况,A< X和B> Y = C = Z%。 A和B是链接的变量(剂量X与体积Y%)。 C是每种情况下看到的频率。

然后,我有不同的C阈值,我可以用来预测二元结果(P)。 我也有(O) - 真实结果(二进制)。

我正在查看多个X,Y和C值,这些值最适合P到O.

因此,对于X(4个离散点)和Y(10%间隔10-90%)的每个组合,我得到结果C(%)。对于不同的C阈值(10%间隔10-90%),我有正确预测的病例数,2x2混淆矩阵和灵敏度和(1-特异性)。

在统计方面,我认为我可以使用ROC曲线找到最佳预测因子?但我不确定这是真的还是我可以简单地比较所有组合或只是每个X,Y的不同C的阈值?或者不同的X,Y对于相同的C阈值?或者,如果我应该进行不同的统计测试?

但假设我在做ROC曲线。我在MATLAB(散点图)和y = x(refline =(1,0))中绘制了所有点。所以我知道重要的点是对角线以上的点,但我如何拟合实际的ROC曲线来计算AUC?

我知道这很令人困惑,所以我希望它有意义!

编辑:我目前正在考虑的是,对于每个X,Y组合,我需要一个ROC曲线来表示不同的C阈值。在每种情况下,最佳C阈值是最接近1,0的点(我如何找到?最接近几何?)。然后我比较每个X,Y组合的AUC和最大区域的AUC是最好的吗?

1 个答案:

答案 0 :(得分:0)

我在这些链接上回答了类似的问题: ROC curve and libsvmMATLAB - generate confusion matrix from classifier
请仔细阅读,让我知道你的疑惑。