我正在尝试循环不同的测试大小,以了解逻辑回归最高正确预测精度的最佳测试大小。
基本上,在下面的代码中,我试图在定义的范围(ts_range)中循环查看 "ts"。" 类型错误:'float'对象不能被解释为整数"
谁有解决这个错误的方法,或者谁知道另一种整洁的方法来打印不同测试规模的逻辑回归的准确度分数?
先谢谢你了。
from sklearn.model_selection import train_test_split
from sklearn import metrics
ts_range = range(0,0.6)
ts_scores = []
for ts in ts_range:
X_train, X_test, y_train, y_test = train_test_split(X,y, test_size = ts, random_state=4)
y_pred = logisticreg.predict(X_test)
scores = (metrics.accuracy_score(y_test, y_pred))
ts_scores.append(scores.mean())
print(ts_scores)
range
是用来创建整数序列的。0, 1, 2, 3, 4, ...
例如:
如果你想创建这个序列。0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6
例如你可以这样做:
ts_range = [n/10 for n in range(7)]