dataframe 转 字典

2023-10-27

背景:将商品id以及商品类别作为字典的键值映射,生成字典,原为DataFrame

# 创建一个DataFrame
# 列值类型均为int型
import pandas as pd
item = pd.DataFrame({'item_id': [100120, 10024504, 1055460], 'item_category': [87974, 975646, 87974]}, index=[0, 1, 2])
item

 

 

# 将item_id,item_category两列数值转为dict字典
# 注意:同种商品类别肯定会对应不同商品,即一对多,进行字典映射,一定要是item_id作为键,item_category作为值
# 由于原始数据为int类型,结果将是字符串之间的映射,因此需要对列值进行数据类型转换
item.item_id = (item['item_id']).astype(str)
item.item_category = (item['item_category']).astype(str)
item_dict = item.set_index('item_id')['item_category'].to_dict()
item_dict

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

dataframe 转 字典 的相关文章

随机推荐

  • vite和esbuild/roolup的优缺点

    esbuild 优点 基于go语言 go是纯机器码 不使用 AST 优化了构建流程 多线程并行 缺点 esbuild 没有提供 AST 的操作能力 所以一些通过 AST 处理代码的 babel plugin 没有很好的方法过渡到 esbui
  • 第十天Python之面向对象(OOP)基本概念

    面向对象编程 Object Oriented Programming 简写 OOP 目标 了解 面向对象基本概念 一 面向对象基本概念 我们之前学习的编程方式就是 面向过程 的 面向过程 和 面向对象 是两种不同的 编程方式 对比 面向过程
  • Linux学习笔记--rm命令(删除文件或目录)

    rm 英文名remove 删除的意思 1 命令格式 rm 选项 文件或目录 2 常用选项 rm f 强行删除 忽略不存在的文件 不提示确认 f为force的意思 rm i 进行交互式删除 即删除时会提示确认 i为interactive的意思
  • CentOS7.x系统中使用Docker时,在存储方面需要注意的问题

    简述 1 Docker 1 12 6 v17 03文档中CentOS7系统下安装时 明确说明 用于生产时 必须使用devicemapper驱动的direct lvm模式 需要我们提前准备好块设备 以提供更好的稳定性和性能 默认使用devic
  • Java阿里云短信发送工具类

    短信服务API介绍 阿里云短信发送 调用SendSms发送短信 短信服务 阿里云帮助中心
  • 基于Hutools图片上传下载

    1 pom依赖
  • Python视觉处理(二)线检测

    python线检测使用的时cv HoughLinesP 函数 它有两个参数 minLineLength 线的最短长度 比这个线短的都会被忽略 MaxLineGap 两条线之间的最大间隔 如果小于此值 这两条线就会被看成一条线 这个函数的返回
  • 物理层(1.物理层基本概念&2.数据通信基础知识)

    物理层的作用就是在连接计算机的传输介质上传输数据比特流 并且尽可能屏蔽掉传输媒体和通信手段的差异 一 物理层的基本概念 1 机械特性 指明接口所用接线器的形状和尺寸 引线数目和排列 固定和锁定装置等 2 电气特性 指明在接口电缆的各条线上出
  • 五大常用算法之三:动态规划

    动态规划 动态规划 Dynamic Programming 简称DP 需要分解出问题的子结构以及通过子结构重新构造最优解 动态规划不像回溯法 有套路可以套用 动态规划需要大量练习 才能掌握规律 一般思路 1 判断问题的子结构 有最优子结构时
  • vit网络模型简介

    目录 一 前言 1 1 Transformer在视觉领域上使用的难点 1 2 输入序列长度的改进 1 3 VIT对输入的改进 二 Vision Transformer模型 2 1 Embedding层 2 2 Transformer Enc
  • Java 8 – 从一个 Stream中过滤null值

    复习一个Stream 包含 null 数据的例子 Java8Examples java package com mkyong java8 import java util List import java util stream Colle
  • 人工智能涉及算法

    最近需要提交高级人工网络的课程论文 故查找一下资料 做如下记录 后期会继续补充部分算法的的详细内容 自己的理解和代码实现部分 人工智能的三大基石 算法 数据和计算能力 就算法来看 涉及如下几种 一 按照模型训练方式不同分类 可以分为监督学习
  • shell编程实现:依次提示用户输入3个整数,脚本根据数字大小依次排序输出3个数字。

    关于这个题目 有如下代码 bin bash read p 请输入一个整数 num1 read p 请输入一个整数 num2 read p 请输入一个整数 num3 tmp 0 if num1 gt num2 then tmp num1 nu
  • WXSS:微信小程序版CSS

    完整微信小程序 Java后端 技术贴目录清单页面 必看 WXSS WeiXin Style Sheets 是一套样式语言 用于描述 WXML 的组件样式 WXSS 用来决定 WXML 的组件应该怎么显示 为了适应广大的前端开发者 WXSS
  • MySQL 输入任何语句都提示You must reset your password using ALTER USER 解决方法

    安装并配置完成MySQL 5 7 21 修改第一次密码并登陆后 出现提示 You must reset your password using ALTER USER 的提示错误语句 解决办法如下 SET PASSWORD PASSWORD
  • 18-数据结构-查找-B树和B+树

    简介 B树和B 树 都是当存储数据较大时 从硬盘读取数据的优化 emm 我这么说有点迷糊 还是从应试考试的角度解释吧 B树和B 树 都是在二叉排序树的基础上 优化的 跟二叉排序树很像 但B树它由于相比于二叉排序树 降低了树高 即一个结点内可
  • ubuntu下安装和配置Qt5.12.8

    1 下载qt opensource linux x64 5 12 8 run 2 sudo qt opensource linux x64 5 12 8 run 这样会安装到 opt目录下 3 安装过程中 要先拔掉网线 再装 一路默认 到选
  • 动态路由协议EIGRP配置实战

    一 路由协议概述 1 路由协议简介 对于路由器而言 要找出最优的数据传输路径是一件比较有意义却很复杂的工作 最优路径有可能会有赖于节点间的转发次数 当前的网络运行状态 不可用的连接 数据传输速率和拓扑结构 为了找出最优路径 各个路由器间要通
  • Java:如何正确使用Timer【java定时器的使用(Timer) 】

    在需要按时间计划执行简单任务的情况下 Timer是最常被使用到的工具类 使用Timer来调度TimerTask的实现者来执行任务 有两种方式 一种是使任务在指定时间被执行一次 另一种是从某一指定时间开始周期性地执行任务 下面是一个简单的Ti
  • dataframe 转 字典

    背景 将商品id以及商品类别作为字典的键值映射 生成字典 原为DataFrame 创建一个DataFrame 列值类型均为int型 import pandas as pd item pd DataFrame item id 100120 1