python实现如何计算0.1% PPV?
阳性:positive(P)
阴性:negative(N)
真阳性:True positive(TP)
假阳性:False positive(FP)
真阴性:True negative(TN)
假阴性:False negative(FN)
阳性预测值 = 真阳性数量 / (真阳性数量+ 假阳性数量)= TP / (TP + FP)
PPV实际上就是在说:预测出来的所有阳性样本中,有多少是真阳性;
def PPV(label, prob):# label对应真实的标签,prob对应真实的值df = pd.DataFrame({"label": label, "prob": prob})# 进行升序,并且改变对于的indexdf = df.sort_values("prob", ascending=False).reset_index(drop=True)# 得到0.1%的数据df_top = df[:int(df.shape[0] * 0.001)]# 计算ppVreturn df_top[df_top.label == 1].shape[0] * 1. / df_top.shape[0]
参考博客:https://blog.csdn.net/u014264373/article/details/80482680
https://blog.csdn.net/u014264373/article/details/80482680
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
