使用pandas两列转换成字典的健和值
短信预约 -IT技能 免费直播动态提醒
pandas两列转换成字典的健和值
两列转换成字典的key和value
df:
name | age |
---|---|
Mary | 26 |
Sellina | 28 |
Zaca | 27 |
想将name这列变成字典的健,年龄对应成字典的值,健值对应如下:
{‘Mary':26,‘Sellina':28,‘Zaca':27}
import pandas as pd
import pandas as pd
a = ['Mary','Sellina','Zaca']
b = [26,28,27]
data = {'name':a,'age':b}
df = pd.DataFrame(data)
print(df)
结果如下:
name age
0 Mary 26
1 Sellina 28
2 Zaca 27
python代码实现转换成字典:
df1 = df.set_index(['name'])['age'].to_dict()
print(df1)
结果如下:
{'Mary': 26, 'Sellina': 28, 'Zaca': 27}
列名变成字典的key
df2 = df.to_dict(orient = 'list')
结果如下:
{'name': ['Mary', 'Sellina', 'Zaca'], 'age': [26, 28, 27]}
pandas两列的值转dict
1、把dataframe中的某两列变成一个key-value形式的dict
代码如下:
import pandas as pd
df = pd.DataFrame({'A': ['a', 'b', 'c'],
'B': [2, 7, 1],
'C': [100, 87, 96]})
# 形成以A为key,B为value的dict
dc = df.set_index("A")["B"].to_dict()
print(dc)
结果如下:
{'a': 2, 'b': 7, 'c': 1}
2、一个key对应多个value的情况
dc = df.groupby('mykey')['mydata'].apply(list).to_dict() # 对于同一个key对应多个value,则把同一key的value构成一个list
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341