Python实现独热编码

2023-10-29

关于独热编码与哑变量编码的概念,可以参考:https://blog.csdn.net/qq_41853758/article/details/81252174

离散特征的编码分为两种情况:

1、离散特征的取值之间没有大小的意义,比如color:[red,blue],此时可以使用one-hot编码;

2、离散特征的取值有大小的意义,比如size:[X,XL,XXL],此时可以使用数值的映射{X:1,XL:2,XXL:3}。

本文主要讨论独热编码的Python实现:

import pandas as pd

df = pd.DataFrame({'key': ['b', 'b', 'a', 'c', 'a', 'b'],'data': range(6)})
df

df结构如下所示:

 

利用pd.get_dummies()函数对类别性特征df中的key进行独热编码处理:

dummies = pd.get_dummies(df['key'],prefix='key')
dummies

dummies的结构如下:

 

将经过独热编码处理后的类别特征与其他数值型特征组合起来:

new_df = df[['data']].join(dummies)
new_df

 new_df的结构如下所示:

比较df和new_df我们可以看到,经过独热编码处理后,特征集由原来的两维变成了四维。一般情况下独热编码可以结合PCA一起使用,以降低经独热编码处理后的特征集的复杂性。

 

其他参考:

https://blog.csdn.net/lujiandong1/article/details/52836051

https://blog.csdn.net/wl_ss/article/details/78508367

《Python for Data Analysis》2nd

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python实现独热编码 的相关文章

  • 在 Python 中解析 TCL 列表

    我需要在双括号上拆分以空格分隔的 TCL 列表 例如 OUTPUT 172 25 50 10 01 01 Ethernet 172 25 50 10 01 02 Ethernet Traffic Item 1 172 25 50 10 01
  • 让 VoiceChannel.members 和 Guild.members 返回完整列表的问题

    每当我尝试使用 VoiceChannel members 或 Guild members 时 它都不会提供适用成员的完整列表 我从文本命令的上下文中获取 VoiceChannel 和 Guild 如下所示 bot command name
  • 我应该使用 Python 双端队列还是列表作为堆栈? [复制]

    这个问题在这里已经有答案了 我想要一个可以用作堆栈的 Python 对象 使用双端队列还是列表更好 元素数量较少还是数量较多有什么区别 您的情况可能会根据您的应用程序和具体用例而有所不同 但在一般情况下 列表非常适合堆栈 append is
  • 为什么 web2py 在启动时崩溃?

    我正在尝试让 web2py 在 Ubuntu 机器上运行 所有文档似乎都表明要在 nix 系统上运行它 您需要下载源代码并执行以下操作 蟒蛇 web2py py 我抓住了source http www web2py com examples
  • Pycharm 在 os.path 连接上出现“未解析的引用”

    将pycharm升级到2018 1 并将python升级到3 6 5后 pycharm报告 未解析的引用 join 最新版本的 pycharm 不会显示以下行的任何警告 from os path import join expanduser
  • 打印数字时添加千位分隔符[重复]

    这个问题在这里已经有答案了 我真的不知道这个问题的 名称 所以它可能是一个不正确的标题 但问题很简单 如果我有一个数字 例如 number 23543 second 68471243 我想要它使print 像这样 23 54368 471
  • GUI(输入和输出矩阵)?

    我需要创建一个 GUI 将数据输入到矩阵或表格中并读取此表单数据 完美的解决方案是限制输入表单仅允许float 例如 A 1 02 0 25 0 30 0 515 0 41 1 13 0 15 1 555 0 25 0 14 1 21 2
  • 从 Powershell 脚本安装 Python

    当以管理员身份从 PowerShell 命令行运行以下命令时 可以在 Windows 11 上成功安装 Python c temp python 3 11 4 amd64 exe quiet InstallAllUsers 0 Instal
  • Python 3:将字符串转换为变量[重复]

    这个问题在这里已经有答案了 我正在从 txt 文件读取文本 并且需要使用我读取的数据之一作为类实例的变量 class Sports def init self players 0 location name self players pla
  • python的shutil.move()在linux上是原子的吗?

    我想知道python的shutil move在linux上是否是原子的 如果源文件和目标文件位于两个不同的分区上 行为是否不同 或者与它们存在于同一分区上时的行为相同吗 我更关心的是如果源文件和目标文件位于同一分区上 shutil move
  • 当字段是数字时怎么说...在 mongodb 中匹配?

    所以我的结果中有一个名为 城市 的字段 结果已损坏 有时它是一个实际名称 有时它是一个数字 以下代码显示所有记录 db zips aggregate project city substr city 0 1 sort city 1 我需要修
  • 如何使用 Python 3 检查目录是否包含文件

    我到处寻找这个答案但找不到 我正在尝试编写一个脚本来搜索特定的子文件夹 然后检查它是否包含任何文件 如果包含 则写出该文件夹的路径 我已经弄清楚了子文件夹搜索部分 但检查文件却难倒了我 我发现了有关如何检查文件夹是否为空的多个建议 并且我尝
  • 在 Google App Engine 中,如何避免创建具有相同属性的重复实体?

    我正在尝试添加一个事务 以避免创建具有相同属性的两个实体 在我的应用程序中 每次看到新的 Google 用户登录时 我都会创建一个新的播放器 当新的 Google 用户在几毫秒内进行多个 json 调用时 我当前的实现偶尔会创建重复的播放器
  • 带有 LSTM 的 GridSearchCV/RandomizedSearchCV

    我一直在尝试通过 RandomizedSearchCV 调整 LSTM 的超参数 我的代码如下 X train X train reshape X train shape 0 1 X train shape 1 X test X test
  • 为什么 csv.DictReader 给我一个无属性错误?

    我的 CSV 文件是 200 Service 我放入解释器的代码是 snav csv DictReader open screennavigation csv delimiter print snav fieldnames 200 for
  • 如果 PyPy 快 6.3 倍,为什么我不应该使用 PyPy 而不是 CPython?

    我已经听到很多关于PyPy http en wikipedia org wiki PyPy项目 他们声称它比现有技术快 6 3 倍CPython http en wikipedia org wiki CPython口译员开启他们的网站 ht
  • 重新分配唯一值 - pandas DataFrame

    我在尝试着assign unique值在pandas df给特定的个人 For the df below Area and Place 会一起弥补unique不同的价值观jobs 这些值将分配给个人 总体目标是使用尽可能少的个人 诀窍在于这
  • 如何在 Flask 中的视图函数/会话之间传递复杂对象

    我正在编写一个 Web 应用程序 当 且仅当 用户登录时 该应用程序从第三方服务器接收大量数据 这些数据被解析为自定义对象并存储在list 现在 用户在应用程序中使用这些数据 调用不同的视图 例如发送不同的请求 我不确定什么是最好的模式在视
  • 如何将Python3设置为Mac上的默认Python版本?

    有没有办法将 Python 3 8 3 设置为 macOS Catalina 版本 10 15 2 上的默认 Python 版本 我已经完成的步骤 看看它安装在哪里 ls l usr local bin python 我得到的输出是这样的
  • NLTK:查找单词大小为 2k 的上下文

    我有一个语料库 我有一个词 对于语料库中该单词的每次出现 我想获取一个包含该单词之前的 k 个单词和该单词之后的 k 个单词的列表 我在算法上做得很好 见下文 但我想知道 NLTK 是否提供了一些我错过的功能来满足我的需求 def size

随机推荐

  • IDEA的常用设置

    打开设置的快捷键 ctrl alt s 关闭Intellij IDEA自动更新 在File gt Settings gt Appearance Behavior gt System Settings gt Updates下取消Automat
  • 百度地图点聚合中marker的infowindow消失的问题

    目前的业务场景是 地图中有多个点的点聚合 聚合点展开后 每个marker有自己的点击事件 点击时显示窗口信息 做法是marker openInfoWindow infowin 问题来了 每次点击时地图会自动将窗口平移到地图中心 这时窗口就消
  • UE5《Electric Dreams》项目PCG技术解析 之 PCGCustomNodes详解(四)ApplyHierarchy

    继续解析 Electric Dreams 项目中的自定义节点和子图 ApplyHierarchy 文章目录 前导文章 标准组合拳 ApplyHierarchy Execute with Context Iteration Loop Body
  • 字节跳动-【ByteIntern】算法工程师实习生-生活服务

    奥迪动力系统工程师岗提供了在外企实习的经历 工作相对轻松 在奥迪担任动力系统工程师的岗位上 工作相对轻松 办公室氛围好 同事友善 领导也比较开明 这份工作提供了在外企实习的经历 而且同事主要来自中国和德国 有时还会有其 题解 字符串分隔 i
  • vant 绑定银行卡页面+验证所属银行+身份证号码+所属银行选择器

  • 网易笔试的一道题

    写一个程序 打印出以下的序列 a b c d e z a b a c a d a e a z b c b d b z c d y z a b c a b d a b z a c d x y z a b c d x y z const cha
  • [LeetCode] Add Digits - 数字各个位数求和

    题目概述 Given a non negative integer num repeatedly add all its digits until the result has only one digit For example Give
  • Java泛型知识点总结

    一 Java泛型的概述 泛型 是一种把类型明确的工作推迟到创建对象或者调用方法的时候才去明确的特殊的类型 由来 通过Object转型问题引入 早期的Object类型可以接收任意的对象类型 但是在实际的使用中 会有类型转换的问题 也就存在这隐
  • 区块链和数据库

    本文由币乎社区 bihu com 内容支持计划奖励 这是 区块链技术指北 的第 15 篇文章 如果对我感兴趣 想和我交流 我的微信号 Wentasy 加我时简单介绍下自己 并注明来自 区块链技术指北 同时我会把你拉入微信群 区块链技术指北
  • java 版本区别,java SE是什么,下载JDK时各个名称的含义

    https blog csdn net yinghuo110 article details 80658308
  • pandas基本操作

    df转csv文件 df to csv df转excel文件 df to excel df增加列 df insert df column name data df增加行 df append df合并 df concat df索引行或者列 df
  • Qt自定义QWidget

    Qt自定义QWidget 实例1 电池 实例2 plot绘图 实例3 plot按比例绘图 实例1 电池 promotion pro QT core gui greaterThan QT MAJOR VERSION 4 QT widgets
  • 好玩的整固代码,你学会了吗?

    Win系统下 今天装机之家教你使用一行代码就可以让电脑卡的死机 可以发给朋友整蛊一下 友情提示 整蛊有的度 不要把别人惹恼了 代码 0 0 将这5个字符复制到记事本上 以bat格式保存 将这个BAT发给其他朋友让他点击试试 保证不过一会你的
  • vue3 + element plus 自定义验证规则(两个表单必填其中一个)

    element plus 表单 自定义验证规则 const validateCustom rule any value any callback any gt if contactsForm value mobile contactsFor
  • 快速上手MongoDB和Python交互

    一 安装 导入 pip install pymongo from pymongo import MongoClient MongoDB 默认没有用户名密码 二 连接数据库 方式一 client MongoClient host localh
  • InputStream转MultipartFile

    import org apache commons fileupload FileItem import org apache commons fileupload FileItemFactory import org apache com
  • 获取iOS项目名称及版本号的方法

    NSDictionary infoDictionary NSBundle mainBundle infoDictionary CFShow infoDictionary app名称 NSString app Name infoDiction
  • systemd 之 journalctl

    原文地址 https www cnblogs com itxdm p Systemd log system journalctl html Systemd 日志系统 一 前言 昨天写了一篇文章 内容为 Systemd 常规操作与彩蛋 参考了
  • JSP+Servlet实现的HR人力资源管理系统】

    基于JSP Servlet实现的HR人力资源管理系统 演示地址 http yanshi ym4j com hr01 用户名 123456 密码 123456下载地址 基于JSP Servlet实现的HR人力资源管理系统 源码世界 项目采用J
  • Python实现独热编码

    关于独热编码与哑变量编码的概念 可以参考 https blog csdn net qq 41853758 article details 81252174 离散特征的编码分为两种情况 1 离散特征的取值之间没有大小的意义 比如color r