Статья Автор: Лебедев Дмитрий Алексеевич

Задания 14-19

Этот датасет содержит информацию о 300 уникальных персонажах вымышленной вселенной, похожей на Marvel. Данные были сгенерированы со специальной логикой, чтобы сделать анализ интересным.
Название столбца тип, диапазон описание комментарий
full_name string Полное имя: Настоящее гражданское имя персонажа Все имена уникальны.
alias string Псевдоним: Супергеройское или злодейское прозвище  
age int (18 - 1000) Возраст: Возраст персонажа в годах Может быть больше 100 для инопланетян и долгожителей
power int (1 - 100) Сила: Уровень физической силы, боевой мощи и способностей. Измеряется по шкале от 1 до 100.
Где 100: Невероятная, богоподобная сила 
Где 50: Средние способности 
Где 1: Почти отсутствуют (обычный человек).
intelligence int (1-100) Интеллект: Уровень умственных способностей, стратегического мышления и изобретательности. Шкала от 1 до 100.
Где 100: Гениальный уровень (
Где 50: Средний интеллект.
Где 1: Очень низкий.
universe string Вселенная/Планета происхождения):Родной мир персонажа Примеры значений: 'Earth' (Земля), 'Asgard' (Асгард), 'Wakanda' (Ваканда), 'Latveria' (Латверия).
is_hero bool Является ли героем: Принадлежность к лагерю добра или зла. Значения: True — герой, False — злодей.
first_appearance int (1940 - 2023) Год первого появления:Вымышленный год, когда этот персонаж впервые появился в комиксах. Чем меньше число, тем "старше" и легендарнее персонаж.
costume_cost int Стоимость костюма: Предполагаемая стоимость костюма и экипировки персонажа в долларах США. Особенность: У технологичных героев (Железный человек) и королей (Черная пантера) стоимость может достигать миллионов и даже миллиардов долларов.
popularity int (1-100) Популярность:Условный рейтинг популярности среди фанатов по шкале от 1 до 100 Шкала от 1 до 100.
Где 100: Невероятно популярный (Человек-паук).
Где 50: Узнаваемый персонаж.
Где 1: Забытый герой или неудачливый злодей.

Многоуровневая группировка (Задание 6)

Проанализируй средние показатели силы и интеллекта в разрезе вселенных и типа персонажей (герои/злодеи). Для этого сгруппируй данные по вселенной и признаку is_hero, затем посчитай средние значения силы (с точностью до одной десятой) и интеллекта (с точностью до одной десятой), а также количество персонажей в каждой группе.

На основе полученных результатов ответь на вопросы:

  1. В какой вселенной у злодеев самая высокая средняя сила?
  2. На сколько единиц средний интеллект героев Асгарда выше, чем у злодеев Асгарда?
    (с точностью до одной десятой)
  3. Сколько всего злодеев из Асгарда в базе данных?
  4. У какой группы персонажей самая высокая средняя сила? (укажи вселенную)
  5. В какой вселенной наибольшая разница между средним интеллектом героев и злодеев?


Пояснения к методам
  • df[~df['is_hero']] - фильтрация по истинным значениям, ~ - отрицание/инверсия значения
  • .groupby('universe')['power'].mean() — считает среднюю силу для каждой вселенной.
    На выходе получается Series, где названия вселенных — это индексы (строки), а числа — значения.
  • .idxmax() — вместо самого большого числа (которое вернул бы .max())
    находит имя строки, в которой это число лежит
  • К заданию 2: df2 — это одномерный вектор (Series), поэтому мы пишем только одну координату: df2.at[True] (только строка).
  • unstack() :  «Разворачивает» второй уровень индекса (is_hero) в отдельные колонки.
  •  diff(axis=1) : Вычисляет разность между соседними колонками по горизонтали (axis=1). Из каждого значения в колонке True вычитается значение из колонки False

Анализ временных периодов (Задание 7)
Создай колонку "десятилетие" на основе года первого появления персонажей и проанализируй, как менялись средние характеристики персонажей с течением времени. Для этого сгруппируй данные по десятилетиям и посчитай средние значения силы (с точностью до одной десятой), интеллекта, популярности (с точностью до одной десятой), а также количество персонажей в каждом десятилетии.
Десятилетие:

  • 1960 - это года с 1960 по 1969
  • 1970 - это года с 1970 по 1979
  • и т.д.

На основе полученных результатов ответь на вопросы:

  1. В каком десятилетии появились персонажи с самой высокой средней силой? (Пример ввода ответа: 1960)
  2. В каком десятилетии персонажи имеют самый высокий средний интеллект? (Пример ввода ответа: 1960)
  3. Сколько всего персонажей появилось в 2000-х годах? (целое число)
  4. На сколько единиц популярность персонажей 2020-х годов выше, чем у персонажей 1990-х годов? 
    (с точностью до одной десятой)
  5. В каком десятилетии наблюдается наименьшее количество созданных персонажей? 
    (Пример ввода ответа: 1960)


Анализ корреляционных характеристик (Задание 8)
Корреляция (corr()) — это статистическая мера, которая показывает силу и направление линейной связи между двумя переменными.

  • Значение от -1 до 1:

    • +1 — идеальная прямая связь (чем больше X, тем больше Y)

    • -1 — идеальная обратная связь (чем больше X, тем меньше Y)

    • 0 — отсутствие линейной связи

  • Интерпретация:

    • > 0.7 — сильная прямая связь

    • 0.3 - 0.7 — умеренная связь

    • 0.1 - 0.3 — слабая связь

    • < 0.1 — отсутствие практической значимости

 

Проанализируй матрицу корреляции, ответь на вопросы:

  1. Какая связь наблюдается между силой и интеллектом персонажей? (прямая/обратная)
  2. Насколько сильна эта связь? (сильная/умеренная/слабая)
  3. Есть ли практическая связь между интеллектом и популярностью? (да/нет)
  4. Какая характеристика практически не связана с стоимостью костюма? (название по-русски)
  5. Сделай общий вывод: какие две характеристики наиболее связаны между собой?
    (название характеристик по-русски, через запятую и один пробел)


Поиск аномалий и выбросов (Задание 9)
Найди персонажей с необычными сочетаниями характеристик -
очень сильных (>85) но неумных (<50), и очень умных (>85) но слабых (<50).

Ответь на вопросы

  1. Сколько всего персонажей обладают высокой силой (>85), но низким интеллектом (<50)?
  2. Сколько всего персонажей обладают высоким интеллектом (>85), но низкой силой (<50)?
  3. Какой самый высокий уровень силы среди "сильных, но неумных" персонажей?
  4. Какой самый высокий уровень интеллекта среди "умных, но слабых" персонажей?
  5. Укажи псевдоним персонажа с максимальной силой среди всех аномальных персонажей.
    Если таких несколько укажи того, у кого выше интеллект.


Анализ стоимости и эффективности (Задание 10)

nlargest(n, columns) - возвращает n наибольших значений по указанному столбцу
nsmallest(n, columns) - возвращает n наименьших значений по указанному столбцу

Параметры:

  • n - количество строк для возврата
  • columns - имя столбца или список столбцов для сортировки
  • keep - что делать с дубликатами: 'first', 'last', 'all'

Преимущества перед sort_values():

  • Более читаемый код
  • Лучшая производительность для больших датасетов
  • Прямое получение топ-N значений
     


Найди самых "бюджетных" (лучшее соотношение характеристик силы и интеллекта к стоимости) и самых "дорогих" персонажей.
Ответь на вопросы:
  1. Сколько стоит костюм самого "бюджетного" персонажа (с лучшим соотношением характеристик к стоимости)?
    (целое число, в долларах)
  2. Какой псевдоним у самого эффективного по стоимости персонажа?
  3. Какова суммарная характеристика (сила + интеллект) у самого неэффективного персонажа?
  4. На сколько единиц сила самого дорогого персонажа превышает его интеллект?
    (положительное число, если сила превышает интеллект, отрицательное - если наоборот)
  5. У какого персонажа из топ-5 неэффективных самый высокий интеллект?
    Укажи в ответе его полное имя.

Attached files
marvel_characters.csv
Печать