更新 function.py
Gitea Actions Experiment Test / Experiment-Actions (push) Successful in 10s

This commit is contained in:
2024-10-30 10:40:00 +08:00
parent bfef57c461
commit 3bc2260d58
+8 -11
View File
@@ -25,6 +25,7 @@ id = "202210423222"
name = "邓龙树"
import numpy as np
import pandas as pd
def sigmoid(z):
"""计算sigmoid函数"""
@@ -78,15 +79,15 @@ def load_data(filepath):
- np.array: 特征数据。
- np.array: 标签数据。
"""
# 使用dtype=str先将所有数据加载为字符串
data = np.loadtxt(filepath, delimiter=' ', dtype=str)
# 使用pandas读取数据,处理不规则行
data = pd.read_csv(filepath, delim_whitespace=True, header=None, na_values='?')
# 替换'?'为np.nan,并转换为浮点数
data[data == '?'] = np.nan
data = data.astype(float)
# 替换缺失值为列的均值
data.fillna(data.mean(), inplace=True)
X = data[:, :-1] # 假设最后一列是标签
y = data[:, -1]
# 将数据转换为numpy数组
X = data.iloc[:, :-1].values # 特征数据
y = data.iloc[:, -1].values # 标签数据
return X, y
if __name__ == "__main__":
@@ -96,10 +97,6 @@ if __name__ == "__main__":
# 加载测试集
X_test, y_test = load_data("./data/horse-colic.test")
# 处理缺失值,例如用列的均值替代
X_train = np.nan_to_num(X_train, nan=np.nanmean(X_train, axis=0))
X_test = np.nan_to_num(X_test, nan=np.nanmean(X_train, axis=0)) # 用训练集的均值替代测试集
# 确保标签为浮点型
y_train = y_train.astype(float)
y_test = y_test.astype(float)