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

تحليل العناقيد

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

يحوّل هذا الفصل أرقام العناقيد إلى مجموعات يمكن للناس الاستفادة منها. وبحلوله، سيكون لكل عنقود اسم:

120 زائرًا لمدينة ملاهٍ ممثلين بنقاط، ساعات قضاها الزوار في المدينة على المحور الأفقي وعدد الألعاب التي ركبها الزوار على المحور الرأسي، ضمن ثلاث مجموعات مسماة في وسيلة الإيضاح: محبو الإثارة في أعلى اليمين، والعائلات في الوسط، والزوار السريعون في أسفل اليسار

العدد مثل 2 لا يخبرنا بشيء. أما توصيفه فيخبرنا: متوسط كل سمة داخل العنقود. أضف التسميات كعمود، ثم اجمع حسبه:

park["cluster"] = km.labels_
print(park.groupby("cluster").mean().round(1))

يطبع هذا صفًا واحدًا لكل عنقود:

         hours  rides   age
cluster
0          6.0    6.2  38.4
1          2.4    3.0  45.8
2          6.8   13.9  20.7

والآن اقرأ الصفوف على أنها كلمات. المجموعة 2 صغيرة السن، وتمكث 7 ساعات وتقوم بـ14 رحلة: عشّاق الإثارة. تغادر المجموعة 1 مبكرًا: زوار لفترات قصيرة.

challenge icon

التحدي

متوسط

يريد بار كاريوكي التعرّف على ضيوفه. يقسمهم الكود الابتدائي إلى 3 مجموعات؛ ويحتوي names على اسم لكل مجموعة، بدءًا من الأقل زيارةً في الشهر وصولًا إلى الأكثر.

  1. أضف التسميات إلى guests في عمود cluster.
  2. حلّل المجموعات: احسب متوسطاتها وعدد ضيوفها، ورتّبها حسب visits_month.
  3. اطبع سطرًا واحدًا لكل مجموعة يتضمن اسمها ومتوسطاتها مقربةً إلى منزلة عشرية واحدة.

في بار آخر:

Once in a while: 30 guests, 1.4 visits a month, 2.5 songs, 3.2 hours
Regulars: 45 guests, 3.0 visits a month, 4.6 songs, 2.0 hours
Superfans: 15 guests, 7.4 visits a month, 9.2 songs, 2.8 hours

جرّب بنفسك

import pandas as pd
from sklearn.preprocessing import StandardScaler
from sklearn.cluster import KMeans

# 110 ضيوف في حانة كاريوكي: visits a month, أغانٍ في كل زيارة، وساعات في كل زيارة
guests = pd.read_csv("karaoke.csv")
scaled = StandardScaler().fit_transform(guests)
km = KMeans(n_clusters=3, n_init=10, random_state=0)
km.fit(scaled)

# أسماء المجموعات، مرتبةً من الأقل زيارات شهريًا إلى الأكثر
names = ["Once in a while", "Regulars", "Superfans"]

# اكتب الكود الخاص بك أدناه
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

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

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