kuangzirui 2021-12-16 11:44 采纳率: 0%
浏览 32
已结题

非平衡数据未处理前ROC值就为1

问题遇到的现象和发生背景

非平衡数据比例未86002:1825,已经处于严重不平衡状态,但是在计算ROC值得出值就为1,不知道是什么原因,感激不尽。

问题相关代码,请勿粘贴截图
#导入一些相关库
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import clas
from sklearn.metrics import roc_curve, auc
from sklearn.preprocessing import scale
import pandas as pd
#导入数据
df=pd.read_excel(r"D:/Datasource 02.xlsx").fillna(0)
x=df.iloc[:,1:-1]
y=df["Fatal"]
print(y.value_counts())
print("-------------------------")
print(y.value_counts(normalize=True))

def get_result_data(x,y):
    x_=scale(x,with_mean=True,with_std=True)
    x_train,x_test,y_train,y_test=train_test_split(x,y,test_size=0.4,random_state=0)
    model=LogisticRegression()
    clf=model.fit(x_train,y_train)
    print("LR模型测试成绩:{:.2f}".format(clf.score(x_test,y_test)))
    y_pred=clf.predict(x_test)
    target_names = ['class 0', 'class 1']
    print(classification_report(y_test, y_pred, target_names=target_names))
    y_pred1=clf.decision_function(x_test)
    fpr,tpr,threshold=roc_curve(y_test,y_pred1)
    rocauc=auc(fpr,tpr)#计算AUC
    print("ROC分数:{:.2f}".format(rocauc))

if __name__=="__main__":
    get_result_data(x,y)

运行结果及报错内容

img

  • 写回答

1条回答 默认 最新

  • 有问必答小助手 2021-12-17 19:39
    关注

    你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答


    本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。


    因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。

    评论

报告相同问题?

问题事件

  • 系统已结题 12月24日
  • 创建了问题 12月16日

悬赏问题

  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序
  • ¥15 onvif+openssl,vs2022编译openssl64
  • ¥15 iOS 自定义输入法-第三方输入法
  • ¥15 很想要一个很好的答案或提示
  • ¥15 扫描项目中发现AndroidOS.Agent、Android/SmsThief.LI!tr
  • ¥15 怀疑手机被监控,请问怎么解决和防止
  • ¥15 Qt下使用tcp获取数据的详细操作
  • ¥15 idea右下角设置编码是灰色的