Interface FilteredStatistics

All Known Implementing Classes:
DefaultFilteredStatistics

public interface FilteredStatistics
Various analysis methods for filtered data, eg a data set and a bit vector of the same length with entry i indicating whether the i'th data point should be considered.
  • Method Summary

    Modifier and Type Method Description
    dk.alexandra.fresco.framework.DRes<List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>>> histogram​(List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> buckets, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> data, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> filter)
    Compute a histogram on a filtered data set.
    dk.alexandra.fresco.framework.DRes<MultiDimensionalArray<List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>>>> kAnonymize​(dk.alexandra.fresco.lib.common.collections.Matrix<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> data, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> sensitiveAttributes, List<List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>>> buckets, int k, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> filter)
    Compute a k-anonymized version of the given filtered datset.
    dk.alexandra.fresco.framework.DRes<MultiDimensionalArray<List<BigInteger>>> kAnonymizeAndOpen​(dk.alexandra.fresco.lib.common.collections.Matrix<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> data, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> sensitiveAttributes, List<List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>>> buckets, int k, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> filter)
    Compute a k-anonymized version of the given filtered datset.
    dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed> sampleMean​(List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed>> data, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> filter)
    Compute the sample mean of filtered data set.
    dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed> sampleVariance​(List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed>> data, dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed> mean, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> filter)
    Compute the sample variance of a filtered data set.
    dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed> sampleVariance​(List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed>> data, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> filter)
    Compute the sample variance of a filtered data set.
    dk.alexandra.fresco.framework.DRes<OneSampleTTestFiltered.FilteredTTestResult> ttest​(List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed>> data, dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed> mu, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> filter)
    Compute the test statistics for a student t-test on the filtered data set.
    static FilteredStatistics using​(dk.alexandra.fresco.framework.builder.numeric.ProtocolBuilderNumeric builder)  
  • Method Details

    • using

      static FilteredStatistics using​(dk.alexandra.fresco.framework.builder.numeric.ProtocolBuilderNumeric builder)
    • sampleMean

      dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed> sampleMean​(List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed>> data, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> filter)
      Compute the sample mean of filtered data set.
      Parameters:
      data - A data set
      filter - A filter
      Returns:
      The sample mean of the filtered data set
    • sampleVariance

      dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed> sampleVariance​(List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed>> data, dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed> mean, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> filter)
      Compute the sample variance of a filtered data set.
      Parameters:
      data - A data set
      mean - The precomputed mean of the filtered data ste.
      filter - A filter
      Returns:
      The sample variance of the filtered data set.
    • sampleVariance

      dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed> sampleVariance​(List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed>> data, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> filter)
      Compute the sample variance of a filtered data set.
      Parameters:
      data - A data set
      filter - A filter
      Returns:
      The sample variance of the filtered data set
    • ttest

      dk.alexandra.fresco.framework.DRes<OneSampleTTestFiltered.FilteredTTestResult> ttest​(List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed>> data, dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.lib.fixed.SFixed> mu, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> filter)
      Compute the test statistics for a student t-test on the filtered data set.
      Parameters:
      data - A data set
      mu - The parameter for the t-test, eg. the mean under the null hypothesis
      filter - A filter
      Returns:
      A pair contaning the test statistics for the test and the number of elements in the filtered data set.
    • histogram

      dk.alexandra.fresco.framework.DRes<List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>>> histogram​(List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> buckets, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> data, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> filter)
      Compute a histogram on a filtered data set. Note that upper limits are soft, lower are hard.
      Parameters:
      buckets - The buckets for the histogram
      data - A data set
      filter - A filter
      Returns:
      A list containing the number of elements of the filtered data set in each bucket.
    • kAnonymize

      dk.alexandra.fresco.framework.DRes<MultiDimensionalArray<List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>>>> kAnonymize​(dk.alexandra.fresco.lib.common.collections.Matrix<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> data, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> sensitiveAttributes, List<List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>>> buckets, int k, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> filter)
      Compute a k-anonymized version of the given filtered datset.

      Each row in the data set are the quasi-identifiers of an individual with a corresponding entry in the list of values of the sensitive attribute. The buckets indicates the desired generalization of the quasi-identifiers as in a histogram. K is the smallest allowed number of individuals in each bucket.

      The output is a histogram on the given buckets with the value in the histogram being a list of size data.getHeight() with a non-zero entry x at index i indicating that the data point at row i is in this bucket and that the corresponding sensitive attribute was x.

      Parameters:
      data - The quasi identifiers for each individual.
      sensitiveAttributes - The corresponding sensitive attributes. Must be non-zero.
      buckets - The buckets defining the desired generalization.
      k - The smallest allowed number of individuals in each bucket.
      filter - A filter.
      Returns:
      A k-anonymous data set with all buckets with fewer than k elements suppressed.
    • kAnonymizeAndOpen

      dk.alexandra.fresco.framework.DRes<MultiDimensionalArray<List<BigInteger>>> kAnonymizeAndOpen​(dk.alexandra.fresco.lib.common.collections.Matrix<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> data, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> sensitiveAttributes, List<List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>>> buckets, int k, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> filter)
      Compute a k-anonymized version of the given filtered datset.

      Each row in the data set are the quasi-identifiers of an individual with a corresponding entry in the list of values of the sensitive attribute. The buckets indicates the desired generalization of the quasi-identifiers as in a histogram. K is the smallest allowed number of individuals in each bucket.

      The output is a histogram on the given buckets with the value in the histogram being a list of size data.getHeight() with a non-zero entry x at index i indicating that the data point at row i is in this bucket and that the corresponding sensitive attribute was x.

      Parameters:
      data - The quasi identifiers for each individual.
      sensitiveAttributes - The corresponding sensitive attributes. Must be non-zero.
      buckets - The buckets defining the desired generalization.
      k - The smallest allowed number of individuals in each bucket.
      filter - A filter.
      Returns:
      A k-anonymous data set with all buckets with fewer than k elements suppressed.