我定义了一个随机森林模型,将数据分为训练和测试,使用 trainx
和 trainy
以及我的目标变量(即 y = 价格)训练模型。当我运行 df_model.predict(valx) 时。它返回给我一个包含预测价格的数组。
现在我想要的是用户输入大小为 3BHK、位置为美国、area_type superbuiltin 的房屋,然后他得到“单栋房屋”的价格
我想要的是上面提到的 O/P,而不是那个 numpy 数组。
我尝试使用df_model.predict(df.Landsize)
,它给了我土地大小的预测,但我想要价格
我的代码在下面共享
df=pd.read_csv('house_data.csv')
df_feautres=['Rooms','Balcony','Bathroom','Landsize','Lattitude','Longtitude']
x=df[df_feautres]
y=df.Price
df_model=RandomForestRegressor(random_state=1)
train_x,val_x,train_y,val_y=train_test_split(x,y,random_state=1)
df_model.fit(x,y)
prediction=df_model.predict(val_x)
print(prediction)
我得到了预测价格的 Numpy 数组,但我想要基于用户输入的单栋房屋的价格
最佳答案
我想回答我自己的问题。 我从用户那里获取输入并将它们存储到字典中,然后从字典创建一个 DataFrame,如 df=pd.DataFrame(d) 然后将此 DF 作为输入来预测价格,例如 df_model.predict(df)
关于python-3.x - 如何根据提供的输入从训练有素的随机森林模型中获取单个房价,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55729854/