简体   繁体   English

具有键和值列表的列到具有字典列表的列

[英]Columns with list of keys and values to columns with lists of dicts

I have this in pandas : 我在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]

and I want to transform it to this: 我想将其转换为:

  Key  Level                       Subdicts 
0   A      0              [{A1: 3, {A2: 4}]
1   B      1                       [{B1: 2]
2   C      2    [{C1: 8}, {C2: 5}, {C3: 1}]

What is the most efficient way to do this? 最有效的方法是什么?

I agree with cs95 我同意CS95

This is pretty gross... 这真是太恶心了...

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}]

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM