generated from LufsX/Experiment-LogReg
This commit is contained in:
+16
-6
@@ -1,5 +1,5 @@
|
||||
import numpy as np
|
||||
from sklearn.preprocessing import StandardScaler
|
||||
import pandas as pd
|
||||
|
||||
# 填写学号和姓名
|
||||
id = "20221042323"
|
||||
@@ -59,11 +59,21 @@ def load_data(filepath):
|
||||
- np.array: 特征数据。
|
||||
- np.array: 标签数据。
|
||||
"""
|
||||
data = np.loadtxt(filepath, delimiter=",")
|
||||
X = data[:, :-1] # 特征
|
||||
y = data[:, -1] # 标签,转换为0和1
|
||||
y = np.where(y == 2, 1, 0) # 将标签2转换为1,其他(1和3,这里只有1)转换为0
|
||||
return X, y
|
||||
# 使用 pandas 加载数据,假设数据使用空格分隔,并且我们想要跳过第一列(可能是标识符)
|
||||
df = pd.read_csv(filepath, delim_whitespace=True, header=None)
|
||||
|
||||
# 假设最后一列是标签,将其转换为 0 和 1
|
||||
df.iloc[:, -1] = df.iloc[:, -1].apply(lambda x: 1 if x == 2 else 0)
|
||||
|
||||
# 将缺失值(如 '?')替换为 NaN,然后删除包含 NaN 的行(或者选择其他处理方式)
|
||||
df.replace('?', np.nan, inplace=True)
|
||||
df.dropna(inplace=True)
|
||||
|
||||
# 提取特征和标签
|
||||
X = df.iloc[:, :-1].values # 特征
|
||||
y = df.iloc[:, -1].values # 标签
|
||||
|
||||
return X, y
|
||||
|
||||
if __name__ == "__main__":
|
||||
# 加载训练集
|
||||
|
||||
Reference in New Issue
Block a user