Beispiel #1
0
    def setAggregator(self, name):
        self._aggregatorName = name
        if (name == "mean"):
            self._aggregator = np.mean
        elif (name == "median"):
            self._aggregator = np.median
        elif (name == "min"):
            self._aggregator = np.min
        elif (name == "max"):
            self._aggregator = np.max
        elif (name == "std"):
            self._aggregator = np.std
        elif (name == "range"):
            self._aggregator = Util.nprange
        elif (name == "count"):
            self._aggregator = Util.numvalid
        elif (name == "meanabs"):
            self._aggregator = Util.meanabs
        elif (Util.isnumeric(name)):
            quantile = float(name)
            if quantile < 0 or quantile > 1:
                Util.error("Number after -ct must must be between 0 and 1")

            def func(x):
                return np.percentile(x, quantile * 100)

            self._aggregator = func
        else:
            Util.error("Invalid aggregator")
Beispiel #2
0
    def setAggregator(self, name):
        self._aggregatorName = name
        if (name == "mean"):
            self._aggregator = np.mean
        elif (name == "median"):
            self._aggregator = np.median
        elif (name == "min"):
            self._aggregator = np.min
        elif (name == "max"):
            self._aggregator = np.max
        elif (name == "std"):
            self._aggregator = np.std
        elif (name == "range"):
            self._aggregator = Util.nprange
        elif (Util.isnumeric(name)):

            def func(x):
                return np.percentile(x, float(name))

            self._aggregator = func
        else:
            Util.error("Invalid aggregator")