python - 在 Pandas Dataframe 列的嵌套字典中搜索和替换

标签 python string pandas dictionary dataframe

遇到一些棘手的情况。 Pandas Dataframe df 包含一个列 col ,其中嵌套字典作为值,如下所示:

{'code': 'D104',
  'description': 'Error Occured',
  'id': '5451235d',
  'root_cause': 'Brokage'}

我需要做的是查找字符串中某些代码的出现并用它替换整个字符串,在上面的示例中它将搜索 'D104' 并且所有字符串都将是只是'D104'而不是字典。

我尝试在该列上应用 .str.contains () 并在该列上使用 replace () 函数,但似乎该技巧不起作用以字典作为值。你能帮我指路吗?

最佳答案

如果字典具有相同的结构,您可以 split将它们分成单独的列,然后使用它们。

codes = df[col].apply(pd.Series)['code']
# add `codes` to `df` or lookup 'D104' in codes
...

关于python - 在 Pandas Dataframe 列的嵌套字典中搜索和替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50471397/

相关文章:

python - Pygame 混音器一次只播放一种声音

Python只识别多行中的第一行

c - 如何将作为宏操作结果的宏字符串化?

python - 用街道号码和字母 python 分隔街道名称字符串

python - 将列表列表转换为数据框

python - 如何 'unstack'数据框列中的所有列表并成对组合结果?

python - 无法返回整个 CSV 数据框

java - 如何从日志中提取带有 Http 响应 200 的 GET 请求请求的 gif 文件?

php - 如何快速搜索数百万个字符串?

Python Regex 将评论拆分为数据框