python-将字典项转换为pandas数据框的行,其中键是元组,值是整数
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python-将字典项转换为pandas数据框的行,其中键是元组,值是整数,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1395字,纯文字阅读大概需要2分钟。
内容图文
![python-将字典项转换为pandas数据框的行,其中键是元组,值是整数](/upload/InfoBanner/zyjiaocheng/687/c386eddbda724b91bd423a0749b607c1.jpg)
我有以下字典:
d = {("Sam","Scotland","23") : 25,
("Oli","England","23") : 28,
("Ethan","Wales","18") : 19}
我想将其转换为如下所示的熊猫数据框:
Name Country Age Count
Sam Scotland 23 25
Oli England 23 28
Ethan Wales 18 19
我试图这样做:
df = pd.DataFrame.from_items(d.items(),orient="index",
columns=["Name","Country","Age","Count"])
但是我得到这个错误:
ValueError: The value in each (key, value) pair must be an array, Series, or dict
我很欣赏通过遍历元组的每个项目和每个元素都是可能的,但是有没有更清洁的方法呢?
解决方法:
您可以通过将键和值连接在一起来手动构建DataFrame的行,例如:
import pandas as pd
d = {("Sam", "Scotland", "23"): 25,
("Oli", "England", "23"): 28,
("Ethan", "Wales", "18"): 19}
df = pd.DataFrame([k + (v,) for k, v in d.items()], columns=['name', 'country', 'age', 'count'])
print(df)
输出量
name country age count
0 Ethan Wales 18 19
1 Sam Scotland 23 25
2 Oli England 23 28
或作为替代:
import pandas as pd
d = {("Sam", "Scotland", "23"): 25,
("Oli", "England", "23"): 28,
("Ethan", "Wales", "18"): 19}
df = pd.DataFrame(
[{"name": name, "country": country, "age": age, "count": value} for (name, country, age), value in d.items()])
print(df)
输出量
age count country name
0 23 28 England Oli
1 23 25 Scotland Sam
2 18 19 Wales Ethan
这个想法是将键值对转换成字典列表,然后将其传递给DataFrame.
内容总结
以上是互联网集市为您收集整理的python-将字典项转换为pandas数据框的行,其中键是元组,值是整数全部内容,希望文章能够帮你解决python-将字典项转换为pandas数据框的行,其中键是元组,值是整数所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。