Series.str.replace()
Метод Series.str.replace() заменяет вхождения подстроки или регулярного выражения в каждом элементе строкового Series на новую строку.
Сигнатура
Series.str.replace(pat, repl, n=-1, case=None, flags=0, regex=False)
Параметры
pat— что искать: строка или регулярка.repl— замена (строка или функция).n— максимум замен (-1 = все).regex— интерпретироватьpatкак regex.case— учитывать регистр (только с regex=True).
Возвращаемое значение
Новый Series той же длины.
Примеры
Пример 1. Простая замена
import pandas as pd
s = pd.Series(["temp_22.5", "temp_23.0"])
print(s.str.replace("temp", "T"))
0 T_22.5
1 T_23.0
dtype: object
Пример 2. Удаление символов
import pandas as pd
s = pd.Series(["22.5°C", "23.0°C"])
print(s.str.replace("°C", ""))
0 22.5
1 23.0
dtype: object
Пример 3. Регулярное выражение
import pandas as pd
s = pd.Series(["sensor_01_temp", "sensor_02_hum"])
print(s.str.replace(r"sensor_\d+_", "", regex=True))
0 temp
1 hum
dtype: object
Пример 4. Только первое вхождение
import pandas as pd
s = pd.Series(["aa-bb-cc"])
print(s.str.replace("-", "/", n=1))
0 aa/bb-cc
dtype: object
Пример 5. Замена через функцию (regex=True)
import pandas as pd
s = pd.Series(["x=5", "x=10"])
result = s.str.replace(
r"\d+",
lambda m: str(int(m.group()) * 2),
regex=True,
)
print(result)
0 x=10
1 x=20
dtype: object
См. также
Примечание
Лицензия и источники
Техническое описание функции адаптировано из официальной документации Pandas (https://pandas.pydata.org/docs/), BSD-3-Clause License. Примеры и пояснения — © AlashEd Wiki.