docstr: Draw Missing Data Value Summary Table
  
  Args:
      notes(str): Explain the block
      missing_count(dict): Missing Count
      total_count(dict): Total Count
      ratio(bool): True if `missing_value` is the percentage
code: def draw_data_missing_value(
      self,
      notes: str,
      *,
      missing_count: dict,
      total_count: dict,
      ratio=False,
  ):
      """
      Draw Missing Data Value Summary Table
  
      Args:
          notes(str): Explain the block
          missing_count(dict): Missing Count
          total_count(dict): Total Count
          ratio(bool): True if `missing_value` is the percentage
      """
      from collections import defaultdict
  
      def get_missing_data_info():
          """
          Build missing data summary
          Returns: Missing data summary
              table_header (list):
              table_data (list):
              col_width (list):
          """
          data_dict = defaultdict(dict)
          field_set = set(total_count.keys())
          field_set.update(set(missing_count.keys()))
          for feature_name in field_set:
              if feature_name not in total_count:
                  data_dict[feature_name]["total_count"] = "-"
              else:
                  data_dict[feature_name]["total_count"] = total_count[
                      feature_name
                  ]
  
              if feature_name not in missing_count:
                  data_dict[feature_name]["missing_value_count"] = 0
                  data_dict[feature_name]["percentage"] = 0
              else:
                  if ratio:
                      data_dict[feature_name][
                          "percentage"
                      ] = missing_count[feature_name]
                      data_dict[feature_name][
                          "missing_value_count"
                      ] = "-"
                  else:
                      data_dict[feature_name][
                          "missing_value_count"
                      ] = missing_count[feature_name]
                      if data_dict[feature_name]["total_count"] != "-":
                          data_dict[feature_name]["percentage"] = (
                              data_dict[feature_name][
                                  "missing_value_count"
                              ]
                              / data_dict[feature_name]["total_count"]
                          )
          if len(total_count) > 0:
              table_header = [
                  "Feature",
                  "Missing Value Count",
                  "Percentage(%)",
              ]
              table_data = []
              for field_name, field_data in data_dict.items():
                  table_data.append(
                      [
                          field_name,
                          "%s / %s"
                          % (
                              field_data["missing_value_count"],
                              field_data["total_count"],
                          ),
                          "%.2f%%" % field_data["percentage"],
                      ]
                  )
          else:
              if ratio:
                  table_header = ["Feature", "Missing Value Percentage"]
                  table_data = []
                  for field_name, field_data in data_dict.items():
                      table_data.append(
                          [field_name, field_data["percentage"]]
                      )
              else:
                  table_header = ["Feature", "Missing Value Count"]
                  table_data = []
                  for field_name, field_data in data_dict.items():
                      table_data.append(
                          [
                              field_name,
                              field_data["missing_value_count"],
                          ]
                      )
  
          return table_header, table_data
  
      # -- Draw Content --
      self.html.article[-1].items.append(
          self.html.add_paragraph(text=notes)
      )
      header, data = get_missing_data_info()
      if len(data) > 0:
          self.html.article[-1].items.append(
              self.html.add_table(header=header, data=data)
          )
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import copy
  import os
  import tempfile
  import warnings
  import shutil
  from typing import Tuple, Dict, List
  import numpy
  from xai import MODE
  from xai.data.explorer import CategoricalStats, NumericalStats, TextStats, DatetimeStats
  from xai.formatter.contents import Header, Title, SectionTitle
  from xai.formatter.hypertext_markup.publisher import CustomHtml, Div
  from xai.formatter.report.section import OverviewSection, DetailSection
  from xai.formatter.writer import Writer
label_desc: Use image node_id 18 for calling the HtmlWriter obj's underlying member method code with example usage: obj.draw_data_missing_value(notes) and returns: table_header,  table_data