sklearn之训练数据和测试数据随机选取

我们在分类的时候需要把数据分成两部分,一部分是训练数据一部分是测试数据。sklearn可以随机的按照设置的比例选取训练数据和测试数据并且样本和标签是对应的分组。
实验代码如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
功能:数据集按比例切分为训练集和测试集
时间:2017年3月11日 12:48:57
"""

from sklearn.cross_validation import train_test_split

# 生成200个句子,前100个和后100个类别分别对应1和2
X = [[u"这是", u"第1个", u"测试"]] * 100 + [[u"这是", u"第2个", u"测试"]] * 100
y = [1] * 100 + [2] * 100

# 随机抽取20%的测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
print (len(X_train), len(X_test))

# 查看句子和标签是否仍然对应
for i in range(len(X_test)):
    print ("".join(X_test[i]), y_test[i])

if __name__ == "__main__":
    pass

实验结果如下:

160 40
这是第2个测试 2
这是第2个测试 2
这是第2个测试 2
这是第1个测试 1
这是第1个测试 1
这是第1个测试 1
这是第1个测试 1
这是第1个测试 1
这是第2个测试 2
这是第1个测试 1
这是第2个测试 2
这是第1个测试 1
这是第1个测试 1
这是第1个测试 1
这是第1个测试 1
这是第1个测试 1
这是第2个测试 2
这是第2个测试 2
这是第2个测试 2
这是第1个测试 1
这是第2个测试 2
这是第1个测试 1
这是第1个测试 1
这是第2个测试 2
这是第1个测试 1
这是第1个测试 1
这是第2个测试 2
这是第1个测试 1
这是第2个测试 2
这是第2个测试 2
这是第2个测试 2
这是第1个测试 1
这是第2个测试 2
这是第2个测试 2
这是第1个测试 1
这是第1个测试 1
这是第1个测试 1
这是第2个测试 2
这是第1个测试 1
这是第2个测试 2

程序员有偿接单和程序指导加QQ:734564390

相关推荐
©️2020 CSDN 皮肤主题: Age of Ai 设计师:meimeiellie 返回首页