การตัดทอนด้วย Scatterplot
หลังจากดูข้อเสนอบริการ Streaming ที่ยึดธีม Batman จากแบบฝึกหัดก่อนหน้า ผู้ก่อตั้งบริษัทพบว่าแผนเดิมอาจมีขอบเขตที่แคบเกินไป เธอจึงขอให้คุณมุ่งเน้นไปที่รูปแบบทั่วไปในกฎความสัมพันธ์ แล้วค่อยทำการตัดทอนตามนั้น เป้าหมายคือค้นหาชุดของความสัมพันธ์ที่แข็งแกร่งในจำนวนมาก
โชคดีที่เพิ่งเรียนรู้วิธีสร้าง scatterplot ไป จึงตัดสินใจเริ่มต้นด้วยการพล็อต support และ confidence เนื่องจากกฎที่ดีที่สุดตามเมตริกทั่วไปส่วนใหญ่จะอยู่บริเวณขอบเขตของ confidence-support ข้อมูลที่ผ่านการ one-hot encoding แล้วถูกนำเข้ามาให้แล้วในชื่อ onehot นอกจากนี้ยังได้นำเข้า apriori() และ association_rules() มาให้แล้ว และ pandas พร้อมใช้งานในชื่อ pd
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Market Basket Analysis ด้วย Python
คำแนะนำการฝึกหัด
- สร้าง itemset จำนวนมากที่มี 2 รายการ โดยตั้งค่า minimum support เป็น 0.0075 และกำหนดความยาวสูงสุดเป็น 2
- เติมคำสั่งสำหรับ
association_rules()ในรูปแบบที่ไม่มีการกรองข้อมูลเพิ่มเติม - เติมคำสั่งเพื่อสร้าง scatterplot โดยตั้งค่าตัวแปร
yให้ใช้confidence
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Import seaborn under its standard alias
import seaborn as sns
# Apply the Apriori algorithm with a support value of 0.0075
frequent_itemsets = apriori(onehot, min_support = ___,
use_colnames = True, max_len = ____)
# Generate association rules without performing additional pruning
rules = association_rules(____, metric = 'support',
min_threshold = ____)
# Generate scatterplot using support and confidence
sns.scatterplot(x = "support", y = "____", data = ____)
plt.show()