Очистка дубликатов и пропусков

Junior Python Health

Условие задания

**Данные:** DataFrame `patients` с колонками: `patient_id`, `name`, `age`, `diagnosis`, `visit_date`.

**Условия:** есть дубликаты по `patient_id` + `visit_date` и пропуски в `age` и `diagnosis`.

**Задание:**
1. Удалите полные дубликаты визитов
2. Заполните пропуски в `age` медианой
3. Заполните пропуски в `diagnosis` значением «Не указан»

Пример данных

Структура для ориентира — реальные значения из эталонного решения.

patients = pd.DataFrame({
    'patient_id': [1, 1, 2, 3, 3, 4, 5],
    'name': ['Иванов', 'Иванов', 'Петрова', 'Сидоров', 'Сидоров', 'Козлова', 'Антонов'],
    'age': [34, 34, np.nan, 45, 45, np.nan, 28],
    'diagnosis': ['ОРВИ', 'ОРВИ', 'Грипп', np.nan, np.nan, 'Ангина', np.nan],
    'visit_date': ['2024-01-10', '2024-01-10', '2024-01-11',
                   '2024-01-11', '2024-01-11', '2024-01-12', '2024-01-12'],
})

Темы

pandas drop_duplicates fillna isna очистка данных

Подсказки

Все тестовые задания →

Частые вопросы

Какой уровень знаний нужен для задачи "Очистка дубликатов и пропусков"?

Это задание для уровня Junior. Подходит для начинающих аналитиков, проверяет базовые знания SQL/Python/статистики.

На каких собеседованиях встречается такая задача?

Подобные задания в категории «Python» регулярно дают на собеседованиях аналитика данных в Яндекс, Сбер, Ozon, Авито, Тинькофф, Wildberries, T-Bank, X5, ВТБ и других крупных IT-компаниях. Тематика: pandas, drop_duplicates, fillna, isna, очистка данных.

Сколько времени даётся на решение?

На реальном собеседовании на подобную задачу отводится 5-10 минут — проверяется скорость и базовая грамотность. Для тренировки рекомендуем сначала решить самостоятельно, потом сверить с эталонным решением и подсказками.

Где ещё потренироваться по теме «Python»?

На zasqlpython.ru есть 482 Python задачи с проверкой через Pyodide, конспекты Python и pandas, AI мок-собеседование с разбором ваших ответов.

← Все задания