当前位置: 首页 > news >正文

pandas 笔记:get_dummies分类变量one-hot化

1 函数介绍

  • pandas.get_dummies 是 pandas 库中的一个函数,它用于将分类变量转换为哑变量/指示变量。
  • 所谓的哑变量,就是将分类变量的每一个不同的值转换为一个新的0/1变量。
  • 在输出的DataFrame中,每一列都以该值的名称命名
pandas.get_dummies(data, prefix=None,     prefix_sep='_', dummy_na=False, columns=None, sparse=False, drop_first=False, dtype=None)

2 参数介绍

data你想要转换为哑变量的数据
prefix

用于在DataFrame列名前添加的字符串。

当对DataFrame调用 get_dummies 时,传递一个长度等于列数的列表

dummy_na布尔值,默认为 False。是否添加一列来指示 NaN 值,如果为 False 则忽略 NaN 值
columns

类列表,默认为 None。

在 DataFrame 中要编码的列名。

如果 columns 为 None,则所有具有 object、string 或 category 数据类型的列都将被转换

sparse

布尔值,默认为 False。

哑变量编码的列是否应该由 SparseArray(True)支持,还是由常规的 NumPy 数组(False)支持

drop_first布尔值,默认为 False。是否通过移除第一个级别,从 k 个分类级别中获取 k-1 个哑变量

3 举例

3.1 最基本的get_dummies

import pandas as pd
import numpy as nps=pd.Series(list('abca'))s
'''
0    a
1    b
2    c
3    a
dtype: object
'''pd.get_dummies(s)
'''a	b	c
0	1	0	0
1	0	1	0
2	0	0	1
3	1	0	0
'''

3.2 drop_first

此时第一个类就是 全0 向量对应的情况

pd.get_dummies(s,drop_first=True)
'''b	c
0	0	0
1	1	0
2	0	1
3	0	0
'''

3.3 dummy_na

是否为NaN单列一列

s1 = pd.Series(['a', 'b', np.nan])
s1
'''
0      a
1      b
2    NaN
dtype: object
'''pd.get_dummies(s1)
'''a	b
0	1	0
1	0	1
2	0	0
'''pd.get_dummies(s1,dummy_na=True)
'''a	b	NaN
0	1	0	0
1	0	1	0
2	0	0	1
'''

3.4 DataFrame 多列dummies

df = pd.DataFrame({'A': ['a', 'b', 'a'], 'B': ['b', 'a', 'c'],'C': [1, 2, 3]})
df
'''A	B	C
0	a	b	1
1	b	a	2
2	a	c	3
'''pd.get_dummies(df)
'''C	A_a	A_b	B_a	B_b	B_c
0	1	1	0	0	1	0
1	2	0	1	1	0	0
2	3	1	0	0	0	1
'''

3.5 prefix

df = pd.DataFrame({'A': ['a', 'b', 'a'], 'B': ['b', 'a', 'c'],'C': [1, 2, 3]})
df
'''A	B	C
0	a	b	1
1	b	a	2
2	a	c	3
'''pd.get_dummies(df,prefix=['col1','col2'])
'''C	col1_a	col1_b	col2_a	col2_b	col2_c
0	1	1	    0	    0	    1	    0
1	2	0	    1	    1	    0	    0
2	3	1	    0	    0	    0	    1
'''

相关文章:

pandas 笔记:get_dummies分类变量one-hot化

1 函数介绍 pandas.get_dummies 是 pandas 库中的一个函数,它用于将分类变量转换为哑变量/指示变量。所谓的哑变量,就是将分类变量的每一个不同的值转换为一个新的0/1变量。在输出的DataFrame中,每一列都以该值的名称命名 pandas.get_dummi…...

PTE作文练习(一)

目录 65分备考建议 WE模版 范文 Supporting ideas: SWT 65分备考建议 RA重在多听标准的正确的示范,RS重在抓大放小,WFD重在整理错题,以及反反复复的车轮战,FIBRW重在“以对代记” 就是直接看答案,节约时间&#…...

如何做到一套FPGA工程无缝兼容两款不同的板卡?

试想这样一种场景,有两款不同的FPGA板卡,它们的功能代码90%都是一样的,但是两个板卡的管脚分配完全不同,一般情况下,我们需要设计两个工程,两套代码,之后还需要一直维护两个版本。 那么有没有一种自动化的方式,实现一个工程,编译出一个程序文件,下载到这两个不同的板…...

VSCode修改主题为Eclipse 绿色护眼模式

前言 从参加开发以来,一直使用eclipse进行开发,基本官方出新版本,我都会更新。后来出来很多其他的IDE工具,我也尝试了,但他们的主题都把我劝退了,黑色主题是谁想出来?😂 字体小的时…...

conan和cmake编译器版本不匹配问题解决

conan和cmake编译器版本不匹配问题解决 1 问题现象2 解决方法2.1 在CMakeLists.txt禁止编译器检查2.1.1 修改方式 2.2 探查问题出现的根本原因2.2.1 安装升级gcc2.2.2 安装升级g 注 执行环境:ubuntu 1 问题现象 conan要求的编译器版本和cmake检测到的当前的编译器…...

float单精度浮点数如何在计算机中存储

文章目录 1 float型数据组成2 实际举例3 代码测试4 写在最后 1 float型数据组成 按照IEEE浮点标准存储浮点数时,一个float型的值由1个符号位(最左边的位或最高有效位)、8个指数位以及23个小数位依次组成: 符号位为0时表示正数,为1…...

机器视觉在虚拟现实与增强现实中的作用

机器视觉在虚拟现实(VR)和增强现实(AR)中发挥着至关重要的作用。这些技术的核心是计算机视觉领域,重点是让计算机具有“看到”和理解周围世界的能力。 在虚拟现实中,计算机视觉用于创建和处理用户所见的虚…...

红黑数原理及存在原因

我红黑树那么牛,你们为什么不用?_哔哩哔哩_bilibili 面试时经常会被问到红黑树,它到底有什么优点呢? 对于查找数据,数组二分查询速度最快,时间复杂度为O(logN)。但是如果增加和删除数据,数组就…...

Ansible入门—安装部署及各个模块应用案例(超详细)

目录 前言 一、环境概况 修改主机名(可选项) 二、安装部署 1.安装epel扩展源 2.安装Ansible 3.修改Ansible的hosts文件 4.生成密钥 三、Ansible模块使用介绍 Command模块 Shell模块 User模块 Copy模块 File模块 Hostname模块 Yum模块 Se…...

Spring Boot 3系列之-启动类详解

Spring Boot是一个功能强大、灵活且易于使用的框架,它极大地简化了Spring应用程序的开发和部署流程,使得开发人员能够更专注于业务逻辑的实现。在我们的Spring Boot 3系列之一(初始化项目)文章中,我们使用了Spring官方…...

muduo源码剖析之Timer定时器

简介 Timer 类是 muduo 网络库中的一个定时器类,用于在指定的时间间隔后执行某个任务。 Timer 类提供了一系列的方法来创建、启动、停止和删除定时器,以及设置定时器的时间间隔和回调函数等。 在 muduo 网络库中,Timer 类被广泛应用于各种…...

CocosCreator:背景滚动 、背景循环滚动

.CocosCretor版本3.2.1 编辑器VScode 制作游戏背景的循环滚动 import { _decorator, Component, Node } from cc; const { ccclass, property } _decorator;ccclass(MoveingSceneBg) export class MoveingSceneBg extends Component {property(Node)bg01: Node null!;proper…...

中远麒麟堡垒机SQL注入漏洞复现

简介 中远麒麟堡垒机用于运维管理的认证、授权、审计等监控管理,在该产品admin.php处存在SQL 注入漏洞。 漏洞复现 FOFA语法: body"url\"admin.php?controlleradmin_index&actionget_user_login_fristauth&username" 或者 c…...

ActiveMq学习⑨__基于zookeeper和LevelDB搭建ActiveMQ集群

引入消息中间件后如何保证其高可用? 基于zookeeper和LevelDB搭建ActiveMQ集群。集群仅提供主备方式的高可用集群功能,避免单点故障。 http://activemq.apache.org/masterslave LevelDB,5.6版本之后推出了LecelDB的持久化引擎,它使…...

Ansible概述以及模块

目录 一、Ansible概述: 1. Ansible是什么: 2. Ansible的作用: 3. Ansible的特性: 二、Ansible 环境安装部署: 1. 管理端安装 ansible: 2. ansible 目录结构: 3. 配置主机清单: 4. 配置密钥对验证: 三、an…...

Cannot run program “D:\c\IntelliJ IDEA 2021.1.3\jbr\bin\java.exe“

如果你的idea在打开后出现了这个故障 Cannot run program "D:\c\IntelliJ IDEA 2021.1.3\jbr\bin\java.exe" (in directory "D:\c\IntelliJ IDEA 2021.1.3\bin"): CreateProcess error2, 系统找不到指定的文件。 打开IDEA的设置 file --> settings --&…...

案例-注册页面(css)

html页面用css控制样式&#xff0c;画一个注册页面。 页面最终效果如下&#xff1a; 页面代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>注册页面</title> <style>*{…...

Ansible--playbook 剧本

一、playbook&#xff1a; playbook是剧本的意思通过 task 调用 ansible 的模块将多个 play 组织在一 个playbook中运行。 1.1 playbook的组成&#xff1a; Tasks&#xff1a;任务&#xff0c;即通过 task 调用 ansible 的模板将多个操作组织在一个 playbook 中运行Variables…...

Vue3.0路由拦截

全局路由器拦截&#xff1a;官方叫导航守卫 index.js路由器 import { createRouter, createWebHistory } from "vue-router"; //导入vue-router路由模块,createWebHashHistor函数const routes [{path: "/", //路径: redirect: "/Films" //涉…...

EtherCAT转EtherNET/IP协议网关控制EtherCAT伺服驱动器的方法

只需一步&#xff0c;将你的EtherCAT协议设备转换为EthernetIP协议&#xff01; 捷米特JM-ECTM-EIP网关&#xff0c;这款专为EtherCAT协议设备设计的转接装置&#xff0c;可以轻松地将EtherCAT设备数据采集的数据转换成EthernetIP协议。而且&#xff0c;我们的网关接口非常灵活…...

ArXiv:为何大模型无法拥有意识|Erik Hoel

导语当AI能流畅谈论“自我感受”&#xff0c;当Anthropic赋予Claude“对话退出权”&#xff0c;我们是否可以说它有意识&#xff1f;2026年初&#xff0c;神经科学家Erik Hoel在ArXiv发布论文《大语言模型意识证伪&#xff1a;持续学习对意识存在的必要性》&#xff08;A Dispr…...

OpenClaw内容创作流:nanobot辅助生成技术文章草稿

OpenClaw内容创作流&#xff1a;nanobot辅助生成技术文章草稿 1. 从灵感到初稿的自动化尝试 去年冬天&#xff0c;当我面对第五篇技术博客的空白文档时&#xff0c;突然意识到一个残酷事实&#xff1a;写作最耗时的不是码字本身&#xff0c;而是前期资料搜集和结构搭建。就像…...

告别Keil!用VSCode+EIDE插件打造你的STM32开发环境(附ST-LINK V2避坑指南)

从Keil到VSCode&#xff1a;打造高效STM32开发环境的完整指南 在嵌入式开发领域&#xff0c;Keil MDK长期以来一直是STM32开发的主流工具&#xff0c;但它的封闭性、高昂的授权费用和略显陈旧的用户界面让越来越多的开发者开始寻找替代方案。Visual Studio Code&#xff08;VSC…...

技术揭秘:深入解析Universal-IFR-Extractor固件逆向工程工具

技术揭秘&#xff1a;深入解析Universal-IFR-Extractor固件逆向工程工具 【免费下载链接】Universal-IFR-Extractor Utility that can extract the internal forms represenation from both EFI and UEFI modules. 项目地址: https://gitcode.com/gh_mirrors/un/Universal-IF…...

League-Toolkit:基于LCU API的英雄联盟效率工具集

League-Toolkit&#xff1a;基于LCU API的英雄联盟效率工具集 【免费下载链接】League-Toolkit 兴趣使然的、简单易用的英雄联盟工具集。支持战绩查询、自动秒选等功能。基于 LCU API。 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit League-Toolkit是一…...

免费获取Cherry MX键帽3D模型:打造个性化机械键盘的终极指南

免费获取Cherry MX键帽3D模型&#xff1a;打造个性化机械键盘的终极指南 【免费下载链接】cherry-mx-keycaps 3D models of Chery MX keycaps 项目地址: https://gitcode.com/gh_mirrors/ch/cherry-mx-keycaps 你是否厌倦了千篇一律的键盘外观&#xff1f;想要拥有独一无…...

便携式动物源性成分检测仪 肉类真假检测仪

整机采用极简一体化便携设计&#xff0c;无冗余复杂配件&#xff0c;整套系统由两大核心部分构成&#xff0c;兼顾设备专业性与便携实用性&#xff0c;开箱即可快速开展检测工作&#xff0c;无需额外搭建复杂检测环境&#xff0c;完美适配现场流动检测需求&#xff1a;核心检测…...

纯粹直播:革新直播观看体验的一站式跨平台解决方案

纯粹直播&#xff1a;革新直播观看体验的一站式跨平台解决方案 【免费下载链接】pure_live 纯粹直播:哔哩哔哩/虎牙/斗鱼/快手/抖音/网易cc/M38自定义源应有尽有。 项目地址: https://gitcode.com/gh_mirrors/pur/pure_live 您是否曾为在多个直播平台间频繁切换而感到困…...

Defects4J实战:如何利用这个强大的Java缺陷数据库进行自动化测试

Defects4J深度实战&#xff1a;解锁Java缺陷数据库的自动化测试潜能 在当今快节奏的软件开发环境中&#xff0c;质量保障已成为决定项目成败的关键因素。对于Java开发者而言&#xff0c;Defects4J这个开源的缺陷数据库正逐渐成为提升代码质量的秘密武器。不同于普通的测试框架&…...

5大突破:抖音音乐批量下载与智能管理解决方案

5大突破&#xff1a;抖音音乐批量下载与智能管理解决方案 【免费下载链接】douyin-downloader 项目地址: https://gitcode.com/GitHub_Trending/do/douyin-downloader 在数字内容创作与音乐收藏领域&#xff0c;高效获取和管理抖音平台的音频资源一直是用户面临的核心挑…...