dask_ml.model_selection.train_test_split
dask_ml.model_selection.train_test_split¶
- dask_ml.model_selection.train_test_split(*arrays, test_size=None, train_size=None, random_state=None, shuffle=None, blockwise=True, convert_mixed_types=False, **options)[源代码]¶
将数组随机分割为训练和测试矩阵。
- 参数
- *数组Dask 数组、数据框或序列的序列
非 dask 对象将被传递给
sklearn.model_selection.train_test_split()
。- test_sizefloat 或 int, 默认值 0.1
- train_size浮点数或整数,可选
- random_stateint, RandomState 实例或 None, 可选 (默认=None)
如果为整数,random_state 是随机数生成器使用的种子;如果为 RandomState 实例,random_state 是随机数生成器;如果为 None,随机数生成器是 np.random 使用的 RandomState 实例。
- 洗牌bool, 默认 None
在分割数据之前是否打乱数据。
- 分块bool, 默认 True。
是否仅在块内打乱数据(True),或允许数据在块之间打乱(False)。在块之间打乱数据可能会更加昂贵,尤其是在分布式环境中。
默认值为
True
,数据仅在块内被打乱。对于 Dask 数组,设置blockwise=False
以在块之间打乱数据。对于 Dask 数据帧,blockwise=False
目前不受支持,将引发ValueError
。- convert_mixed_typesbool, 默认 False
当数组包含混合类型时,是否将 dask DataFrame 和 Series 转换为 dask 数组。这会导致一些计算来确定每个块的长度。
- 返回
- 分割列表, 长度=2 * len(数组)
包含输入数据的训练-测试分割列表
示例
>>> import dask.array as da >>> from dask_ml.datasets import make_regression
>>> X, y = make_regression(n_samples=125, n_features=4, chunks=50, ... random_state=0) >>> X_train, X_test, y_train, y_test = train_test_split(X, y, ... random_state=0) >>> X_train dask.array<concatenate, shape=(113, 4), dtype=float64, chunksize=(45, 4)> >>> X_train.compute()[:2] array([[ 0.12372191, 0.58222459, 0.92950511, -2.09460307], [ 0.99439439, -0.70972797, -0.27567053, 1.73887268]])