【发布时间】:2020-10-21 19:53:08
【问题描述】:
这是我建立模型所需的数据:
-
数据框包含 834 行和 4 列('Size','Sector','Road Connectivity','Price')
-
AIM 是训练模型以预测价格
-
“大小”、“扇区”和“道路连通性”是分配给 X 变量的 3 个特征。
-
“价格”,即我们的目标特征分配给 y 变量
-
我已经制作了一个由一个热编码器和线性回归器组成的管道 下面是代码:
ohc=OneHotEncoder(categories = "auto")
lr=LinearRegression(fit_intercept=True,normalize=True)
pipe=make_pipeline(ohc,lr)
from sklearn.model_selection import ShuffleSplit
from sklearn.model_selection import cross_val_score
kfolds=ShuffleSplit(n_splits=5,test_size=0.2,random_state=0)
cross_val_score(pipe,X,y,cv=kfolds).mean()
输出 =0.8970496076598085
xinp=([['04M','Sec 10','C road']])
pipe.fit(X,y)
pipe.predict(xinp)
现在,当我将值传递给管道以进行预测时,它会显示错误:
"""在转换过程中在第 1 列中发现未知类别 ['Sec 10']"""
感谢任何有助于构建模型的建议...
【问题讨论】:
-
尝试 catboost 回归器 - catboost.ai/docs/concepts/python-usages-examples.html
标签: python machine-learning regression data-science categorical-data