文章目录
前言
世界卫生组织近日发布报告称,糖尿病患者的数量正以惊人的速度增长,目前全球每年约有320万人死于糖尿病导致的并发症。本项目旨在通过机器学习算法构建预测糖尿病模型。
一、数据收集
【1】Pregnancies:怀孕次数
【2】Glucose:葡萄糖
【3】BloodPressure:血压 (mm Hg)
【4】SkinThickness:皮层厚度 (mm)
【5】Insulin:胰岛素 2小时血清胰岛素(mu U / ml
【6】BMI:体重指数 (体重/身高)^2
【7】DiabetesPedigreeFunction:糖尿病谱系功能
【8】Age:年龄 (岁)
【9】Outcome:类标变量 (0或1)
二、模型构建
1.引入库
代码如下(示例):
import warnings
warnings.filterwarnings('ignore')
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
2.数据加载与探索
首先加载数据集,并对数据进行基本的探索性分析,包括查看数据的基本信息、统计摘要、特征分布等。
代码如下(示例):
# 加载数据
d = pd.read_csv('D:\Anconda\PimaIndiansdiabetes.csv')
# 数据探索
d.head() # 查看数据的前几行
d.info() # 查看数据的基本信息,包括列名、非空值数量、数据类型等
d.isnull().sum().sum() # 检查是否有缺失值
d.shape, d.keys(), type(d) # 查看数据集的形状、列名和数据类型
d.describe() # 数值型特征的统计摘要信息
d.groupby('Outcome').size() # 查看目标变量的分布情况
功能和作用:
-warnings.filterwarnings(‘ignore’):忽略警告,通常在数据分析和模型训练过程中用于屏蔽无关紧要的警告信息。
-导入需要的库和模块,包括 numpy、pandas、matplotlib.pyplot、seaborn 等,用于数据处理、可视化和建模。
-使用 pd.read_csv() 加载数据集,这里假设数据集路径为 ‘D:\Anconda\PimaIndiansdiabetes.csv’。
-使用 d.head() 查看数据集的前几行,以确保数据正确加载。
-使用 d.info() 查看数据集的基本信息,如列名、数据类型和非空值数量。
-使用 d.isnull().sum().sum() 检查数据集是否有缺失值,并统计缺失值的总数。
-使用 d.shape 获取数据集的形状(行数和列数)、d.keys() 获取数据集的列名、type(d) 获取数据集的类型(DataFrame)。
-使用 d.describe() 输出数值型特征的统计摘要信息,包括均值、标准差、最小值、最大值等。
-使用 d.groupby(‘Outcome’).size() 查看目标变量 ‘Outcome’ 的分布情况,这里假设 ‘Outcome’ 是分类标签(例如是否患有糖尿病)。
3.数据可视化分析
通过直方图、散点图、箱线图等方式,对数据进行可视化和深入分析,了解各个特征之间的关系和分布情况。
代码如下(示例):
# 绘制直方图和散点图
d.hist(figsize=(16, 14))
sns.pairplot(d, vars=d.columns, hue='Outcome') # 绘制特征之间的散点图矩阵,按照Outcome(结果)着色
sns.pairplot(d, vars=d.columns[