Series и DataFrame: создание, index, columns, shape, dtypes
Содержание курса
Series из словаря: метки, позиции и атрибуты index, shape, dtype
Что уже дано
Проверяющая система запускает вашу программу и подаёт данные через stdin. Никаких заранее созданных переменных нет — вы читаете всё сами.
Что нужно сделать
Напишите программу, которая:
- Читает из
stdinцелое числоk— количество пар. - Читает следующие
kстрок; каждая содержит два токена через пробел:метка(строка без пробелов) изначение(целое число). Пример строки:alpha 42. - Создаёт
pd.Seriesиз словаря{метка: значение, …}в порядке прочитанных строк — назовите егоs. - Выводит в
stdoutровноk + 4строк в следующем порядке:
- Строки 1…k: для каждого
iот0доk-1— одну строку видаlabel=<метка> pos=<i> value=<значение>, где<метка>—s.index[i],<i>— позиция (целое число),<значение>—s.iloc[i]. - Строка k+1:
shape=<shape>— кортеж вида(k,). - Строка k+2:
dtype=<dtype>— строковое представлениеs.dtype. - Строка k+3:
index_type=<тип>— имя класса объектаs.index, получите черезtype(s.index).__name__. - Строка k+4:
first_label_is_pos_0=<bool>— результат сравненияs.index[0] == 0в видеTrueилиFalse.
Последняя строка демонстрирует ключевую идею: когда индекс — строки, метка первого элемента не равна его позиции 0.
Ввод и вывод
Программа читает stdin и пишет в stdout.
Формат ввода
k метка1 значение1 метка2 значение2 ...
Дополнительные ограничения: k >= 1; все строковые метки попарно различны.
Формат вывода
label=метка1 pos=0 value=значение1
label=метка2 pos=1 value=значение2
...
shape=(k,)
dtype=int64
index_type=Index
first_label_is_pos_0=False
О данных в ответах
Используйте учебные данные. Не вставляйте пароли, токены, ключи доступа, паспортные и банковские данные, а также персональные данные других людей. Политика обработки данных.
- Тест 1Ввод
3 alpha 10 beta 20 gamma 30
Ожидаемый выводlabel=alpha pos=0 value=10 label=beta pos=1 value=20 label=gamma pos=2 value=30 shape=(3,) dtype=int64 index_type=Index first_label_is_pos_0=False
Как проверяется решение
Сравнение вывода: Правила исходной проверяющей системы. Интерактивный запуск не влияет на оценку. Лимит сессии — 5 минут, процессорного времени — 10 секунд.
Отправьте решение, чтобы увидеть результаты тестов.
