這篇文章給大家分享的是有關Python怎么實現訓練集、測試集隨機劃分的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
python的五大特點:1.簡單易學,開發程序時,專注的是解決問題,而不是搞明白語言本身。2.面向對象,與其他主要的語言如C++和Java相比, Python以一種非常強大又簡單的方式實現面向對象編程。3.可移植性,Python程序無需修改就可以在各種平臺上運行。4.解釋性,Python語言寫的程序不需要編譯成二進制代碼,可以直接從源代碼運行程序。5.開源,Python是 FLOSS(自由/開放源碼軟件)之一。
隨機從列表中取出元素:
import random dataSet = [[0], [1], [2], [3], [4], [5], [6], [7], [8], [9], [10]] trainDataSet = random.sample(dataSet, 3)
以下函數,使用于我最近的一個機器學習的項目,將數據集數據按照比例隨機劃分成訓練集數據和測試集數據:
import csv import random def getDataSet(proportion): """ :exception 獲取訓練集和測試集(將數據按比例隨機劃分) :parameter proportion - 測試集/數據集 :return trainDataSet - 訓練集 testDataSet - 測試集 author 肖政宇 modify 2019年5月10日 """ dataSet = open('數據集.csv') dataSetReader = csv.reader(dataSet) """ :exception 將數據保存到數組 """ dataSet = [] next(dataSetReader, 'none') # 跳過表頭 data = next(dataSetReader, 'none') while (data != 'none'): dataSet.append(data) data = next(dataSetReader, 'none') """ :exception 按照比例隨機劃分出訓練集和測試集 """ dataNumber = dataSet.__len__() # 數據集數據條數 testNumber = int(dataNumber * proportion) # 測試集數據條數 testDataSet = [] # 測試數據集 trainDataSet = [] # 訓練數據集 testDataSet = random.sample(dataSet, testNumber) # 測試集 for testData in testDataSet: # 將已經選定的測試集數據從數據集中刪除 dataSet.remove(testData) trainDataSet = dataSet # 訓練集 return trainDataSet, testDataSet
感謝各位的閱讀!關于“Python怎么實現訓練集、測試集隨機劃分”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。