交叉验证k倍。如何获得多折?

时间:2019-12-08 19:56:38

标签: python numpy cross-validation k-fold

import numpy as np
from random import seed
from random import randrange

# Split a dataset into k folds
def cross_validation_split(dataset, folds=2):
    dataset_split = list()
    dataset_copy = list(dataset)
    fold_size = int(len(dataset) / folds)
    for i in range(folds):
        fold = list()
        while len(fold) < fold_size:
            index = randrange(len(dataset_copy))
            fold.append(dataset_copy.pop(index))
        dataset_split.append(fold)
    return dataset_split
dataset = [23, 24, 25] 
folds = cross_validation_split(dataset, 2)
print(folds)

从上面的代码中,我得到的结果是[23,24]作为训练测试,[25]作为测试集。我只拿1折。我还需要[25]作为训练集和[23,24]测试集。有可能吗?

0 个答案:

没有答案
相关问题