У меня есть pd dataframe, который выглядит следующим образом:
keyword | ranks |search_type | search_volume
0 keyword1 |[{'rank': 1}]| 1 | {'search_volume': 10}
1 keyword1 |[{'rank': 1}]| 2 |{'search_volume': 10}
2 keyword2 |[{'rank': 1}]| 1 |{'search_volume': 390}
3 keyword2 |[{'rank': 1}]| 2 |{'search_volume': 390}
4 keyword3 |[{'rank': 1}]| 1 |{'search_volume': 170}
...
Столбцы ranks
и search_volume
должны быть целыми числами, содержащими только цифры, и я пытаюсь найти способ удалить [{'rank':
, {'search_volume':
и и закрывающие скобки, поэтому таблица выглядит так:
keyword | ranks |search_type | search_volume
0 keyword1 | 1 | 1 |10
1 keyword1 | 1 | 2 |10
2 keyword2 | 1 | 1 |390
3 keyword2 | 1 | 2 |390
4 keyword3 | 1 | 1 |170
...
Я пробовал это: df['ranks'].replace('[{\'rank\':','',inplace=True)
однако ничего не сделал.также это не самый быстрый способ решения этой проблемы.
Я смотрел на эту тему Pandas DataFrame: удаление ненужных частей из строк в столбце , это решение для одногостолбец за раз (было бы хорошо вычеркнуть сразу все необработанные строки), и он возвращает эту ошибку: AttributeError: 'list' object has no attribute 'lstrip'
.
Я использую Python 3.