Menu
CoddyTech
flag Ar iconالعربيةdown icon

مراجعة: سلالات الكلاب

جزء من قسم التعلّم غير الخاضع للإشراف في رحلة Machine Learning على Coddy. الدرس 19 من 51.

challenge icon

التحدي

متوسط

يضمّ مأوى للكلاب خمس غرف للإيواء، ويريد أن تشترك السلالات المتشابهة في غرفة واحدة. يحتوي breeds.csv على 21 سلالة؛ وتحدّد الشيفرة الابتدائية ارتفاع القطع، cut.

  1. قِس features وابنِ شجرة بطريقة Ward.
  2. ارسم مخططها الشجري على ax: مع تدوير أسماء السلالات 90 درجة، وإيقاف الألوان عند مستوى القطع، ورسم خط قطع رمادي متقطع. اعرضه.
  3. اقطع الشجرة، وأنشئ ملفات تعريف للمجموعات بوحدات واقعية، واطبعها من الأخف إلى الأثقل، مع تسمية كل مجموعة باسم أول سلالة فيها.

لمأوى آخر:

5 breeds like Maltese: 4.1 kg, 24 cm, energy 3.2, 14.4 years
3 breeds like Whippet: 12.7 kg, 46 cm, energy 4.7, 13.3 years

شجرة بعنوان Dog Breeds تضم 8 سلالات، وأسماؤها متجهة إلى الأعلى، مع خط قطع رمادي متقطع عند الارتفاع 4 يمر عبر فرعين ملوّنين: Maltese وShih Tzu وBichon Frise وPapillon وToy Poodle؛ وWhippet وBrittany وBasenji

ثم يصف Coddy شجرتك.

جرّب بنفسك

import pandas as pd
import matplotlib.pyplot as plt
from sklearn.preprocessing import StandardScaler
from scipy.cluster.hierarchy import linkage, dendrogram, fcluster

# 21 سلالة من الكلاب: الوزن (kg)، الطول (cm)، مستوى النشاط من 1 إلى 5، ومتوسط العمر (years)
breeds = pd.read_csv("breeds.csv")
features = ["weight_kg", "height_cm", "energy", "lifespan_yr"]
# يضمّ الملجأ خمس غرف لإيواء الكلاب، لذا يقطع الشجرة عند هذا الارتفاع
cut = 2.5

fig, ax = plt.subplots(figsize=(8, 5))
fig.subplots_adjust(bottom=0.35)  # مساحة للأسماء أسفل الشجرة
ax.set_title("Dog Breeds")
ax.set_ylabel("Merge height")

# اكتب الكود الخاص بك أدناه

جميع دروس التعلّم غير الخاضع للإشراف

تدرّب بنفسك: مترجم Python عبر الإنترنت