Klasse HashGroupify

java.lang.Object
org.deidentifier.arx.framework.check.groupify.HashGroupify

public class HashGroupify extends Object
A hash groupify operator. It implements a hash table with chaining and keeps track of additional properties per equivalence class
  • Konstruktordetails

    • HashGroupify

      public HashGroupify(int capacity, ARXConfiguration.ARXConfigurationInternal config, int dataAnalyzedNumberOfColumns, DataMatrix input, DataMatrix output, DataMatrix analyzed, int[] suppressedCodes)
      Constructs a new hash groupify operator.
      Parameter:
      capacity - The capacity
      config - The config
      input -
      output -
      analyzed -
      suppressedCodes -
      aggregation - The aggregation information
  • Methodendetails

    • addFromBuffer

      public void addFromBuffer(int generalized, int other, int representative, int count, int pcount)
      Adds a tuple from the buffer
      Parameter:
      generalized -
      other -
      representative -
      count -
      pcount -
    • addFromGroupify

      public void addFromGroupify(int generalized, Distribution[] distributions, int representative, int count, int pcount)
      Adds an entry from another groupify operator
      Parameter:
      generalized -
      distributions -
      representative -
      count -
      pcount -
    • addFromSnapshot

      public void addFromSnapshot(int generalized, int[][] elements, int[][] frequencies, int representative, int count, int pcount)
      Adds a class from a snapshot
      Parameter:
      generalized -
      elements -
      frequencies -
      representative -
      count -
      pcount -
    • getEntry

      public HashGroupifyEntry getEntry(int[] tuple)
      Returns the entry for the given tuple
      Parameter:
      tuple -
      Gibt zurück:
    • getFirstEquivalenceClass

      public HashGroupifyEntry getFirstEquivalenceClass()
      Returns the first entry
      Gibt zurück:
    • getInputData

      public DataMatrix getInputData()
      Returns the input data matrix
      Gibt zurück:
    • getNumberOfEquivalenceClasses

      public int getNumberOfEquivalenceClasses()
      Returns the current size in terms of classes
      Gibt zurück:
    • getOutputData

      public DataMatrix getOutputData()
      Returns the output data
      Gibt zurück:
    • isCompletelyGeneralized

      public boolean isCompletelyGeneralized(HashGroupifyEntry entry)
      Returns whether the given entry is completely generalized
      Parameter:
      entry -
      Gibt zurück:
    • isMinimalClassSizeFulfilled

      public boolean isMinimalClassSizeFulfilled()
      Returns whether the current state of the dataset fulfills the minimal class-size property
      Gibt zurück:
    • isPrivacyModelFulfilled

      public boolean isPrivacyModelFulfilled()
      Returns whether the current state of the dataset fulfills the privacy model
      Gibt zurück:
    • performMicroaggregation

      public Data performMicroaggregation(DataAggregationInformation microaggregationData, Dictionary dictionary)
      Returns a data object with microaggregation performed
      Parameter:
      microaggregationData -
      dictionary -
      Gibt zurück:
    • performSuppression

      public void performSuppression()
      Suppresses all records in the output dataset which
      (a) do not satisfy privacy requirements, or
      (b) are not included in the research subset
      Parameter:
      dictionary -
    • stateAnalyze

      public void stateAnalyze(Transformation<?> transformation, boolean force)
      Analyzes the current state
      Parameter:
      transformation -
      force -
    • stateClear

      public void stateClear()
      Clears all entries
    • stateResetSuppression

      public void stateResetSuppression()
      This method will reset all flags that indicate that equivalence classes are suppressed.