Разделить набор данных раздела на тренировку и тестирование (данные тренинга содержат 200 примеров для каждого класса)

У меня есть данные 5 класса. В каждом классе приблизительно 1000, 1200, 1500, 1900, 2000 образцов. Я хотел бы иметь 200 примеров каждого класса в данных обучения. Другие образцы будут данными испытаний. То есть обучающие данные будут состоять из [200, 200, 200, 200, 200] выборок в каждом классе, тестовые данные будут состоять из [800, 1000, 1300, 1700, 1800] выборок в каждом классе.

Как мы можем сделать это в Python? Существуют ли предопределенные методы / пакеты для этого в Python?

Другие примеры

train_test_split(data, labels, train_size=0,0042) Label Number Total Samples Train Samples Test Samples 1 6631 33 6598 2 18649 89 18560 3 2099 6 2093 4 3064 11 3053 5 1345 5 1340 6 5029 26 5003 7 1330 3 1327 8 3682 21 3661 9 947 6 941 Total 42776 200 42576

train_test_split(data, labels, train_size=200) Label Number Total Samples Train Samples Test Samples 1 6631 33 6598 2 18649 89 18560 3 2099 6 2093 4 3064 11 3053 5 1345 5 1340 6 5029 26 5003 7 1330 3 1327 8 3682 21 3661 9 947 6 941 Total 42776 200 42576

Итак, я хочу, чтобы это было так:

Label Number Total Samples Train Samples Test Samples 1 6631 200 6431 2 18649 200 18449 3 2099 200 1899 4 3064 200 2864 5 1345 200 1145 6 5029 200 4829 7 1330 200 1130 8 3682 200 3482 9 947 200 747 Total 42776 1800 40976

1 ответ

Вы можете установить train_size параметр sklearn.model_selection.train_test_split к целочисленному значению, которое представляет абсолютное число выборок поездов, 200, в вашем случае. Если это число с плавающей точкой, оно должно лежать в диапазоне от 0,0 до 1,0, чтобы представить пропорцию обучающей выборки, которую вы хотите рассмотреть. Например, 0,8 означает 80%.

Другие вопросы по тегам