# AttributeType.MicroAggregationFunction (ARX GUI Documentation)

org.deidentifier.arx

## Class AttributeType.MicroAggregationFunction

- java.lang.Object
- - org.deidentifier.arx.AttributeType
  - - org.deidentifier.arx.AttributeType.MicroAggregationFunction

- Type Parameters:
    `T` -
  All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable
  Enclosing class:
    AttributeType

      public static class AttributeType.MicroAggregationFunction
      extends AttributeType
      implements java.io.Serializable

  This class is used to define aggregate functions for microaggregation.
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.deidentifier.arx.AttributeType

      `AttributeType.Hierarchy, AttributeType.MicroAggregationFunction, AttributeType.MicroAggregationFunctionDescription`

  - ### Field Summary

    - ### Fields inherited from class org.deidentifier.arx.AttributeType

      `ATTR_TYPE_ID, ATTR_TYPE_IS, ATTR_TYPE_QI, ATTR_TYPE_SE, IDENTIFYING_ATTRIBUTE, INSENSITIVE_ATTRIBUTE, MASK, QUASI_IDENTIFYING_ATTRIBUTE, SENSITIVE_ATTRIBUTE, SHIFT`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `AttributeType.MicroAggregationFunction` | `clone()` Clones this function
    `static AttributeType.MicroAggregationFunction` | `createArithmeticMean()` Creates a microaggregation function returning the arithmetic mean.
    `static AttributeType.MicroAggregationFunction` | `createArithmeticMean(boolean ignoreMissingData)` Creates a microaggregation function returning the arithmetic mean.
    `static AttributeType.MicroAggregationFunction` | `createGeneralization()` Creates a microaggregation function using generalization.
    `static AttributeType.MicroAggregationFunction` | `createGeneralization(boolean ignoreMissingData)` Creates a microaggregation function using generalization.
    `static AttributeType.MicroAggregationFunction` | `createGeometricMean()` Creates a microaggregation function returning the geometric mean.
    `static AttributeType.MicroAggregationFunction` | `createGeometricMean(boolean ignoreMissingData)` Creates a microaggregation function returning the geometric mean.
    `static AttributeType.MicroAggregationFunction` | `createInterval()` Creates a microaggregation function returning intervals.
    `static AttributeType.MicroAggregationFunction` | `createInterval(boolean ignoreMissingData)` Creates a microaggregation function returning intervals.
    `static AttributeType.MicroAggregationFunction` | `createMedian()` Creates a microaggregation function returning the median.
    `static AttributeType.MicroAggregationFunction` | `createMedian(boolean ignoreMissingData)` Creates a microaggregation function returning the median.
    `static AttributeType.MicroAggregationFunction` | `createMode()` Creates a microaggregation function returning the mode.
    `static AttributeType.MicroAggregationFunction` | `createMode(boolean ignoreMissingData)` Creates a microaggregation function returning the mode.
    `protected org.deidentifier.arx.framework.check.distribution.DistributionAggregateFunction` | `getFunction()` Returns the aggregate function.
    `java.lang.String` | `getLabel()` Returns a label for this function
    `DataScale` | `getRequiredScale()` Returns the required scale of measure
    `boolean` | `isTypePreserving()` Returns whether this is a type-preserving function

    - ### Methods inherited from class org.deidentifier.arx.AttributeType

      `getType, listMicroAggregationFunctions, toString`

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Method Detail

    - #### createArithmeticMean

          public static AttributeType.MicroAggregationFunction createArithmeticMean()

      Creates a microaggregation function returning the arithmetic mean. Ignores missing data.
      Returns:

    - #### createArithmeticMean

          public static AttributeType.MicroAggregationFunction createArithmeticMean(boolean ignoreMissingData)

      Creates a microaggregation function returning the arithmetic mean.
      Parameters:
        `ignoreMissingData` - Should the function ignore missing data. Default is true.
      Returns:

    - #### createGeneralization

          public static AttributeType.MicroAggregationFunction createGeneralization()

      Creates a microaggregation function using generalization. Ignores missing data.
      Returns:

    - #### createGeneralization

          public static AttributeType.MicroAggregationFunction createGeneralization(boolean ignoreMissingData)

      Creates a microaggregation function using generalization.
      Parameters:
        `ignoreMissingData` - Should the function ignore missing data. Default is true.
      Returns:

    - #### createGeometricMean

          public static AttributeType.MicroAggregationFunction createGeometricMean()

      Creates a microaggregation function returning the geometric mean. Ignores missing data.
      Returns:

    - #### createGeometricMean

          public static AttributeType.MicroAggregationFunction createGeometricMean(boolean ignoreMissingData)

      Creates a microaggregation function returning the geometric mean.
      Parameters:
        `ignoreMissingData` - Should the function ignore missing data. Default is true.
      Returns:

    - #### createInterval

          public static AttributeType.MicroAggregationFunction createInterval()

      Creates a microaggregation function returning intervals. Ignores missing data.
      Returns:

    - #### createInterval

          public static AttributeType.MicroAggregationFunction createInterval(boolean ignoreMissingData)

      Creates a microaggregation function returning intervals.
      Parameters:
        `ignoreMissingData` - Should the function ignore missing data. Default is true.
      Returns:

    - #### createMedian

          public static AttributeType.MicroAggregationFunction createMedian()

      Creates a microaggregation function returning the median. Ignores missing data.
      Returns:

    - #### createMedian

          public static AttributeType.MicroAggregationFunction createMedian(boolean ignoreMissingData)

      Creates a microaggregation function returning the median.
      Parameters:
        `ignoreMissingData` - Should the function ignore missing data. Default is true.
      Returns:

    - #### createMode

          public static AttributeType.MicroAggregationFunction createMode()

      Creates a microaggregation function returning the mode. Ignores missing data.
      Returns:

    - #### createMode

          public static AttributeType.MicroAggregationFunction createMode(boolean ignoreMissingData)

      Creates a microaggregation function returning the mode.
      Parameters:
        `ignoreMissingData` - Should the function ignore missing data. Default is true.
      Returns:

    - #### clone

          public AttributeType.MicroAggregationFunction clone()

      Clones this function
      Overrides:
        `clone` in class `AttributeType`

    - #### getLabel

          public java.lang.String getLabel()

      Returns a label for this function
      Returns:
        the label

    - #### getRequiredScale

          public DataScale getRequiredScale()

      Returns the required scale of measure
      Returns:

    - #### isTypePreserving

          public boolean isTypePreserving()

      Returns whether this is a type-preserving function
      Returns:

    - #### getFunction

          protected org.deidentifier.arx.framework.check.distribution.DistributionAggregateFunction getFunction()

      Returns the aggregate function.
      Returns: