python 划分数据集为训练集和测试集的方法

sklearn的cross_validation包中含有将数据集按照一定的比例,随机划分为训练集和测试集的函数train_test_split

from sklearn.cross_validation import train_test_split
#x为数据集的feature熟悉,y为label.
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size = 0.3)

得到的x_train,y_train(x_test,y_test)的index对应的是x,y中被抽取到的序号。

若train_test_split传入的是带有label的数据,则如下代码:

from sklearn.cross_validation import train_test_split
#dat为数据集,含有feature和label.
train, test = train_test_split(dat, test_size = 0.3)

train,test含有feature和label的。

自己写了一个函数:

#X:含label的数据集:分割成训练集和测试集
#test_size:测试集占整个数据集的比例
def trainTestSplit(X,test_size=0.3):
 X_num=X.shape[0]
 train_index=range(X_num)
 test_index=[]
 test_num=int(X_num*test_size)
 for i in range(test_num):
  randomIndex=int(np.random.uniform(0,len(train_index)))
  test_index.append(train_index[randomIndex])
  del train_index[randomIndex]
 #train,test的index是抽取的数据集X的序号
 train=X.ix[train_index]
 test=X.ix[test_index]
 return train,test

以上这篇python 划分数据集为训练集和测试集的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • python中如何实现将数据分成训练集与测试集的方法

    接下来,直接给出大家响应的代码,并对每一行进行标注,希望能够帮到大家. 需要用到的是库是.numpy .sklearn. #导入相应的库(对数据库进行切分需要用到的库是sklearn.model_selection 中的 train_test_split) import numpy as np from sklearn.model_selection import train_test_split #首先,读取.CSV文件成矩阵的形式. my_matrix = np.loadtxt(open("

  • Python分割训练集和测试集的方法示例

    数据集介绍 使用数据集Wine,来自UCI  .包括178条样本,13个特征. import pandas as pd import numpy as np df_wine = pd.read_csv('https://archive.ics.uci.edu/ml/machine-learning-databases/wine/wine.data', header=None) df_wine.columns = ['Class label', 'Alcohol', 'Malic acid', '

  • python 划分数据集为训练集和测试集的方法

    sklearn的cross_validation包中含有将数据集按照一定的比例,随机划分为训练集和测试集的函数train_test_split from sklearn.cross_validation import train_test_split #x为数据集的feature熟悉,y为label. x_train, x_test, y_train, y_test = train_test_split(x, y, test_size = 0.3) 得到的x_train,y_train(x_te

  • 用pandas划分数据集实现训练集和测试集

    1.使用model_select子模块中的train_test_split函数进行划分 数据:使用kaggle上Titanic数据集 划分方法:随机划分 # 导入pandas模块,sklearn中model_select模块 import pandas as pd from sklearn.model_select import train_test_split # 读取数据 data = pd.read_csv('.../titanic_dataset/train.csv') # 将特征划分到

  • 使用PyTorch将文件夹下的图片分为训练集和验证集实例

    PyTorch提供了ImageFolder的类来加载文件结构如下的图片数据集: root/dog/xxx.png root/dog/xxy.png root/dog/xxz.png root/cat/123.png root/cat/nsdf3.png root/cat/asd932_.png 使用这个类的问题在于无法将训练集(training dataset)和验证集(validation dataset)分开.我写了两个类来完成这个工作. import os import torch fro

  • 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): """

  • 聊聊基于pytorch实现Resnet对本地数据集的训练问题

    目录 1.dataset.py(先看代码的总体流程再看介绍) 2.network.py 3.train.py 4.结果与总结 本文是使用pycharm下的pytorch框架编写一个训练本地数据集的Resnet深度学习模型,其一共有两百行代码左右,分成mian.py.network.py.dataset.py以及train.py文件,功能是对本地的数据集进行分类.本文介绍逻辑是总分形式,即首先对总流程进行一个概括,然后分别介绍每个流程中的实现过程(代码+流程图+文字的介绍). 对于整个项目的流程首

  • python 从文件夹抽取图片另存的方法

    有一个比较大的数据集需要自己处理,在分出训练集和测试集时,如果靠手动实在太麻烦,于是自己写了一段代码.(其实就是在某一路径下的子文件夹里取出符合要求的图片,放到另一个路径的对应文件夹中) from PIL import Image import os import glob def read_image(cwd,newpath): for roots,dirs,files in os.walk(cwd): print(dirs) for i in dirs: print(i) os.chdir(

  • 对python中数据集划分函数StratifiedShuffleSplit的使用详解

    文章开始先讲下交叉验证,这个概念同样适用于这个划分函数 1.交叉验证(Cross-validation) 交叉验证是指在给定的建模样本中,拿出其中的大部分样本进行模型训练,生成模型,留小部分样本用刚建立的模型进行预测,并求这小部分样本的预测误差,记录它们的平方加和.这个过程一直进行,直到所有的样本都被预测了一次而且仅被预测一次,比较每组的预测误差,选取误差最小的那一组作为训练模型. 下图所示 2.StratifiedShuffleSplit函数的使用 官方文档 用法: from sklearn.

  • python接口调用已训练好的caffe模型测试分类方法

    训练好了model后,可以通过python调用caffe的模型,然后进行模型测试的输出. 本次测试主要依靠的模型是在caffe模型里面自带训练好的结构参数:~/caffe/models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel,以及结构参数 :~/caffe/models/bvlc_reference_caffenet/deploy.prototxt相结合,用python接口进行调用. 训练的源代码以及相应的注释如下所示

随机推荐