這是random.sample的用法參考:
直接上**看效果吧,**比較簡短也好理解:重新生成訓練資料和測試資料以及對應的標籤
import random
input = [11,12,13,14,15,16,17,18,19,20]
label = [21,22,23,24,25,26,27,28,29,30]
print(input)
print(label)
# 在input中隨機取出幾個元素作為測試資料
test = random.sample(input,int(0.2*len(input)))
# 新的輸入將出去測試資料的元素
input_new = [ i for i in input if (i not in test)]
print("input_new:\n",input_new)
index = list()
# 這裡將取出test對應的input的索引,未來個test分配合適的label
for j in test:
for i in range(len(input)):
if(j==input[i]):
# test的label
label_new = [label[index_] for index_ in range(len(input))if (index_ not in index)]
print("label_new:\n",label_new)
test_label = [label[index_] for index_ in index]
print("test:\n",test)
print("test_label:\n",test_label)
輸出
Python 實現訓練集 測試集隨機劃分
隨機從列表中取出元素 import random dataset 0 1 2 www.cppcns.com,3 4 5 6 7 8 9 10 traindataset random.sample dataset,3 以下函式,使用於我最近的乙個機器學習的專案,將資料集資料按照比例隨機劃分成訓練集資料...
將資料集劃分為訓練集以及測試集
將資料集簡單地劃分為測試集以及訓練集 import os import random train percent 9 訓練集所佔比例 valid percent 0.1 測試集所佔比例 xmlfilepath data delete 所在地相對路徑 total file os.listdir xml...
python隨機字母不重複 python 集合初識
usr bin env python coding utf 8 去重方法 list去重操作 lis1 1,2,5,3,1,2,3,6,8 lis2 for i in lis1 if i not in lis2 print lis2 1.集合建立 s set 空集合 s 注意在建立空集合的時候只能使用...