Python实现对discrete variables的one-hot encoding
发布时间
阅读量:
阅读量
我们在开展建模工作时,在分析过程中会遇到一些非连续型数据作为例子出现。这些数据通常难以直接纳入到模型中用于训练,在应用前我们会对此类特定类型的非连续性数据进行预处理。采用one-hot编码技术作为处理手段。
该段主要介绍两种哑编码的具体实现方案,在数据处理领域中这两种方法各有侧重且功能不同。其中一种基于pandas框架的解决方案与另一种基于sklearn库的方法存在显著差异。其主要差异体现在对数据类型的处理方式上:具体而言,在使用pandas版本时通常仅支持对字符串类型的分类变量进行编码,在这种情况下它会自动将非数值型变量转化为数值形式;而另一种基于sklearn库的方法则需要先进行LabelEncoder转换才能完成相应的编码操作。(在使用前需先进行LabelEncoder转换)
① pd.get_dummies(prefix=)
pandas库中的get_dummies函数可以直接实现变量的一热编码过程,在该操作中,prefix参数用于指定一热编码后变量的命名规则。
②LabelEncoder和OneHotEncoder
我们可以利用sklearn提供的模块来完成对离散变量的一热编码过程;其中LabelEncoder的作用是将离散变量转换为数值形式。
OneHotEncoder则实现对替换为数字的离散变量进行one-hot编码。
注
下面我们通过
全部评论 (0)
还没有任何评论哟~
