Aluode/PerceptionLabPortable
0
1"""
2Common utilities for testing model selection.
3"""
4
5import numpy as np
6
7from sklearn.model_selection import KFold
8
9
10class OneTimeSplitter:
11 """A wrapper to make KFold single entry cv iterator"""
12
13 def __init__(self, n_splits=4, n_samples=99):
14 self.n_splits = n_splits
15 self.n_samples = n_samples
16 self.indices = iter(KFold(n_splits=n_splits).split(np.ones(n_samples)))
17
18 def split(self, X=None, y=None, groups=None):
19 """Split can be called only once"""
20 for index in self.indices:
21 yield index
22
23 def get_n_splits(self, X=None, y=None, groups=None):
24 return self.n_splits
25 