分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 技术分享

sklearn.preprocessing ?OneHotEncoder——仅仅是数值型字段才可以,如果是字符类型字段则不能直接搞定

发布时间:2023-09-06 01:23责任编辑:董明明关键词:暂无标签
>>> from sklearn.preprocessing import OneHotEncoder>>> enc = OneHotEncoder()>>> enc.fit([[0, 0, 3], [1, 1, 0], [0, 2, 1], [1, 0, 2]]) ?>>> enc.n_values_array([2, 3, 4])>>> enc.feature_indices_array([0, 2, 5, 9])>>> enc.transform([[0, 1, 1]]).toarray()array([[ 1., ?0., ?0., ?1., ?0., ?0., ?1., ?0., ?0.]])


注意:仅仅是数值型字段才可以,如果是字符类型字段则不能直接搞定

需要使用pandas get_dummies搞定

例如:

Using the get_dummies will create a new column for every unique string in a certain column:使用get_dummies进行one-hot编码

  1. pd.get_dummies(df)  

还可以:
import pandas as pdimport numpy as npfrom sklearn_pandas import DataFrameMapperfrom sklearn.preprocessing import OneHotEncoderdata = pd.DataFrame({‘text‘:[‘aaa‘, ‘bbb‘], ‘number_1‘:[1, 1], ‘number_2‘:[2, 2]})# ???number_1 ?number_2 text# 0 ????????1 ????????2 ?aaa# 1 ????????1 ????????2 ?bbb# SomeEncoder here must be any encoder which will help you to get# numerical representation from text columnmapper = DataFrameMapper([ ???(‘text‘, SomeEncoder), ???([‘number_1‘, ‘number_2‘], OneHotEncoder())])mapper.fit_transform(data)


sklearn.preprocessing ?OneHotEncoder——仅仅是数值型字段才可以,如果是字符类型字段则不能直接搞定

原文地址:http://www.cnblogs.com/bonelee/p/7805894.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved