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

yipeiwu_com6年前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 memory error的问题(四种解决方案)

昨天在用用Pycharm读取一个200+M的CSV的过程中,竟然出现了Memory Error!简直让我怀疑自己买了个假电脑,毕竟是8G内存i7处理器,一度怀疑自己装了假的内存条。。。。...

PyCharm在win10的64位系统安装实例

PyCharm在win10的64位系统安装实例

小编在以前给大家介绍过很多其他系统安装PyCharm的过程,有兴趣的朋友可以参阅: pycharm 使用心得(一)安装和首次使用 python安装教程 Pycharm安装详细教程 Pyt...

OpenCV+Python--RGB转HSI的实现

OpenCV+Python--RGB转HSI的实现

cv2.cvtColor函数封装了各种颜色空间之间的转换,唯独没有RGB与HSI之间的转换,网上查来查去也只有C++或MATLAB版本的,自己要用到python里,所以就写写python...

python变量不能以数字打头详解

在编写python函数时,无意中发现一个问题:python中的变量不能以数字打头,以下函数中定义了一个变量3_num_varchar,执行时报错。 函数如下: def databas...

查找python项目依赖并生成requirements.txt的方法

一起开发项目的时候总是要搭建环境和部署环境的,这个时候必须得有个python第三方包的list,一般都叫做requirements.txt。 如果一个项目使用时virtualenv环境,...