python DataFrame转dict字典过程详解

这篇文章主要介绍了python DataFrame转dict字典过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

背景:将商品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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

时间: 2019-12-25

python3 json数据格式的转换(dumps/loads的使用.dict to str/str to dict.json字符串/字典的相互转换) Python3 JSON 数据解析 JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. Python3 中可以使用 json 模块来对 JSON 数据进行编解码,它包含了两个函数: json.dumps(): 对数据进行编码. json.loads(): 对数据进

1)利用eval可以将字典格式的字符串与字典户转 >>>mstr = '{"name":"yct","age":10}' 转换为可以用的字典: >>>eval(mstr), type( eval(mstr) ) {"name":"yct","age":10}, dict 2).JSON到字典转化: >>>dictinfo = json

1. 从字典创建DataFrame >>> import pandas >>> dict_a = {'user_id':['webbang','webbang','webbang'],'book_id':['3713327','4074636','26873486'],'rating':['4','4','4'],'mark_date':['2017-03-07','2017-03-07','2017-03-07']} >>> df = pandas.

在代码文件中定义中文时,经常会遇到问题,要么编码错误,要么是无法正常打印显示. 例如,dict_chinese.py: #!/usr/bin/python a={'name': 'fengshou'} b={'name': "丰收"} print "a=", a print "b=", b 问题1 执行,查看结果 $ python dict_chinese.py File "dict_chinese.py", line 5 S

对于这个问题,相信很多人都会很困惑,本篇文章将会给大家介绍一种非常简单的方式向DataFrame中任意指定的位置添加一列. 在此之前或许有不少读者已经了解了最普通的添加一列的方式,如下: import pandas as pd feature = pd.read_csv("C://Users//Machenike//Desktop//xzw//lr_train_data.txt", delimiter="\t", header=None, usecols=[0, 1

本文实例讲述了Python实现字典(dict)的迭代操作.分享给大家供大家参考,具体如下: #!/usr/bin/python # -*- coding:utf-8 -*- #! python2 d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 } # 迭代dict的键 for x in d.keys(): print x # 也可以采用这种方式迭代 for x in d.iterkeys(): print x # 迭代dict的值 for

前言 字典是Python中最强大的数据类型之一,本文将给大家详细介绍关于Python合并两个字典(dict)的相关内容,分享出来供大家参考学习,话不多说了,来一起看看详细的介绍吧. 一行代码合并两个dict 假设有两个dict x和y,合并成一个新的dict,不改变 x和y的值,例如 x = {'a': 1, 'b': 2} y = {'b': 3, 'c': 4} 期望得到一个新的结果Z,如果key相同,则y覆盖x.期望的结果是 >>> z {'a': 1, 'b': 3, 'c':

描述:Python2.7中如果想要获取字典中的一个值,但是这个值可能不存在,此时应该加上判断: 举个例子: t= {} if t.get('1'): # right:这种通过key来查询是否存在的方式是比较好的 print(t['1']) print('right') if t['1']: # wrong:这种直接判断是否存在的方式因为会在判断之前调用,所以会报错 print(t['1']) 额外说明: dict.get(key, default=None) 方法详解: Parameters:

0.摘要 pandas中DataFrame类型中,找出所有有空值的行,可以使用.isnull()方法和.any()方法. 1.找出含有空值的行 方法:DataFrame[DataFrame.isnull().T.any()] 其中,isnull()能够判断数据中元素是否为空值:T为转置:any()判断该行是否有空值. import pandas as pd import numpy as np n = np.arange(20, dtype=float).reshape(5,4) n[2,3]

Python中可以使用collections中的defaultdict类实现创建进行统一初始化的字典.这里总结两种常用一点的初始化方式,分别是初始化为list和int. 初始化为list示范代码: #!/usr/bin/python from collectionsimport defaultdict s = [('yellow',1), ('blue', 2), ('yellow', 3), ('blue', 4), ('red', 1)] d =defaultdict(list) for k

前言 今天我们的主角是 defaultdict ,同时也会介绍一下模仿方法 __missing__() ,本文主要来源于网友博客,分享给有需要的人.下面话不多说了,来一起看看详细的介绍吧. 默认值可以很方便 众所周知,在Python中如果访问字典中不存在的键,会引发KeyError异常.但是有时候,字典中的每个键都存在默认值是非常方便的.例如下面的例子: strings = ('puppy', 'kitten', 'puppy', 'puppy', 'weasel', 'puppy', 'kit

本文实例讲述了Python中实现两个字典(dict)合并的方法,分享给大家供大家参考.具体方法如下: 现有两个字典dict如下: dict1={1:[1,11,111],2:[2,22,222]} dict2={3:[3,33,333],4:[4,44,444]} 合并两个字典得到类似: {1:[1,11,111],2:[2,22,222],3:[3,33,333],4:[4,44,444]} 方法1: dictMerged1=dict(dict1.items()+dict2.items())

这里的Counter是指collections中的Counter,通过Counter可以实现字典的创建以及字典key出现频次的统计.然而,使用的时候还是有一点需要注意的小事项. 使用Counter创建字典通常有4种方式.其中,第一种方式是不带任何参数创建一个空的字典.剩下的三种分别在下面通过简单的代码进行演示. 创建方法2示范代码: need python.' cell1 =(2,2,3,5,5,4,3,2,1,1,2,3,3,2,2) list1 =[2,2,3,5,5,4,3,2,1,1,2

1. 使用os.system("cmd") 特点是执行的时候程序会打出cmd在Linux上执行的信息. import os os.system("ls") 2. 使用Popen模块产生新的process 现在大部分人都喜欢使用Popen.Popen方法不会打印出cmd在linux上执行的信息.的确,Popen非常强大,支持多种参数和模式.使用前需要from subprocess import Popen, PIPE.但是Popen函数有一个缺陷,就是它是一个阻塞的方

在python中可以根据字符串来调用函数: 1.使用getattr从字符串来调用函数 在多进程中,可能传递过来的是一个字符串,那么我怎么来调用一个已经存在的函数呢,主要就是使用到getattr函数的作用,这个函数就是在使用字符串得到这个字符串对应的函数的对象,然后就可以进行执行,如下所示: 在模块中,存在两个函数: [root@python 530]# cat attr.py #!/usr/bin/env python def kel(): print 'this is a kel functi

本文实例讲述了python创建关联数组(字典)的方法.分享给大家供大家参考.具体分析如下: 关联数组在python中叫字典,非常有用,下面是定义字典的两种方法 # Dictionary with quoted or variable keys d1 = {"name":"donuts","type":"chocolate","quantity":10} # Dictionary with fixed key

翻译: 用法:zeros(shape, dtype=float, order='C') 返回:返回来一个给定形状和类型的用0填充的数组: 参数:shape:形状 dtype:数据类型,可选参数,默认numpy.float64 dtype类型: t ,位域,如t4代表4位 b,布尔值,true or false i,整数,如i8(64位) u,无符号整数,u8(64位) f,浮点数,f8(64位) c,浮点负数, o,对象, s,a,字符串,s24 u,unicode,u24 order:可选参数

本文实例讲述了python中readline判断文件读取结束的方法.分享给大家供大家参考.具体分析如下: 大家知道,python中按行读取文件可以使用readline函数,下面现介绍一个按行遍历读取文件的方法,通过这个方法,展开我们要讨论的问题: 复制代码 代码如下: filename = raw_input('Enter your file name')  #输入要遍历读取的文件路径及文件名 file = open(filename,'r') done = 0 while not  done:

本文实例总结了python中日期和时间格式化输出的方法.分享给大家供大家参考.具体分析如下: python格式化日期时间的函数为datetime.datetime.strftime():由字符串转为日期型的函数为:datetime.datetime.strptime(),两个函数都涉及日期时间的格式化字符串,这里提供详细的代码详细演示了每一个参数的使用方法及范例. 下面是格式化日期和时间时可用的替换符号 %a 输出当前是星期几的英文简写 >>> import datetime >&

python字典转dataframe_python DataFrame转dict字典过程详解相关推荐

  1. python os模块安装方法_基于python中pygame模块的Linux下安装过程(详解)

    一.使用pip安装Python包 大多数较新的Python版本都自带pip,因此首先可检查系统是否已经安装了pip.在Python3中,pip有时被称为pip3. 1.在Linux和OS X系统中检查 ...

  2. python爬虫bilibili_Python爬虫 bilibili视频弹幕提取过程详解

    两个重要点 1.获取弹幕的url是以 .xml 结尾 2.弹幕url的所需参数在视频url响应的 javascript 中 先看代码 import requests from lxml import ...

  3. python实验原理_Python实现蒙特卡洛算法小实验过程详解

    蒙特卡洛算法思想 蒙特卡洛(Monte Carlo)法是一类随机算法的统称,提出者是大名鼎鼎的数学家冯·诺伊曼,他在20世纪40年代中期用驰名世界的赌城-摩纳哥的蒙特卡洛来命名这种方法. 通俗的解释一 ...

  4. python iloc用法_pandas.DataFrame.loc和.iloc用法详解

    .loc[ ]与.iloc[ ]用法详解 目录 pandas.DataFrame.loc    pandas.DataFrame.iloc 注意 通过.loc[ ]或者.iloc[ ]获取数据时需要注 ...

  5. python bootstrap安装_Django配置Bootstrap, js实现过程详解

    1.首先在APP目录下创建一个static文件夹 如图: # Application definition INSTALLED_APPS = [ 'django.contrib.admin', 'dj ...

  6. pycharm+PyQt5+python最新开发环境配置,踩坑过程详解

    安装工具: Pycharm 专业版2017.3 PyQT5 python3 pyqt5-tools 设置扩展工具的参数找到setting->tools->external tools,点击 ...

  7. 【python】利用python的tkinter-canvas函数绘制哆啦A梦过程详解(附源码)

    1 引 言 绘制哆啦A梦的过程,其实是对哆啦A梦进行拆解的过程,得先构思出他的头部.眼睛.鼻子.嘴巴.胡须.身体.铃铛.口袋.手以及脚等(如下图所示),才能进行下一步的绘画工作.心中有丘壑,方能水到渠 ...

  8. python websocket django vue_Python Django Vue 项目创建过程详解

    1.创建项目 打开pycharm 终端,输入如下,创建项目 # 进入pycharm 项目目录下 cd pyWeb django-admin startproject pyweb_dome # pywe ...

  9. python中pygame模块下载_基于python中pygame模块的Linux下安装过程(详解)

    pyhthon中pygame模块怎么安装?pyhthon中pygame模块怎么安装?鄙人为初二一名学生,闲来无事 钻研起电这句话还是建议问一下你们代课老师吧,因为你们老师是这方面专家,诺儿那边的话肯定 ...

最新文章

  1. ctf 文件头crc错误_[CTF隐写]png中CRC检验错误的分析
  2. BugKuCTF WEB 点击一百万次
  3. JavaScript中循环遍历JSON响应!
  4. 【结论】单元格(jzoj 1509)
  5. Spring MVC:使用基于Java的配置创建一个简单的Controller
  6. linux进程q是什么意思,Linux进程
  7. 阶乘c 语言代码,求10000的阶乘(c语言代码实现)
  8. linux 日志乱码_这些 Linux 技巧大大提高你的工作效率
  9. 沈伟华:图神经网络的三连问
  10. A股开盘:深证区块链50指数涨0.51%,中远海科、广州浪奇涨停
  11. Oracle修改数据时提示“record is locked by another user”的解决办法
  12. 关于ajax post请求跨域问题的解决心得
  13. 记录一下树莓派使用qBittorrent做种走弯路
  14. 格雷码(Gray Code)编码、实现及规律(附编码)
  15. Visio连接线的箭头如何变为直线、双箭头;直线转换为箭头
  16. 防爆和本安的概念理解
  17. 关系代数中的除法运算
  18. 总结:Web3用户体验的四个层
  19. Lnux-组-用户管理
  20. mysql数据库设置外键失效【仅仅推荐测试库】

热门文章

  1. 老王的心路历程(二):下一站Web体验监控产品
  2. Auto login to your computer
  3. cocos2d-x-lua基础系列教程四(lua多继承)
  4. 论优秀的码农,学会这5点!
  5. 读完这10本书,“大数据”对你来说,或许就是小菜一碟
  6. 关得紧紧的 FreeEIM飞鸽传书
  7. 我的心无法平静python好学吗
  8. 这个是什么单机经典模式的引入
  9. 使用命令重定向操作符 (Redirection Operators)
  10. VC++实现对远程计算机屏幕的监视