pandas列值根据字典批量替换

2023-11-19

更多、更及时内容欢迎留意微信公众号小窗幽记机器学习

背景

DataFrame数据中一列的值需要根据某个字典批量映射为字典中的value。

方法1:pandas中的df.replace

    import pandas as pd
    import numpy as np
    df = pd.DataFrame({'col2': {0: 'a', 1: 2, 2: np.nan}, 'col1': {0: 'w', 1: 1, 2: 2}})
    print("init df:")
    print(df)
    column_dict = {1: "A", 2: "B"}
    new_df = df.replace({"col1": column_dict})
    print("use dict to replace one column,dict=", column_dict)
    print("new df:")
    print(new_df)

运行结果:

init df:
  col2 col1
0    a    w
1    2    1
2  NaN    2
use dict to replace one column,dict= {1: 'A', 2: 'B'}
new df:
  col2 col1
0    a    w
1    2    A
2  NaN    B

方法2:map操作

    import pandas as pd
    import numpy as np
    df = pd.DataFrame({'col2': {0: 'a', 1: 2, 2: np.nan}, 'col1': {0: 'w', 1: 1, 2: 2}})
    print("init df:")
    print(df)
    column_dict = {1: "A", 2: "B"}
    # new_df = df.replace({"col1": column_dict})
    df['col1'] = df['col1'].map(column_dict)
    print("use dict to replace one column,dict=", column_dict)
    print("new df:")
    print(df)

运行结果:

init df:
  col2 col1
0    a    w
1    2    1
2  NaN    2
use dict to replace one column,dict= {1: 'A', 2: 'B'}
new df:
  col2 col1
0    a  NaN
1    2    A
2  NaN    B

PS:
数据量大的情况下,map会比 replace 要快。

【更多、更及时内容欢迎留意微信公众号小窗幽记机器学习

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

pandas列值根据字典批量替换 的相关文章

随机推荐

  • 新手教程02:使用makefile脚本进行VCS逻辑仿真

    目录 前言 使用makefile脚本的方式使用VCS 1 新建文件夹 存放需要仿真的rtl代码 2 生成 filelist f 文件 罗列所有rtl文件的路径 3 书写makefile脚本 4 terimal中运行命令 进行仿真 总结 前言
  • jmeter使用教程之验证码登录接口(工作日记)

    首先我们打开jmeter 快捷按钮 win r 会弹出快捷运行弹框 我们输入cmd 后点击回车 会弹出一个控制窗口 我们输入jmeter 然后回车 首次进入jmeter 页面显示空白页且默认英文 我们可以切换语言 Options Choos
  • Flutter 仿朋友圈查看大图,Swiper支持滑动

    Swiper支持多图片预览 左右切换 flutter swiper插件传送地址 先上效果图 1 导入引用到pubspec yaml文件里面 引入后记得pub get flutter swiper 1 1 6 2 写一个图片的集合 可以使用本
  • Nginx配置安全策略总结

    Nginx配置安全策略总结 Content Security Policy 头缺失或不安全 X Content Type Options 头缺失或不安全 X XSS Protection 头缺失或不安全 HTTP Strict Transp
  • SpringCloud——GateWay网关(详解+案例)

    目录 一 相关概念 1 网关概念 2 网关作用 3 网关架构图 4 网关三大核心 二 案例 1 案例说明 2 搭建GateWay网关9527服务 1 创建maven工程 2 导入依赖 3 配置application yml文件 4 创建主启
  • 深入了解== 和 equals的比较

    原文链接 https blog csdn net qq 41841247 article details 106987762
  • SMI/慧荣/SM32**主控量产通用教程,PNY U盘量产!

    我的PNY 8G U盘已多次量产测试 绝对可用 SMI 慧荣主控 SMI主控应该都能通用 我量产后 型号变成SM321 325了 这个可以改的 量产的时候 量产前 PNP设备 ID VID 154B PID 0 044 设备备序列号 AAA
  • Mysql高可用高性能存储应用系列2 - 深入理解锁和Mvcc

    概述 Mysql数据库在处理并发中下了很多功夫 锁是为了更好的保护数据的正确和可靠 Mvcc是维持一个数据的多个版本 使得读写操作没有冲突的解决并发的数据库方案 锁 当数据访问多了 就会出现并发的问题 Mysql锁设计的初衷是处理并发问题
  • vite 创建vue.js项目及vant安装

    1 npm create vitejs app 2 project name select framework select variant 3 cd wx vant 4 npm install 5 npm run dev 6 npm i
  • Linux 内存管理

    摘要 本章首先以应用程序开发者的角度审视Linux的进程内存管理 在此基础上逐步深入到内核中讨论系统物理内存管理和内核内存的使用方法 力求从外到内 水到渠成地引导网友分析Linux的内存管理与使用 在本章最后 我们给出一个内存映射的实例 帮
  • 你不知道的js

    作用域 LHS RHS 区别 如果 RHS 查询在所有嵌套的作用域中遍寻不到所需的变量 引擎就会抛出 ReferenceError 异常 值得注意的是 ReferenceError 是非常重要的异常类型 相较之下 当引擎执行 LHS 查询时
  • 循环单链表(C语言版)

    前言 小可爱们 本次一起来看看循环单链表吧 嘻嘻 一 循环单链表的定义 循环单链表是单链表的另一种形式 其结构特点链表中最后一个结点的指针域不再是结束标记 而是指向整个链表的第一个结点 从而使链表形成一个环 和单链表相同 循环链表也有带头结
  • 量化涌现:信息论方法识别多变量数据中的因果涌现

    来源 集智俱乐部 作者 Fernando E Rosas Pedro A M Mediano Henrik J Jensen等 译者 潘佳栋 审校 梁金 编辑 邓一雪 导语 大量个体聚集起来 常常涌现出新的复杂结构 鸟儿聚集起来形成兼具灵活
  • vue-cli 添加顶部导航栏及点击导航菜单,左侧菜单栏切换

    layout 模板包含菜单栏等主要框架 router 路由管理 根据路由可生成左侧菜单栏 When your routing table is too long you can split it into small modules imp
  • 迈向多模态AGI之开放世界目标检测

    作者 王斌 谢春宇 冷大炜 责编 夏萌 出品 360人工智能研究院 引言 目标检测是计算机视觉中的一个非常重要的基础任务 与常见的的图像分类 识别任务不同 目标检测需要模型在给出目标的类别之上 进一步给出目标的位置和大小信息 在 CV三大任
  • 【腾宇】postinstall-postinstall配合patch-package重写node_modules的依赖方法

    1 本地安装依赖 postinstall postinstall patch package npm i patch package postinstall postinstall save dev or yarn add patch pa
  • Python使用pandas从mysql数据库读取数据并导出到Excel

    工作中我们经常会从数据库中提取数据 处理之后 将结果整理为excel输出 本文主要介绍使用python的pandas工具从mysql数据获取数据 按要求处理之后 导出到excel文件 安装依赖 首先确定已经安装PyMySQL pandas
  • 算法高级(23)-彩虹表(Rainbow Table)

    一 彩虹表的定义 百度百科 彩虹表是一个用于加密散列函数逆运算的预先计算好的表 为破解密码的散列值 或称哈希值 微缩图 摘要 指纹 哈希密文 而准备 一般主流的彩虹表都在100G以上 这样的表常常用于恢复由有限集字符组成的固定长度的纯文本密
  • Python-test 2021.11.1

    1 val for val in b1 if val in b2 列表的交集与差集 b1 1 2 3 b2 2 3 4 b3 val for val in b1 if val in b2 b4 val for val in b1 if va
  • pandas列值根据字典批量替换

    更多 更及时内容欢迎留意微信公众号 小窗幽记机器学习 背景 DataFrame数据中一列的值需要根据某个字典批量映射为字典中的value 方法1 pandas中的df replace import pandas as pd import n