使用列车测试拆分的尺寸问题

时间:2020-06-03 17:44:02

标签: python jupyter-notebook train-test-split

from sklearn.model_selection import train_test_split

predictors=data.drop(['target'],axis=1)
targets=data['target']
train_x,test_x,train_y,test_y=train_test_split(predictors,targets,test_size=0.2,random_state=0) 

train_x

形状是(242,13)
train_y的形状为(242,)
test_x的形状为(61,13)
test_y的形状为(61,)

数据集包含303个示例,而i / p具有13个功能

如果我尝试

np.reshape(train_y,(-1,1))

它说数据必须是一维的

我希望train_y的形状为(242,1)

2 个答案:

答案 0 :(得分:1)

您应该像这样使用重塑方法

train_y = train_y.reshape(train_y.shape[0], 1)

但是我建议重塑targets,使train_y和test_y都具有形状(x,1)

targets = data['target']
targets = targets.reshape(targets.shape[0], 1)

此后,您可以使用火车测试拆分

答案 1 :(得分:1)

您可以使用JsonSerializer添加新轴:

np.newaxis

它的作用与train_y = train_y[:, np.newaxis] 相同,所以我想这只是您个人选择哪种方式的问题。