คะแนนเฉลี่ยต่อคอร์ส
วิธีที่ดีในการแนะนำคอร์สคือการแนะนำคอร์สที่ได้รับคะแนนสูง เพราะนักเรียน DataCamp มักชื่นชอบคอร์สที่ได้รับการตอบรับดีจากผู้เรียนคนอื่น
ในแบบฝึกหัดนี้ จะให้เขียนฟังก์ชัน transformation ชื่อ transform_avg_rating() ให้สมบูรณ์ โดยฟังก์ชันนี้จะรวบรวมข้อมูลคะแนนโดยใช้เมธอด .groupby() ของ DataFrame ใน pandas เป้าหมายคือได้ DataFrame ที่มีสองคอลัมน์ ได้แก่ id ของคอร์สและคะแนนเฉลี่ย:
| course_id | avg_rating |
|---|---|
| 123 | 4.72 |
| 111 | 4.62 |
| … | … |
นอกจากนี้ ยังให้นำฟังก์ชัน transformation ที่เขียนไปใช้กับข้อมูลคะแนนดิบที่ดึงมาด้วยฟังก์ชัน helper extract_rating_data() ซึ่งดึงคะแนนคอร์สจากตาราง rating
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Data Engineering เบื้องต้น
คำแนะนำการฝึกหัด
- เขียนฟังก์ชัน
transform_avg_rating()ให้สมบูรณ์ โดยจัดกลุ่มตามคอลัมน์course_idแล้วหาค่าเฉลี่ยของคอลัมน์rating - ใช้
extract_rating_data()เพื่อดึงข้อมูลคะแนนดิบ โดยส่ง database enginedb_enginesเป็น argument - นำ
transform_avg_rating()ไปใช้กับข้อมูลคะแนนดิบที่ดึงมาได้
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Complete the transformation function
def transform_avg_rating(rating_data):
# Group by course_id and extract average rating per course
avg_rating = rating_data.____('____').rating.____()
# Return sorted average ratings per course
sort_rating = avg_rating.sort_values(ascending=False).reset_index()
return sort_rating
# Extract the rating data into a DataFrame
rating_data = extract_rating_data(____)
# Use transform_avg_rating on the extracted data and print results
avg_rating_data = transform_avg_rating(____)
print(avg_rating_data)