Как создать график распределения возрастов с помощью Python, Pandas и Seaborn

Вы когда-нибудь задавались вопросом, как создать график распределения возрастов с помощью Python, Pandas и Seaborn? Если да, то продолжайте читать, чтобы узнать, как это сделать!

Рисунок 1: График, который мы научимся строить в этом уроке

Установка

Во-первых, вот репозиторий GitHub для этого руководства: Kaggle Titanic Project

В этом уроке мы будем работать с содержимым файла age-distribution-graph.ipynb.

Примечание: В этом руководстве мы будем работать с блокнотом Jupyter Notebook, поэтому если он у вас не установлен, вы можете сделать это на официальном сайте Jupyter.

Разработка

После открытия age-distribution-graph.ipynb вы заметите, что код разделен на блоки, которые можно запускать по отдельности.

Давайте пройдемся по каждому блоку кода по очереди:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
import os
warnings.filterwarnings("ignore")

Вход в полноэкранный режим Выход из полноэкранного режима

Здесь мы импортируем все необходимые библиотеки для создания Гистографа, который мы собираемся построить. Мы будем использовать Seaborn для создания гистографа, используя его метод histplot (подробнее об этом методе на их странице документации).
Строка warnings.filterwarnings("ignore") позволяет никогда не выводить предупреждения, соответствующие упорядоченному списку спецификаций фильтра (подробнее о warnings.filter() в их официальной документации).

Далее мы добавляем следующий блок кода:

def read_data():
    train_data = pd.read_csv("data/train.csv")
    test_data = pd.read_csv("data/test.csv")
    return train_data, test_data

train_data, test_data = read_data()
Вход в полноэкранный режим Выйти из полноэкранного режима

Здесь мы определяем метод read_data(), который отвечает за загрузку данных, содержащихся в файле .csv, в объект Pandas DataFrame (подробнее о DataFrame в официальной документации).
Теперь переменная train_data содержит данные для обучения, а переменная test_data — данные для тестирования.

Далее мы можем добавить следующий код:

def survived_age_table(feature):
    sns.histplot(data=train_data, x='Age', hue='Survived', palette=['yellow', 'green']).set_title(f"{feature} Vs Survived")
    plt.legend(labels=['Died', 'Survived'])
    plt.show()

Войти в полноэкранный режим Выйти из полноэкранного режима

Этот метод отвечает за создание графика распределения возрастов. Вот некоторые подробности о нем:

  • Сначала мы создаем гистограмму, вызывая метод sns.histplot() (подробнее об этом методе можно прочитать в официальной документации).
  • Параметр data принимает входную структуру данных, которая в нашем случае является pandas.DataFrame.
  • Параметр x задает переменную, подлежащую подсчету, которой в данном случае является переменная Age. Назначение переменной параметра hue, Survived в нашем случае, будет примером условного подмножества, при котором отдельная гистограмма, содержащая свои собственные уникальные значения и цвета, будет отображаться на том же графике.
  • Параметр palette — это способ выбрать цвета, которые будут использоваться при отображении переменной hue.
  • Наконец, мы можем задать заголовок гистограммы с помощью set_title().
  • Метод plt.legend() — это способ настроить легенды, отображаемые в поле легенды, расположенном в правом верхнем углу гистограммы.
  • Наконец, plt.show() отображает нашу гистограмму.

И вот наша готовая гистограмма:

Рисунок 2: Наша готовая гистограмма

Спасибо, что следили за нами, и я надеюсь, что эта статья была полезной для вас.

Заключение

Ну вот и все для этого поста! Спасибо, что следили за этой статьей, и если у вас есть вопросы или сомнения, пожалуйста, оставьте комментарий в этой статье, и я отвечу вам, когда найду время.

Если вы нашли эту статью полезной, пожалуйста, поделитесь ею и не забудьте следить за мной в Twitter и GitHub, связаться со мной в LinkedIn и подписаться на мой канал YouTube.

Оцените статью
devanswers.ru
Добавить комментарий