如题,经过多次重复实验所得出的aucp'j'z值怎么画出ROC曲线,谢谢各位大佬指点。
1条回答 默认 最新
- 狼哥ML 2020-05-26 12:58关注
你在每次实验时需要保存下fpr和tpr, 然后可以做个平均化处理,我这里是用的类似宏平均的处理。希望能帮到你。
import numpy as np
from scipy import interpdef get_xy(in_x,in_y): n = len(in_x) all_fpr = np.unique(np.concatenate([in_x[i] for i in range(n)])) # 然后再用这些点对ROC曲线进行插值 mean_tpr = np.zeros_like(all_fpr) for i in range(n): mean_tpr += interp(all_fpr, in_x[i], in_y[i]) # 最后求平均 mean_tpr /= n x = all_fpr y = mean_tpr return x,y x1 = np.array([[1,5,10],[2,4,8],[2,6,9]],dtype=float) y1 = np.array([[2,5,9],[3,6,9],[1,4,10]],dtype=float) x2,y2 = get_xy(x1,y1) print(x2,y2)
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决评论 打赏 举报无用 1