รายงานวิเคราะห์ข้อมูล ThaiEDA

สร้างโดย ThaiEDA v2.0.0 · 10296 จำนวนแถว × 21 จำนวนคอลัมน์
วิธีอ่านรายงานนี้: เริ่มจากบทสรุปด้านบน แล้วดูสิ่งที่ควรทำก่อน แล้วค่อยเจาะรายละเอียดแต่ละคอลัมน์
ประเภทข้อมูลที่ตรวจพบ
ข้อมูลธุรกรรม
ข้อมูลนี้เป็นรายการเหตุการณ์/การขายทีละรายการ จึงควรอ่านเป็นพฤติกรรมการซื้อขายและยอดเงิน
ภาษาข้อมูลที่ตรวจพบ อังกฤษ
ผลกระทบต่อการวิเคราะห์: ข้อมูลเป็นอังกฤษล้วน จึงข้าม Thai-specific checks อัตโนมัติ
ควรดูอะไรเป็นพิเศษ
  • ดู revenue pattern ตามเวลา/สินค้า/ลูกค้า
  • หา peak hours หรือช่วงที่ยอดขายผิดปกติถ้ามีคอลัมน์เวลา
  • ตรวจ outlier transactions ก่อนสรุปยอดหรือทำ forecast

2. สำคัญที่สุด

1
🟡 เตือน Order ID
แปลงเป็นรูปแบบมาตรฐานเดียว — รูปแบบที่ปนกันทำให้การเรียงลำดับและ parse ผิดพลาด
Date column mixes 5 distinct format patterns (CA-9999-9999, CA-9999-99999, CA-9999-999999, US-9999-99999, US-9999-999999).
ผลกระทบ 99.94%
2
🟡 เตือน Ship Date
แปลงเป็นรูปแบบมาตรฐานเดียว — รูปแบบที่ปนกันทำให้การเรียงลำดับและ parse ผิดพลาด
Date column mixes 4 distinct format patterns (9/9/9999, 9/99/9999, 99/9/9999, 99/99/9999).
ผลกระทบ 97.07%
3
🟡 เตือน Order Date
แปลงเป็นรูปแบบมาตรฐานเดียว — รูปแบบที่ปนกันทำให้การเรียงลำดับและ parse ผิดพลาด
Date column mixes 4 distinct format patterns (9/9/9999, 9/99/9999, 99/9/9999, 99/99/9999).
ผลกระทบ 97.07%
4
🔵 ข้อมูล Order ID
ตรวจสอบหมวดหมู่หายาก รวมค่าที่พิมพ์ผิดหรือจัดเข้ากลุ่ม 'อื่น ๆ'
5015 category value(s) occur in <1% of rows — possible typos or rare cases.
ผลกระทบ 100.0%
5
🔵 ข้อมูล Customer ID
ตรวจสอบหมวดหมู่หายาก รวมค่าที่พิมพ์ผิดหรือจัดเข้ากลุ่ม 'อื่น ๆ'
793 category value(s) occur in <1% of rows — possible typos or rare cases.
ผลกระทบ 97.07%
บทสรุปผู้บริหาร
ข้อมูลใช้ต่อได้ แต่ควรตรวจจุดที่เตือนก่อนวิเคราะห์เชิงลึก
ชุดข้อมูลมี 10,296 แถว × 21 คอลัมน์ พบปัญหาคุณภาพ 13 ข้อ พบความผิดปกติ 16 จุดใน 10 คอลัมน์ วิเคราะห์อนุกรมเวลา 5 คอลัมน์ พบข้อค้นพบทั้งหมด 56 ข้อ แสดงเฉพาะ 30 ข้อที่สำคัญที่สุด ข้อมูลใช้งานได้ แต่ควรตรวจสอบจุดที่เตือนก่อนวิเคราะห์เชิงลึก
  • มีข้อมูล 10,296 แถว × 21 คอลัมน์
  • ค่าว่าง 0.00% ของข้อมูลทั้งหมด
  • แถวซ้ำ 0 แถว (0.00%)
  • พบข้อค้นพบที่ควรดู 30 เรื่อง
  • มี insight เชิงธุรกิจ 8 เรื่อง

สิ่งที่ควรทำก่อน

1
🟡 เตือน placeholder_values
คอลัมน์ 'Ship Mode': พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN (พบ 302 แถว, 2.9%)
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
2
🟡 เตือน พบปัญหาการ normalize ข้อความ
คอลัมน์ 'Product Name': พบปัญหาการ normalize ข้อความ (repeated-char spam) ทำให้สตริงที่ดูเหมือนกันแต่ไม่เท่ากันจริง (พบ 143 แถว, 1.4%)
แล้วไงต่อ? ใช้การ normalize ข้อความ (เช่น pythainlp.util.normalize) ก่อนวิเคราะห์
3
🟡 เตือน พบรูปแบบวันที่ปนกัน
คอลัมน์ 'Order ID': คอลัมน์วันที่มีรูปแบบที่ต่างกัน 5 รูปแบบ (CA-9999-9999, CA-9999-99999, CA-9999-999999, US-9999-99999, US-9999-999999) (10,290 รายการ, 99.9%)
แล้วไงต่อ? แปลงเป็นรูปแบบมาตรฐานเดียว — รูปแบบที่ปนกันทำให้การเรียงลำดับและ parse ผิดพลาด
4
🟡 เตือน พบค่าผิดปกติจากโมเดล (Isolation Forest)
คอลัมน์ 'Discount': Isolation Forest พบค่าผิดปกติ 1501 ค่า (สุ่มตัวอย่าง 10,000 แถว) (คะแนนผิดปกติสุด -0.205; ยิ่งต่ำยิ่งผิดปกติ) (1,501 รายการ, 15.0%)
แล้วไงต่อ? ค่าผิดปกติแบบ ML ใช้เสริมวิธีเชิงสถิติ — ควรตรวจสอบจุดที่ถูก flag ประกอบกัน
5
🟡 เตือน พบค่าผิดปกติเชิงความหนาแน่น (LOF)
คอลัมน์ 'Sales': Local Outlier Factor พบค่าผิดปกติ 907 ค่า (สุ่มตัวอย่าง 10,000 แถว) (ค่าผิดปกติสุด -60.344; ยิ่งติดลบมากยิ่งผิดปกติ) (907 รายการ, 9.1%)
แล้วไงต่อ? LOF จับค่าผิดปกติเชิงความหนาแน่นเฉพาะถิ่น — มีประโยชน์เมื่อสถิติรวมมองไม่เห็น

ภาพรวม

จำนวนแถว
10,296
จำนวนคอลัมน์
21
เซลล์ทั้งหมด
216,216
เซลล์ที่ว่าง
0 (0.0%)
แถวซ้ำ
0

ประเภทคอลัมน์

หมวดหมู่ 9ตัวเลข 5ข้อความภาษาอังกฤษ 4วันที่/เวลา 2ตัวระบุ (ID) 1
⚠ จำกัดกราฟไว้ 40 รูป / 1.6MB (ตัด 8 รูปที่สำคัญน้อยสุด) เพื่อลดขนาดไฟล์ HTML

คอลัมน์ที่ควรระวัง

🟡 เตือน Order ID
  • คอลัมน์วันที่มีรูปแบบที่ต่างกัน 5 รูปแบบ (CA-9999-9999, CA-9999-99999, CA-9999-999999, US-9999-99999, US-9999-999999)
  • พบคู่หมวดหมู่ที่คล้ายกันเกือบเหมือน 20 คู่ (ความคล้าย > 0.8)
  • พบหมวดหมู่ 5015 ค่า ที่ปรากฏน้อยกว่า 1% ของแถว — อาจเป็นการพิมพ์ผิดหรือค่าที่หายาก
🟡 เตือน State
  • พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN
  • พบคู่หมวดหมู่ที่คล้ายกันเกือบเหมือน 2 คู่ (ความคล้าย > 0.8)
  • พบหมวดหมู่ 27 ค่า ที่ปรากฏน้อยกว่า 1% ของแถว — อาจเป็นการพิมพ์ผิดหรือค่าที่หายาก
🟡 เตือน Discount
  • Isolation Forest พบค่าผิดปกติ 1501 ค่า (สุ่มตัวอย่าง 10,000 แถว) (คะแนนผิดปกติสุด -0.205; ยิ่งต่ำยิ่งผิดปกติ)
  • พบค่าผิดปกติเชิงตัวเลข 718 ค่า ด้วยวิธี modified_z_score (MAD) (ความเบ้ของการกระจาย ≈ 1.72)
🟡 เตือน Product Name
  • พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN
  • พบปัญหาการ normalize ข้อความ (repeated-char spam) ทำให้สตริงที่ดูเหมือนกันแต่ไม่เท่ากันจริง
🟡 เตือน Profit
  • Isolation Forest พบค่าผิดปกติ 1197 ค่า (สุ่มตัวอย่าง 10,000 แถว) (คะแนนผิดปกติสุด -0.333; ยิ่งต่ำยิ่งผิดปกติ)
  • พบค่าผิดปกติเชิงตัวเลข 2046 ค่า ด้วยวิธี modified_z_score (MAD) (ความเบ้ของการกระจาย ≈ 7.68) การกระจายแบบหางยาวมักมีค่าสุดขั้วทางธุรกิจที่ถูกต้อง จึงไม่ใช่ defect ของข้อมูลเสมอไป
🟡 เตือน Sales
  • Local Outlier Factor พบค่าผิดปกติ 907 ค่า (สุ่มตัวอย่าง 10,000 แถว) (ค่าผิดปกติสุด -60.344; ยิ่งติดลบมากยิ่งผิดปกติ)
  • พบค่าผิดปกติเชิงตัวเลข 2080 ค่า ด้วยวิธี modified_z_score (MAD) (ความเบ้ของการกระจาย ≈ 13.12) การกระจายแบบหางยาวมักมีค่าสุดขั้วทางธุรกิจที่ถูกต้อง จึงไม่ใช่ defect ของข้อมูลเสมอไป

การกระจายและสหสัมพันธ์

แผนภาพการกระจายแบบเมทริกซ์
scatter matrix
กราฟนี้บอกอะไรเรา: ใช้ดู pattern ระหว่างตัวเลข เช่น เส้นตรง กลุ่มย่อย หรือ outlier
แผนภาพกล่อง
box plot
กราฟนี้บอกอะไรเรา: จุดที่หลุดจากกล่องคือค่าที่ควรตรวจว่าเป็น outlier จริงหรือไม่
แผนภาพไวโอลิน
violin plot
กราฟนี้บอกอะไรเรา: ดูรูปทรงการกระจายว่าเบ้ มีหลายกลุ่ม หรือกระจุกตัวตรงไหน

ข้อมูลที่ขาดหาย

✓ ไม่มีข้อมูลที่ขาดหาย

ข้อค้นพบสำคัญ 30 เตือน

แสดง 30 จาก 56 ข้อค้นพบสำคัญ
🟡 เตือน คุณภาพ placeholder_values
คอลัมน์ 'Ship Mode': พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN (พบ 302 แถว, 2.9%)
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
🟡 เตือน คุณภาพ placeholder_values
คอลัมน์ 'Customer ID': พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN (พบ 302 แถว, 2.9%)
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
🟡 เตือน คุณภาพ placeholder_values
คอลัมน์ 'Customer Name': พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN (พบ 302 แถว, 2.9%)
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
🟡 เตือน คุณภาพ placeholder_values
คอลัมน์ 'Segment': พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN (พบ 302 แถว, 2.9%)
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
🟡 เตือน คุณภาพ placeholder_values
คอลัมน์ 'Country': พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN (พบ 302 แถว, 2.9%)
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
🟡 เตือน คุณภาพ placeholder_values
คอลัมน์ 'City': พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN (พบ 302 แถว, 2.9%)
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
🟡 เตือน คุณภาพ placeholder_values
คอลัมน์ 'State': พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN (พบ 302 แถว, 2.9%)
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
🟡 เตือน คุณภาพ placeholder_values
คอลัมน์ 'Region': พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN (พบ 302 แถว, 2.9%)
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
🟡 เตือน คุณภาพ placeholder_values
คอลัมน์ 'Product ID': พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN (พบ 302 แถว, 2.9%)
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
🟡 เตือน คุณภาพ placeholder_values
คอลัมน์ 'Category': พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN (พบ 302 แถว, 2.9%)
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
🟡 เตือน คุณภาพ placeholder_values
คอลัมน์ 'Sub-Category': พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN (พบ 302 แถว, 2.9%)
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
🟡 เตือน คุณภาพ placeholder_values
คอลัมน์ 'Product Name': พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN (พบ 302 แถว, 2.9%)
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
🟡 เตือน คุณภาพ พบปัญหาการ normalize ข้อความ
คอลัมน์ 'Product Name': พบปัญหาการ normalize ข้อความ (repeated-char spam) ทำให้สตริงที่ดูเหมือนกันแต่ไม่เท่ากันจริง (พบ 143 แถว, 1.4%)
แล้วไงต่อ? ใช้การ normalize ข้อความ (เช่น pythainlp.util.normalize) ก่อนวิเคราะห์
🟡 เตือน โครงสร้าง พบรูปแบบวันที่ปนกัน
คอลัมน์ 'Order ID': คอลัมน์วันที่มีรูปแบบที่ต่างกัน 5 รูปแบบ (CA-9999-9999, CA-9999-99999, CA-9999-999999, US-9999-99999, US-9999-999999) (10,290 รายการ, 99.9%)
แล้วไงต่อ? แปลงเป็นรูปแบบมาตรฐานเดียว — รูปแบบที่ปนกันทำให้การเรียงลำดับและ parse ผิดพลาด
🟡 เตือน โครงสร้าง พบรูปแบบวันที่ปนกัน
คอลัมน์ 'Order Date': คอลัมน์วันที่มีรูปแบบที่ต่างกัน 4 รูปแบบ (9/9/9999, 9/99/9999, 99/9/9999, 99/99/9999) (9,994 รายการ, 97.1%)
แล้วไงต่อ? แปลงเป็นรูปแบบมาตรฐานเดียว — รูปแบบที่ปนกันทำให้การเรียงลำดับและ parse ผิดพลาด
🟡 เตือน โครงสร้าง พบรูปแบบวันที่ปนกัน
คอลัมน์ 'Ship Date': คอลัมน์วันที่มีรูปแบบที่ต่างกัน 4 รูปแบบ (9/9/9999, 9/99/9999, 99/9/9999, 99/99/9999) (9,994 รายการ, 97.1%)
แล้วไงต่อ? แปลงเป็นรูปแบบมาตรฐานเดียว — รูปแบบที่ปนกันทำให้การเรียงลำดับและ parse ผิดพลาด
🟡 เตือน ความผิดปกติ พบค่าผิดปกติจากโมเดล (Isolation Forest)
คอลัมน์ 'Discount': Isolation Forest พบค่าผิดปกติ 1501 ค่า (สุ่มตัวอย่าง 10,000 แถว) (คะแนนผิดปกติสุด -0.205; ยิ่งต่ำยิ่งผิดปกติ) (1,501 รายการ, 15.0%)
แล้วไงต่อ? ค่าผิดปกติแบบ ML ใช้เสริมวิธีเชิงสถิติ — ควรตรวจสอบจุดที่ถูก flag ประกอบกัน
🟡 เตือน ความผิดปกติ พบค่าผิดปกติจากโมเดล (Isolation Forest)
คอลัมน์ 'Profit': Isolation Forest พบค่าผิดปกติ 1197 ค่า (สุ่มตัวอย่าง 10,000 แถว) (คะแนนผิดปกติสุด -0.333; ยิ่งต่ำยิ่งผิดปกติ) (1,197 รายการ, 12.0%)
แล้วไงต่อ? ค่าผิดปกติแบบ ML ใช้เสริมวิธีเชิงสถิติ — ควรตรวจสอบจุดที่ถูก flag ประกอบกัน
🟡 เตือน ความผิดปกติ พบค่าผิดปกติเชิงความหนาแน่น (LOF)
คอลัมน์ 'Sales': Local Outlier Factor พบค่าผิดปกติ 907 ค่า (สุ่มตัวอย่าง 10,000 แถว) (ค่าผิดปกติสุด -60.344; ยิ่งติดลบมากยิ่งผิดปกติ) (907 รายการ, 9.1%)
แล้วไงต่อ? LOF จับค่าผิดปกติเชิงความหนาแน่นเฉพาะถิ่น — มีประโยชน์เมื่อสถิติรวมมองไม่เห็น
🟡 เตือน ความผิดปกติ พบค่าผิดปกติเชิงตัวเลข (outlier)
คอลัมน์ 'Discount': พบค่าผิดปกติเชิงตัวเลข 718 ค่า ด้วยวิธี modified_z_score (MAD) (ความเบ้ของการกระจาย ≈ 1.72) (718 รายการ, 7.0%)
แล้วไงต่อ? ตรวจสอบค่าเหล่านี้ — อาจเป็นการกรอกผิด หน่วยไม่ตรงกัน ค่าสุดขั้วจริง หรือค่าสุดขั้วทางธุรกิจที่ถูกต้อง
แสดงข้อค้นพบเพิ่มเติม (10)
🟡 เตือน ความผิดปกติ พบค่าผิดปกติเชิงตัวเลข (outlier)
คอลัมน์ 'Quantity': พบค่าผิดปกติเชิงตัวเลข 428 ค่า ด้วยวิธี modified_z_score (MAD) (ความเบ้ของการกระจาย ≈ 1.16) (428 รายการ, 4.2%)
แล้วไงต่อ? ตรวจสอบค่าเหล่านี้ — อาจเป็นการกรอกผิด หน่วยไม่ตรงกัน ค่าสุดขั้วจริง หรือค่าสุดขั้วทางธุรกิจที่ถูกต้อง
🟡 เตือน ความผิดปกติ พบหมวดหมู่ที่คล้ายกันจนน่าสงสัยว่าซ้ำ
คอลัมน์ 'State': พบคู่หมวดหมู่ที่คล้ายกันเกือบเหมือน 2 คู่ (ความคล้าย > 0.8) (310 รายการ, 3.0%)
แล้วไงต่อ? ค่าเหล่านี้น่าจะหมายถึงสิ่งเดียวกัน (เช่น 'กรุงเทพ' กับ 'กรุงเทพฯ') ควรทำให้เป็นค่ามาตรฐานเดียว
🟡 เตือน ความผิดปกติ พบหมวดหมู่ที่คล้ายกันจนน่าสงสัยว่าซ้ำ
คอลัมน์ 'Order ID': พบคู่หมวดหมู่ที่คล้ายกันเกือบเหมือน 20 คู่ (ความคล้าย > 0.8) (181 รายการ, 1.8%)
แล้วไงต่อ? ค่าเหล่านี้น่าจะหมายถึงสิ่งเดียวกัน (เช่น 'กรุงเทพ' กับ 'กรุงเทพฯ') ควรทำให้เป็นค่ามาตรฐานเดียว
🟡 เตือน การกระจาย การกระจายเบ้มาก
คอลัมน์ 'Sales' มีการกระจายเบ้ขวา (หางยาวด้านมาก) (skew=13.12) — ค่าเฉลี่ยอาจไม่สะท้อนค่ากลางที่แท้จริง
แล้วไงต่อ? พิจารณาแปลง 'Sales' ด้วย log/sqrt/Box-Cox ก่อนวิเคราะห์หรือสร้างโมเดล
🟡 เตือน การกระจาย การกระจายเบ้มาก
คอลัมน์ 'Quantity' มีการกระจายเบ้ขวา (หางยาวด้านมาก) (skew=1.16) — ค่าเฉลี่ยอาจไม่สะท้อนค่ากลางที่แท้จริง
แล้วไงต่อ? พิจารณาแปลง 'Quantity' ด้วย log/sqrt/Box-Cox ก่อนวิเคราะห์หรือสร้างโมเดล
🟡 เตือน การกระจาย การกระจายเบ้มาก
คอลัมน์ 'Discount' มีการกระจายเบ้ขวา (หางยาวด้านมาก) (skew=1.72) — ค่าเฉลี่ยอาจไม่สะท้อนค่ากลางที่แท้จริง
แล้วไงต่อ? พิจารณาแปลง 'Discount' ด้วย log/sqrt/Box-Cox ก่อนวิเคราะห์หรือสร้างโมเดล
🟡 เตือน การกระจาย การกระจายเบ้มาก
คอลัมน์ 'Profit' มีการกระจายเบ้ขวา (หางยาวด้านมาก) (skew=7.68) — ค่าเฉลี่ยอาจไม่สะท้อนค่ากลางที่แท้จริง
แล้วไงต่อ? พิจารณาแปลง 'Profit' ด้วย log/sqrt/Box-Cox ก่อนวิเคราะห์หรือสร้างโมเดล
🟡 เตือน อนุกรมเวลา ข้อมูลเวลาไม่ต่อเนื่อง (มีช่องว่าง)
คอลัมน์ 'Postal Code' มีช่องว่างของเวลา 177 ช่วง — ข้อมูลบางช่วงขาดหาย
แล้วไงต่อ? เติมช่วงเวลาที่ขาด (resample/reindex) ของ 'Postal Code' ก่อนวิเคราะห์อนุกรมเวลา
🟡 เตือน อนุกรมเวลา พบค่าผิดปกติเฉพาะช่วง (spike)
คอลัมน์ 'Postal Code' มีค่าผิดปกติเฉพาะช่วง 50 จุด (spike/level shift จาก residual)
แล้วไงต่อ? ตรวจสอบเหตุการณ์ในช่วงเวลาดังกล่าวของ 'Postal Code' ว่าผิดปกติจริงหรือเป็นข้อมูลพิเศษ
🟡 เตือน อนุกรมเวลา ข้อมูลเวลาไม่ต่อเนื่อง (มีช่องว่าง)
คอลัมน์ 'Sales' มีช่องว่างของเวลา 177 ช่วง — ข้อมูลบางช่วงขาดหาย
แล้วไงต่อ? เติมช่วงเวลาที่ขาด (resample/reindex) ของ 'Sales' ก่อนวิเคราะห์อนุกรมเวลา

ข้อค้นพบจากการวิเคราะห์คอลัมน์ผสม (8)

pattern_outlier พบ outlier 128 แถวในคอลัมน์ 'Sales' (z-score ≥ 3.0) จัดกลุ่มตาม: Sales · ตัววัด: Sales · outlier
คอลัมน์ 'Sales' มี 128 ค่าที่เป็น outlier (1.2% ของข้อมูล, max z-score=36.4, mean=223.1, std=615.3)
แล้วไงต่อ? ตรวจสอบ outlier ในคอลัมน์ 'Sales' — อาจเป็นค่าผิดปกติจริงหรือการกรอกผิด พิจารณา clip/transform ก่อนนำไปวิเคราะห์หรือสร้างโมเดล
pattern_outlier พบ outlier 108 แถวในคอลัมน์ 'Profit' (z-score ≥ 3.0) จัดกลุ่มตาม: Profit · ตัววัด: Profit · outlier
คอลัมน์ 'Profit' มี 108 ค่าที่เป็น outlier (1.0% ของข้อมูล, max z-score=36.3, mean=27.8, std=230.8)
แล้วไงต่อ? ตรวจสอบ outlier ในคอลัมน์ 'Profit' — อาจเป็นค่าผิดปกติจริงหรือการกรอกผิด พิจารณา clip/transform ก่อนนำไปวิเคราะห์หรือสร้างโมเดล
กลุ่มโดดเด่น กลุ่ม 'Copiers' โดดเด่นใน 'Profit' (ตาม 'Sub-Category') จัดกลุ่มตาม: Sub-Category · ตัววัด: Profit · mean
กลุ่ม 'Copiers' มีค่าเฉลี่ย 'Profit' สูงสุดที่ 817.9 — สูงกว่ากลุ่มรอง 15.1 เท่า (จัดกลุ่มตาม 'Sub-Category')
กราฟนี้บอกอะไรเรา
insight chart
กลุ่มค่า
Copiers817.91
Accessories54.11
Phones50.07
แล้วไงต่อ? ตรวจสอบว่าเหตุใดกลุ่ม 'Copiers' จึงโดดเด่น และพิจารณาใช้เป็นจุดโฟกัสในการวิเคราะห์/ตัดสินใจ
pattern_outlier พบ outlier 113 แถวในคอลัมน์ 'Quantity' (z-score ≥ 3.0) จัดกลุ่มตาม: Quantity · ตัววัด: Quantity · outlier
คอลัมน์ 'Quantity' มี 113 ค่าที่เป็น outlier (1.1% ของข้อมูล, max z-score=4.5, mean=3.7, std=2.3)
แล้วไงต่อ? ตรวจสอบ outlier ในคอลัมน์ 'Quantity' — อาจเป็นค่าผิดปกติจริงหรือการกรอกผิด พิจารณา clip/transform ก่อนนำไปวิเคราะห์หรือสร้างโมเดล
แนวโน้ม จำนวน จำนวนข้อมูล เพิ่มขึ้นตาม 'Order Date' จัดกลุ่มตาม: Order Date · count
จำนวน จำนวนข้อมูล เพิ่มขึ้นอย่างมีนัยสำคัญตาม 'Order Date' (รายเดือน) (τ=0.47, จาก 79.0 เป็น 462.0)
กราฟนี้บอกอะไรเรา
insight chart
τ=0.473 · ค่า p=0.0 · 2015-01 → 2018-12 (79.0 → 462.0)
แล้วไงต่อ? พบแนวโน้มเพิ่มขึ้นตาม 'Order Date' — พิจารณาวางแผน/พยากรณ์โดยคำนึงถึงทิศทางนี้
เปรียบเทียบกลุ่ม กลุ่ม 'Illinois' ต่างจากกลุ่มอื่นอย่างมีนัยสำคัญใน 'Discount' (ตาม 'State') จัดกลุ่มตาม: State · ตัววัด: Discount · mean
กลุ่ม 'Illinois' มีค่าเฉลี่ย 'Discount' 179% สูงกว่ากลุ่มอื่น (เฉลี่ย 0.4 เทียบกับ 0.1, p=0.000)
กราฟนี้บอกอะไรเรา
insight chart
ส่วนต่าง: 179.3% · ค่าเฉลี่ย: 0.39 vs 0.14 · ค่า p=0.0 · n=492/9,804
แล้วไงต่อ? ความแตกต่างระหว่างกลุ่มมีนัยสำคัญ — พิจารณาแยกวิเคราะห์ 'Discount' ตาม 'State' หรือใช้เป็นฟีเจอร์ในการสร้างโมเดล
กลุ่มโดดเด่น กลุ่ม 'California' โดดเด่นใน 'Quantity' (ตาม 'State') จัดกลุ่มตาม: State · ตัววัด: Quantity · sum
กลุ่ม 'California' มีผลรวม 'Quantity' สูงสุดที่ 7,667.0 — สูงกว่ากลุ่มรอง 1.8 เท่า (จัดกลุ่มตาม 'State')
กราฟนี้บอกอะไรเรา
insight chart
กลุ่มค่า
California7,667.0
New York4,224.0
Texas3,724.0
แล้วไงต่อ? ตรวจสอบว่าเหตุใดกลุ่ม 'California' จึงโดดเด่น และพิจารณาใช้เป็นจุดโฟกัสในการวิเคราะห์/ตัดสินใจ
แนวโน้ม จำนวน จำนวนข้อมูล เพิ่มขึ้นตาม 'Ship Date' จัดกลุ่มตาม: Ship Date · count
จำนวน จำนวนข้อมูล เพิ่มขึ้นอย่างมีนัยสำคัญตาม 'Ship Date' (รายเดือน) (τ=0.41, จาก 72.0 เป็น 42.0)
กราฟนี้บอกอะไรเรา
insight chart
τ=0.406 · ค่า p=0.0 · 2015-01 → 2019-01 (72.0 → 42.0)
แล้วไงต่อ? พบแนวโน้มเพิ่มขึ้นตาม 'Ship Date' — พิจารณาวางแผน/พยากรณ์โดยคำนึงถึงทิศทางนี้

ปัญหาคุณภาพข้อมูล (13)

🟡 เตือนShip Mode · placeholder_values
จำนวน: 302 (2.9%)
พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN
ไม่ระบุ
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
ดูเพิ่มเติม
Found 302 placeholder values ('-', 'N/A', 'ไม่มี') that should be NaN — Replace placeholder values with NaN before analysis
🟡 เตือนCustomer ID · placeholder_values
จำนวน: 302 (2.9%)
พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN
ไม่ระบุ
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
ดูเพิ่มเติม
Found 302 placeholder values ('-', 'N/A', 'ไม่มี') that should be NaN — Replace placeholder values with NaN before analysis
🟡 เตือนCustomer Name · placeholder_values
จำนวน: 302 (2.9%)
พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN
ไม่ระบุ
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
ดูเพิ่มเติม
Found 302 placeholder values ('-', 'N/A', 'ไม่มี') that should be NaN — Replace placeholder values with NaN before analysis
🟡 เตือนSegment · placeholder_values
จำนวน: 302 (2.9%)
พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN
ไม่ระบุ
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
ดูเพิ่มเติม
Found 302 placeholder values ('-', 'N/A', 'ไม่มี') that should be NaN — Replace placeholder values with NaN before analysis
🟡 เตือนCountry · placeholder_values
จำนวน: 302 (2.9%)
พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN
ไม่ระบุ
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
ดูเพิ่มเติม
Found 302 placeholder values ('-', 'N/A', 'ไม่มี') that should be NaN — Replace placeholder values with NaN before analysis
🟡 เตือนCity · placeholder_values
จำนวน: 302 (2.9%)
พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN
ไม่ระบุ
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
ดูเพิ่มเติม
Found 302 placeholder values ('-', 'N/A', 'ไม่มี') that should be NaN — Replace placeholder values with NaN before analysis
🟡 เตือนState · placeholder_values
จำนวน: 302 (2.9%)
พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN
ไม่ระบุ
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
ดูเพิ่มเติม
Found 302 placeholder values ('-', 'N/A', 'ไม่มี') that should be NaN — Replace placeholder values with NaN before analysis
🟡 เตือนRegion · placeholder_values
จำนวน: 302 (2.9%)
พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN
ไม่ระบุ
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
ดูเพิ่มเติม
Found 302 placeholder values ('-', 'N/A', 'ไม่มี') that should be NaN — Replace placeholder values with NaN before analysis
🟡 เตือนProduct ID · placeholder_values
จำนวน: 302 (2.9%)
พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN
ไม่ระบุ
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
ดูเพิ่มเติม
Found 302 placeholder values ('-', 'N/A', 'ไม่มี') that should be NaN — Replace placeholder values with NaN before analysis
🟡 เตือนCategory · placeholder_values
จำนวน: 302 (2.9%)
พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN
ไม่ระบุ
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
ดูเพิ่มเติม
Found 302 placeholder values ('-', 'N/A', 'ไม่มี') that should be NaN — Replace placeholder values with NaN before analysis
🟡 เตือนSub-Category · placeholder_values
จำนวน: 302 (2.9%)
พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN
ไม่ระบุ
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
ดูเพิ่มเติม
Found 302 placeholder values ('-', 'N/A', 'ไม่มี') that should be NaN — Replace placeholder values with NaN before analysis
🟡 เตือนProduct Name · placeholder_values
จำนวน: 302 (2.9%)
พบ 302 ค่าที่ใช้แทน NaN ('-', 'N/A', 'ไม่มี') — ควรแปลงเป็น NaN
ไม่ระบุ
แล้วไงต่อ? แทนที่ค่า placeholder ด้วย NaN ก่อนวิเคราะห์ (ใช้ coerce_numeric_column หรือ replace)
ดูเพิ่มเติม
Found 302 placeholder values ('-', 'N/A', 'ไม่มี') that should be NaN — Replace placeholder values with NaN before analysis
🟡 เตือนProduct Name · normalization
จำนวน: 143 (1.39%)
พบปัญหาการ normalize ข้อความ (repeated-char spam) ทำให้สตริงที่ดูเหมือนกันแต่ไม่เท่ากันจริง
Anker Astro 15000mAh USB Portable ChargerAT&T 841000 PhoneEaton Premium Continuous-Feed Paper, 25% Cotton, Letter S...Dot Matrix Printer Tape Reel Labels, White, 5000/Boxi.Sound Portable Power - 8000 mAh
แล้วไงต่อ? ใช้การ normalize ข้อความ (เช่น pythainlp.util.normalize) ก่อนวิเคราะห์
ดูเพิ่มเติม
Text normalization issues found (repeated-char spam). These cause duplicate-looking but unequal strings. — Apply Unicode normalization (e.g. pythainlp.util.normalize) before analysis.

ความผิดปกติ (16)

🟡 เตือนOrder ID · mixed_date_formats รูปแบบ
จำนวน: 10,290 (99.94%)
คอลัมน์วันที่มีรูปแบบที่ต่างกัน 5 รูปแบบ (CA-9999-9999, CA-9999-99999, CA-9999-999999, US-9999-99999, US-9999-999999)
CA-2017-152156CA-2017-152156CA-2017-138688US-2016-108966US-2016-108966
แล้วไงต่อ? แปลงเป็นรูปแบบมาตรฐานเดียว — รูปแบบที่ปนกันทำให้การเรียงลำดับและ parse ผิดพลาด
ดูเพิ่มเติม
Date column mixes 5 distinct format patterns (CA-9999-9999, CA-9999-99999, CA-9999-999999, US-9999-99999, US-9999-999999). — Parse with a single canonical format; mixed formats break sorting and parsing.
🟡 เตือนOrder Date · mixed_date_formats รูปแบบ
จำนวน: 9,994 (97.07%)
คอลัมน์วันที่มีรูปแบบที่ต่างกัน 4 รูปแบบ (9/9/9999, 9/99/9999, 99/9/9999, 99/99/9999)
11/8/201711/8/20176/12/201710/11/201610/11/2016
แล้วไงต่อ? แปลงเป็นรูปแบบมาตรฐานเดียว — รูปแบบที่ปนกันทำให้การเรียงลำดับและ parse ผิดพลาด
ดูเพิ่มเติม
Date column mixes 4 distinct format patterns (9/9/9999, 9/99/9999, 99/9/9999, 99/99/9999). — Parse with a single canonical format; mixed formats break sorting and parsing.
🟡 เตือนShip Date · mixed_date_formats รูปแบบ
จำนวน: 9,994 (97.07%)
คอลัมน์วันที่มีรูปแบบที่ต่างกัน 4 รูปแบบ (9/9/9999, 9/99/9999, 99/9/9999, 99/99/9999)
11/11/201711/11/20176/16/201710/18/201610/18/2016
แล้วไงต่อ? แปลงเป็นรูปแบบมาตรฐานเดียว — รูปแบบที่ปนกันทำให้การเรียงลำดับและ parse ผิดพลาด
ดูเพิ่มเติม
Date column mixes 4 distinct format patterns (9/9/9999, 9/99/9999, 99/9/9999, 99/99/9999). — Parse with a single canonical format; mixed formats break sorting and parsing.
🟡 เตือนDiscount · isolation_forest เชิงสถิติ
จำนวน: 1,501 (15.01%)
Isolation Forest พบค่าผิดปกติ 1501 ค่า (สุ่มตัวอย่าง 10,000 แถว) (คะแนนผิดปกติสุด -0.205; ยิ่งต่ำยิ่งผิดปกติ)
0.5 (score=-0.205)0.5 (score=-0.205)0.5 (score=-0.205)0.5 (score=-0.205)0.5 (score=-0.205)
แล้วไงต่อ? ค่าผิดปกติแบบ ML ใช้เสริมวิธีเชิงสถิติ — ควรตรวจสอบจุดที่ถูก flag ประกอบกัน
ดูเพิ่มเติม
Isolation Forest flagged 1501 outlier(s) on a 10,000-row sample (most anomalous score -0.205; lower = more anomalous). — ML-based outliers complement statistical methods; cross-check flagged points.
🟡 เตือนProfit · isolation_forest เชิงสถิติ
จำนวน: 1,197 (11.97%)
Isolation Forest พบค่าผิดปกติ 1197 ค่า (สุ่มตัวอย่าง 10,000 แถว) (คะแนนผิดปกติสุด -0.333; ยิ่งต่ำยิ่งผิดปกติ)
-6599.978 (score=-0.333)8399.976 (score=-0.329)-3399.98 (score=-0.328)-2929.4845 (score=-0.328)-3701.8928 (score=-0.328)
แล้วไงต่อ? ค่าผิดปกติแบบ ML ใช้เสริมวิธีเชิงสถิติ — ควรตรวจสอบจุดที่ถูก flag ประกอบกัน
ดูเพิ่มเติม
Isolation Forest flagged 1197 outlier(s) on a 10,000-row sample (most anomalous score -0.333; lower = more anomalous). — ML-based outliers complement statistical methods; cross-check flagged points.
🟡 เตือนSales · local_outlier_factor เชิงสถิติ
จำนวน: 907 (9.07%)
Local Outlier Factor พบค่าผิดปกติ 907 ค่า (สุ่มตัวอย่าง 10,000 แถว) (ค่าผิดปกติสุด -60.344; ยิ่งติดลบมากยิ่งผิดปกติ)
22638.48 (LOF=-60.344)17499.95 (LOF=-46.500)13999.96 (LOF=-37.076)11199.968 (LOF=-29.539)10499.97 (LOF=-27.654)
แล้วไงต่อ? LOF จับค่าผิดปกติเชิงความหนาแน่นเฉพาะถิ่น — มีประโยชน์เมื่อสถิติรวมมองไม่เห็น
ดูเพิ่มเติม
Local Outlier Factor flagged 907 outlier(s) on a 10,000-row sample (most anomalous factor -60.344; more negative = more anomalous). — LOF finds density-based local outliers; useful when global statistics miss them.
🟡 เตือนDiscount · numeric_outliers เชิงสถิติ
จำนวน: 718 (6.97%)
พบค่าผิดปกติเชิงตัวเลข 718 ค่า ด้วยวิธี modified_z_score (MAD) (ความเบ้ของการกระจาย ≈ 1.72)
0.80.80.70.70.8
แล้วไงต่อ? ตรวจสอบค่าเหล่านี้ — อาจเป็นการกรอกผิด หน่วยไม่ตรงกัน ค่าสุดขั้วจริง หรือค่าสุดขั้วทางธุรกิจที่ถูกต้อง
ดูเพิ่มเติม
718 numeric outlier(s) detected using the modified_z_score (MAD) method (distribution skew ≈ 1.72). — Inspect these values; they may be data-entry errors, units mismatch, genuine extremes, or valid business extremes.
🟡 เตือนQuantity · numeric_outliers เชิงสถิติ
จำนวน: 428 (4.16%)
พบค่าผิดปกติเชิงตัวเลข 428 ค่า ด้วยวิธี modified_z_score (MAD) (ความเบ้ของการกระจาย ≈ 1.16)
991499
แล้วไงต่อ? ตรวจสอบค่าเหล่านี้ — อาจเป็นการกรอกผิด หน่วยไม่ตรงกัน ค่าสุดขั้วจริง หรือค่าสุดขั้วทางธุรกิจที่ถูกต้อง
ดูเพิ่มเติม
428 numeric outlier(s) detected using the modified_z_score (MAD) method (distribution skew ≈ 1.16). — Inspect these values; they may be data-entry errors, units mismatch, genuine extremes, or valid business extremes.
🟡 เตือนState · fuzzy_duplicates หมวดหมู่
จำนวน: 310 (3.01%)
พบคู่หมวดหมู่ที่คล้ายกันเกือบเหมือน 2 คู่ (ความคล้าย > 0.8)
North Carolina ↔ South CarolinaSouth Dakota ↔ North Dakota
แล้วไงต่อ? ค่าเหล่านี้น่าจะหมายถึงสิ่งเดียวกัน (เช่น 'กรุงเทพ' กับ 'กรุงเทพฯ') ควรทำให้เป็นค่ามาตรฐานเดียว
ดูเพิ่มเติม
2 near-duplicate category pair(s) detected (similarity > 0.8). — These likely refer to the same value (e.g. 'กรุงเทพ' vs 'กรุงเทพฯ'); standardize them.
🟡 เตือนOrder ID · fuzzy_duplicates หมวดหมู่
จำนวน: 181 (1.76%)
พบคู่หมวดหมู่ที่คล้ายกันเกือบเหมือน 20 คู่ (ความคล้าย > 0.8)
CA-2018-100111 ↔ CA-2018-109701CA-2018-100111 ↔ CA-2017-101161CA-2018-157987 ↔ CA-2018-156776CA-2018-157987 ↔ CA-2018-157966CA-2018-157987 ↔ CA-2018-135279
แล้วไงต่อ? ค่าเหล่านี้น่าจะหมายถึงสิ่งเดียวกัน (เช่น 'กรุงเทพ' กับ 'กรุงเทพฯ') ควรทำให้เป็นค่ามาตรฐานเดียว
ดูเพิ่มเติม
20 near-duplicate category pair(s) detected (similarity > 0.8). — These likely refer to the same value (e.g. 'กรุงเทพ' vs 'กรุงเทพฯ'); standardize them.
🔵 ข้อมูลOrder ID · rare_categories หมวดหมู่
จำนวน: 10,296 (100.0%)
พบหมวดหมู่ 5015 ค่า ที่ปรากฏน้อยกว่า 1% ของแถว — อาจเป็นการพิมพ์ผิดหรือค่าที่หายาก
CA-2018-134439 (×1)CA-2017-108959 (×1)CA-2018-160661 (×1)CA-2018-166835 (×1)CA-2016-100769 (×1)
แล้วไงต่อ? ตรวจสอบหมวดหมู่หายาก รวมค่าที่พิมพ์ผิดหรือจัดเข้ากลุ่ม 'อื่น ๆ'
ดูเพิ่มเติม
5015 category value(s) occur in <1% of rows — possible typos or rare cases. — Review rare categories; consolidate typos or group into an 'other' bucket.
🔵 ข้อมูลCustomer ID · rare_categories หมวดหมู่
จำนวน: 9,994 (97.07%)
พบหมวดหมู่ 793 ค่า ที่ปรากฏน้อยกว่า 1% ของแถว — อาจเป็นการพิมพ์ผิดหรือค่าที่หายาก
AO-10810 (×1)CJ-11875 (×1)LD-16855 (×1)JR-15700 (×1)RE-19405 (×1)
แล้วไงต่อ? ตรวจสอบหมวดหมู่หายาก รวมค่าที่พิมพ์ผิดหรือจัดเข้ากลุ่ม 'อื่น ๆ'
ดูเพิ่มเติม
793 category value(s) occur in <1% of rows — possible typos or rare cases. — Review rare categories; consolidate typos or group into an 'other' bucket.
🔵 ข้อมูลSales · numeric_outliers เชิงสถิติ
จำนวน: 2,080 (20.2%)
พบค่าผิดปกติเชิงตัวเลข 2080 ค่า ด้วยวิธี modified_z_score (MAD) (ความเบ้ของการกระจาย ≈ 13.12) การกระจายแบบหางยาวมักมีค่าสุดขั้วทางธุรกิจที่ถูกต้อง จึงไม่ใช่ defect ของข้อมูลเสมอไป
731.94957.5775907.1521706.184911.424
แล้วไงต่อ? ตรวจสอบค่าเหล่านี้ — อาจเป็นการกรอกผิด หน่วยไม่ตรงกัน ค่าสุดขั้วจริง หรือค่าสุดขั้วทางธุรกิจที่ถูกต้อง
ดูเพิ่มเติม
2080 numeric outlier(s) detected using the modified_z_score (MAD) method (distribution skew ≈ 13.12). Heavy-tailed distributions often contain valid business extremes; treat this as context, not automatically as a data defect. — Inspect these values; they may be data-entry errors, units mismatch, genuine extremes, or valid business extremes.
🔵 ข้อมูลProfit · numeric_outliers เชิงสถิติ
จำนวน: 2,046 (19.87%)
พบค่าผิดปกติเชิงตัวเลข 2046 ค่า ด้วยวิธี modified_z_score (MAD) (ความเบ้ของการกระจาย ≈ 7.68) การกระจายแบบหางยาวมักมีค่าสุดขั้วทางธุรกิจที่ถูกต้อง จึงไม่ใช่ defect ของข้อมูลเสมอไป
219.582-383.03190.715285.309268.3568
แล้วไงต่อ? ตรวจสอบค่าเหล่านี้ — อาจเป็นการกรอกผิด หน่วยไม่ตรงกัน ค่าสุดขั้วจริง หรือค่าสุดขั้วทางธุรกิจที่ถูกต้อง
ดูเพิ่มเติม
2046 numeric outlier(s) detected using the modified_z_score (MAD) method (distribution skew ≈ 7.68). Heavy-tailed distributions often contain valid business extremes; treat this as context, not automatically as a data defect. — Inspect these values; they may be data-entry errors, units mismatch, genuine extremes, or valid business extremes.
🔵 ข้อมูลState · rare_categories หมวดหมู่
จำนวน: 1,050 (10.2%)
พบหมวดหมู่ 27 ค่า ที่ปรากฏน้อยกว่า 1% ของแถว — อาจเป็นการพิมพ์ผิดหรือค่าที่หายาก
Wyoming (×1)West Virginia (×4)North Dakota (×7)Maine (×8)District of Columbia (×10)
แล้วไงต่อ? ตรวจสอบหมวดหมู่หายาก รวมค่าที่พิมพ์ผิดหรือจัดเข้ากลุ่ม 'อื่น ๆ'
ดูเพิ่มเติม
27 category value(s) occur in <1% of rows — possible typos or rare cases. — Review rare categories; consolidate typos or group into an 'other' bucket.
🔵 ข้อมูลSub-Category · rare_categories หมวดหมู่
จำนวน: 68 (0.66%)
พบหมวดหมู่ 1 ค่า ที่ปรากฏน้อยกว่า 1% ของแถว — อาจเป็นการพิมพ์ผิดหรือค่าที่หายาก
Copiers (×68)
แล้วไงต่อ? ตรวจสอบหมวดหมู่หายาก รวมค่าที่พิมพ์ผิดหรือจัดเข้ากลุ่ม 'อื่น ๆ'
ดูเพิ่มเติม
1 category value(s) occur in <1% of rows — possible typos or rare cases. — Review rare categories; consolidate typos or group into an 'other' bucket.

การวิเคราะห์อนุกรมเวลา (วันที่/เวลา: Order Date)

Postal Codeความถี่: รายวัน
แนวโน้มไม่มีฤดูกาลไม่มี
ช่องว่างเวลา177ค่าผิดปกติเฉพาะช่วง50
สหสัมพันธ์ในตัว (lag-1)0.2293ค่าเฉลี่ย55184.4271
แล้วไงต่อ?
• พบช่องว่างข้อมูล 177 ช่วง (เวลาที่ขาดหาย)
• พบค่าผิดปกติเฉพาะช่วง (spike) 50 จุด
• ไม่พบแนวโน้มหรือ seasonality ชัดเจน — อาจเป็น random walk หรือข้อมูลนิ่ง
อนุกรมเวลา (พร้อมแนวโน้ม)
timeseries line
Salesความถี่: รายวัน
แนวโน้มไม่มีฤดูกาลไม่มี
ช่องว่างเวลา177ค่าผิดปกติเฉพาะช่วง50
สหสัมพันธ์ในตัว (lag-1)0.0085ค่าเฉลี่ย229.858
แล้วไงต่อ?
• พบช่องว่างข้อมูล 177 ช่วง (เวลาที่ขาดหาย)
• พบค่าผิดปกติเฉพาะช่วง (spike) 50 จุด
• ไม่พบแนวโน้มหรือ seasonality ชัดเจน — อาจเป็น random walk หรือข้อมูลนิ่ง
อนุกรมเวลา (พร้อมแนวโน้ม)
timeseries line
Quantityความถี่: รายวัน
แนวโน้มไม่มีฤดูกาลไม่มี
ช่องว่างเวลา177ค่าผิดปกติเฉพาะช่วง50
สหสัมพันธ์ในตัว (lag-1)0.0037ค่าเฉลี่ย3.7896
แล้วไงต่อ?
• พบช่องว่างข้อมูล 177 ช่วง (เวลาที่ขาดหาย)
• พบค่าผิดปกติเฉพาะช่วง (spike) 50 จุด
• ไม่พบแนวโน้มหรือ seasonality ชัดเจน — อาจเป็น random walk หรือข้อมูลนิ่ง
อนุกรมเวลา (พร้อมแนวโน้ม)
timeseries line
Discountความถี่: รายวัน
แนวโน้มไม่มีฤดูกาลไม่มี
ช่องว่างเวลา177ค่าผิดปกติเฉพาะช่วง50
สหสัมพันธ์ในตัว (lag-1)0.1103ค่าเฉลี่ย0.1562
แล้วไงต่อ?
• พบช่องว่างข้อมูล 177 ช่วง (เวลาที่ขาดหาย)
• พบค่าผิดปกติเฉพาะช่วง (spike) 50 จุด
• ไม่พบแนวโน้มหรือ seasonality ชัดเจน — อาจเป็น random walk หรือข้อมูลนิ่ง
อนุกรมเวลา (พร้อมแนวโน้ม)
timeseries line
การแยกองค์ประกอบ (STL)
STL decomposition
Profitความถี่: รายวัน
แนวโน้มไม่มีฤดูกาลไม่มี
ช่องว่างเวลา177ค่าผิดปกติเฉพาะช่วง50
สหสัมพันธ์ในตัว (lag-1)0.0049ค่าเฉลี่ย28.6569
แล้วไงต่อ?
• พบช่องว่างข้อมูล 177 ช่วง (เวลาที่ขาดหาย)
• พบค่าผิดปกติเฉพาะช่วง (spike) 50 จุด
• ไม่พบแนวโน้มหรือ seasonality ชัดเจน — อาจเป็น random walk หรือข้อมูลนิ่ง
อนุกรมเวลา (พร้อมแนวโน้ม)
timeseries line
การแยกองค์ประกอบ (STL)
STL decomposition

การทำความสะอาด (26)

รวมเซลล์ที่เปลี่ยน: 8,516 · การดำเนินการที่มีผลมากสุด: fix_repeated_chars (ลดการซ้ำอักขระที่เกิน 3 ตัว (เช่น 55555 → 555, ๆๆๆ → ๆ) — 1,956)
คอลัมน์การดำเนินการแถวที่ได้รับผลกระทบก่อน → หลัง
(entire df)remove_duplicate_rows
ลบแถวซ้ำ 504 แถว
504
Order Datehandle_missing_values
แทน 302 ค่าว่างด้วย 'ไม่ระบุ'
302
Ship Datehandle_missing_values
แทน 302 ค่าว่างด้วย 'ไม่ระบุ'
302
Ship Modehandle_missing_values
แทน 302 ค่าว่างด้วย 'ไม่ระบุ'
302
Customer IDhandle_missing_values
แทน 302 ค่าว่างด้วย 'ไม่ระบุ'
302
Customer Namehandle_missing_values
แทน 302 ค่าว่างด้วย 'ไม่ระบุ'
302
Segmenthandle_missing_values
แทน 302 ค่าว่างด้วย 'ไม่ระบุ'
302
Countryhandle_missing_values
แทน 302 ค่าว่างด้วย 'ไม่ระบุ'
302
Cityhandle_missing_values
แทน 302 ค่าว่างด้วย 'ไม่ระบุ'
302
Statehandle_missing_values
แทน 302 ค่าว่างด้วย 'ไม่ระบุ'
302
Postal Codehandle_missing_values
แทน 313 ค่าว่างด้วย 0 (numeric)
313
Regionhandle_missing_values
แทน 302 ค่าว่างด้วย 'ไม่ระบุ'
302
Product IDhandle_missing_values
แทน 302 ค่าว่างด้วย 'ไม่ระบุ'
302
Categoryhandle_missing_values
แทน 302 ค่าว่างด้วย 'ไม่ระบุ'
302
Sub-Categoryhandle_missing_values
แทน 302 ค่าว่างด้วย 'ไม่ระบุ'
302
Product Namehandle_missing_values
แทน 302 ค่าว่างด้วย 'ไม่ระบุ'
302
Saleshandle_missing_values
แทน 302 ค่าว่างด้วย 0 (numeric)
302
Quantityhandle_missing_values
แทน 302 ค่าว่างด้วย 0 (numeric)
302
Discounthandle_missing_values
แทน 302 ค่าว่างด้วย 0 (numeric)
302
Profithandle_missing_values
แทน 302 ค่าว่างด้วย 0 (numeric)
302
Row IDfix_repeated_chars
ลดการซ้ำอักขระที่เกิน 3 ตัว (เช่น 55555 → 555, ๆๆๆ → ๆ)
15555555
Order IDfix_repeated_chars
ลดการซ้ำอักขระที่เกิน 3 ตัว (เช่น 55555 → 555, ๆๆๆ → ๆ)
27CA-2018-155558CA-2018-15558CA-2018-155558CA-2018-15558US-2015-111171US-2015-11171CA-2018-111178CA-2018-11178CA-2018-133333CA-2018-1333
Customer IDfix_repeated_chars
ลดการซ้ำอักขระที่เกิน 3 ตัว (เช่น 55555 → 555, ๆๆๆ → ๆ)
17BW-11110BW-1110BW-11110BW-1110BW-11110BW-1110BW-11110BW-1110BW-11110BW-1110
Product IDfix_repeated_chars
ลดการซ้ำอักขระที่เกิน 3 ตัว (เช่น 55555 → 555, ๆๆๆ → ๆ)
1,956FUR-CH-10000454FUR-CH-1000454OFF-LA-10000240OFF-LA-1000240FUR-TA-10000577FUR-TA-1000577OFF-ST-10000760OFF-ST-1000760OFF-BI-10000756OFF-BI-1000756
Product Namenormalize_encoding
แก้ข้อความที่เข้ารหัสผิด (mojibake)
สิ่งที่แก้ไข: ftfy: apply uncurl_quotes
5Ampad Phone Message Book, Recycled, 400 Message Capacity, 5 ¾” x 11”Ampad Phone Message Book, Recycled, 400 Message Capacity, 5 ¾" x 11"Ampad Phone Message Book, Recycled, 400 Message Capacity, 5 ¾” x 11”Ampad Phone Message Book, Recycled, 400 Message Capacity, 5 ¾" x 11"Ampad Phone Message Book, Recycled, 400 Message Capacity, 5 ¾” x 11”Ampad Phone Message Book, Recycled, 400 Message Capacity, 5 ¾" x 11"Ampad Phone Message Book, Recycled, 400 Message Capacity, 5 ¾” x 11”Ampad Phone Message Book, Recycled, 400 Message Capacity, 5 ¾" x 11"Ampad Phone Message Book, Recycled, 400 Message Capacity, 5 ¾” x 11”Ampad Phone Message Book, Recycled, 400 Message Capacity, 5 ¾" x 11"
Product Namestrip_whitespace
ตัด/ยุบช่องว่าง และแปลง non-breaking space เป็นช่องว่างปกติ
257'Konftel 250 Conference\xa0phone\xa0- Charcoal black''Konftel 250 Conference phone - Charcoal black''Imation\xa08GB Mini TravelDrive USB 2.0\xa0Flash Drive''Imation 8GB Mini TravelDrive USB 2.0 Flash Drive''Imation\xa08gb Micro Traveldrive Usb 2.0\xa0Flash Drive''Imation 8gb Micro Traveldrive Usb 2.0 Flash Drive''Imation\xa08gb Micro Traveldrive Usb 2.0\xa0Flash Drive''Imation 8gb Micro Traveldrive Usb 2.0 Flash Drive''Avery Heavy-Duty EZD Binder With Locking Rings''Avery Heavy-Duty EZD Binder With Locking Rings'

คำแนะนำการทำความสะอาด (0)

✓ ไม่มีคำแนะนำการทำความสะอาด

รายละเอียดคอลัมน์

ส่วนนี้ซ่อนไว้เป็นรายคอลัมน์เพื่อลดความรก เปิดเฉพาะคอลัมน์ที่ต้องการตรวจละเอียด

Row IDตัวระบุ (ID)มีกราฟ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ10,000
ความถี่ของค่า
value counts

ค่าที่พบบ่อย

Yes296
5552
11
21
31
41
51
61
71
81
Order IDหมวดหมู่มีกราฟ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ5,015
ความถี่ของค่า
value counts

ค่าที่พบบ่อย

CA-2018-10011115
CA-2018-15798712
CA-2017-16533012
US-2017-10850411
CA-2016-13133810
CA-2016-16488210
US-2016-12697710
CA-2017-10573210
CA-2018-1174579
US-2018-1180879
Order Dateวันที่/เวลา
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ1,237
ต่ำสุด2015-01-03 00:00:00
สูงสุด2018-12-30 00:00:00
Ship Dateวันที่/เวลา
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ1,335
ต่ำสุด2015-01-07 00:00:00
สูงสุด2019-01-05 00:00:00
Ship Modeหมวดหมู่มีกราฟ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ5
ความถี่ของค่า
value counts

ค่าที่พบบ่อย

Standard Class5,968
Second Class1,945
First Class1,538
Same Day543
ไม่ระบุ302
Customer IDหมวดหมู่มีกราฟ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ794
ความถี่ของค่า
value counts

ค่าที่พบบ่อย

ไม่ระบุ302
WB-2185037
MA-1756034
JL-1583534
PP-1895534
JD-1589532
CK-1220532
SV-2036532
EH-1376532
EP-1391531
Customer Nameข้อความภาษาอังกฤษ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ794
Segmentหมวดหมู่มีกราฟ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ4
ความถี่ของค่า
value counts

ค่าที่พบบ่อย

Consumer5,191
Corporate3,020
Home Office1,783
ไม่ระบุ302
Countryหมวดหมู่มีกราฟ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ2
ความถี่ของค่า
value counts

ค่าที่พบบ่อย

United States9,994
ไม่ระบุ302
Cityข้อความภาษาอังกฤษ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ532
Stateหมวดหมู่มีกราฟ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ50
ความถี่ของค่า
value counts

ค่าที่พบบ่อย

California2,001
New York1,128
Texas985
Pennsylvania587
Washington506
Illinois492
Ohio469
Florida383
ไม่ระบุ302
Michigan255
Postal Codeตัวเลขมีกราฟ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ631
ค่าเฉลี่ย53565.7696
ส่วนเบี่ยงเบนมาตรฐาน32943.0063
ต่ำสุด0.0
สูงสุด99301.0
การแจกแจง
value distribution
Regionหมวดหมู่มีกราฟ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ5
ความถี่ของค่า
value counts

ค่าที่พบบ่อย

West3,203
East2,848
Central2,323
South1,620
ไม่ระบุ302
Product IDข้อความภาษาอังกฤษ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ1,863
Categoryหมวดหมู่มีกราฟ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ4
ความถี่ของค่า
value counts

ค่าที่พบบ่อย

Office Supplies6,026
Furniture2,121
Technology1,847
ไม่ระบุ302
Sub-Categoryหมวดหมู่มีกราฟ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ18
ความถี่ของค่า
value counts

ค่าที่พบบ่อย

Binders1,523
Paper1,370
Furnishings957
Phones889
Storage846
Art796
Accessories775
Chairs617
Appliances466
Labels364
Product Nameข้อความภาษาอังกฤษ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ1,851
Salesตัวเลขมีกราฟ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ5,826
ค่าเฉลี่ย223.1159
ส่วนเบี่ยงเบนมาตรฐาน615.2595
ต่ำสุด0.0
สูงสุด22638.48
การแจกแจง
value distribution
Quantityตัวเลขมีกราฟ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ15
ค่าเฉลี่ย3.6784
ส่วนเบี่ยงเบนมาตรฐาน2.2836
ต่ำสุด0.0
สูงสุด14.0
การแจกแจง
value distribution
Discountตัวเลขมีกราฟ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ12
ค่าเฉลี่ย0.1516
ส่วนเบี่ยงเบนมาตรฐาน0.2051
ต่ำสุด0.0
สูงสุด0.8
การแจกแจง
value distribution
Profitตัวเลขมีกราฟ
ไม่ว่าง10,296
เซลล์ที่ว่าง0
ไม่ซ้ำ7,287
ค่าเฉลี่ย27.8163
ส่วนเบี่ยงเบนมาตรฐาน230.8492
ต่ำสุด-6599.978
สูงสุด8399.976
การแจกแจง
value distribution