Заменить строку одним словом на основе условия в Python - PullRequest
0 голосов
/ 14 октября 2019

В фрейме данных pandas у меня есть строковый столбец с несколькими значениями, и я хочу заменить его столбцом на основе соответствия для разных строк.

enter image description here

Например, основываясь на изображении, я хочу указать «Экстремально прогрессивный, Прогрессивный рок, Прогрессивный» как «Прогрессивный», «Тяжелый, Трэш в бухте» как Трэш, «Прогрессивная смерть, Смерть, Прогрессивный трэш» как «Смерть» и так далее. Как я должен продолжить выполнение того же самого?

1 Ответ

1 голос
/ 14 октября 2019

Используя фрейм данных:

dfa:

        ID No   Time    Variable    Val
0       123     0.1     A           1
1       123     0.1     B           2
2       123     0.1     C           3
3       127     0.8     A           4
4       127     0.8     B           5
5       127     0.8     C           6

, вы можете создать dict mapper:

dictMapper = {'A' : 'aye', 'B': 'bee'}
dfa['Variable'] = dfa['Variable'].map(lambda x: dictMapper.get(x,x))
dfa:
    ID No   Time    Variable    Val
0   123     0.1     aye         1
1   123     0.1     bee         2
2   123     0.1     C           3
3   127     0.8     aye         4
4   127     0.8     bee         5
5   127     0.8     C           6

Этот курс основан на том, что вы знаете все до: после комбинаций до обновления вашего фрейма данных, как выВам понадобится точное совпадение с ключами dict.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...