如何将新输入的非数字数据转换为数字数据

时间:2017-03-31 09:01:05

标签: python machine-learning scikit-learn

概要 我想知道如何将新输入的非数字数据保持为唯一的数据!

说明: 也就是说,当我们完成列车和测试期间时,很多新的数据联合数字和非数值数据输入到我的模型中。

ISSUE(1):  因此,第一个重要的事情是将这些新的混合数据转换为具有所有数字格式的数据框!!

TRIED METHOD:

我们怎么能这样做?我使用LabelEncoder将每个非数值数据转换为float类型,然而,SCIKIT-LEARN的成员反馈我,LabelEncoder仅适用于Label [Y],我应该使用OneHotEncoder 转换功能。 [他在网址上回答我:https://github.com/scikit-learn/scikit-learn/issues/8674],而误解了我的意思

不幸的是,OneHotEncoder仅适用于SCIKIT-LEARN的整数功能。官方文档在第1829页中说过。

我知道有一个关于'具有异构数据源的功能联盟'的标题,但它不像LabelEncoder那样方便。 的 ISSUE(2): 这个问题让我感到困惑的第二个原因与我们如何确保输入新的非数字数据可以转换成与先前转换的训练数据或先前转换的测试数据不同的唯一值有关。也就是说,虽然我们可以使用LabelEncoder将新输入数据转换为数字数据,但是存在转换数据[在新输入数据中的产量]可能等于[在先前转换数据中]转换数据的风险

感谢您的提前帮助

1 个答案:

答案 0 :(得分:0)

好的,我已经得到了官方人员的回答。以下网址可能对那些对此问题感到困惑的人有所帮助。

https://github.com/amueller/introduction_to_ml_with_python/blob/master/04-representing-data-feature-engineering.ipynb