ยินดีด้วย!

การทำความสะอาดข้อมูลใน Java

Dennis Lee

Software Engineer

การเดินทางผ่านการทำความสะอาดข้อมูล

// From assessing quality
DescriptiveStatistics stats = new DescriptiveStatistics(values);
System.out.println("Mean: " + stats.getMean());

// To transforming strings String clean = text.trim().toLowerCase();
// To validating ranges boolean isValid = Range.between(0, 100).contains(value);
// To cleaning tables Table cleaned = data.where(sales.isGreaterThan(1000));
การทำความสะอาดข้อมูลใน Java

การประเมินคุณภาพข้อมูล

  • ข้อมูลที่ไม่ดีนำไปสู่การตัดสินใจที่ผิดพลาด
  • ประเมินคุณภาพข้อมูล: ตรวจสอบค่าผิดปกติ ค่าที่หายไป และประเภทข้อมูลที่ไม่ถูกต้อง
// Check statistics
double mean = stats.getMean();

// Detect nulls boolean isMissing = Optional.ofNullable(value).isEmpty();
// Verify types boolean isValidDate = LocalDate.parse(dateStr, formatter);
การทำความสะอาดข้อมูลใน Java

การแปลงข้อมูลให้สอดคล้องกัน

  • รูปแบบที่ไม่สอดคล้องกันขัดขวางการวิเคราะห์ที่แม่นยำ
  • ทำความสะอาดสตริง กำหนดมาตรฐานหมวดหมู่และวันที่
// Normalize strings (e.g., remove non-letters)
String cleaned = dirtyName.replaceAll("[^a-zA-Z\\s]", "");

// Standardize categories String standard = categoryMap.getOrDefault(value, "Other");
// Convert dates LocalDateTime datetime = LocalDateTime.parse(dateStr, formatter);
การทำความสะอาดข้อมูลใน Java

การตรวจสอบความสมบูรณ์ของข้อมูล

  • หยุดข้อมูลที่ไม่ดีก่อนเข้าสู่ระบบ
  • ตรวจสอบช่วงค่าและรูปแบบตามกฎทางธุรกิจ
// Check ranges
boolean inRange = Range.between(min, max).contains(value);

// Validate patterns boolean matches = Pattern.matches(pattern, text);
// Enforce constraints Set<ConstraintViolation<Data>> violations = validator.validate(data);
การทำความสะอาดข้อมูลใน Java

การทำความสะอาดข้อมูลแบบตาราง

for (String colName : data.columnNames()) {
    // Check missing values 
    System.out.println(data.column(colName).countMissing());
}

StringColumn cleaned = names.map(String::toLowerCase) // Clean text .setName("Clean_Names"); // Name new column
Table summary = data .where(sales.isGreaterThan(1000)) // Filter rows .summarize("Sales", mean) // Aggregate data .by("Category"); // Group results
การทำความสะอาดข้อมูลใน Java

แหล่งข้อมูลเพิ่มเติม

$$

datacamp_logo.png

การทำความสะอาดข้อมูลใน Java

พร้อมทำความสะอาดแล้ว

การทำความสะอาดข้อมูลใน Java

Preparing Video For Download...