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

yipeiwu_com6年前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 划分数据集为训练集和测试集的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

flask中主动抛出异常及统一异常处理代码示例

flask中主动抛出异常及统一异常处理代码示例

本文主要介绍的是flask中主动抛出异常及统一异常处理的相关内容,具体如下。 在开发时,后台出现异常 ,但不想把异常显示给用户或者要统一处理异常时,可以使用abort主动抛出异常,再捕获...

Python Excel处理库openpyxl使用详解

openpyxl是一个第三方库,可以处理xlsx格式的Excel文件。pip install openpyxl安装。 读取Excel文件 需要导入相关函数 from openpy...

Python实现的生成格雷码功能示例

Python实现的生成格雷码功能示例

本文实例讲述了Python实现的生成格雷码功能。分享给大家供大家参考,具体如下: 问题 在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同, 则称这种编码为格雷码(Gray Co...

Python 装饰器使用详解

装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象.   经常用于有切面需求的场景,比如:插入日志、性能测试、...

python实现决策树、随机森林的简单原理

python实现决策树、随机森林的简单原理

本文申明:此文为学习记录过程,中间多处引用大师讲义和内容。 一、概念 决策树(Decision Tree)是一种简单但是广泛使用的分类器。通过训练数据构建决策树,可以高效的对未知的数据进...