pandas中dict和dataFrame互转

本文介绍如何使用Python的Pandas库实现字典(dict)与DataFrame之间的转换。包括从字典创建DataFrame的方法,以及DataFrame转换成不同形式字典的具体操作。
Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

一、dict转Dataframe

pd.DataFrame(dict_a)

二、df转dict

使用df.to_dict()默认会把key和值分开
参数:'dict' (默认) ,'list','series','split','records','index'

如果是list(dict)这种嵌套情况转的df,回转需要使用records

# 拿上面的数据举例,df_b
     a    b    c
0    0    1    2
1    3    4    5
2    6    7    8


# 1、不传入参数,默认是'dict'
df_b.to_dict()  # 列标题作为外层dict键值,索引作为内层dict键值
>> 
{'a': {0: 0, 1: 3, 2: 6}, 'b': {0: 1, 1: 4, 2: 7}, 'c': {0: 2, 1: 5, 2: 8}}


# 2、'list'
df_b.to_dict('list')  # 列标题是外层键值,内层是list
>>
{'a': [0, 3, 6], 'b': [1, 4, 7], 'c': [2, 5, 8]}

# 3、'split'
df_b.to_dict('split')  # 将列标题,索引,数据分开
>>
{'index': [0, 1, 2],
 'columns': ['a', 'b', 'c'],
 'data': [[0, 1, 2], [3, 4, 5], [6, 7, 8]]}


# 4、'records'
df_b.to_dict('records')  # 外层列表,内层是列标题为键值的列表
>>
[{'a': 0, 'b': 1, 'c': 2}, {'a': 3, 'b': 4, 'c': 5}, {'a': 6, 'b': 7, 'c': 8}]


# 5、'index'
df_b.to_dict('index')  # 与参数1相反:索引作为外层dict键值,列标题作为内层dict键值
>>
{0: {'a': 0, 'b': 1, 'c': 2}, 1: {'a': 3, 'b': 4, 'c': 5}, 2: {'a': 6, 'b': 7, 'c': 8}}

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值