我有大約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
只是爲了記錄,這可能是一個非常糟糕的主意。你通常希望保持你的訓練集相同,這樣你就不會訓練你的測試數據。 –