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/80482680icon-default.png?t=M0H8https://blog.csdn.net/u014264373/article/details/80482680


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部