diff options
author | Tibor Frank <tifrank@cisco.com> | 2018-03-26 16:34:51 +0200 |
---|---|---|
committer | Tibor Frank <tifrank@cisco.com> | 2018-03-26 16:34:51 +0200 |
commit | 3bc59881071b80acf5127ba0d4c38344feaf5d95 (patch) | |
tree | a314174e1b36fc6ef6bd3b08558b260f3e10ddd9 /resources/tools/presentation/utils.py | |
parent | eb9c66ae07b3b3cf2146ac6b4a52e5ddd4424f44 (diff) |
Report: Fix packet_throughput_graphs/ip4
Change-Id: I3943d02dcca95ed31baaa104648589c42ef479a7
Signed-off-by: Tibor Frank <tifrank@cisco.com>
Diffstat (limited to 'resources/tools/presentation/utils.py')
-rw-r--r-- | resources/tools/presentation/utils.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/resources/tools/presentation/utils.py b/resources/tools/presentation/utils.py index 154b6e9b23..8365bfad5c 100644 --- a/resources/tools/presentation/utils.py +++ b/resources/tools/presentation/utils.py @@ -68,6 +68,29 @@ def relative_change(nr1, nr2): return float(((nr2 - nr1) / nr1) * 100) +def remove_outliers(input_data, outlier_const): + """ + + :param input_data: Data from which the outliers will be removed. + :param outlier_const: Outlier constant. + :type input_data: list + :type outlier_const: float + :returns: The input list without outliers. + :rtype: list + """ + + data = np.array(input_data) + upper_quartile = np.percentile(data, 75) + lower_quartile = np.percentile(data, 25) + iqr = (upper_quartile - lower_quartile) * outlier_const + quartile_set = (lower_quartile - iqr, upper_quartile + iqr) + result_lst = list() + for y in data.tolist(): + if quartile_set[0] <= y <= quartile_set[1]: + result_lst.append(y) + return result_lst + + def find_outliers(input_data, outlier_const=1.5): """Go through the input data and generate two pandas series: - input data without outliers |