PdmModule.thresholding.thresholding API documentation

# Module `PdmModule.thresholding.thresholding`

Expand source code

    import statistics

    # calculates a threshodl based on scores derived from relative normal samples.
    # The threshold is equal to the mean of such scores plus their standard deviation multiplied by a factor
    def selfTuning(factor,anomalyscoresInNormal=[],anomalyscores=[],sizeOfReference=None,returnmean=False):
        if len(anomalyscoresInNormal)==0:
            if len(anomalyscores)<sizeOfReference:
                return False,max(anomalyscores) # not enough data to calculate threshold using the parameters.
            anomalyscoresInNormal=anomalyscores[:sizeOfReference]
        thmean=statistics.mean(anomalyscoresInNormal)
        thstd=statistics.stdev(anomalyscoresInNormal)
        th = thmean + factor * thstd
        if returnmean:
            return th,thmean,thstd
        return th

## Functions

`def selfTuning(factor, anomalyscoresInNormal=[], anomalyscores=[], sizeOfReference=None, returnmean=False)`
  Expand source code

      def selfTuning(factor,anomalyscoresInNormal=[],anomalyscores=[],sizeOfReference=None,returnmean=False):
          if len(anomalyscoresInNormal)==0:
              if len(anomalyscores)<sizeOfReference:
                  return False,max(anomalyscores) # not enough data to calculate threshold using the parameters.
              anomalyscoresInNormal=anomalyscores[:sizeOfReference]
          thmean=statistics.mean(anomalyscoresInNormal)
          thstd=statistics.stdev(anomalyscoresInNormal)
          th = thmean + factor * thstd
          if returnmean:
              return th,thmean,thstd
          return th