基于机器学习的心脏病预测方法(3)——数据预处理及评价指标介绍

本文介绍了基于机器学习的心脏病预测,包括数据预处理中训练集和测试集的划分,以及评价指标如TP/TN/FP/FN、混淆矩阵、准确率、精准率、召回率、F分数和ROC曲线与AUC的详细解释。
摘要由CSDN通过智能技术生成

心脏数据集下载地址如下:https://download.csdn.net/download/didi_ya/87451172。本文所用数据集与前文数据集介绍中描述数据集均不一致,但属性方法类似,故以本数据集作为举例说明。实际以你的数据集为准。

一、数据预处理

1.1 训练集和测试集的划分

从303份数据中随机抽取80%作为训练集,20%作为测试集。即242份进行训练,61份进行测试。

from sklearn.model_selection import train_test_split

predictors = data.drop("target",axis=1)
target = data["target"]

X_train,X_test,Y_train,Y_test = train_test_split(predictors,target,test_size=0.20,random_state=0)
print("Training features have {0} records and Testing features have {1} records.".\
      format(X_train.shape[0], X_test.shape[0]))

可以查看训练集和测试集的形状:
在这里插入图片描述

二、评价指标介绍

2.1 TP,TN,FP,FN

  • True Positive(TP):本来是正样例,分类成正样例;
  • True Negative(TN):本来是负样例,分类成负样例;
  • False Positive (FP):本来是负样例,分类成正样例;
  • False Negative(FN):本来是正样例,分类成负样例;

在这里插入图片描述

2.2 混淆矩阵

2.3 准确率与精准率

正确预测数与预测总数之间的比例,即所有预测正确的比例
a c c = T P + T N T P + T N + F P + F N acc = \frac{TP + TN}{TP + TN + FP + FN} acc=TP+TN+FP+FNTP+TN

精准率:被预测为正样本里实际为正样本的比例
P r e c i s i o n ( p ) = T P T P + F P Precision (p) = \frac{TP}{TP + FP} Precision(p)=TP+FPTP

2.4 召回率

召回率:所有正样本里被预测正确的比例,公式为:
r e c a l l = T P T P + F N recall = \frac{TP}{TP + FN} recall=TP+FNTP
在这里插入图片描述

2.5 F分数

F分数被称为精确性和召回率的调和平均值,其公式为:
F = 1 1 2 ( 1 p + 1 r ) = 2 p r p + r F = \frac{1}{\frac{1}{2}(\frac{1}{p}+\frac{1}{r})} = \frac{2pr}{p+r} F=21(p1+r1)1=p+r2pr

2.6 ROC曲线和AUC指标


整个项目的主要目标是以最高的准确性预测心脏病的发生。为了实现这一点,我们将测试几种分类算法。接下来将分别介绍心脏病预测的几种机器学习算法及其实现过程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wendy_ya

您的鼓励将是我创作的最大动力~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值