**Данные:** 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 минут — проверяется скорость и базовая грамотность. Для тренировки рекомендуем сначала решить самостоятельно, потом сверить с эталонным решением и подсказками.
На zasqlpython.ru есть 482 Python задачи с проверкой через Pyodide, конспекты Python и pandas, AI мок-собеседование с разбором ваших ответов.
← Все задания