การคิวรีข้อมูลคำแนะนำ
ในแบบฝึกหัดก่อนหน้า คุณได้เรียนรู้วิธีคำนวณตารางคำแนะนำคอร์สรายวันแล้ว เมื่อตาราง recommendations นี้อยู่ใน data warehouse แล้ว ก็สามารถ Join กับตารางอื่น ๆ ได้อย่างรวดเร็ว เพื่อสร้างฟีเจอร์ที่มีประโยชน์สำหรับนักเรียน DataCamp เช่น อีเมลการตลาดแบบเฉพาะบุคคล การแนะนำคอร์สอัจฉริยะ และฟีเจอร์อื่น ๆ
ในแบบฝึกหัดนี้ คุณจะได้ลองใช้ประโยชน์จากตาราง recommendations ที่สร้างขึ้นใหม่ โดยสร้างฟังก์ชัน recommendations_for_user() ที่ดึงคอร์สแนะนำอันดับต้น ๆ ตาม user ID และค่า rating threshold ที่กำหนด
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Data Engineering เบื้องต้น
คำแนะนำการฝึกหัด
- เติมคิวรีในนิยามฟังก์ชัน
recommendations_for_user()ให้ครบถ้วน โดย Join กับตารางcourses - เติมฟังก์ชัน
read_sql()ในrecommendations_for_user()ให้ครบถ้วน อาร์กิวเมนต์paramsยังไม่สมบูรณ์ เนื่องจากขาด threshold - รันฟังก์ชัน
recommendations_for_user()ที่กำหนดไว้ในคำสั่งสุดท้าย แล้วสังเกตผลลัพธ์ที่ได้
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
def recommendations_for_user(user_id, threshold=4.5):
# Join with the courses table
query = """
SELECT title, rating FROM recommendations
INNER JOIN ____ ON courses.course_id = recommendations.course_id
WHERE user_id=%(user_id)s AND rating>%(threshold)s
ORDER BY rating DESC
"""
# Add the threshold parameter
predictions_df = pd.read_sql(query, db_engine, params = {"user_id": user_id,
"____": ____})
return predictions_df.title.values
# Try the function you created
print(recommendations_for_user(12, 4.65))