การรวมกลุ่มและการกรองข้อมูล
ในวิดีโอ เราได้ช่วยผู้จัดการร้านของขวัญจัดวางแผนกต่าง ๆ ในร้านค้าตามกฎความสัมพันธ์ โดยรูปแบบของร้านบังคับให้แบ่งแผนกออกเป็น 2 คู่ตามประเภทสินค้า หลังจากใช้เทคนิคการกรองขั้นสูง เราได้เสนอผังพื้นที่ร้านดังนี้
ตอนนี้ผู้จัดการร้านต้องการให้สร้างข้อเสนอผังพื้นที่ร้านอีกแบบหนึ่ง โดยใช้เกณฑ์ที่ต่างออกไป คือแต่ละคู่แผนกควรประกอบด้วยสินค้าที่มี support สูงหนึ่งรายการและสินค้าที่มี support ต่ำหนึ่งรายการ ข้อมูล aggregated ได้ถูกรวมกลุ่มและเข้ารหัสแบบ one-hot เรียบร้อยแล้ว นอกจากนี้ยังได้นำเข้า apriori() และ association_rules() จาก mlxtend ให้แล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Market Basket Analysis ด้วย Python
คำแนะนำการฝึกหัด
- สร้างชุด frequent itemsets โดยกำหนดค่า minimum support threshold เป็น 0.0001
- ระบุกฎทั้งหมดโดยกำหนดค่า minimum support threshold เป็น 0.0001
- เลือกกฎทั้งหมดที่มีค่า antecedent support มากกว่า 0.35
- เลือกกฎทั้งหมดที่มีค่า consequent support สูงสุดต่ำกว่า 0.35
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Apply the apriori algorithm with a minimum support of 0.0001
frequent_itemsets = apriori(aggregated, ____, use_colnames = True)
# Generate the initial set of rules using a minimum support of 0.0001
rules = association_rules(frequent_itemsets,
metric = "____", min_threshold = ____)
# Set minimum antecedent support to 0.35
rules = rules[____['antecedent support'] > ____]
# Set maximum consequent support to 0.35
rules = rules[____ < 0.35]
# Print the remaining rules
print(rules)