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

This commit is contained in:
2024-11-02 13:31:23 +08:00
parent 0e3a2091ea
commit 1870d5310c
+6 -6
View File
@@ -65,19 +65,17 @@ def load_data(filepath):
else: else:
continue # 无效标签,丢弃 continue # 无效标签,丢弃
# 用NaN标记缺失值 # 用0填充缺失值
values = [np.nan if v == 0 else v for v in values] # 先标记为NaN values = [0 if v == 0 else v for v in values] # 用0填充
data.append(values[:2] + values[3:23]) # 保留特征1, 2 和特征4-23 data.append(values[:2] + values[3:23]) # 保留特征1, 2 和特征4-23
except ValueError as e: except ValueError as e:
print(f"Line {line_number} has an error: {e}") # 打印出错行信息 print(f"Line {line_number} has an error: {e}") # 打印出错行信息
# 转换为numpy数组并处理缺失值 # 转换为numpy数组
data = np.array(data) data = np.array(data)
labels = np.array(labels) labels = np.array(labels)
df = pd.DataFrame(data)
df.fillna(df.mean(), inplace=True) # 使用均值填充处理缺失值
return df.to_numpy(), labels return data, labels
def preprocess_data(X): def preprocess_data(X):
"""特征标准化。""" """特征标准化。"""
@@ -87,6 +85,8 @@ def preprocess_data(X):
if __name__ == "__main__": if __name__ == "__main__":
# 加载数据集 # 加载数据集
X, y = load_data("./data/horse-colic.data") X, y = load_data("./data/horse-colic.data")
# 归一化数据
X = preprocess_data(X) X = preprocess_data(X)
# 使用 train_test_split 打乱并随机抽取数据 # 使用 train_test_split 打乱并随机抽取数据