generated from LufsX/Experiment-LogReg
This commit is contained in:
+22
-1
@@ -45,10 +45,31 @@ def predict_logreg(inX, weights):
|
|||||||
return 1 if probability > 0.5 else 0
|
return 1 if probability > 0.5 else 0
|
||||||
|
|
||||||
def load_data(filepath):
|
def load_data(filepath):
|
||||||
data = np.genfromtxt(filepath, delimiter=',', invalid_raise=False, filling_values=np.nan)
|
"""
|
||||||
|
从文件中加载数据。
|
||||||
|
|
||||||
|
Args:
|
||||||
|
- filepath (str): 数据文件路径。
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
- X (np.array): 特征数据。
|
||||||
|
- y (np.array): 标签数据。
|
||||||
|
"""
|
||||||
|
# 使用numpy的genfromtxt函数读取数据,以空格为分隔符
|
||||||
|
data = np.genfromtxt(filepath, delimiter=' ', invalid_raise=False, filling_values=np.nan)
|
||||||
|
|
||||||
|
# 检查数据是否为一维数组
|
||||||
|
if data.ndim == 1:
|
||||||
|
print("Data file may have an incorrect delimiter or only contains one column.")
|
||||||
|
return None, None
|
||||||
|
|
||||||
|
# 丢弃完全为NaN的行
|
||||||
data = data[~np.isnan(data).any(axis=1)]
|
data = data[~np.isnan(data).any(axis=1)]
|
||||||
|
|
||||||
|
# 分离特征和标签
|
||||||
X = data[:, :-1]
|
X = data[:, :-1]
|
||||||
y = data[:, -1]
|
y = data[:, -1]
|
||||||
|
|
||||||
return X, y
|
return X, y
|
||||||
|
|
||||||
def feature_scaling(X):
|
def feature_scaling(X):
|
||||||
|
|||||||
Reference in New Issue
Block a user