Как сделать replace сразу нескольких значений через map

Мне нужно сделать replace данных моей DF. Я знаю как это делать через map в случае когда нужно заменить одно значение на другое, но мне нужна замена нескольких значений. Есть ли способ это сделать правильнее ?

sql_huawei_bsc_GEXT2GCELL['BSC'] = sql_huawei_bsc_GEXT2GCELL['BSC'].map(lambda x: (x.replace('22279','115')))
sql_huawei_bsc_GEXT2GCELL['BSC'] = sql_huawei_bsc_GEXT2GCELL['BSC'].map(lambda x: (x.replace('22285','121')))
sql_huawei_bsc_GEXT2GCELL['BSC'] = sql_huawei_bsc_GEXT2GCELL['BSC'].map(lambda x: (x.replace('22381','523')))
sql_huawei_bsc_GEXT2GCELL['BSC'] = sql_huawei_bsc_GEXT2GCELL['BSC'].map(lambda x: (x.replace('12312','723')))
sql_huawei_bsc_GEXT2GCELL['BSC'] = sql_huawei_bsc_GEXT2GCELL['BSC'].map(lambda x: (x.replace('12351','725')))

Ответы (1 шт):

Автор решения: strawdog
df = pd.DataFrame({"A":[1, 2, 3, 4, 5,6]})
   A
0  1
1  2
2  3
3  4
4  5
5  6

Делаете словарь замен, и - вперед:

rep = {1:"one", 4:"four"}
df["A"]= df["A"].map(rep).fillna(df["A"])

df теперь:

     A
0   one
1     2
2     3
3  four
4     5
5     6
→ Ссылка