我有大约3000个对象,其中每个对象都有一个与它相关的计数。我想随机将这些对象分成70%的培训和30%的测试分组。但是,我想根据与每个对象关联的计数来划分它们,但不是基于对象的数量。随机分割训练和测试数据
一个例子,假设我的数据集包含5个对象。
Obj 1 => 200
Obj 2 => 30
Obj 3 => 40
Obj 4 => 20
Obj 5 => 110
如果我他们有近70%-30%的比例分成,我的训练集应该是
Obj 2 => 30
Obj 3 => 40
Obj 4 => 20
Obj 5 => 110
和我的测试集将
Obj 1 => 200
如果我再分开它们,我应该接近70-30分流比的不同训练和测试组。我明白上面的分裂并不能给我纯粹的70-30分裂,但只要它接近它,这是可以接受的。
是否有任何预定义的方法/包在Python中执行此操作?
[Numpy:如何将数据集(数组)分割/分割为训练和测试数据集以进行交叉验证?](http://stackoverflow.com/questions/3674409/numpy-how-to -split-partition-a-dataset-array-into-training-and-test-datasets) – Zafi
只是为了记录,这可能是一个非常糟糕的主意。你通常希望保持你的训练集相同,这样你就不会训练你的测试数据。 –