分类变量get_dummies()的机器学习问题

时间:2020-05-02 22:24:35

标签: python machine-learning scikit-learn categorical-data

我希望有人能够提供帮助。

我有一个看起来像这样的数据框:

国家类别成功时长

X = [国家,类别,持续时间] y = [成功]

我的训练集中有3个国家(德国,法国,意大利

使用:将类别变量转换为虚拟变量后

 X = pd.get_dummies(X, columns=['COUNTRY','CATEGORY'])

我有如下所示的X数据框:

Country_GERMANY Country_FRANCE Country_ITALY类别持续时间 ...

训练后,我使用

保存模型
joblib.dump(classifier,'csv_final_results/model_classification_joblib')

接下来,当我检索模型(使用joblib.load)并在具有多行但一个国家(意大利)的集合上运行它(运行get_dummies ...之后)

我有一个新的X,看起来像:

Country_ITALY类别持续时间 ...

当预测y_predict = loadedmodel.predict(X)时,我有一个错误,说训练集的大小是不同的。

我的问题是,我们是否必须始终提供一个集合来预测与训练集中的分类变量具有相同数量的变化?

就像这里,要预测的国家(地区)为3,新的国家(地区)为1。

我应该怎么做才能避免这种陷阱?

我希望这很清楚。

谢谢您并保持安全

0 个答案:

没有答案