Reshape your data either using (-1, 1) if your data has a single feature or

时间:2024-10-25 07:20:56

       1.问题: 使用sklearn建立模型之后进行预测时出现:Reshape your data either using (-1, 1) if your data has a single feature or (1, -1) if it contains a single sample.

       2.原因:这是由于在新版的sklearn中,所有的数据都应该是二维矩阵。

       3.解决办法:如果传入的是一个一维矩阵,直接使用.reshape(1,-1)转化为二维矩阵,如果只是一个样本数据,需要先使用numpy转化为一个一维数组,再使用reshape转化为二维数组。

例如:

修改之前:

new_x = 84610
pre_y = model.predict(new_x)

修改之后:

new_x = 84610
pre_y = model.predict(np.array(new_x).reshape(1, -1))

亲测有效,运行结果:

print("pre_y", pre_y)

# 结果
pre_y [[196065.20852406]]