pandas: устройство, выборка и изменение таблиц

Загрузка CSV с явными типами и датами через read_csv

Содержание курса

pd.read_csv с usecols, dtype и parse_dates: загрузка и проверка dtypes

Что уже дано

Проверяющая система выполняет скрытый start_code, который создаёт файл employees.csv в рабочей директории. Содержимое файла:

emp_id,name,salary,department,hired_on
1,Алина,75000.0,Разработка,2021-03-15
2,Борис,92000.0,Аналитика,2019-11-01
3,Вера,64000.0,Разработка,2022-06-30
4,Глеб,110000.0,Управление,2018-04-12
5,Дина,81000.0,Аналитика,2020-09-07

Файл создаётся до выполнения вашего кода. Никаких заранее созданных переменных нет — вы читаете файл сами.

Что нужно сделать

Напишите верхнеуровневый код (без функций), который:

  1. Загружает файл employees.csv через pd.read_csv с тремя параметрами:
  • usecols=['emp_id', 'salary', 'hired_on'] — загрузить только эти три столбца;
  • dtype={'emp_id': 'int32', 'salary': 'float64'} — задать типы явно;
  • parse_dates=['hired_on'] — разобрать столбец hired_on как дату.
  1. Сохраняет результат в переменную df.
  2. Создаёт переменную col_names — список имён столбцов: list(df.columns).
  3. Создаёт переменную emp_id_dtype — строковое представление dtype столбца emp_id: str(df['emp_id'].dtype).
  4. Создаёт переменную hired_on_kind — первый символ dtype столбца hired_on: df['hired_on'].dtype.kind. Для datetime64[ns] это 'M'.

Проверяющая система читает переменные df, col_names, emp_id_dtype и hired_on_kind после выполнения вашего кода.

Ввод и вывод

stdin не используется. Печатать через print в stdout ничего не нужно.

Проверяющая система читает верхнеуровневые переменные df, col_names, emp_id_dtype и hired_on_kind после выполнения вашего кода и проверяет:

  • df.shape равен (5, 3);
  • col_names содержит ровно ['emp_id', 'salary', 'hired_on'];
  • emp_id_dtype равен 'int32';
  • hired_on_kind равен 'M' (datetime);
  • столбец name и столбец department в df отсутствуют.
О данных в ответах

Используйте учебные данные. Не вставляйте пароли, токены, ключи доступа, паспортные и банковские данные, а также персональные данные других людей. Политика обработки данных.

РешениеPython · Python 3.12 (data: numpy, pandas, sklearn...)
Как проверяется решение

Проверяются функции и их результаты. Собственный запуск выполняет ваш код без авторских тестов. Интерактивный запуск не влияет на оценку. Лимит сессии — 5 минут, процессорного времени — 10 секунд.

Отправьте решение, чтобы увидеть результаты тестов.