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