Menu
CoddyTech

סיכום: מצבי רוח של פלייליסטים

חלק מהיחידה למידה בלתי מונחית במסלול ה-Machine Learning של Coddy. שיעור 42 מתוך 51.

challenge icon

אתגר

בינוני

98 השירים של הפלייליסט שלך נמצאים בקובץ songs.csv. מיין אותם לפי מצבי רוח; התרשים כבר מוכן.

  1. בצע קנה מידה לארבעת המאפיינים וקבץ את השירים ל־4 אשכולות.
  2. תן שם לכל אשכול לפי ממוצע האנרגיה והערכיות שלו: אם שניהם 0.5 או יותר, זה happy; אם רק האנרגיה, tense; אם רק הערכיות, calm; אם אף אחד מהם, sad.
  3. מהגדול לקטן, הדפס את הגודל של כל מצב רוח ואת ההמנון שלו: השיר הקרוב ביותר למרכז שלו.
  4. הצג תרשים פיזור של הערכיות בציר האופקי ושל האנרגיה בציר האנכי, עם קבוצה אחת לכל מצב רוח המסומנת בשמו; הצג מקרא והצג את התרשים.

עבור הפלייליסט הראשון של הפרק:

happy: 26 songs, anthem Lucky Avenue
tense: 22 songs, anthem Midnight Highway
sad: 17 songs, anthem Grey Bridges
calm: 15 songs, anthem Soft Window

והתרשים שלו:

80 השירים של פלייליסט אחר, שכותרתו Playlist Moods, ערכיות בציר האופקי ואנרגיה בציר האנכי, בארבע קבוצות מסומנות: tense בפינה השמאלית העליונה, happy בפינה הימנית העליונה, sad בפינה השמאלית התחתונה, calm בפינה הימנית התחתונה

לאחר מכן Coddy יתאר את שלך.

נסו בעצמכם

import pandas as pd
import matplotlib.pyplot as plt
from sklearn.preprocessing import StandardScaler
from sklearn.cluster import KMeans

# שורה אחת לכל שיר: אנרגיה וערכיות (0 עצוב עד 1 שמח) בטווח שבין 0 ל־1, קצב, אקוסטיות
songs = pd.read_csv("songs.csv")
features = ["energy", "valence", "tempo_bpm", "acousticness"]

fig, ax = plt.subplots()
ax.set_title("Playlist Moods")
ax.set_xlabel("Valence (sad to happy)")
ax.set_ylabel("Energy")

# כתבו את הקוד שלכם למטה

כל השיעורים ביחידה למידה בלתי מונחית

תרגלו בעצמכם: קומפיילר Python אונליין