From 48334d9381bc5a87ba0ca95a05d9b6290ee151a9 Mon Sep 17 00:00:00 2001 From: Rance4396 <2437708352@qq.com> Date: Tue, 24 May 2022 16:58:52 +0800 Subject: [PATCH] =?UTF-8?q?Changes:=E6=96=B9=E5=B7=AE=E8=AE=A1=E7=AE=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- variance.py | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 variance.py diff --git a/variance.py b/variance.py new file mode 100644 index 0000000..9954066 --- /dev/null +++ b/variance.py @@ -0,0 +1,41 @@ +from algorithm import algorithm +import json +import ray + +@ray.remote +class average(algorithm): + def __init__(self): + self.config_dict_ = None + self.config_ = None + self.average_number_ = 10 + self.present_number_ = 0 + self.window_1_ = [] + self.sum = 0 + self.average = 0 + + + def set_config(self, config): + self.config_ = config + self.config_dict_ = json.loads(self.config_) + self.average_number_ = self.config_dict_["AVERAGE_NUMBER"] + + def config(self): + return self.config_ + + def eval(self, value): + self.present_number_ = len(self.window_1_) + if self.present_number_ < self.average_number_: + self.window_1_.append(value) + self.sum = 0 + for i in self.window_1_: + self.sum = self.sum + i + self.average = self.sum / len(self.window_1_) + return self.average + else: + self.sum = 0 + del self.window_1_[0] + self.window_1_.append(value) + for i in self.window_1_: + self.sum = self.sum + i + self.average = self.sum / len(self.window_1_) + return self.average