Метод replace
Метод replace применяется к текстовым данным Series
через аксессор str. Он заменяет все вхождения заданной подстроки
на новую подстроку в каждом элементе. Первым параметром передаётся
искомая подстрока или регулярное выражение (если regex=True),
вторым - строка замены.
Синтаксис
ser.str.replace(pat, repl, [n=-1, case=None, regex=True])
Пример
Заменим в каждой строке букву 'a' на 'x':
import pandas as pd
ser = pd.Series(['abcde', 'article', 'data'])
res = ser.str.replace('a', 'x')
print(res)
Результат выполнения кода:
0 xbcde
1 xrticle
2 xdtx
dtype: object
Пример
Ограничим количество замен одним вхождением на строку:
import pandas as pd
ser = pd.Series(['abcde', 'article', 'data'])
res = ser.str.replace('a', 'x', n=1)
print(res)
Результат выполнения кода:
0 xbcde
1 xrticle
2 xdtx
dtype: object
Пример
Используем регулярное выражение для замены всех цифр на звёздочку:
import pandas as pd
ser = pd.Series(['abc123', '456def', '789'])
res = ser.str.replace(r'\d', '*', regex=True)
print(res)
Результат выполнения кода:
0 abc***
1 ***def
2 ***
dtype: object
Пример
Удалим подстроку 'csv' из имён файлов:
import pandas as pd
ser = pd.Series(['data.csv', 'users.csv', 'info.csv'])
res = ser.str.replace('.csv', '')
print(res)
Результат выполнения кода:
0 data
1 users
2 info
dtype: object