class_docstr: Compiler for Complete Match Check
  
  Param:
      package (str, Optional): component package name
      module (str, Optional): component module name
      class (str): component class name
  
  Attr:
      data (str): path to dataframe file
      entity_a_column(str): the index column in entity A
      entity_b_column(str): the index column in entity B
      relational_a_columns(dict): a config dict represents the distributions to be shown in the entity A,
                                  it has the following keys:
                                  - columns(list of str): a list of columns that require visualization for columns
                                  - foreign_file(str): file path to data file for entity.
                                                       Default is None if the columns are in the same data frame.
                                  - foreign_index(str): the index column in foreign data mapped to `entity_a_column`.
                                           Default is `entity_a_column` and will be ignored if foreign_file is None.
      relational_b_columns(dict): a config dict represents the distributions to be shown in the entity B.
                                  Details see above for `relational_a_columns`.
  
  Example:
      "component": {
          "package": "xai",
          "module": "compiler",
          "class": "CompleteMatchCheck",
          "attr": {
            "data": "matching.csv",
            "entity_a_column": "STUDENT_ID",
            "entity_b_column": "COURSE_ID",
            "relational_a_columns": {
                  "foreign_file": "student.csv",
                  "foreign_index": "STUDENT_ID",
                  "columns": [
                      {"name": "GENDER", "type": "categorical},
                      {"name": "AGE", "type": "numerical}
                  ]
            },
            "relational_b_columns": {
                  "foreign_file": "course.csv",
                  "foreign_index": "COURSE_ID",
                  "columns": [
                      {"name": "DEPARTMENT", "type": "categorical"},
                      {"name": "DURATION", "type": "numerical"}
                  ]
            }
          }
        }
class_docstr_tok: ["Compiler","for","Complete","Match","Check","Param",":","package","(","str",",","Optional",")",":","component","package","name","module","(","str",",","Optional",")",":","component","module","name","class","(","str",")",":","component","class","name","Attr",":","data","(","str",")",":","path","to","dataframe","file","entity_a_column","(","str",")",":","the","index","column","in","entity","A","entity_b_column","(","str",")",":","the","index","column","in","entity","B","relational_a_columns","(","dict",")",":","a","config","dict","represents","the","distributions","to","be","shown","in","the","entity","A",",","it","has","the","following","keys",":","-","columns","(","list","of","str",")",":","a","list","of","columns","that","require","visualization","for","columns","-","foreign_file","(","str",")",":","file","path","to","data","file","for","entity",".","Default","is","None","if","the","columns","are","in","the","same","data","frame",".","-","foreign_index","(","str",")",":","the","index","column","in","foreign","data","mapped","to","`","entity_a_column","`",".","Default","is","`","entity_a_column","`","and","will","be","ignored","if","foreign_file","is","None",".","relational_b_columns","(","dict",")",":","a","config","dict","represents","the","distributions","to","be","shown","in","the","entity","B",".","Details","see","above","for","`","relational_a_columns","`",".","Example",":","``","component","''",":","{","``","package","''",":","``","xai","''",",","``","module","''",":","``","compiler","''",",","``","class","''",":","``","CompleteMatchCheck","''",",","``","attr","''",":","{","``","data","''",":","``","matching.csv","''",",","``","entity_a_column","''",":","``","STUDENT_ID","''",",","``","entity_b_column","''",":","``","COURSE_ID","''",",","``","relational_a_columns","''",":","{","``","foreign_file","''",":","``","student.csv","''",",","``","foreign_index","''",":","``","STUDENT_ID","''",",","``","columns","''",":","[","{","``","name","''",":","``","GENDER","''",",","``","type","''",":","``","categorical","}",",","{","``","name","''",":","``","AGE","''",",","``","type","''",":","``","numerical","}","]","}",",","``","relational_b_columns","''",":","{","``","foreign_file","''",":","``","course.csv","''",",","``","foreign_index","''",":","``","COURSE_ID","''",",","``","columns","''",":","[","{","``","name","''",":","``","DEPARTMENT","''",",","``","type","''",":","``","categorical","''","}",",","{","``","name","''",":","``","DURATION","''",",","``","type","''",":","``","numerical","''","}","]","}","}","}"]
docstr: Init
  
  Args:
      dictionary (dict): attribute to set
docstr_tok: ["Init","Args",":","dictionary","(","dict",")",":","attribute","to","set"]
code: def __init__(self, dictionary):
      """
      Init
  
      Args:
          dictionary (dict): attribute to set
      """
      super(CompleteMatchCheck, self).__init__(
          dictionary, schema=self.schema
      )
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import itertools
  from collections import defaultdict
  from copy import deepcopy
  from xai.compiler.base import Dict2Obj
  from xai.data.constants import DATATYPE
  from xai.data.exceptions import AnalyzerDataTypeNotSupported
  from xai.data.explorer import CategoricalDataAnalyzer, NumericDataAnalyzer, TextDataAnalyzer, DatetimeDataAnalyzer
  from xai.data.explorer import CategoricalStats, NumericalStats, TextStats, DatetimeStats
  from xai.data.validator.dataframe_validator import DataframeValidator
  from xai.formatter import Report
label_desc: Use image node_id 1 to create a new CompleteMatchCheck object from inherited base classes: Dict2Obj with example: obj = CompleteMatchCheck(dictionary)