Update 02-forecast.md
This commit is contained in:
parent
0b2705d680
commit
5ff10141f5
|
@ -36,6 +36,7 @@ return {
|
||||||
import numpy as np
|
import numpy as np
|
||||||
from taosanalytics.service import AbstractForecastService
|
from taosanalytics.service import AbstractForecastService
|
||||||
|
|
||||||
|
|
||||||
# 算法实现类名称 需要以下划线 "_" 开始,并以 Service 结束
|
# 算法实现类名称 需要以下划线 "_" 开始,并以 Service 结束
|
||||||
class _MyForecastService(AbstractForecastService):
|
class _MyForecastService(AbstractForecastService):
|
||||||
""" 定义类,从 AbstractForecastService 继承并实现其定义的抽象方法 execute """
|
""" 定义类,从 AbstractForecastService 继承并实现其定义的抽象方法 execute """
|
||||||
|
@ -51,12 +52,12 @@ class _MyForecastService(AbstractForecastService):
|
||||||
super().__init__()
|
super().__init__()
|
||||||
|
|
||||||
def execute(self):
|
def execute(self):
|
||||||
""" 算法逻辑的核心实现"""
|
""" 算法逻辑的核心实现"""
|
||||||
res = []
|
res = []
|
||||||
|
|
||||||
"""这个预测算法固定返回 1 作为预测值,预测值的数量是用户通过 self.fc_rows 指定"""
|
"""这个预测算法固定返回 1 作为预测值,预测值的数量是用户通过 self.fc_rows 指定"""
|
||||||
ts_list = [self.start_ts + i * self.time_step for i in range(self.fc_rows)]
|
ts_list = [self.start_ts + i * self.time_step for i in range(self.fc_rows)]
|
||||||
res.app(ts_list) # 设置预测结果时间戳列
|
res.append(ts_list) # 设置预测结果时间戳列
|
||||||
|
|
||||||
"""生成全部为 1 的预测结果 """
|
"""生成全部为 1 的预测结果 """
|
||||||
res_list = [1] * self.fc_rows
|
res_list = [1] * self.fc_rows
|
||||||
|
@ -64,18 +65,18 @@ class _MyForecastService(AbstractForecastService):
|
||||||
|
|
||||||
"""检查用户输入,是否要求返回预测置信区间上下界"""
|
"""检查用户输入,是否要求返回预测置信区间上下界"""
|
||||||
if self.return_conf:
|
if self.return_conf:
|
||||||
"""对于没有计算预测置信区间上下界的算法,直接返回预测值作为上下界即可"""
|
"""对于没有计算预测置信区间上下界的算法,直接返回预测值作为上下界即可"""
|
||||||
bound_list = [1] * self.fc_rows
|
bound_list = [1] * self.fc_rows
|
||||||
res.append(bound_list) # 预测结果置信区间下界
|
res.append(bound_list) # 预测结果置信区间下界
|
||||||
res.append(bound_list) # 预测结果执行区间上界
|
res.append(bound_list) # 预测结果执行区间上界
|
||||||
|
|
||||||
"""返回结果"""
|
"""返回结果"""
|
||||||
return { "res": res, "mse": 0}
|
return {"res": res, "mse": 0}
|
||||||
|
|
||||||
|
|
||||||
def set_params(self, params):
|
def set_params(self, params):
|
||||||
"""该算法无需任何输入参数,直接重载父类该函数,不处理算法参数设置逻辑"""
|
"""该算法无需任何输入参数,直接调用父类函数,不处理算法参数设置逻辑"""
|
||||||
pass
|
return super().set_params(params)
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
将该文件保存在 `./taosanalytics/algo/fc/` 目录下,然后重启 taosanode 服务。在 TDengine 命令行接口中执行 `SHOW ANODES FULL` 能够看到新加入的算法。应用就可以通过 SQL 语句调用该预测算法。
|
将该文件保存在 `./taosanalytics/algo/fc/` 目录下,然后重启 taosanode 服务。在 TDengine 命令行接口中执行 `SHOW ANODES FULL` 能够看到新加入的算法。应用就可以通过 SQL 语句调用该预测算法。
|
||||||
|
|
Loading…
Reference in New Issue