当前位置: 首页 > 编程笔记 >

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

聂奇
2023-03-14
本文向大家介绍python 划分数据集为训练集和测试集的方法,包括了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分割训练集和测试集的方法示例,包括了Python分割训练集和测试集的方法示例的使用技巧和注意事项,需要的朋友参考一下 数据集介绍 使用数据集Wine,来自UCI  。包括178条样本,13个特征。 分割训练集和测试集 随机分割 分为训练集和测试集 方法:使用scikit-learn中model_selection子模块的train_test_split函数 以上就是本文的

  • 问题内容: 我有一个很大的数据集,想将其分为训练(50%)和测试集(50%)。 假设我有100个示例存储了输入文件,每一行包含一个示例。我需要选择50条线作为训练集和50条线测试集。 我的想法是首先生成一个长度为100(值范围从1到100)的随机列表,然后将前50个元素用作50个训练示例的行号。与测试集相同。 这可以在Matlab中轻松实现 但是如何在Python中完成此功能?我是Python的新

  • 问题内容: 将NumPy数组随机分为训练和测试/验证数据集的好方法是什么?与Matlab中的或函数类似。 问题答案: 如果要将数据集分成两半,可以使用,或者需要跟踪索引: 要么 有多种方法可以重复分区同一数据集以进行交叉验证。一种策略是从数据集中重复采样: 最后,sklearn包含几种交叉验证方法(k折,nave -n-out等)。它还包括更高级的“分层抽样”方法,这些方法创建了针对某些功能平衡的

  • 问题内容: 我有一个多类分类问题,并且我的数据集存在偏差,我有100个特定类的实例,并说10个不同类的实例,所以如果我有100个特定类的实例,我想在各个类之间分配数据集保留率我想让30%的记录进入训练集中,我想让100个记录代表的类有30个实例,而10个记录代表的类有3个实例,依此类推。 问题答案: 您可以从在线文档中使用sklearn的: 分层K折交叉验证迭代器 提供训练/测试索引以将数据拆分为

  • 我刚刚开始使用R,我不确定如何将我的数据集与以下示例代码结合起来: 我有一个数据集,我需要将其放入训练(75%)和测试(25%)集中。我不确定应该将哪些信息放入x和大小?x是数据集文件吗?我有多少样本?

  • 问题内容: 因此,我一直遵循Google的官方tensorflow指南,并尝试使用Keras构建一个简单的神经网络。但是,在训练模型时,它不使用整个数据集(具有60000个条目),而是仅使用1875个条目进行训练。有可能解决吗? 输出: 这是我一直在为此工作的原始Google colab笔记本:https ://colab.research.google.com/drive/1NdtzXHEpiN