Я нашел этот ответ о том, как сопоставить множество значений с 1, используя функцию replace(), поэтому я попытался расширить некоторые ответы, чтобы выполнить сопоставление многих к 1 для нескольких групп, однако не все мои значения были правильно изменены, и я не знаю, почему.
Пример:
Код: Выделить всё
df1 = pd.DataFrame({'col1':['foo', 'foo too', 'bar', 'BAR', 'bar ii']})
col1
0 foo
1 foo too
2 bar
3 BAR
4 bar ii
Код: Выделить всё
df1['col1'].replace({'foo|foo too' : 'Foo',
'bar|BAR|bar ii' : 'Bar'}, regex=True)
Код: Выделить всё
col1
0 Foo
1 Foo too
2 Bar
3 Bar
4 Bar ii
Подробнее здесь: https://stackoverflow.com/questions/785 ... e-mappings