Загрузка CSV с явными типами и датами через read_csv
Содержание курса
0 / 1 баллов
pd.read_csv через файловый объект: usecols, dtype, parse_dates и вывод dtypes
Что уже дано
Скрытый start_code создаёт файл orders.csv в рабочей директории. Содержимое файла:
order_id,customer,amount,status,order_date 101,Алина,1500.0,shipped,2024-02-10 102,Борис,320.5,pending,2024-03-22 103,Вера,870.0,shipped,2024-04-05 104,Глеб,45.0,cancelled,2024-04-18
Файл создаётся до выполнения вашего кода. Никаких заранее созданных переменных нет — вы открываете файл и читаете его сами.
Что нужно сделать
Напишите верхнеуровневый код (без функций), который:
- Открывает файл
orders.csvчерезopen('orders.csv', encoding='utf-8')и передаёт файловый объект вpd.read_csvвместо строки-пути. - Вызывает
pd.read_csvс тремя параметрами:
usecols=['order_id', 'amount', 'order_date']— загрузить только эти три столбца;dtype={'order_id': 'int32', 'amount': 'float64'}— задать типы явно;parse_dates=['order_date']— разобрать столбецorder_dateкак дату.
- Сохраняет результат в переменную
df. - Создаёт переменную
dtypes_dict— словарь вида{имя_столбца: str(dtype)}для всех столбцовdf. Пример построения:{col: str(df[col].dtype) for col in df.columns}. - Создаёт переменную
row_count— целое число строк вdf(df.shape[0]).
Проверяющая система читает переменные df, dtypes_dict и row_count после выполнения вашего кода.
Ввод и вывод
stdin не используется. Печатать через print в stdout ничего не нужно.
Проверяющая система читает верхнеуровневые переменные df, dtypes_dict и row_count после выполнения вашего кода и проверяет:
df.shapeравен(4, 3);- столбцы
df— ровно['order_id', 'amount', 'order_date'](безcustomerиstatus); dtypes_dict['order_id']равен'int32';dtypes_dict['amount']равен'float64';dtypes_dict['order_date']начинается с'datetime64';row_countравен4.
О данных в ответах
Используйте учебные данные. Не вставляйте пароли, токены, ключи доступа, паспортные и банковские данные, а также персональные данные других людей. Политика обработки данных.
Как проверяется решение
Проверяются функции и их результаты. Собственный запуск выполняет ваш код без авторских тестов. Интерактивный запуск не влияет на оценку. Лимит сессии — 5 минут, процессорного времени — 10 секунд.
Отправьте решение, чтобы увидеть результаты тестов.
