В ходе исследования используется набор данных, содержащий информацию о различных породах собак, стоимости их содержания, размерах, обучаемости, заболеваниях и популярности. Визуализация этих данных позволяет лучше понять распределение цен в зависимости от размера собаки, а также выявить наиболее востребованные породы. С помощью различных типов графиков, таких как коробчатые диаграммы, столбчатые и круговые диаграммы, мы можем не только проанализировать основные тенденции, но и выделить интересные закономерности, которые могут помочь владельцам питомников, потенциальным покупателям и любителям собак.
Для начала посмотрим на данные:
import pandas as pd import matplotlib.pyplot as plt import seaborn as sns
df = pd.read_csv('./best_in_show.csv') df.head()
Топ-5 самых популярных собак (где 1 — самая популярная порода)
f['POPULARITY IN US'] = pd.to_numeric(df['POPULARITY IN US'], errors='coerce') df = df.dropna(subset=['POPULARITY IN US']) top_5 = df.nsmallest(5, 'POPULARITY IN US')
plt.figure(figsize=(10,6)) plt.bar(top_5['Dog breed'], top_5['POPULARITY IN US'], color='skyblue') plt.xlabel('Dogs') plt.ylabel('Popularity') plt.title('Top 5 Dogs by Popularity (1 as highest)') plt.gca().invert_yaxis() plt.show()

Соотношение собак и цены их содержания за жизнь в долларах США
df['LIFETIME COST, $'] = df['LIFETIME COST, $'].replace({'$': '', ',': ''}, regex=True) df['LIFETIME COST, $'] = pd.to_numeric(df['LIFETIME COST, $'], errors='coerce')
top_10_expensive_breeds = df.nlargest(10, 'LIFETIME COST, $')
plt.figure(figsize=(10,6)) bars = plt.bar(top_10_expensive_breeds['Dog breed'], top_10_expensive_breeds['LIFETIME COST, $'], color='gold', width=0.6)
plt.xlabel('Dog breed') plt.ylabel('LIFETIME COST, $') plt.title('Top 10 Most Expensive Dog Breeds') for bar in bars: height = bar.get_height() plt.text(bar.get_x() + bar.get_width() / 2, height + 50, f"${height:,.0f}", ha='center', va='bottom', fontsize=10)
plt.xticks(rotation=90) plt.show()
Распределение собак в выборке по размерам (маленькие, средние и большие)
size_counts = df['size category'].value_counts()
plt.figure(figsize=(8, 8)) plt.pie(size_counts, labels=size_counts.index, autopct='%1.1f%%', startangle=90, colors=plt.cm.Paired.colors)
plt.title('Distribution of Dog Sizes (small, medium, large)')
plt.show()
Соотношение цены содержания собаки с ее размером
plt.figure(figsize=(8, 6)) sns.boxplot(x='size category', y='LIFETIME COST, $', data=df, palette='Set2')
yticks = plt.gca().get_yticks()
plt.yticks(yticks[::3])
plt.title('Price of Dog by Size (small, medium, large)') plt.xlabel('Size of Dog') plt.ylabel('Price (in $)')
plt.show()
Обложка создана в leonardo.ai. Промпт: poster dedicated to dogs and data in size 1140 x 1600 px without text
Данные взяты на сайте Kaggle: https://www.kaggle.com/datasets/paultimothymooney/best-in-show-data-about-dogs?resource=download
Ссылка на блокнот и датасет: https://drive.google.com/drive/folders/1tCYs_v2oiyYr3lay_a07YJmGPVpj-Jyv?usp=drive_link




