基于机器学习的心脏病预测方法(1)——心脏病及Heart Disease UCI数据集和Kaggle数据集介绍

本文介绍了心脏病发病的相关因素,如年龄、性别、血压、胆固醇等,并详细探讨了UCI和Kaggle数据集在心脏病预测中的应用,包括数据集属性、预处理步骤以及数据集下载链接,为机器学习模型的建立提供了基础。
摘要由CSDN通过智能技术生成

一、前言

疾病预测研究方法,必须要在实践中检验才能更符合实际的应用。目前,预测疾病的模型很多,但是对于特定的疾病,不同的模型结构和参数选择,对预测结果的影响非常大。此外,疾病本身是一个非常复杂的现象,通常受到环境、个人、社会等多种因素的影响。对于不同的疾病,如何找到与疾病本身相适应的预测模型和方法,从而高效准确的预测发病趋势,提高诊断精度,是目前需要解决的一个问题。
在这里插入图片描述

二、影响心脏病发病因子介绍

影响心脏病发病因子如下:
(1)年龄:作为影响心血管疾病发病因素,有研究报告指出,患有心血管疾病的人数大多为48至50岁,并且年纪越大的群体患心血管疾病种类更多。
(2)性别:据有关研宄表示,男人患心脏病的发病时间比女人要早。人体中含有肝脂酶,其能水解各种脂蛋白中的甘油三酯和磷脂。男子身体中的肝脂酶活性比女子高50%,血浆中的肝脂酶活性增高会使小而密集低密度脂蛋白等致动脉粥样硬化的脂蛋白水平增高。并且男子与女子的生活习性存在差异,男子中抽烟的人群高于女子,基于各种原因导致不同性别对于心脏病的发病几率存在差异。
(3)胸部疼痛类型:冠心病是最常见的心脏病,供血不足是它最主要的诱因。本文根据心脏病种类将胸部疼痛类型分为基于心绞痛的疼痛和非心绞痛疼痛,再根据临床表现分为典型心绞痛与非典型心绞痛
(4)静止血压:在心血管疾病中,第一预防的影响因子就是血压。血压越高,患有心血管疾病的可能性也越高,而且没有一个确定的阈值,甚至血压的升高会导致心血管疾病的发病率出现指数型增长的态势。
(5)血清胆固醇含量:血清总胆固醇的增高是诱发心肌梗死疾病的重要危险因素之一,也是心血管疾病发病重要的危险因素之一。大量医学研宂和临床实验证实,血浆胆固醇水平与冠心病发病之间呈线性正相关,血清总胆固醇水平增高会增加冠心病和缺血性卒中的发病概率。因此,控制血清胆固醇对于治疗冠心病、卒中一级预防等疾病中都具有重要的作用。
(6)空腹血糖浓度:相关研究证实高血糖状态会对损伤人体的血管,而餐后出现血糖很高的话,则会直接导致血管内皮细胞的损伤。这是因为餐后血糖增高后,血管内皮细胞的通透性也随之而增加,从而出现间质水肿与基质增多的现象,导致血管内皮细胞黏附分子的表达增强,进而促使更多的单核细胞粘附在血管壁上,最终引起肿瘤,动脉粥样硬化等疾病。研究表明,通过控制餐食中摄入从而控制餐后血糖,能够有效减少人群中心肌梗死疾病的发生率。
(7)平静状态下的心电图结果:ST-T改变代表心室复极过程,ST-T改变在异常心电图中最为常见,它在医院拍出的各类非正常图片中占有五成以上比例。当左心室的冠状动脉出现问题时,人体射血能力减弱,从而导致肺部血液不畅通,血液堆积左心室使其扩大,左心室肥大也代表心脏发病几率提升。
(8)最大心率:般来说,心跳快的人比心跳慢的人是更容易患心血管疾病,人体内的交感神经处于比较兴奋的状态时,就会分泌出大量的肾上腺素等激素,在这些激素的刺激下,人体会出现心率加快、血压升高、呼吸也加快等症状。当交感神经一直处于非常活跃的状态时,分泌的肾上腺素也会不断增加,从而进一步消耗心脏的能量。因此,当心率过快的时候,发生高血压的几率就会越高,患心血管病的风险也会随之而增加。
(9)运动状态引起的身体变化:研究表明,在运动过程中可以发现身体隐形的疾病,比如在运动中出现胸闷,心绞痛等症状时存在心脏病的几率上升。运动中所导致的ST段改变也是心脏病参考参数之一。运动剧烈时乳酸分泌增加心脏供血不足从而导致ST段下降;ST段抬高存在一定心肌梗死的几率;ST段正常是心肌缺血的另外一种心电图表示。
(10)血管数目:单位重量的肥大心肌毛细血管数目减少是衡量心肌肥大的一个重要指标,其表现为心肌内的微动脉的生长速度以及毛细血管的生长明速度显著低于心肌细胞体积的增长速度。当患者的心肌的结构是偏胖厚时,因为毛细血管数量与正常人相比较少,同时氧的扩散距离不断变大,从而会使心肌缺乏氧气吸收,因此肥大心肌在负荷增加时常处于缺氧状态,致无氧代谢加强。
(11)透视中已被染色的血管数是否为地中海贫血:地中海贫血全程“珠蛋白生成障碍性贫血”,主要是贫血遗传造成。其共同特点是患者均缺少珠蛋白,使得人体中的珠蛋白肽链只能合成少数几种,大多数为缺失。在长时间的贫血情况下,心脏增大同时心脏功能缺失。地中海贫血有几率对心脏病的产生造成影响。

从医学角度出发,血管,血压,血糖,心率,运动时的身体状态等指标对于心血管疾病的诊断具有十分重要的作用,由此,利用机器学习方法对原始数据进行处理时要重点关注以上几个重要的特征属性,并对其进行预处理,进而提升预测指标的性能。

三、UCI数据集

3.1 介绍

该数据库包含76个属性,但所有已发布的实验都提到使用其中14个属性的子集。特别是,克里夫兰数据库是迄今为止唯一被ML研究人员使用的数据库。“target”字段是指患者是否患有心脏病。
在这里插入图片描述
选择黄标Data Folder中的processed.cleveland.data文件即为数据集内容。
之后可以根据实际需要将数据集转化为csv文件并加上表头
在这里插入图片描述

3.2 属性

数据集属性如下:
1)age-年龄
2)sex-性别 (1 =男性; 0 =女性)
3)cp-胸痛类型(4个值,值1:典型的心绞痛,值2:非典型心绞痛,值3:非心绞痛,值4:无症状)
4)trestbps-患者入院时的静息血压(单位:mm Hg)
5)chol-血清胆固醇水平(单位:mg / dl)
6)fbs-空腹血糖(> 120 mg / dl ,1=真;0=假)
7)restecg-静息心电图结果(值0:正常,值1:有ST-T波异常(T波倒置和/或ST升高或降低> 0.05 mV),值2:根据Estes的标准显示可能或确定的左心室肥大)
8)thalach-达到的最大心率
9)exang-运动引起的心绞痛(1 =是; 0 =否)
10 )oldpeak-运动相对于休息引起的ST压低
11)slope-最高运动ST段的斜率,(值1:上坡,值2:平坦,值3 :下坡)
12)ca-萤光显色的主要血管数目(0-3)
13)thal-一种称为地中海贫血的血液疾病(3=正常;6=固定缺陷;7=可逆缺陷)
14)target- 患者是否患有心脏病。它是从0(不存在)到4的整数值。 Cleveland 数据库的实验集中在试图区分存在(值1、2、3、4)和不存在(值0)。

3.3 数据集预处理

获得数据集后,一般需要进行预处理,官网原始数据集一共有303行, 14列,行索引从0-302,其中ca列有4个缺失值,行索引分别为166,192,287,302;thal列有2个缺失值,行索引分别为87,266;去除缺失值后,UCI Heart Disease Dataset数据集[297 rows x 14 columns];thal指标用0,1,2进行替换;target指标换为存在(值1)和不存在(值0),方便做二分类。

3.4 原始数据集下载地址

数据集官方链接:https://archive.ics.uci.edu/ml/datasets/Heart+Disease

四、Kaggle数据集介绍

4.1 介绍

在这里插入图片描述

数据集与上一章节UCI数据集的内容数据基本一致,target指标为患病(值1)和不患病(值0)。

4.2 属性

  1. age
  2. sex
  3. chest pain type (4 values)
  4. resting blood pressure
  5. serum cholestoral in mg/dl
  6. fasting blood sugar > 120 mg/dl
  7. resting electrocardiographic results (values 0,1,2)
  8. maximum heart rate achieved
  9. exercise induced angina
  10. oldpeak = ST depression induced by exercise relative to rest
  11. the slope of the peak exercise ST segment
  12. number of major vessels (0-3) colored by flourosopy
  13. thal: 0 = normal; 1 = fixed defect; 2 = reversable defect
    患者的姓名和社会保险号码最近从数据库中删除,取而代之的是虚拟值。

Kaggle数据集[1025 rows x 14 columns]

4.3 下载地址

数据集链接:https://www.kaggle.com/datasets/johnsmith88/heart-disease-dataset


为防止链接失效,这里我也提供了预处理后的数据集链接csv文件:https://download.csdn.net/download/didi_ya/87450728
UCI Heart Disease Dataset.csv是对官网数据集做处理后的数据集,heart为Kaggle数据集。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

wendy_ya

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

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

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

打赏作者

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

抵扣说明:

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

余额充值