generated from LufsX/Experiment-LogReg
This commit is contained in:
+7
-20
@@ -88,27 +88,14 @@ def load_data(filepath):
|
||||
with open(filepath, 'r') as f:
|
||||
for line in f:
|
||||
values = line.strip().split()
|
||||
# 检查是否存在 '?' 并替换为 0 或者跳过这些行
|
||||
if '?' in values:
|
||||
continue
|
||||
else:
|
||||
# 将标签和特征转换为浮点数
|
||||
y.append(int(values[-1]))
|
||||
X.append([float(x) for x in values[:-1]])
|
||||
# 检查是否存在 '?' 并替换为 0
|
||||
values = [float(x) if x != '?' else 0.0 for x in values]
|
||||
|
||||
# 将标签和特征转换为浮点数
|
||||
y.append(float(values[-1]))
|
||||
X.append(values[:-1])
|
||||
|
||||
# 将特征数据转换为 numpy 数组
|
||||
X_array = np.array(X)
|
||||
|
||||
# 计算每列的平均值,用于替换 '?'
|
||||
column_means = np.mean(X_array, axis=0)
|
||||
|
||||
# 替换 '?' 为每列的平均值
|
||||
for i in range(len(X)):
|
||||
for j in range(len(X[i])):
|
||||
if X[i][j] == '?':
|
||||
X[i][j] = column_means[j]
|
||||
|
||||
return np.array(X), np.array(y)
|
||||
return np.array(X), np.array(y).reshape(-1, 1)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
Reference in New Issue
Block a user