6  การจัดการและการเตรียมและจัดรูปข้อมูล

Modified

18 พฤษภาคม 2569

Noteวัตถุประสงค์การเรียนรู้

เมื่อศึกษาบทนี้แล้ว ผู้เรียนควรสามารถ:

  1. อธิบายความหมายของการเตรียมและจัดรูปข้อมูล (Data Wrangling) ได้

  2. ใช้เทคนิคการจัดการข้อมูลได้

  3. จัดรูปแบบข้อมูลให้เหมาะสมกับการวิเคราะห์ได้

  4. ใช้เครื่องมือ เช่น Excel ในการจัดการข้อมูลได้

  5. เตรียมข้อมูลเพื่อใช้ในงานของวิทยาการข้อมูลได้

6.1 โครงสร้างข้อมูลที่พร้อมสำหรับการวิเคราะห์

ก่อนที่เราจะลงมือจัดการข้อมูล นักศึกษาต้องเข้าใจก่อนว่าในโลกของ วิทยาการข้อมูล เราไม่ได้มองข้อมูลเป็นแค่ “ตาราง” ทั่วไป แต่เรามองเป็นกรอบข้อมูล (Data Frame) ซึ่งมีคุณสมบัติเฉพาะที่ทำให้คอมพิวเตอร์ (ไม่ว่าจะเป็น Excel, R หรือ Python) สามารถประมวลผลได้อย่างแม่นยำ

  1. กรอบข้อมูลคืออะไร? กรอบข้อมูลคือการจัดเก็บข้อมูลในรูปแบบ 2 มิติ (แถวและคอลัมน์) ที่มีคุณสมบัติพิเศษคือ:

    • แถว (Rows): แทน “หน่วยสังเกตการณ์” (Observations) เช่น ลูกค้า 1 คน หรือ รายการขาย 1 บิล

    • คอลัมน์ (Columns): แทน “ตัวแปร” (Variables) เช่น ชื่อ, อายุ, หรือราคาสินค้า

    • ประเภทข้อมูล (Data Types): ในหนึ่งคอลัมน์ ข้อมูล “ต้อง” เป็นประเภทเดียวกันทั้งหมด (เช่น คอลัมน์ราคาก็ต้องเป็นตัวเลขทั้งหมด จะมีตัวหนังสือปนไม่ได้)

  2. คุณสมบัติของข้อมูลเชิงโครงสร้างที่ดี (Tidy Data Principles) เพื่อให้การเตรียมและจัดรูปข้อมูล เป็นไปอย่างราบรื่น ข้อมูลควรเป็นไปตามหลักการของ Hadley Wickham ที่เรียกว่า Tidy Data [1]

    1. Each variable forms a column: แต่ละตัวแปรต้องแยกอยู่คนละคอลัมน์

    2. Each observation forms a row: แต่ละแถวต้องเป็นข้อมูลของหนึ่งหน่วยสิ่งที่สนใจเท่านั้น

    3. Each type of observational unit forms a table: ข้อมูลคนละประเภทควรแยกตารางกัน (แล้วค่อยใช้ Merge/VLOOKUP รวมกันภายหลัง)

  3. ทำไมต้องเข้าใจเรื่องนี้ก่อนทำการเตรียมและจัดรูปข้อมูล?

    • เพื่อให้รู้ว่าต้อง “ลบ” อะไร: ถ้าเรารู้ว่าคอลัมน์ต้องมี Data Type เดียวกัน เราจะรู้ทันทีว่า “ตัวอักษร” ที่หลุดมาในคอลัมน์ตัวเลขคือขยะที่ต้อง Clean

    • เพื่อให้รู้ว่าต้อง “ปรับรูปทรง” (Reshape) อย่างไร: ข้อมูลที่มาแบบแนวขวาง (Wide Format) มักจะไม่เป็นไปตามหลัก Tidy Data เราจึงต้องใช้เครื่องมือเพื่อปรับให้เป็นแนวตั้ง (Long Format) ก่อนวิเคราะห์

    • ความเข้าใจเชิงโครงสร้าง: เมื่อข้อมูลมีโครงสร้างที่ถูกต้อง การเขียนสูตรใน Excel หรือการใช้คำสั่ง dplyr จะทำได้ง่ายขึ้นและลดความผิดพลาดในการวิเคราะห์ข้อมูล [2]

นี่คือโครงสร้างของกรอบข้อมูลที่ถูกต้องตามหลักการ Tidy Data

6.1.1 โครงสร้างกรอบข้อมูลมาตรฐาน (Tidy Data Model)

Noteหลักการสำคัญ

“1 แถว = 1 หน่วยสังเกตการณ์ | 1 คอลัมน์ = 1 ตัวแปร”

ก่อนที่เราจะนำข้อมูลไปประมวลผลหรือวิเคราะห์ด้วยแบบจำลองทางสถิติและวิทยาการข้อมูล สิ่งสำคัญอันดับแรกคือการจัดเตรียมโครงสร้างข้อมูลให้อยู่ในรูปแบบที่เป็นระบบ (Structured Data) โดยมาตรฐานสากลจะกำหนดให้แถวทำหน้าที่แทนหน่วยสังเกตการณ์ และคอลัมน์ทำหน้าที่แทนตัวแปร ดังโครงสร้างเชิงมิติที่แสดงใน Table 6.1

Table 6.1: ตารางแสดงโครงสร้างเมทริกซ์ข้อมูลมาตรฐานที่ประกอบด้วยหน่วยสังเกตการณ์และตัวแปร
ลำดับข้อมูล (แสดงหรือไม่แสดงก็ได้) Variable A (คอลัมน์ A) Variable B (คอลัมน์ B) Variable C (คอลัมน์ C) Variable D (คอลัมน์ D)
Obs 1 (แถวที่ 1) ค่าของ (Obs 1, Var A) ค่าของ (Obs 1, Var B) ค่าของ (Obs 1, Var C) ค่าของ (Obs 1, Var D)
Obs 2 (แถวที่ 2) ค่าของ (Obs 2, Var A) ค่าของ (Obs 2, Var B) ค่าของ (Obs 2, Var C) ค่าของ (Obs 2, Var D)
Obs 3 (แถวที่ 3) ค่าของ (Obs 3, Var A) ค่าของ (Obs 3, Var B) ค่าของ (Obs 3, Var C) ค่าของ (Obs 3, Var D)
Data Type (เหมือนกันทั้งคอลัมน์) (เหมือนกันทั้งคอลัมน์) (เหมือนกันทั้งคอลัมน์) (เหมือนกันทั้งคอลัมน์)

6.1.2 ยกตัวอย่าง: กรอบข้อมูลยอดขายจริง (Tidy format)

เพื่อให้นักศึกษาเห็นภาพชัดเจน เรามาดูกรอบข้อมูล ของร้าน Chiang Mai Brew จาก Table 6.2 ที่ผ่านการเตรียมและจัดรูปข้อมูลให้ถูกต้องแล้ว

Table 6.2: ตารางการแสดงข้อมูลตัวอย่างที่เก็บไว้ของ Chiang Mai Brew
Order_ID Date Menu Quantity Total_Sales Customer_Type
1001 2026-05-01 Latte 2 150 Member
1002 2026-05-01 Espresso 1 65 Walk-in
1003 2026-05-02 Matcha 1 85 Member
1004 2026-05-02 Latte 3 225 Walk-in
Data Type Numeric (ID) Date (YYYY-MM-DD) Character (Text) Integer (Number) Numeric (Float)
Tipคุณสมบัติที่ถูกต้องของกรอบข้อมูลนี้
  1. ไม่มี Merge Cell: ทุกช่องข้อมูลอิสระต่อกัน

  2. ไม่มี Grand Total ปนมา: ยอดสรุปรวมจะทำใน Pivot Table ไม่ใช่ปนมาในแถวข้อมูลดิบ

  3. Data Type บริสุทธิ์: คอลัมน์ Total_Sales มีแต่ตัวเลข ไม่มีคำว่า “บาท” ปนมา

  4. 1 แถว = 1 บิล: ข้อมูลอ่านง่ายทั้งคนและคอมพิวเตอร์

6.2 การเตรียมและจัดรูปข้อมูล: การเปลี่ยนข้อมูลดิบให้พร้อมสำหรับการวิเคราะห์

ในวงการวิทยาการข้อมูล มีคำกล่าวว่า “Garbage In, Garbage Out” ซึ่งสะท้อนว่า แม้จะใช้แบบจำลองหรืออัลกอริทึมที่ทันสมัยเพียงใด หากข้อมูลตั้งต้นมีข้อผิดพลาดหรือไม่มีคุณภาพ ผลลัพธ์ที่ได้ก็ย่อมขาดความน่าเชื่อถือ

ด้วยเหตุนี้ กระบวนการเตรียมและจัดรูปข้อมูล จึงมีบทบาทสำคัญในการทำให้ข้อมูลอยู่ในรูปแบบที่เหมาะสมต่อการวิเคราะห์ เปรียบเสมือนการเตรียมวัตถุดิบก่อนเข้าสู่กระบวนการปรุงอาหาร ซึ่งส่งผลโดยตรงต่อคุณภาพของผลลัพธ์ในขั้นตอนถัดไป [3]

6.2.1 ทำไมข้อมูลในโลกจริงถึง “ใช้งานไม่ได้ทันที”?

ข้อมูลที่นักศึกษาจะพบในชีวิตการทำงานจริงมักมีความท้าทาย 3 ประการหลัก

  1. ข้อมูลไม่สมบูรณ์ (Incompleteness): เช่น ลูกค้าไม่ได้กรอกเบอร์โทรศัพท์, ระบบเซ็นเซอร์ขาดการเชื่อมต่อในบางช่วงเวลา หรือข้อมูลยอดขายบางวันหายไปเนื่องจากระบบขัดข้อง

  2. ข้อมูลไม่เป็นระเบียบ (Messiness): ข้อมูลถูกจัดเก็บมาในรูปแบบที่เน้นความสะดวกของคนกรอก แต่อ่านยากสำหรับคอมพิวเตอร์ เช่น การรวมชื่อ-นามสกุลไว้ในช่องเดียวกัน หรือการบันทึกวันที่ในหลายรูปแบบ (DD/MM/YYYY เทียบกับ MM/DD/YYYY)

  3. ข้อมูลมีข้อผิดพลาด (Inaccuracy): เช่น มีค่าผิดปกติ (Outliers) ที่เกิดจากการพิมพ์ผิด (ยอดซื้อ 1,000,000 บาท สำหรับร้านกาแฟ) หรือข้อมูลซ้ำซ้อน (Duplicate) จากการส่งแบบฟอร์มหลายครั้ง [4]

6.2.2 เป้าหมายหลักของการเตรียมและจัดรูปข้อมูล

  • สร้างโครงสร้างที่พร้อมวิเคราะห์ (Structural Readiness): จัดระเบียบข้อมูลให้อยู่ในรูปแบบ “Tidy Data” (หนึ่งแถวคือหนึ่งหน่วยสังเกตการณ์ หนึ่งคอลัมน์คือหนึ่งตัวแปร) เพื่อให้สามารถนำเข้าสู่โปรแกรมวิเคราะห์ เช่น R หรือ Jamovi ได้ทันที

  • เพิ่มความเชื่อมั่น (Data Reliability): ตรวจสอบและแก้ไขข้อผิดพลาดเพื่อให้แน่ใจว่าตัวเลขที่นำไปคำนวณสะท้อนความจริงทางธุรกิจมากที่สุด

  • การสร้างคุณลักษณะใหม่ (Feature Engineering): การแปลงข้อมูลเดิมให้เป็นข้อมูลใหม่ที่ทรงพลังกว่าเดิม เช่น การเปลี่ยน “ที่อยู่” ให้กลายเป็น “ภูมิภาค” เพื่อวิเคราะห์ยอดขายเชิงพื้นที่

การเตรียมและจัดรูปข้อมูลไม่ใช่งานเสริม แต่มันคืองานหลักนักศึกษา ในทางเศรษฐมิติ การที่เราไม่ได้ทำความสะอาดข้อมูลให้ดี อาจนำไปสู่ปัญหาการเอนเอียง (Bias)

6.3 ความแตกต่างระหว่างการทำความสะอาดข้อมูลกับการเตรียมและจัดรูปข้อมูล

แม้ทั้งสองคำจะถูกใช้สลับกันบ่อยครั้ง แต่ในเชิงโครงสร้างมีความแตกต่างที่นักศึกษาต้องแยกให้ออก เพื่อให้สามารถเลือกใช้เครื่องมือได้ถูกต้องตาม Table 6.3

Table 6.3: ความแตกต่างระหว่างการทำความสะอาดข้อมูลกับการเตรียมและจัดการข้อมูล
มิติการเปรียบเทียบ การทำความสะอาดข้อมูล การเตรียมและจัดรูปข้อมูล
นิยาม การกำจัด “สิ่งสกปรก” หรือข้อผิดพลาดออกจากข้อมูล การ “ปรับรูปทรง” และ “เตรียมความพร้อม” ข้อมูล
กิจกรรมหลัก แก้ไขสะกดผิด, ลบข้อมูลซ้ำ, จัดการค่าว่าง (Missing) การรวมตาราง (Merge), การหมุนข้อมูล (Pivot), การสร้างตัวแปรใหม่
เป้าหมาย เพื่อความ ถูกต้อง (Accuracy) เพื่อความ เหมาะสม (Appropriateness)
เปรียบเทียบ เหมือนการล้างผักและกำจัดส่วนที่เน่าเสียออก เหมือนการหั่น ตัดแต่ง และเตรียมวัตถุดิบให้พร้อมลงกระทะ

6.4 เจาะลึก 6 ขั้นตอนของการเตรียมและจัดรูปข้อมูล

การทำงานกับข้อมูลควรเป็นกระบวนการที่เป็นลำดับขั้นตอน (Sequential Process) เพื่อป้องกันความสับสน โดยเฉพาะเมื่อต้องจัดการกับข้อมูลขนาดใหญ่

  1. การนำเข้าข้อมูล (Import Data)
    • การดึงข้อมูลจากแหล่งต่าง ๆ เช่น ไฟล์ CSV, Excel, ฐานข้อมูล SQL หรือผ่าน API

    • ข้อควรระวัง: ต้องตรวจสอบเรื่อง “Encoding” (เช่น ภาษาไทยต้องใช้ UTF-8) เพื่อไม่ให้ข้อมูลเพี้ยนตั้งแต่ต้นทาง

  1. การสำรวจโครงสร้าง (Inspect Data)

    • การดูภาพรวมของข้อมูล (Data Profiling) เพื่อเช็คจำนวนแถว คอลัมน์ และประเภทข้อมูล (Numeric, Text, Date)

    • เป้าหมาย: ค้นหาจุดผิดปกติ (Anomaly Detection) ในเบื้องต้นก่อนเริ่มลงมือ

  2. การจัดการข้อผิดพลาด (Clean Data)

    • การแก้ไขปัญหาที่พบจากการสำรวจ เช่น การเติมค่าเฉลี่ยลงในช่องว่าง หรือการลบแถวที่มีข้อมูลไม่สมบูรณ์จนวิเคราะห์ไม่ได้
  3. การแปลงข้อมูล (Transform Data)

    • การเปลี่ยนค่าเดิมเป็นค่าใหม่ที่ใช้ประโยชน์ได้มากขึ้น เช่น การเปลี่ยน “วัน/เดือน/ปี เกิด” ให้เป็นคอลัมน์ “อายุ” หรือการจัดกลุ่ม (Binning) ช่วงรายได้ [5]
  4. การปรับรูปทรง (Reshape Data)

    • การเปลี่ยนมิติของตาราง (Pivot/Unpivot) เพื่อให้เป็นรูปแบบ Tidy Data * ตัวอย่าง: เปลี่ยนตารางที่แสดงยอดขายรายเดือน 12 คอลัมน์ ให้เหลือเพียงคอลัมน์ “เดือน” และ “ยอดขาย” เพื่อให้โปรแกรม R หรือ Python วิเคราะห์ได้ง่าย
  5. การนำออกไปใช้งาน (Export Data)

    • การบันทึกข้อมูลที่ผ่านการขัดเกลาแล้วลงในรูปแบบที่พร้อมใช้งานต่อ เช่น .csv, .xlsx หรือส่งตรงเข้า Dashboard

6.5 การเตรียมและจัดรูปข้อมูลด้วย Excel

ในการทำงานจริง เราจะใช้ฟังก์ชันของ Excel ในการจัดการข้อมูลตามขั้นตอนที่วางไว้ เพื่อให้ข้อมูลมีโครงสร้างที่ชัดเจนและพร้อมสำหรับการวิเคราะห์ ดังนี้

  1. การทำความสะอาดข้อมูล (Data Cleaning)

    • Remove Duplicates: การกำจัดข้อมูลที่ซ้ำซ้อนซึ่งอาจเกิดจากการบันทึกข้อมูลผิดพลาด

    • Find & Replace: แก้ไขการสะกดคำที่ผิดพลาดให้เป็นมาตรฐานเดียวกัน (เช่น เปลี่ยน “Bkk”, “กรุงเทพฯ”, “กทม” ให้เป็น “Bangkok”)

    • Go To Special (Blanks): เทคนิคการเลือกช่องว่างทั้งหมดในคลิกเดียว เพื่อจัดการกับค่าที่หายไป (Missing Values) ไม่ว่าจะเป็นการลบหรือการเติมค่าเฉลี่ย

  2. การแยกและรวมข้อมูล (Data Transformation)

    • Text to Columns: ใช้แยกข้อมูลที่รวมกันอยู่ในเซลล์เดียวออกเป็นหลายคอลัมน์ เช่น แยก “ชื่อ-นามสกุล” หรือแยก “ที่อยู่” ออกจากกัน

    • Flash Fill (Ctrl + E): ฟีเจอร์ที่ใช้ปัญญาประดิษฐ์ ช่วยเรียนรู้รูปแบบการแยกหรือรวมข้อมูลอัตโนมัติ ช่วยลดเวลาการเขียนสูตรที่ซับซ้อน

    • Logical Functions (IF, AND, OR): ใช้สำหรับสร้างเงื่อนไขใหม่ เช่น สร้างคอลัมน์ “กลุ่มลูกค้า” โดยถ้ามียอดซื้อ > 5,000 ให้แสดงผลเป็น “VIP”

  3. การเชื่อมโยงข้อมูล (Data Integration)

    • XLOOKUP / VLOOKUP: การดึงข้อมูลจากคนละตารางมารวมกัน (เช่น การเอา “รหัสสินค้า” จากตารางยอดขายไปดึง “ชื่อสินค้า” และ “ราคา” จากตารางมาสเตอร์)

    • การรวมตาราง (Merge): เป็นพื้นฐานสำคัญในการวิเคราะห์ข้อมูลที่มีหลายแหล่ง (Multiple Data Sources)

  4. การปรับรูปทรงข้อมูล (Reshaping)

    • Power Query (Get & Transform): นี่คือหัวใจสำคัญของ Data Wrangling ใน Excel ยุคใหม่

    • ใช้สำหรับ Unpivot Columns (เปลี่ยนข้อมูลจากแนวขวางให้เป็นแนวตั้ง)

    • สร้างขั้นตอนการทำงานที่จดจำไว้ได้ (Automated Steps) เมื่อมีข้อมูลใหม่มาเพิ่ม เพียงแค่กด Refresh ข้อมูลจะถูก Wrangling ให้อัตโนมัติ [2]

6.6 การประยุกต์ใช้ 5 dplyr Verbs บน Microsoft Excel

ในโลกของวิทยาการข้อมูล ไม่ว่าเราจะใช้เครื่องมือใด “ตรรกะในการจัดการข้อมูล” (Data Logic) คือสิ่งสำคัญที่สุด เราสามารถนำคำกริยา 5 ตัวที่เป็นหัวใจของภาษา R (dplyr) มาประยุกต์ใช้ใน Excel เพื่อสร้างกระบวนการทำงานที่แม่นยำและเป็นระบบดังนี้ [2]

  1. FILTER (การกรองข้อมูล)

    • ใน R: คัดเลือกแถว (Rows) ตามเงื่อนไข

    • ใน Excel: ใช้เมนู Filter (Ctrl+Shift+L)

    • Action: เลือกเฉพาะข้อมูลที่สนใจ เช่น เฉพาะยอดขายที่ “สำเร็จ” หรือยอดซื้อที่ “> 500 บาท”

  2. SELECT (การเลือกตัวแปร)

    • ใน R: คัดเลือกคอลัมน์ (Columns)

    • ใน Excel: การ Hide หรือ Delete คอลัมน์ที่ไม่เกี่ยวข้อง

    • Action: เก็บไว้เฉพาะคอลัมน์ที่จำเป็นต่อการวิเคราะห์ เพื่อลดความสับสนและทำให้ไฟล์เบาลง

  3. MUTATE (การสร้างตัวแปรใหม่)

    • ใน R: สร้างคอลัมน์ใหม่จากฟังก์ชันหรือการคำนวณ

    • ใน Excel: การเขียน สูตร (=) ในคอลัมน์ใหม่

    • Action: เช่น การคำนวณกำไร =[ยอดขาย]-[ต้นทุน] หรือการใช้ IF เพื่อจัดกลุ่มลูกค้า

  4. ARRANGE (การเรียงลำดับ)

    • ใน R: เรียงแถวตามค่าในคอลัมน์

    • ใน Excel: ใช้เมนู Sort A-Z / Z-A

    • Action: เรียงลำดับจากยอดขายมากไปน้อย หรือเรียงตามวันที่เพื่อให้เห็นลำดับเหตุการณ์

  5. SUMMARIZE (การสรุปผล)

    • ใน R: ยุบข้อมูลจำนวนมากลงให้เหลือค่าสถิติเดียว (มักใช้คู่กับ group_by)

    • ใน Excel: การใช้ Pivot Table

    • Action: หาผลรวมยอดขายแยกตามประเภทสินค้า หรือนับจำนวนออเดอร์ในแต่ละวัน

6.6.1 ตัวอย่างข้อมูล

ตัวอย่างข้อมูล 7 แถวแรก
Order_ID Date Customer_Type Menu Price Quantity Status
1001 2026-05-01 Member Latte 75 1 Completed
1002 2026-05-01 Member Croissant 95 3 Completed
1003 2026-05-01 Member Espresso 65 5 Completed
1004 2026-05-01 Walk-in Latte 75 2 Completed
1005 2026-05-01 Member Matcha 85 4 Completed
1006 2026-05-01 Member Espresso 65 2 Completed

นักศึกษาสามารถ download ข้อมูลจุดนี้ได้จาก GOOGLEDRIVE: ChiangMaiBrew_Data.csv

6.7 Workshop: 5 Verbs Challenge (สำหรับนักศึกษา)

Cautionสถานการณ์จำลอง: กู้ชีพข้อมูลร้าน “Chiang Mai Brew”

นักศึกษาลองจินตนาการดู… เช้าวันจันทร์ที่สดใส เจ้าของร้าน Chiang Mai Brew วิ่งหน้าตั้งมาหาคุณพร้อมกับไฟล์ Excel หนึ่งไฟล์ที่ส่งออกมาจากระบบเครื่องคิดเงิน (POS) หลังร้าน เขาสารภาพว่า “ร้านเรายอดขายดูเหมือนจะดี แต่ทำไมสรุปกำไรขาดทุนไม่ได้เลย!”

เมื่อคุณเปิดไฟล์ดู คุณพบกับฝันร้ายของคนทำงานข้อมูล:

  • ข้อมูลขยะ: มีออเดอร์ที่ลูกค้าเปลี่ยนใจยกเลิก (Cancelled) ปนอยู่เต็มไปหมด ทำให้ยอดขายดูเยอะเกินจริง

  • ข้อมูลรก: คอลัมน์เพียบ! ทั้งรหัสออเดอร์ ประเภทลูกค้าที่บางทีก็ไม่เกี่ยวกับการคำนวณเงิน

  • ข้อมูลดิบ: มีแค่ราคาต่อแก้วและจำนวนที่ซื้อ แต่ไม่มี “ยอดรวม” ของแต่ละบิลมาให้

  • ข้อมูลไม่จัดระเบียบ: เรียงลำดับมั่วไปหมดจนดูไม่ออกว่าเมนูไหนคือพระเอก (Best Seller) ของร้าน

ภารกิจของคุณ: ในฐานะนักวิเคราะห์ข้อมูลรุ่นใหม่ คุณต้องใช้ทักษะการเตรียมและจัดรูปข้อมูล เพื่อเปลี่ยนไฟล์ที่เน่าเสียนี้ ให้กลายเป็นรายงานที่ตอบโจทย์เจ้าของร้านให้ได้ว่า “ตกลงแล้ว เมนูไหนทำเงินให้ร้านมากที่สุด?” โดยใช้หลักการ 5 Verbs ดังนี้

โจทย์: ให้นักศึกษาเปิดไฟล์ ChiangMaiBrew_Data.csv ใน Excel และดำเนินการตามลำดับดังนี้:

  1. FILTER: กรองเอาเฉพาะออเดอร์ที่ Status เป็น “Completed” เท่านั้น
TipStep 1: FILTER (การกรองข้อมูล)
  1. คลิกที่เซลล์ใดก็ได้ที่มีข้อมูล หรือกด Ctrl + A เพื่อเลือกทั้งหมด

  2. ไปที่แถบเมนู Data (ข้อมูล) > คลิกปุ่ม Filter (ตัวกรอง) หรือกดคีย์ลัด Ctrl + Shift + L

  3. คลิกปุ่มลูกศรที่หัวคอลัมน์ Status

  4. ติ๊กเครื่องหมายถูกออกที่ช่อง Cancelled (ให้เหลือเฉพาะ Completed) แล้วกด OK

  1. SELECT: เลือกเก็บไว้เฉพาะคอลัมน์ Date, Menu, Price, และ Quantity (ลบคอลัมน์อื่นทิ้ง)
TipStep 2: SELECT (การเลือกตัวแปร)
  1. สังเกตคอลัมน์ที่ไม่ต้องการ เช่น Order_ID, Customer_Type, Status

  2. คลิกขวาที่หัวคอลัมน์ (ตัวอักษร A, C, G) แล้วเลือก Delete (ลบ) 3. ผลลัพธ์: จะเหลือเพียงคอลัมน์ Date, Menu, Price, และ Quantity ตามโจทย์

  1. MUTATE: สร้างคอลัมน์ใหม่ชื่อ Total_Sales โดยใช้สูตร Price * Quantity
TipStep 3: MUTATE (การสร้างตัวแปรใหม่)
  1. ไปที่คอลัมน์ว่างถัดจากข้อมูล (คอลัมน์ E) แล้วพิมพ์หัวข้อว่า Total_Sales

  2. ในเซลล์ E2 พิมพ์สูตร =C2*D2 (คือ Price คูณกับ Quantity)

  3. กด Enter แล้วทำการ Double-click ที่จุดมุมขวาล่างของเซลล์ เพื่อคัดลอกสูตรลงไปจนถึงแถวสุดท้าย

  1. ARRANGE: เรียงลำดับคอลัมน์ Total_Sales จาก มากไปน้อย
TipStep 4: ARRANGE (การเรียงลำดับ)
  1. คลิกที่เซลล์ใดก็ได้ในคอลัมน์ Total_Sales

  2. ไปที่แถบเมนู Data (ข้อมูล) > คลิกปุ่ม Sort Z to A (เรียงจากมากไปน้อย)

  3. ผลลัพธ์: ข้อมูลจะถูกจัดเรียงใหม่ โดยออเดอร์ที่มียอดขายรวมสูงสุดจะขึ้นมาอยู่ด้านบนสุด

  1. SUMMARIZE: สร้าง Pivot Table เพื่อสรุปยอดขายรวม (Sum of Total_Sales) แยกตามประเภท Menu
TipStep 5: SUMMARIZE (การสรุปผล)
  1. คลิกที่พื้นที่ข้อมูลใดก็ได้ ไปที่เมนู Insert (แทรก) > เลือก PivotTable

  2. ในหน้าต่างที่เด้งขึ้นมา กด OK (เพื่อสร้างใน Worksheet ใหม่)

  3. ในแถบ PivotTable Fields ด้านขวา ให้ลากข้อมูลดังนี้:

    • ลาก Menu ไปวางในช่อง Rows (แถว)

    • ลาก Total_Sales ไปวางในช่อง Values (ค่า)

  4. ผลลัพธ์: Excel จะแสดงตารางสรุปยอดขายรวมแยกตามประเภทเมนูให้ทันที

6.8 การฝึกปฏิบัติ 2: 5 Verbs Data Challenge (ICDI Gadget Store)

Cautionสถานการณ์จำลอง: วิเคราะห์แคมเปญแอปพลิเคชัน “ICDI Gadget Store”

ลองจินตนาการดู คุณเป็นนักการตลาดดิจิทัลที่ร้านขายอุปกรณ์ IT แห่งหนึ่ง ทางร้านเพิ่งจบแคมเปญลดราคาครั้งใหญ่ และคุณได้รับไฟล์ข้อมูลดิบจากระบบหลังบ้านที่ “ดูไม่รู้เรื่องเลย” เจ้าของร้านอยากทราบด่วนว่า “ตกลงแล้ว สมาชิก (Member) กลุ่มไหนที่ซื้อเยอะที่สุด และซื้อสินค้าหมวดไหนไป?”

ฝันร้ายที่คุณเจอในไฟล์:

  • ออเดอร์ค้าง: มีข้อมูลลูกค้าที่ “ยังไม่ได้ชำระเงิน” (Pending) ปนมา ซึ่งไม่ใช่รายได้จริง

  • ข้อมูลส่วนเกิน: มีคอลัมน์เลข Tracking 20 หลัก หรือรหัสพนักงานขนส่งที่ทำให้ตาลาย

  • ขาดมูลค่าสุทธิ: มีราคาเต็มและส่วนลด แต่ไม่มีกำไรสุทธิมาให้

  • ความวุ่นวาย: ข้อมูลเรียงตามเวลาที่กดสั่งซื้อ ทำให้หาลูกค้ารายใหญ่ไม่เจอ

ตัวอย่างข้อมูล 7 แถวแรก
Order_ID Date Customer_Type Menu Price Quantity Status
1001 2026-05-01 Member Latte 75 1 Completed
1002 2026-05-01 Member Croissant 95 3 Completed
1003 2026-05-01 Member Espresso 65 5 Completed
1004 2026-05-01 Walk-in Latte 75 2 Completed
1005 2026-05-01 Member Matcha 85 4 Completed
1006 2026-05-01 Member Espresso 65 2 Completed

นักศึกษาสามารถ download ข้อมูลจุดนี้ได้จาก GOOGLEDRIVE: GadgetStore_Data.csv

โจทย์: ให้นักศึกษาเปิดไฟล์ GadgetStore_Data.csv และดำเนินการแปลงข้อมูลดังนี้:

  1. FILTER: คัดกรองข้อมูล
TipStep 1: FILTER (เลือกเฉพาะตัวจริง)
  1. เปิด Filter ที่หัวคอลัมน์ (Ctrl + Shift + L)

  2. ที่คอลัมน์ Payment_Status ให้เลือกเฉพาะออเดอร์ที่ “Paid” เท่านั้น (เพราะเราจะไม่นับออเดอร์ที่ยังไม่จ่ายเงินเป็นรายได้)

  1. SELECT: เลือกเฉพาะที่ใช้
TipStep 2: SELECT (ลดความรก)
  1. ลบคอลัมน์ Transaction_ID และ Tracking_No ทิ้งไป (เพราะเป็นแค่รหัสอ้างอิง ไม่ส่งผลต่อยอดวิเคราะห์กำไร)

  2. ผลลัพธ์: จะเหลือเฉพาะ Category, Membership, Selling_Price, และ Discount_Percent

  1. MUTATE: คำนวณรายได้สุทธิ
TipStep 3: MUTATE (สร้างตัวแปรสุทธิ)
  1. สร้างคอลัมน์ใหม่ชื่อ Net_Price ที่คอลัมน์ E

  2. ใช้สูตรเพื่อหาเงินที่ได้รับจริงหลังหักส่วนลด: =C2 * (1 - D2)

  3. (แปลว่า: ราคาขาย คูณด้วย เปอร์เซ็นต์ที่เหลือหลังจากหักส่วนลด)

  1. ARRANGE: เรียงลำดับความสำคัญ
TipStep 4: ARRANGE (หาบิ๊กดีล)
  1. คลิกที่คอลัมน์ Net_Price

  2. เลือก Sort Z to A เพื่อดูว่าบิลไหนที่ทำเงินให้ร้านเราสูงที่สุด

  1. SUMMARIZE: สรุปการเตรียมและจัดรูปข้อมูล
TipStep 5: SUMMARIZE (ตอบโจทย์ธุรกิจ)
  1. แทรก Pivot Table เข้าไปในแผ่นงานใหม่

  2. ลาก Membership ไปวางที่ Rows (แถว)

  3. ลาก Category ไปวางที่ Columns (คอลัมน์)

  4. ลาก Net_Price ไปวางที่ Values (ค่า)

  5. ผลลัพธ์: คุณจะเห็นตารางสรุปว่า สมาชิกแต่ละระดับ มียอดซื้อสุทธิในสินค้าแต่ละหมวดเท่าไหร่

6.9 สรุปเนื้อหาบทที่ 6: หัวใจของการเตรียมข้อมูล

ในโลกของวิทยาการข้อมูล ขั้นตอนที่สำคัญและใช้เวลามากที่สุด (กว่า 80%) ไม่ใช่การใช้ปัญญาประดิษฐ์ที่ล้ำสมัย แต่คือการจัดการข้อมูลเชิงลึก เพื่อให้แน่ใจว่าข้อมูลมีความถูกต้องแม่นยำ [6]

  1. เป้าหมายสำคัญของการเตรียมและจัดรูปข้อมูล

    • Cleaning: กำจัดความยุ่งเหยิง (ขยะข้อมูล, ข้อมูลซ้ำ, ค่าว่าง)

    • Transforming: เปลี่ยนรูปทรงข้อมูลให้พร้อมวิเคราะห์ (Tidy Data)

    • Enriching: สร้างตัวแปรใหม่ที่มีความหมายต่อธุรกิจ (Feature Engineering)

  2. ความแตกต่างที่ต้องจำ

    • การทำความสะอาดข้อมูล: เน้นการ “ซ่อมแซม” แก้ไขข้อผิดพลาด (ลบแถวข้อมูลสูญหาย แก้ข้อความที่ผิดผลาด)

    • การเตรียมและจัดรูปข้อมูล: เน้นการ “จัดระเบียบ” และการเพิ่มประสิทธิภาพในการนำไปวิเคราะห์

  3. กระดูกสันหลังของการจัดการข้อมูล: 5 Verbs ไม่ว่านักศึกษาจะใช้ Excel หรือภาษา R (dplyr) ตรรกะในการคิดจะเหมือนกันเสมอผ่าน 5 คำกริยาหลัก

    1. FILTER (กรอง): คัดเลือกเฉพาะแถวที่ใช่ (ตัด Noise ออก)

    2. SELECT (เลือก): คัดเลือกเฉพาะคอลัมน์ที่จำเป็น (ลดความซับซ้อน)

    3. MUTATE (สร้าง): คำนวณตัวแปรใหม่ (สร้างคุณค่าเพิ่มจากข้อมูลเดิม)

    4. ARRANGE (เรียง): จัดลำดับข้อมูลเพื่อให้เห็นความสำคัญ (Sort)

    5. SUMMARIZE (สรุป): ยุบข้อมูลเป็นบทสรุปทางสถิติ (หา Insight ผ่าน Pivot Table)

  4. บทสรุปสู่การนำไปใช้ การเตรียมและจัดรูปข้อมูลที่ดีจะช่วยลดปัญหา “Garbage In, Garbage Out” นักศึกษาที่เชี่ยวชาญ 5 Verbs นี้ จะสามารถเปลี่ยนข้อมูลที่ยุ่งเหยิงใน Excel ให้กลายเป็นรายงานที่ตอบโจทย์ธุรกิจได้ และมีพื้นฐานที่แข็งแกร่งพร้อมจะก้าวไปสู่การเขียนโปรแกรมขั้นสูงในอนาคต

6.10 แบบฝึกหัดท้ายบท

Noteคำชี้แจง

ให้นักศึกษาตอบคำถามเพื่อแสดงทักษะการวิเคราะห์และการจัดการข้อมูล ตามโจทย์ที่กำหนดให้ดังต่อไปนี้

  1. The 80/20 Rule: ในงานวิทยาการข้อมูล เพราะเหตุใดกระบวนการเตรียมและจัดรูปข้อมูล จึงมักใช้เวลานานที่สุด (ประมาณ 80% ของงานทั้งหมด) จงยกตัวอย่างสถานการณ์ที่เกิดขึ้นหากเราข้ามขั้นตอนนี้ไปทำแบบจำลองทันที

  2. Cleaning vs. Wrangling: หากนักศึกษาพบว่าข้อมูลยอดขายมี “ชื่อจังหวัด” ที่สะกดผิด (เช่น ‘Chiangmai’ และ ‘Chiang Mai’) และต้องการสร้างคอลัมน์ใหม่เพื่อคำนวณ “ภาษี 7%”

    • กิจกรรมใดคือ การทำความสะอาดข้อมูล?

    • กิจกรรมใดคือ การเตรียมและจัดรูปข้อมูล?

  3. Tidy Data Principle: จงอธิบายลักษณะของข้อมูลที่เรียกว่า “Tidy Data” มาพอสังเขป และบอกข้อดีของการจัดเก็บข้อมูลรูปแบบนี้เมื่อต้องทำงานร่วมกับโปรแกรมอย่าง R หรือ Python

  4. Filter & Select: ในฐานข้อมูลลูกค้าที่มีขนาดใหญ่ (Big Data) การทำ Filter และ Select ตั้งแต่ขั้นตอนแรกของการทำงานมีประโยชน์ในมิติใดบ้าง (พิจารณาในแง่ของความเร็วในการประมวลผลและการทำงาน)

  5. Mutate Application: หากนักศึกษามีคอลัมน์ Unit_Price (ราคาสินค้า) และ Quantity_Sold (จำนวนที่ขายได้) นักศึกษาจะใช้ Verb ตัวใดเพื่อหา Total_Revenue (รายได้รวม) และจงเขียนสูตร Excel เบื้องต้นที่ใช้ในขั้นตอนนี้

  6. Summarize vs. Group By: การใช้ Summarize (สรุปผล) จะมีแสดงข้อสรุปหรือผลลัพธ์ได้ดีเมื่อใช้ควบคู่กับกระบวนการใด? จงยกตัวอย่างข้อมูลสรุปที่เจ้าของธุรกิจมักต้องการทราบ

  7. The Duplicate Dilemma: หากนักศึกษาทำ Workshop ร้านกาแฟแล้วพบว่ามี Order_ID ซ้ำกัน 5 แถว แต่มีค่า Total_Sales ไม่เท่ากัน นักศึกษาควรทำอย่างไรก่อนจะกด Remove Duplicates? (Hint: การตรวจสอบความถูกต้องก่อนลบ)

  8. Reshaping Challenge: ข้อมูลยอดขายที่แสดง 12 คอลัมน์แยกตามเดือน (มกราคม - ธันวาคม) เรียกว่าข้อมูลแนวขวาง (Wide Format) หากต้องการนำไปทำกราฟเปรียบเทียบรายเดือนใน R นักศึกษาควรใช้ Verb ตัวใดใน Excel Power Query เพื่อปรับรูปทรงข้อมูล?

  9. Data Integration (Merge): ในขั้นตอนการจัดการข้อมูล หากข้อมูล “รหัสสินค้า” ในตารางยอดขาย ไม่ตรงกับ “รหัสสินค้า” ในตารางมาสเตอร์ราคาสินค้า จะส่งผลกระทบอย่างไรต่อการทำ XLOOKUP (หรือ Merge)?

  10. Human Error & Bias: การเลือกจัดการกับค่าว่าง (Missing Values) โดยการ “ลบทิ้งทั้งหมด” เทียบกับการ “แทนที่ด้วยค่าเฉลี่ย” อาจส่งผลต่อความแม่นยำของผลวิเคราะห์อย่างไร? นักศึกษาคิดว่าวิธีใดเหมาะสมกว่าในงานด้านเศรษฐมิติ?