有一些棘手的情况。 Pandas数据框df
包含列col
,该列具有嵌套字典作为值,如下所示:
{'code': 'D104',
'description': 'Error Occured',
'id': '5451235d',
'root_cause': 'Brokage'}
我需要做的是查找字符串中某些代码的出现并用它替换整个字符串,在上面的示例中,它将搜索
'D104'
,而所有字符串将只是'D104'
而不是dict。我试图在该列上应用
.str.contains ()
并在该列上使用replace ()
函数,但是似乎技巧不适合将字典用作值。你能帮我指路吗? 最佳答案
如果词典具有相同的结构,则可以将它们split分成单独的列,然后使用它们。
codes = df[col].apply(pd.Series)['code']
# add `codes` to `df` or lookup 'D104' in codes
...