import numpy as np
from sklearn.model_selection import train_test_split
n = 10000
p = 50
X = np.random.random((n,p))
y = np.random.randint(0,2,n)
test = 0.25
d = {}
d["X_train"], d["X_test"], d["y_train"], d["y_test"] = train_test_split(X,y,test_size=test)
for split in d:
print(split, d[split].shape)
X_train (7500, 50)
X_test (2500, 50)
y_train (7500,)
y_test (2500,)
3条答案
按热度按时间ubbxdtey1#
您可以通过
sklearn
中的train_test_split
自己看到:4nkexdtk2#
第二个
假设75%/25%的列车/测试分配
这意味着75%的数据集用于训练,其余用于测试。你有10000个观察结果,所以7500个用于训练,2500个用于测试。
一般来说,当我们说
A
/B
分裂是X%
/Y%
。这意味着A
得到X%
,B
得到Y%
。一直都是,而且X+Y
应该是100.6ioyuze23#
您应该更喜欢使用75%的数据作为训练集,其余25%是测试集。这通常会给你一个很好的结果。(这也取决于数据集的容量。)
考虑train/test拆分方法“train_size”和“test_size”的内部。您可以在此设置其他值。
random_state参数也用于打乱数据集部分