当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python sklearn train_test_split用法及代码示例


本文简要介绍python语言中 sklearn.model_selection.train_test_split 的用法。

用法:

sklearn.model_selection.train_test_split(*arrays, test_size=None, train_size=None, random_state=None, shuffle=True, stratify=None)

将数组或矩阵拆分为随机训练和测试子集。

将输入验证和next(ShuffleSplit().split(X, y)) 和应用程序包装起来的快速实用程序,以将数据输入到单个调用中,以便在单列中拆分(以及可选地进行二次采样)数据。

在用户指南中阅读更多信息。

参数

*arrays具有相同长度/形状的可索引序列[0]

允许的输入是列表、numpy 数组、scipy-sparse 矩阵或 pandas 数据帧。

test_size浮点数或整数,默认=无

如果是浮点数,则应介于 0.0 和 1.0 之间,表示要包含在测试拆分中的数据集的比例。如果是int,表示测试样本的绝对数量。如果为 None,则将该值设置为火车大小的补码。如果 train_size 也为 None,它将被设置为 0.25。

train_size浮点数或整数,默认=无

如果是浮点数,则应介于 0.0 和 1.0 之间,并表示要包含在训练拆分中的数据集的比例。如果是int,表示训练样本的绝对数量。如果没有,该值将自动设置为测试大小的补码。

random_stateint、RandomState 实例或无,默认=无

控制应用拆分之前应用于数据的改组。传递 int 以在多个函数调用之间实现可重现的输出。请参阅术语表。

shuffle布尔,默认=真

拆分前是否对数据进行洗牌。如果 shuffle=False 则分层必须为 None。

stratify类似数组,默认=无

如果不是 None,则以分层方式拆分数据,将其用作类标签。在用户指南中阅读更多信息。

返回

splitting列表,长度=2 * len(数组)

包含train-test 输入拆分的列表。

例子

>>> import numpy as np
>>> from sklearn.model_selection import train_test_split
>>> X, y = np.arange(10).reshape((5, 2)), range(5)
>>> X
array([[0, 1],
       [2, 3],
       [4, 5],
       [6, 7],
       [8, 9]])
>>> list(y)
[0, 1, 2, 3, 4]
>>> X_train, X_test, y_train, y_test = train_test_split(
...     X, y, test_size=0.33, random_state=42)
...
>>> X_train
array([[4, 5],
       [0, 1],
       [6, 7]])
>>> y_train
[2, 0, 3]
>>> X_test
array([[2, 3],
       [8, 9]])
>>> y_test
[1, 4]
>>> train_test_split(y, shuffle=False)
[[0, 1, 2], [3, 4]]

相关用法


注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.model_selection.train_test_split。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。