Capstone: โปรเจกต์ end-to-end
ประมาณ 15 นาที
เป้าหมายของบท
- เลือกคำถามธุรกิจ 1 ข้อแล้วตอบให้ครบวงจร ตั้งแต่เตรียมข้อมูลจนถึงเขียน insight
- ใช้เกณฑ์ตรวจงานตัวเอง (self-review checklist) ก่อนเผยแพร่ผลงาน
- รู้ขั้นตอนคร่าวๆ ในการเผยแพร่โปรเจกต์บน GitHub
Notebook
งานหลักของบทนี้ทำใน Jupyter notebook ไม่ใช่ในเว็บ — โหลดไฟล์ไปเปิดในเครื่อง หรือเปิดตรงบน Google Colab ก็ได้
โจทย์ของ capstone
เลือกคำถามธุรกิจ 1 ข้อจาก dataset นี้ (ร้านค้าออนไลน์: customers, orders, order_items, products, events)
แล้วตอบให้ครบวงจร — ตั้งคำถาม → เตรียม/สำรวจข้อมูล → วิเคราะห์ → สรุปเป็น insight ที่มีตัวเลขและ “แล้วไง” ชัดเจน
(เชื่อมกับสิ่งที่เรียนในบท เขียน insight จากกราฟ)
ตัวอย่างโจทย์ที่เลือกได้ (หรือคิดเองก็ได้):
- ลูกค้ากลุ่มไหนควรได้รับความสำคัญมากที่สุด? (ใช้บท RFM segmentation)
- funnel ขั้นไหนควรแก้ก่อน? (ใช้บท วิเคราะห์ funnel)
- แคมเปญ promo เดือน มิ.ย. 2025 คุ้มค่าจริงไหม? (ใช้บท Cohort และ retention)
- หมวดสินค้าไหนควรเพิ่มสต็อก? (ใช้บท correlation/visualization)
โครงงานที่คาดหวัง
ทำใน Jupyter notebook (ไม่ใช่ในเว็บนี้) — โหลด notebook เริ่มต้นด้วยปุ่มด้านบน มีโครงเซลล์ไว้ให้แล้ว (โหลดข้อมูล → สำรวจ → วิเคราะห์ → กราฟ → เขียน insight) แต่เนื้อหาในแต่ละส่วนเป็นของผู้เรียนเอง
Rubric ตรวจงานตัวเอง
ก่อนถือว่างานเสร็จหรือจะเผยแพร่ ให้เช็คทีละข้อ:
- คำถามชัดเจน ตอบได้จริงด้วยข้อมูลที่มี
- ใช้ pandas/SQL ถูกต้อง ไม่มี error หรือ logic ผิด
- มีกราฟอย่างน้อย 1 อันที่เลือกชนิดถูกกับคำถาม พร้อม title/label ครบ
- มี insight อย่างน้อย 1 ข้อที่มีทั้งตัวเลข เทียบกับ baseline และ “แล้วไง”
- notebook รันได้ทั้งไฟล์จากบนลงล่างโดยไม่ error
- ถ้าจะเผยแพร่ ต้องมี README สั้นๆ อธิบายว่าโปรเจกต์นี้ตอบคำถามอะไร
วิธีเผยแพร่บน GitHub
- สร้าง public repo ใหม่ (หรือใช้ repo เดิม)
- เพิ่มไฟล์ notebook และไฟล์ข้อมูลที่ใช้ (หรือลิงก์ไปที่ dataset นี้)
- เขียน
README.mdสั้นๆ (โจทย์ + วิธีรัน + สรุปผล 2-3 บรรทัด) - commit + push
- แปะลิงก์ repo ใน resume/LinkedIn ได้เลย
แบบฝึกท้ายบท
บทนี้จะนับว่าเสร็จเมื่อผ่านข้อพื้นฐานและประยุกต์ครบ ข้อท้าทายได้ดาวเพิ่ม
🟢 พื้นฐาน
โหลดตาราง customers, orders, order_items, products ด้วย pandas แล้วเก็บจำนวนแถวรวมของทั้ง 4 ตาราง (ผลรวมเดียว) ไว้ในตัวแปร total_rows — เช็คว่าพร้อมเริ่มโปรเจกต์จริง
คำนวณรายได้รวมทั้งหมด (completed orders เท่านั้น) ของทั้งร้าน เก็บไว้ในตัวแปร total_revenue — ตัวเลขตั้งต้นที่มักใช้เปรียบเทียบใน insight ของ capstone
🟡 ประยุกต์
เลือกหมวดสินค้า (category) ที่ตัวเองสนใจจะลงลึกในโปรเจกต์ แล้วเก็บจำนวนสินค้าทั้งหมดในหมวดนั้นไว้ในตัวแปร n_products_chosen — โจทย์นี้ตรวจแค่ว่าค่าที่ได้ตรงกับหมวดที่เลือกจริง
สรุป
- Capstone คือการเอาทุกทักษะจาก module ก่อนหน้ามารวมกันตอบคำถามธุรกิจหนึ่งข้อให้ครบวงจร ตั้งแต่ตั้งคำถามจนถึงเขียน insight ที่มีตัวเลขและ action ชัดเจน
- ใช้ notebook ที่ดาวน์โหลดด้านบนเป็นจุดเริ่มต้น ไม่จำเป็นต้องเริ่มจากศูนย์
- เกณฑ์ตรวจงานตัวเองไว้ในบทนี้ ใช้เช็คก่อนเผยแพร่ทุกครั้ง
คำถามสัมภาษณ์
อธิบายโปรเจกต์ capstone ของตัวเองใน 30 วินาที ให้คนสัมภาษณ์ฟัง
ใช้โครง: โจทย์ (ตั้งคำถามธุรกิจอะไร) → วิธีตอบ (ใช้ข้อมูลและเทคนิคอะไรบ้าง เช่น SQL/pandas/สถิติ) → ผลลัพธ์ (พบอะไร มีตัวเลขอะไรที่สำคัญ) → แล้วไง (ควรทำอะไรต่อจากสิ่งที่พบ) — โครงนี้ทำให้คำตอบกระชับ มีเหตุผล และแสดงให้เห็นว่าเข้าใจภาพรวมของงาน DA ทั้งวงจร ไม่ใช่แค่ท่องขั้นตอนทางเทคนิค