Пропуски в таблице: обнаружение, dropna, fillna и nullable dtype
Содержание курса
Nullable dtype и fillna: Int64, Float64, boolean после заполнения пропусков
Что уже дано
Проверяющая система запускает вашу программу и подаёт данные через stdin. Никаких заранее созданных переменных нет — вы читаете всё сами.
Что нужно сделать
Напишите программу, которая:
- Читает из
stdinцелое числоn— количество строк таблицы. - Читает следующие
nстрок; каждая содержит три токена через пробел:
qty— целое число или строкаNA;price— вещественное число или строкаNA;active— строкаTrue,FalseилиNA.
- Строит
pd.DataFrameс именемdfсо столбцами:
'qty'с dtypeInt64(nullable integer);'price'с dtypeFloat64(nullable float);'active'с dtypeboolean(nullable boolean).
- Шаг A. Выводит одну строку:
isna_sum=<qty_na> <price_na> <active_na>— число пропусков по каждому столбцу через пробел. - Шаг B. Заполняет пропуски в
df['qty']значением0черезfillna(0), сохраняет вqty_filled. Выводит одну строку:qty_dtype=<dtype>, где<dtype>—dtypeрезультата. - Шаг C. Заполняет пропуски в
df['price']черезffill(), сохраняет вprice_ffilled. Выводит значения через пробел, округлив до одного знака. Если первый элемент — пропуск иffillне смог его заполнить, выводитNAдля этой позиции. - Шаг D. Заполняет пропуски в
df['active']значениемFalseчерезfillna(False), сохраняет вactive_filled. Выводит одну строку:active_dtype=<dtype>, где<dtype>—dtypeрезультата.
Во всех шагах исходный df не изменяется.
Ввод и вывод
Программа читает stdin и пишет в stdout.
Формат ввода
n qty0 price0 active0 qty1 price1 active1 ...
Токен NA означает пропуск в соответствующем столбце.
Формат вывода
Ровно четыре строки в порядке A → B → C → D.
О данных в ответах
Используйте учебные данные. Не вставляйте пароли, токены, ключи доступа, паспортные и банковские данные, а также персональные данные других людей. Политика обработки данных.
Проверяется тестами (1)
- Тест 1Ввод
5 10 250.0 True NA 180.0 NA 5 NA False NA NA NA 8 320.0 True
Ожидаемый выводisna_sum=2 2 2 qty_dtype=Int64 250.0 180.0 180.0 180.0 320.0 active_dtype=boolean
Решение
Как проверяется решение
Сравнение вывода: Правила исходной проверяющей системы. Интерактивный запуск не влияет на оценку. Лимит сессии — 5 минут, процессорного времени — 10 секунд.
Отправьте решение, чтобы увидеть результаты тестов.
