У меня есть кадр данных из нескольких сотен строк, который можно сгруппировать по идентификаторам следующим образом:
df = Val1 Val2 Val3 Id
2 2 8 b
1 2 3 a
5 7 8 z
5 1 4 a
0 9 0 c
3 1 3 b
2 7 5 z
7 2 8 c
6 5 5 d
...
5 1 8 a
4 9 0 z
1 8 2 z
Я хочу использовать GridSearchCV, но с настраиваемым резюме, которое будет гарантировать, что все строки из один и тот же идентификатор всегда будет на одном наборе. Таким образом, либо все строки, если a находятся в наборе тестов, либо все они находятся в наборе поездов - и так для всех различных идентификаторов.
Я хочу иметь 5 сгибов - так что 80% идентификаторов будет go на поезд и 20% на тест. Я понимаю, что не может гарантировать, что все сгибы будут иметь одинаковое количество строк - поскольку один идентификатор может иметь больше строк, чем другой.
Каков наилучший способ сделать это?