6.12.3. scikits.learn.cross_val.KFold¶
- class scikits.learn.cross_val.KFold(n, k, indices=False)¶
K-Folds cross validation iterator
Provides train/test indices to split data in train test sets
- __init__(n, k, indices=False)¶
K-Folds cross validation iterator
Provides train/test indices to split data in train test sets
Parameters : n: int :
Total number of elements
k: int :
number of folds
indices: boolean, optional (default False) :
Return train/test split with integer indices or boolean mask. Integer indices are useful when dealing with sparse matrices that cannot be indexed by boolean masks.
Notes
All the folds have size trunc(n/k), the last one has the complementary
Examples
>>> from scikits.learn import cross_val >>> X = np.array([[1, 2], [3, 4], [1, 2], [3, 4]]) >>> y = np.array([1, 2, 3, 4]) >>> kf = cross_val.KFold(4, k=2) >>> len(kf) 2 >>> print kf scikits.learn.cross_val.KFold(n=4, k=2) >>> for train_index, test_index in kf: ... 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] TRAIN: [False False True True] TEST: [ True True False False] TRAIN: [ True True False False] TEST: [False False True True]