У меня есть датафрейм, данные со следующей структурой (моя на самом деле намного больше, но это только для иллюстрации):
a b c tag
A 3 2 4
B 2 1 3
A 5 3 3
A 4 3 2
B 2 4 3
A 3 5 2
B 4 1 1
C 2 3 1
C 1 3 4
B 5 2 4
Я использую scikit-learn для разделения данных :
train, test = train_test_split(data, test_size=test_size)
Однако я хочу найти способ разбить данные таким образом, чтобы гарантировать, что у меня есть хотя бы одна строка каждого тега в обоих наборах. Для примера набора данных это означало бы наличие чего-то подобного (но, конечно, перемешанного):
train
a b c tag
A 3 2 4
B 2 1 3
A 4 3 2
B 4 1 1
test similar but with the remaining elements (according to the proportion)
В основном Я хотел бы иметь весь диапазон / разнообразие тегов в обоих наборах.
Заранее благодарен за помощь.
`