मिसिंग डेटा को संभालना

PostgreSQL डेटाबेस में डेटा क्लीनिंग

Darryl Reeves, Ph.D.

Industry Assistant Professor, New York University

मिसिंग डेटा (एक उदाहरण)

 ... |       name       | score |               inspection_type                | ... 
 ----+------------------+-------+----------------------------------------------+-----
 ... | ...              | ...   | ...                                          | ...
 ... | SCHNIPPERS       | 27    | Cycle Inspection / Initial Inspection        | ...
 ... | ATOMIC WINGS     |       | Administrative Miscellaneous / Re-inspection | ...
 ... | WING LING        | 44    | Cycle Inspection / Initial Inspection        | ...
 ... | JUAN VALDEZ CAFE | 24    | Cycle Inspection / Initial Inspection        | ...
 ... | FULTON GRAND     | 22    | Cycle Inspection / Initial Inspection        | ...
 ... | ...              | ...   | ...                                          | ...

मिसिंग वैल्यू की अभिव्यक्तियाँ:

  • NULL (सामान्य)
  • '' - खाली स्ट्रिंग (string कॉलम के लिए)
PostgreSQL डेटाबेस में डेटा क्लीनिंग

मिसिंग डेटा के कारण

मिसिंग डेटा क्यों होता है? गुम टुकड़े वाली काली पज़ल

  • सिर की रूपरेखा में मानव मस्तिष्क की छवि मानव त्रुटि
  • गियर्स की छवि सिस्टम संबंधी समस्याएँ
PostgreSQL डेटाबेस में डेटा क्लीनिंग

मिसिंग डेटा के प्रकार

विभिन्न प्रकार के डेटा की तीन छवियाँ, हर श्रेणी और संक्षेप के साथ

PostgreSQL डेटाबेस में डेटा क्लीनिंग

मिसिंग डेटा के प्रकार

विभिन्न प्रकारों की तीन छवियाँ, श्रेणियाँ और संक्षेप सहित, साथ में Missing Completely at Random का वर्णन जोड़ा गया है

PostgreSQL डेटाबेस में डेटा क्लीनिंग

मिसिंग डेटा के प्रकार

विभिन्न प्रकारों की तीन छवियाँ, श्रेणियाँ और संक्षेप सहित, साथ में Missing at Random का वर्णन जोड़ा गया है

PostgreSQL डेटाबेस में डेटा क्लीनिंग

मिसिंग डेटा के प्रकार

 ... |       name       | score |               inspection_type                | ... 
 ----+------------------+-------+----------------------------------------------+-----
 ... | ...              | ...   | ...                                          | ...
 ... | SCHNIPPERS       | 27    | Cycle Inspection / Initial Inspection        | ...
 ... | ATOMIC WINGS     |       | Administrative Miscellaneous / Re-inspection | ...
 ... | WING LING        | 44    | Cycle Inspection / Initial Inspection        | ...
 ... | JUAN VALDEZ CAFE | 24    | Cycle Inspection / Initial Inspection        | ...
 ... | FULTON GRAND     | 22    | Cycle Inspection / Initial Inspection        | ...
 ... | ...              | ...   | ...                                          | ...
PostgreSQL डेटाबेस में डेटा क्लीनिंग

मिसिंग डेटा के प्रकार

विभिन्न प्रकारों की तीन छवियाँ, श्रेणियाँ और संक्षेप सहित, साथ में Missing Not at Random का वर्णन जोड़ा गया है

PostgreSQL डेटाबेस में डेटा क्लीनिंग

मिसिंग डेटा की पहचान

SELECT
  *
FROM
  restaurant_inspection
WHERE
  score IS NULL;
SELECT
  COUNT(*)
FROM
  restaurant_inspection
WHERE
  score IS NULL;
PostgreSQL डेटाबेस में डेटा क्लीनिंग

मिसिंग डेटा की पहचान

SELECT
  inspection_type,
  COUNT(*) as count
FROM
  restaurant_inspection
WHERE
  score IS NULL
GROUP BY
  inspection_type
ORDER BY
  count DESC;
                  inspection_type                  | count 
 --------------------------------------------------+-------
 Administrative Miscellaneous / Initial Inspection |   104
 Smoke-Free Air Act / Initial Inspection           |    29
 Calorie Posting / Initial Inspection              |    22
 Administrative Miscellaneous / Re-inspection      |    22
 Trans Fat / Initial Inspection                    |    18
 Smoke-Free Air Act / Re-inspection                |     7
 Trans Fat / Re-inspection                         |     3
PostgreSQL डेटाबेस में डेटा क्लीनिंग

मिसिंग डेटा का समाधान

  • सबसे अच्छा: मिसिंग वैल्यू ढूँढें और जोड़ें

    • संभव न भी हो
    • प्रयास के लायक न हो
  • कोई वैल्यू दें (औसत, मध्यिका, आदि)

  • रिकॉर्ड हटा दें

PostgreSQL डेटाबेस में डेटा क्लीनिंग

COALESCE() से मिसिंग वैल्यू बदलना

COALESCE(arg1, [arg2, ...])

SELECT
  name,
  COALESCE(score, -1),
  inspection_type
FROM
  restaurant_inspection;
PostgreSQL डेटाबेस में डेटा क्लीनिंग

COALESCE() से मिसिंग वैल्यू बदलना

 ... |       name       | score |               inspection_type                | ... 
 ----+------------------+-------+----------------------------------------------+-----
 ... | ...              | ...   | ...                                          | ...
 ... | SCHNIPPERS       | 27    | Cycle Inspection / Initial Inspection        | ...
 ... | ATOMIC WINGS     | -1    | Administrative Miscellaneous / Re-inspection | ...
 ... | WING LING        | 44    | Cycle Inspection / Initial Inspection        | ...
 ... | JUAN VALDEZ CAFE | 24    | Cycle Inspection / Initial Inspection        | ...
 ... | FULTON GRAND     | 22    | Cycle Inspection / Initial Inspection        | ...
 ... | ...              | ...   | ...                                          | ...
PostgreSQL डेटाबेस में डेटा क्लीनिंग

अभ्यास करते हैं!

PostgreSQL डेटाबेस में डेटा क्लीनिंग

Preparing Video For Download...