python - 具有键和值列表的列到具有字典列表的列
问题描述
我有这个pandas
:
Key Level Subkeys Values
0 A 0 [A1, A2] [3, 4]
1 B 1 [B1] [2]
2 C 2 [C1, C2, C3] [8, 5, 1]
我想把它变成这样:
Key Level Subdicts
0 A 0 [{A1: 3, {A2: 4}]
1 B 1 [{B1: 2]
2 C 2 [{C1: 8}, {C2: 5}, {C3: 1}]
最有效的方法是什么?
解决方案
我同意cs95
这太恶心了……
df.assign(Subdicts=[[{x: y} for x, y in zip(X, Y)] for X, Y in zip(df.Subkeys, df.Values)])
Key Level Subkeys Values Subdicts
0 A 0 [A1, A2] [3, 4] [{'A1': 3}, {'A2': 4}]
1 B 1 [B1] [2] [{'B1': 2}]
2 C 2 [C1, C2, C3] [8, 5, 1] [{'C1': 8}, {'C2': 5}, {'C3': 1}]
推荐阅读
- angular - submitEl.triggerEventHandler 不是 Angular 5 中的函数
- reactjs - 使用反应内联样式切换不同选项卡上的活动状态
- ios - iOS上的Wifi辅助无法正常工作
- angular - ltrim 如何在角度过滤器中工作?
- excel - 使用工作表功能时下标超出范围错误
- php - Yii2:在事务外执行查询?
- html - 在情节中定位下拉菜单
- angular - Angular 6 更新 - 找不到 rxjs-5-to-6-migrate 命令
- c# - 使 MVC Web 应用程序使用默认资源文件
- python - Tensorflow 代码中的形状错误