""" 实验说明: - 自行编写实现数据加载与预测病马死亡的对率回归算法。 注意事项: - 在 function.py 中实现对率回归算法。 - 可以自行导入其他库,需要在 requirements.txt 添加依赖,若未在 requirements.txt 中添加使用到的依赖,则无法自动评测,成绩为零。 - 自动评测脚本仅会加载 train_logreg、predict_logreg 和 load_data 函数,请勿修改函数名。 测评环境: - CPU: Intel Xeon(R) CPU E3-1231 v3 @ 3.40GHz - OS: Ubuntu 22.04.4 LTS - Python: 3.10.12 - numpy: 2.1.1 """ """ 请在这里填写学号和姓名,不填写即成绩无效。 姓名请直接**填写中文** 例如: name = "张三" """ id = "202210423211" name = "梅晓东" import pandas as pd from sklearn.linear_model import LogisticRegression from sklearn.model_selection import train_test_split from sklearn.metrics import accuracy_score def load_data(file_path): """ 加载数据 :param file_path: 数据文件路径 :return: 特征和标签 """ data = pd.read_csv(file_path) X = data.drop('death', axis=1) # 假设 'death' 列为标签 y = data['death'] return X, y def train_logreg(X, y): """ 训练对率回归模型 :param X: 特征 :param y: 标签 :return: 训练好的模型 """ X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) model = LogisticRegression() model.fit(X_train, y_train) y_pred = model.predict(X_test) accuracy = accuracy_score(y_test, y_pred) print(f'Accuracy: {accuracy:.2f}') return model def predict_logreg(model, X_new): """ 使用训练好的模型进行预测 :param model: 训练好的对率回归模型 :param X_new: 新的特征数据 :return: 预测结果 """ predictions = model.predict(X_new) return predictions