响应式品牌网站设计,wordpress 无法发邮件,广州工程招标投标信息网,wordpress 分类列表页以下是一个基于 Python 实现的简单心脏病预测系统代码示例#xff0c;我们将使用 Scikit - learn 库中的机器学习算法#xff08;这里以逻辑回归为例#xff09;#xff0c;并使用公开的心脏病数据集。
步骤#xff1a;
数据加载与预处理#xff1a;加载心脏病数据集我们将使用 Scikit - learn 库中的机器学习算法这里以逻辑回归为例并使用公开的心脏病数据集。
步骤
数据加载与预处理加载心脏病数据集对数据进行划分和标准化处理。模型训练使用逻辑回归算法训练模型。模型评估评估模型的性能。预测使用训练好的模型进行预测。
代码实现
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score, classification_report# 1. 数据加载与预处理
# 从 CSV 文件中加载心脏病数据集
url https://archive.ics.uci.edu/ml/machine-learning-databases/heart-disease/processed.cleveland.data
column_names [age, sex, cp, trestbps, chol, fbs, restecg, thalach,exang, oldpeak, slope, ca, thal, target]
data pd.read_csv(url, namescolumn_names)# 处理缺失值
data data.replace(?, pd.NA)
data data.dropna()# 分离特征和目标变量
X data.drop(target, axis1)
y data[target]
# 将目标变量转换为二进制0 表示无心脏病1 表示有心脏病
y y.apply(lambda x: 1 if x 0 else 0)# 划分训练集和测试集
X_train, X_test, y_train, y_test train_test_split(X, y, test_size0.2, random_state42)# 数据标准化
scaler StandardScaler()
X_train_scaled scaler.fit_transform(X_train)
X_test_scaled scaler.transform(X_test)# 2. 模型训练
# 创建逻辑回归模型
model LogisticRegression()
# 训练模型
model.fit(X_train_scaled, y_train)# 3. 模型评估
# 在测试集上进行预测
y_pred model.predict(X_test_scaled)# 计算准确率
accuracy accuracy_score(y_test, y_pred)
print(f模型准确率: {accuracy:.2f})# 打印分类报告
print(分类报告:)
print(classification_report(y_test, y_pred))# 4. 预测示例
new_patient_data [[63, 1, 3, 145, 233, 1, 0, 150, 0, 2.3, 0, 0, 1]]
# 对新数据进行标准化处理
new_patient_data_scaled scaler.transform(new_patient_data)
# 进行预测
prediction model.predict(new_patient_data_scaled)
if prediction[0] 1:print(预测结果: 有心脏病)
else:print(预测结果: 无心脏病)代码解释 数据加载与预处理 使用 pandas 库从 UCI 机器学习库中加载心脏病数据集。处理缺失值将 ? 替换为 NaN 并删除包含缺失值的行。分离特征和目标变量并将目标变量转换为二进制。使用 train_test_split 函数将数据集划分为训练集和测试集。使用 StandardScaler 对数据进行标准化处理。 模型训练 创建逻辑回归模型并使用训练集进行训练。 模型评估 使用测试集进行预测并计算准确率和分类报告。 预测示例 提供一个新患者的数据对其进行标准化处理并使用训练好的模型进行预测。
注意事项
可以尝试使用其他机器学习算法如决策树、随机森林等来提高模型性能。数据集可能需要进一步的特征工程和调优以获得更好的预测结果。