python sklearn labelencoder、OneHotEncoder和get_dummies的区别

2024-01-26 04:36

本文主要是介绍python sklearn labelencoder、OneHotEncoder和get_dummies的区别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

        • labelencoder
        • OneHotEncoder
        • get_dummies
        • LabelBinarizer

labelencoder
  • LabelEncoder 将不连续的数字or文本进行编号
import numpy as np
import pandas as pd
data = pd.DataFrame({"学号":[1001,1002,1003,1004],"性别":["男","女","女","男"],"学历":["本科","硕士","专科","本科"]})
data
学号	性别	学历
0	1001	男	本科
1	1002	女	硕士
2	1003	女	专科
3	1004	男	本科
## 选择object类型的变量
lis = list(data.select_dtypes(include='object').columns)
lis['性别', '学历']
  • 使用LabelEncoder进行编码,每个变量单独进行多变量的编码
from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()for m in lis:data[m] = le.fit_transform(data[m])data
	学号	性别	学历
0	1001	1	1
1	1002	0	2
2	1003	0	0
3	1004	1	1
OneHotEncoder
  • OneHotEncoder 对表示分类的数字进行编码

输入的应该是表示类别的数字,如果输入文本,会报错的。

from sklearn.preprocessing import OneHotEncoder
OHE = OneHotEncoder()
OHE.fit(data)
data3 = le.fit_transform(data["性别"])
OHE.fit(data3.reshape(-1,1))
OHE.transform(data3.reshape(-1,1)).toarray()
array([[0., 1.],[1., 0.],[1., 0.],[0., 1.]])
get_dummies
  • get_dummies的效果和LabelEncoder一致
pd.get_dummies(data)学号	性别	学历
0	1001	1	1
1	1002	0	2
2	1003	0	0
3	1004	1	1
LabelBinarizer

对因变量y不能用OneHotEncoder,要用LabelBinarizer

from sklearn.preprocessing import LabelBinarizerlab = LabelEncoder()lab.fit_transform(data['学历'])
array([1, 2, 0, 1], dtype=int64)

这篇关于python sklearn labelencoder、OneHotEncoder和get_dummies的区别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/645641

相关文章

基于Python开发PDF转PNG的可视化工具

《基于Python开发PDF转PNG的可视化工具》在数字文档处理领域,PDF到图像格式的转换是常见需求,本文介绍如何利用Python的PyMuPDF库和Tkinter框架开发一个带图形界面的PDF转P... 目录一、引言二、功能特性三、技术架构1. 技术栈组成2. 系统架构javascript设计3.效果图

Python如何在Word中生成多种不同类型的图表

《Python如何在Word中生成多种不同类型的图表》Word文档中插入图表不仅能直观呈现数据,还能提升文档的可读性和专业性,本文将介绍如何使用Python在Word文档中创建和自定义各种图表,需要的... 目录在Word中创建柱形图在Word中创建条形图在Word中创建折线图在Word中创建饼图在Word

Python Excel实现自动添加编号

《PythonExcel实现自动添加编号》这篇文章主要为大家详细介绍了如何使用Python在Excel中实现自动添加编号效果,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1、背景介绍2、库的安装3、核心代码4、完整代码1、背景介绍简单的说,就是在Excel中有一列h=会有重复

Python FastAPI入门安装使用

《PythonFastAPI入门安装使用》FastAPI是一个现代、快速的PythonWeb框架,用于构建API,它基于Python3.6+的类型提示特性,使得代码更加简洁且易于绶护,这篇文章主要介... 目录第一节:FastAPI入门一、FastAPI框架介绍什么是ASGI服务(WSGI)二、FastAP

Python中Windows和macOS文件路径格式不一致的解决方法

《Python中Windows和macOS文件路径格式不一致的解决方法》在Python中,Windows和macOS的文件路径字符串格式不一致主要体现在路径分隔符上,这种差异可能导致跨平台代码在处理文... 目录方法 1:使用 os.path 模块方法 2:使用 pathlib 模块(推荐)方法 3:统一使

一文教你解决Python不支持中文路径的问题

《一文教你解决Python不支持中文路径的问题》Python是一种广泛使用的高级编程语言,然而在处理包含中文字符的文件路径时,Python有时会表现出一些不友好的行为,下面小编就来为大家介绍一下具体的... 目录问题背景解决方案1. 设置正确的文件编码2. 使用pathlib模块3. 转换路径为Unicod

C# 委托中 Invoke/BeginInvoke/EndInvoke和DynamicInvoke 方法的区别和联系

《C#委托中Invoke/BeginInvoke/EndInvoke和DynamicInvoke方法的区别和联系》在C#中,委托(Delegate)提供了多种调用方式,包括Invoke、Begi... 目录前言一、 Invoke方法1. 定义2. 特点3. 示例代码二、 BeginInvoke 和 EndI

Python结合Flask框架构建一个简易的远程控制系统

《Python结合Flask框架构建一个简易的远程控制系统》这篇文章主要为大家详细介绍了如何使用Python与Flask框架构建一个简易的远程控制系统,能够远程执行操作命令(如关机、重启、锁屏等),还... 目录1.概述2.功能使用系统命令执行实时屏幕监控3. BUG修复过程1. Authorization

MySQL常见的存储引擎和区别说明

《MySQL常见的存储引擎和区别说明》MySQL支持多种存储引擎,如InnoDB、MyISAM、MEMORY、Archive、CSV和Blackhole,每种引擎有其特点和适用场景,选择存储引擎时需根... 目录mysql常见的存储引擎和区别说明1. InnoDB2. MyISAM3. MEMORY4. A

Python使用DeepSeek进行联网搜索功能详解

《Python使用DeepSeek进行联网搜索功能详解》Python作为一种非常流行的编程语言,结合DeepSeek这一高性能的深度学习工具包,可以方便地处理各种深度学习任务,本文将介绍一下如何使用P... 目录一、环境准备与依赖安装二、DeepSeek简介三、联网搜索与数据集准备四、实践示例:图像分类1.