python - 如何将数据框列对转换为单个字典映射?
问题描述
如何将数据框值转换为字典
D_ID Designation G_Code G
1 Developer 1 M
1 Developer 2 F
1 Developer 1 M
2 Testing 1 M
2 Testing 1 M
2 Testing 2 F
预计出局
d1 = {1:“开发者”,2:“测试”}
d2 = {1:“M”,2:“F”}
解决方案
如果您事先知道哪些列需要配对,您可以创建一个 pairs dict 并非常巧妙地对其进行迭代:
pairs = {'D_ID': 'Designation', 'G_Code': 'G'}
[df.set_index(k)[v].to_dict() for k, v in pairs.items()]
# [{1: 'Developer', 2: 'Testing'}, {1: 'M', 2: 'F'}]
如果您只有两对,您可以将结果分配给“d1”和“d2”:
d1, d2 = (df.set_index(k)[v].to_dict() for k, v in pairs.items())
d1
# {1: 'Developer', 2: 'Testing'}
d2
# {1: 'M', 2: 'F'}
推荐阅读
- css - 覆盖 Material-ui 样式
- jquery - 如何使用下拉菜单更改 youtube 播放列表 ID
- javascript - 在数组元素之间切换 React
- android-architecture-components - 如何使用 jetpack 导航库在两个活动之间导航
- java - 如何确定 Java 应用程序是基于 Spring 或 Spring Boot 或 Spring MVC 构建的
- javascript - 带有 Express 和 React 的 Socket.io
- android - Android 应用无法连接到互联网
- python - 只访问一次产生的变量
- ios - `weekday` 是否保证在 [1:7] 范围内?
- tensorflow - 如何在 tesorflow_hub 中为现有的预训练 resnet50 模型添加额外的通道?