Поиск и замена во вложенном словаре в столбце Pandas Dataframe - PullRequest
0 голосов
/ 22 мая 2018

Есть некоторые сложные ситуации.Кадр данных Pandas df содержит столбец col, в котором значения слов в виде значений выглядят так:

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

Что мне нужно сделать, это найти вхождения определенных кодов в строку и заменить целоестрока с ним, в приведенном выше примере он будет искать 'D104', и вся строка будет просто 'D104' вместо dict.

Я попытался применить .str.contains () к этому столбцу и использовать replace ()функция в столбце, но похоже, что фокус не работает со словарями в качестве значений.Можете ли вы указать мне путь?

1 Ответ

0 голосов
/ 22 мая 2018

Если словари имеют одинаковую структуру, вы можете разбить их на отдельные столбцы, а затем работать с ними.

codes = df[col].apply(pd.Series)['code']
# add `codes` to `df` or lookup 'D104' in codes
...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...