J'ai environ 3000 objets où chaque objet est associé à un nombre. Je veux diviser ces objets au hasard dans la formation et les tests de données avec une formation de 70% et 30% de test. Mais, je veux les diviser en fonction du nombre associé à chaque objet, mais pas en fonction du nombre d'objets.Séparation aléatoire des données d'entraînement et de test
Un exemple, en supposant que mon ensemble de données contient 5 objets.
Obj 1 => 200
Obj 2 => 30
Obj 3 => 40
Obj 4 => 20
Obj 5 => 110
Si je les partagerai avec près de 70% rapport -30%, mon ensemble de formation devrait être
Obj 2 => 30
Obj 3 => 40
Obj 4 => 20
Obj 5 => 110
et mes tests ensemble serait
Obj 1 => 200
Si je Je les diviserai à nouveau, je devrais avoir un autre jeu d'entraînement et d'essai qui se rapproche du ratio de 70-30. Je comprends que la division ci-dessus ne me donne pas la séparation pure 70-30 mais tant que ça se rapproche, c'est acceptable.
Existe-t-il des méthodes/packages prédéfinis pour cela en Python?
Copie possible de [Numpy: comment diviser/partitionner un ensemble de données (tableau) en ensembles de données d'apprentissage et de test pour, par exemple, validation croisée?] (Http://stackoverflow.com/questions/3674409/numpy-how-to -split-partition-a-dataset-array-into-training-and-datasets) – Zafi
Juste pour le compte rendu, c'est probablement une très mauvaise idée. En règle générale, vous souhaitez conserver le même niveau d'entraînement afin de ne pas entraîner vos données de test. –