Python 实现训练集、测试集随机划分

yipeiwu_com7年前Python基础

随机从列表中取出元素:

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 实现训练集、测试集随机划分就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python写的一个简单监控系统

Python写的一个简单监控系统

市面上有很多开源的监控系统:Cacti、nagios、zabbix。感觉都不符合我的需求,为什么不自己做一个呢 用Python两个小时徒手撸了一个简易的监控系统,给大家分享一下,希望能对...

使用python 将图片复制到系统剪贴中

需要安装pywin32,pillow 依赖包 #coding:utf-8 import win32clipboard as clip import win32con from PI...

Python django搭建layui提交表单,表格,图标的实例

Python django搭建layui提交表单,表格,图标的实例

利用layui制作与众不同的感谢表单,表格 layui极大的提高了前端开发效率,它极具个性的样式等等都非常吸引人,接下来我将为大家展示如何利用Python的django框架与layui制...

使用Tensorflow将自己的数据分割成batch训练实例

使用Tensorflow将自己的数据分割成batch训练实例

学习神经网络的时候,网上的数据集已经分割成了batch,训练的时候直接使用batch.next()就可以获取batch,但是有的时候需要使用自己的数据集,然而自己的数据集不是batch形...

编写简单的Python程序来判断文本的语种

1.问题的描述 用Python进行文本处理时,有时候处理的文本中包含中文、英文、日文等多个语系的文本,有时候不能同时进行处理,这个时候就需要判别当前文本是属于哪个语系的。Python中有...