
В ходе исследования используется набор данных, содержащий информацию о различных породах собак, стоимости их содержания, размерах, обучаемости, заболеваниях и популярности. Визуализация этих данных позволяет лучше понять распределение цен в зависимости от размера собаки, а также выявить наиболее востребованные породы. С помощью различных типов графиков, таких как коробчатые диаграммы, столбчатые и круговые диаграммы, мы можем не только проанализировать основные тенденции, но и выделить интересные закономерности, которые могут помочь владельцам питомников, потенциальным покупателям и любителям собак.
Для начала посмотрим на данные:
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×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