我有一个 pandas 数据框,其中包含一列字典列表。
list_dicts
id
a1 [{name:'cat'}, {name:'dog'}]
a2 [{name:'toy'}, {name:'boy'}]
a3 [{name:'jack'},{name:'jill'},{name:'sam'}]
a4 [{name:'pig'}]
字典列表中的每个键都是“name”。我想创建与“名称”键关联的所有值的列表,并将新列附加到现有数据帧,如下所示。
list_from_dict
id
a1 ['cat','dog']
a2 ['toy','boy']
a3 ['jack','jill','sam']
a4 ['pig']
我怎样才能实现这个目标?我知道它可能会使用 lambda 函数,但不确定如何使用。
最佳答案
您可以通过列表理解来完成此操作,而无需在一行中使用 lambda 函数:
df['list_from_dict'] = [[x['name'] for x in list_dict] for list_dict in df['list_dicts']]
关于python - 将字典列表解压到 pandas 数据框中的列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49929378/