随机从列表中取出元素:
1
2
3
|
import random dataSet = [[ 0 ], [ 1 ], [ 2 ], [ 3 ], [ 4 ], [ 5 ], [ 6 ], [ 7 ], [ 8 ], [ 9 ], [ 10 ]] trainDataSet = random.sample(dataSet, 3 ) |
以下函数,使用于我最近的一个机器学习的项目,将数据集数据按照比例随机划分成训练集数据和测试集数据:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
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 实现训练集、测试集随机划分就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/qq_39514033/article/details/90052508