generated from LufsX/Experiment-LogReg
This commit is contained in:
+8
-7
@@ -74,16 +74,15 @@ def load_data(filepath):
|
|||||||
- np.array: 标签数据。
|
- np.array: 标签数据。
|
||||||
"""
|
"""
|
||||||
# 使用numpy的genfromtxt函数加载数据,假设逗号为分隔符
|
# 使用numpy的genfromtxt函数加载数据,假设逗号为分隔符
|
||||||
# 这里使用dtype=None允许numpy自动推断数据类型,filling_values=None允许缺失值存在
|
# dtype=None允许numpy自动推断数据类型
|
||||||
data = np.genfromtxt(filepath, delimiter=',', dtype=None, filling_values=np.nan)
|
data = np.genfromtxt(filepath, delimiter=',', dtype=None)
|
||||||
|
|
||||||
# 检查data是否为一维数组,如果是,则将其转换为二维数组
|
# 将非数值列转换为数值型,非数值的转换为NaN,然后填充NaN为0
|
||||||
if data.ndim == 1:
|
for i in range(data.shape[1]):
|
||||||
data = data.reshape(1, -1)
|
data[:, i] = np.array([float(x) if x.replace('.', '', 1).isdigit() else 0 for x in data[:, i]])
|
||||||
|
|
||||||
# 删除包含NaN的行
|
# 删除包含NaN的行
|
||||||
mask = ~np.isnan(data).any(axis=1)
|
data = data[~np.isnan(data).any(axis=1)]
|
||||||
data = data[mask]
|
|
||||||
|
|
||||||
# 将数据转换为numpy数组
|
# 将数据转换为numpy数组
|
||||||
X = data[:, :-1]
|
X = data[:, :-1]
|
||||||
@@ -91,6 +90,8 @@ def load_data(filepath):
|
|||||||
|
|
||||||
return X, y
|
return X, y
|
||||||
|
|
||||||
|
# 其他函数保持不变
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
# 以下代码可用于测试,可自行随意修改
|
# 以下代码可用于测试,可自行随意修改
|
||||||
# 加载训练集
|
# 加载训练集
|
||||||
|
|||||||
Reference in New Issue
Block a user