from sklearn.model_selection import KFold
import numpy as np
X = np.array([[1, 2], [3, 4], [5, 6], [7, 8], [9, 10],[11, 12]])
y = np.array([1, 2, 3, 4, 5, 6])
kf = KFold(n_splits=3)
print( kf.get_n_splits(X))
kfs = kf.split(X)
for train_index, test_index in kf.split(X):
print("TRAIN:", train_index, "TEST:", test_index)
X_train, X_test = X[train_index], X[test_index]
y_train, y_test = y[train_index], y[test_index]
print()
一目了然
不言自喻
不了然就debug一下
还有个小问题
random_state参数的神奇: 随机切割、KFold和机器学习_cs12ab的博客-CSDN博客
from sklearn.model_selection import KFold
import numpy as np
X = np.array([[1, 2], [3, 4], [5, 6], [7, 8], [9, 10],[11, 12], [13,14], [15, 16]])
y = np.array([1, 2, 3, 4, 5, 6, 7, 8])
kf = KFold(n_splits=8, shuffle=True, random_state=3)
print( kf.get_n_splits(X))
kfs = kf.split(X)
for train_index, test_index in kf.split(X):
print("TRAIN:", train_index, "TEST:", test_index)
X_train, X_test = X[train_index], X[test_index]
y_train, y_test = y[train_index], y[test_index]
print()
random state是种子,不会产生影响
|