
Описание

Изначально я оптравилась на kaggle в поисках данных о продажах различных персонажей игры Genshin Impact, однако нашлись только довольно старые датасеты. К тому же, в них было мало данных для разностороннего анализа. Поэтому в итоге я остановилась на двух более новых датасетах: с базовой информацией о персонажах, и результатами опроса о любимых персонажах игроков. Когда-то давно я пробовала проанализировать данные об игровых персонажах вручную, но это не увенчалось успехом из-за количества данных. Так что теперь я решила сделать то же самое, но с помощью python и pandas.
1. оформление данных 2. анализ баланса ростера персонажей 3. анализ базовых характеристик 4. анализ популярности
Я использовала в основном столбчатые диаграммы, как наиболее наглядный вид графиков, но для более ясного отображения части данных пригодились и круговые и точечные диаграммы, и тепловая карта (heat map).
Оформление данных

Сразу после загрузки я проверила данные на наличие пустых или нестандартных ячеек. Они нашлись у двух персонажей: главного героя игры и персонажа, добавленного в игру как часть коллаборации с другой компанией. Чтобы не загрязнять графики проблематичными данными, я решила просто убрать этих персонажей из датасета.


Для оформления я решила использовать цветовую палитру которая могла бы соответствовать элементам и регионам, встречающимся внутри игры. Для данных, где регион или элемент не используются для определения цвета, я оставила пять из семи цветов, которые наиболее хорошо сочетаются между собой (пять левых на палитре ниже). Также нужно отметить, что для визуализации данных я использовала не только pandas, но и seaborn, чтобы сделать более красивые графики.
Для заголовков я нашла стилизованный шрифт, использующийся в логотипах и рекламных материалах игры. Для основного текста было решено использовать более базовый и читабельный шрифт, для большей выдержанности стиля — serif с засечками.
Баланс ростера персонажей
Для начала я решила сравнить базовые данные по количеству разных персонажей в игре. В частности, меня интересовало соотношение персонажей, которые используют разные элементы. Как и ожидалось, распредление элементов не вполне сбалансированно. Например, дендро (зелёный на графике) был добавлен в игру позже других элементов, и пока что не может похвастаться сравнимым количеством персонажей.



Я также рашила распределить и уточнить эти данные дальше, сопоставив сразу два фактора: оружие и элемент, используемые персонажем. Здесь распределение более ровное, большинство комбинаций попадают в диапазон 2-4 персонажа. Однако есть и исключения. Например можно заметить, что не существует персонажа, который использовал бы гидро элемент и двуручное оружие.
Базовые характеристики

После довольно простого анализа ростера персонажей, я перешла к чуть более сложным и инетерсным графикам. В частности меня интересовало распределение базовых характеристик (здоровье, атака и защита) у персонажей, и насколько эти характеристики связаны с используемым типом оружия. Меня больше всего инетерсовало именно здоровье, потому что здесь у меня была гипотеза, основанная на опыте игры. А именно, что у персонажей, использующих лук или катализатор в среднем будет меньше здоровья, так как они атакуют издалека. По расцветке графика видно, что гипотеза похожа на правду, но я решила немного упростить результат.
Для большей наглядности я составила ещё один график, на котором сгруппировала среднее здоровье для каждого типа оружия.

После того, как гипотеза про здоровье подтвердилась, мне стало инетерсно сравнить все три базовых характеристики, и насколько равномерно они распределены у разных персонажей. Однако в среднем здоровье сильно выше, чем атака и защита, поэтому для создания графика нужно было привести все характеристики к относительным значениям. Здесь я использовала цветовую схему по регионам, чтобы иметь возможность увидеть корреляцию между временем добавления персонажа в игру и его характеристиками. Результат приятно удивил, нельзя сказать, что более новые персонажи (красный и синий цвета) отличаются более высокими характеристиками.
Исследование популярности
Для того, чтобы исследовать популярность персонажей, я добавила ещё один датасет (с результатами опроса сообщества), проверила его на предмет опечаток и отсутствующих данных и после этого объединила изначальный датасет с колонкой голосов за персонажа.

Я хотела узнать, насколько аудитория предпочитает персонажей с более высокими характеристиками. Вполне ожидаемо, характеристики наиболее популярных персонажей как минимум средние. Но стоит отметить что вполне хватает и персонажей с высокими характеристиками, которые не особо популярны.
На графике выше персонажи были раскрашены в соответствии с регионом игры, из которого они, однако из-за количество данных это вышло не очень наглядно. Поэтому я решила сделать отдельные круговые диаграммы для анализа 20-ти наиболее популярных персонажей: по региону и по типу модельки персонажа. Действительно, ни один из персонажей Мондштадта (первого региона игры) не попадает в топ.


Код приведён один раз, так как он в целом примерно одинаковый, только с разными характеристиками и палитрами.
Выводы

Результаты, возможно, не самые интересные для стороннего наблюдателя, но более чем достойные внимания для меня как игрока.
Во-первых, характеристики персонажей в целом довольно сбалансированные (хоть и не без исключений), и не особенно растут для более новых персонажей по сравнению со старыми.
Во-вторых, приятно видеть, что популярность персонажа у аудитории явно зависит в числе и от их истории и дизайна, а не только от плоских цифр. Человеческий фактор пока не победить)