我有以下问题:在一个数据帧中,我有无穷的字典,这些字典在一个列表中,而在另一方面,它是一个字符串:
如何将这些词典解压缩到数据框的单独列中?
答案 0 :(得分:1)
您可以使用ast.literal_eval
,然后使用str
访问器来检索第一个(也是唯一的)列表元素。这是一个示例:
from ast import literal_eval
df = pd.DataFrame({'A': ['[{"a": 1, "b": 2}]', '[{"b": 3, "c": 4}]']})
df = df.join(pd.DataFrame(df.pop('A').apply(literal_eval).str[0].values.tolist()))
print(df)
a b c
0 1.0 2 NaN
1 NaN 3 4.0
相关:Splitting dictionary/list inside a Pandas Column into Separate Columns