Строковые данные часто требуют очистки и преобразования. Методы .str
помогают очищать текстовые данные: lower()
, upper()
, title()
, replace()
, strip()
.
Основные методы
df['col'].str.lower()
- перевод в нижний регистр
df['col'].str.upper()
- перевод в верхний регистр
df['col'].str.title()
- заглавные буквы слов
df['col'].str.strip()
- удаление пробелов по краям (strip() принимает в качестве параметров строку с символами, которые будут удалены. По умолчанию, пробел)
df['col'].str.replace('old', 'new')
- замена подстрок
df['col'].str.contains('pattern')
- поиск подстроки
df['col'].str.len()
- длина строки
Пример
df['name'] = df['name'].str.title()
Задание
Создайте функцию clean_hero_strings(df)
, которая выполняет всю очистку строковых данных автоматически. Функция должна вернуть исправленный DataFrame.
В функции необходимо реализовать следующий функционал.
1. Базовая очистка
- Удалите лишние пробелы во всех текстовых столбцах (
name
, alias
, universe
)
- Приведите имена (
name
) к формату "Имя Фамилия" (Title Case)
- Приведите псевдонимы (
alias
) к верхнему регистру
2. Стандартизация
Приведите названия вселенных (`
universe
`) к единому формату: "Marvel" или "DC" (замените "marvel comics" и "dc comics" на "Marvel" и "DC" соответственно. Других значений в датасете в указанном столбце нет)