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

This commit is contained in:
2024-10-31 11:52:18 +08:00
parent b810b7533c
commit 11567bc821
+20 -11
View File
@@ -34,19 +34,29 @@ def load_data(filepath):
- np.array: 标签数据。 - np.array: 标签数据。
""" """
# Load the data, treating missing values as NaN # Load the data, treating missing values as NaN
data = np.genfromtxt(filepath, delimiter=',', missing_values='?', filling_values=np.nan) try:
data = np.genfromtxt(filepath, delimiter=',', missing_values='?', filling_values=np.nan)
# Check if data was loaded correctly
if data.ndim == 1 and len(data) == 1 and np.isnan(data).any():
print(f"数据加载错误: 文件 '{filepath}' 可能为空或格式不正确。")
return None, None
# Check if data was loaded correctly # Remove rows with NaN values
if data.ndim == 1: data = data[~np.isnan(data).any(axis=1)]
print(f"数据加载错误: 文件 '{filepath}' 可能为空或格式不正确。")
if data.size == 0:
print(f"数据加载错误: 文件 '{filepath}' 中没有有效数据。")
return None, None
X = data[:, :-1] # All columns except the last one
y = data[:, -1] # Last column
return X, y
except Exception as e:
print(f"数据加载错误: {e}")
return None, None return None, None
data = data[~np.isnan(data).any(axis=1)] # Remove rows with NaN values
X = data[:, :-1] # All columns except the last one
y = data[:, -1] # Last column
return X, y
def sigmoid(z): def sigmoid(z):
"""计算 sigmoid 函数""" """计算 sigmoid 函数"""
return 1 / (1 + np.exp(-z)) return 1 / (1 + np.exp(-z))
@@ -112,4 +122,3 @@ if __name__ == "__main__":
# 测试单个数据 # 测试单个数据
y_pred = predict_logreg(X_test[11], weights) y_pred = predict_logreg(X_test[11], weights)
print(f"预测结果: {y_pred}, 实际结果: {y_test[11]}") print(f"预测结果: {y_pred}, 实际结果: {y_test[11]}")