series_fit_line()

对序列应用线性回归,返回多个列。

采用包含动态数值数组作为输入的表达式,并执行线性回归以查找拟合度最好的那条线。 应对时间序列数组使用此函数,拟合 make-series 运算符的输出。 此函数生成以下列:

  • rsquarer 平方是对拟合质量的标准度量。 此值是 [0-1] 范围内的数字,其中 1 表示拟合度最好,0 表示数据无序,与任何直线均不拟合。
  • slope:近似直线的斜率(即 y=ax+b 中的“a”)。
  • variance:输入数据的方差。
  • rvariance:剩余方差,即输入数据值和近似数据值之间的方差。
  • interception:近似直线的截距(即 y=ax+b 中的“b”)。
  • line_fit:数值数组,其中包含拟合度最好的直线的一系列值。 序列长度等于输入数组的长度。 该值用于绘制图表。

语法

series_fit_line(series)

详细了解语法约定

参数

客户 类型​​ 必需 说明
series dynamic 数值的数组。

提示

使用此函数最便捷的方法是将其应用于 make-series 运算符的结果。

示例

print
    id=' ',
    x=range(bin(now(), 1h) - 11h, bin(now(), 1h), 1h),
    y=dynamic([2, 5, 6, 8, 11, 15, 17, 18, 25, 26, 30, 30])
| extend (RSquare, Slope, Variance, RVariance, Interception, LineFit)=series_fit_line(y)
| render timechart

Series fit line.

RSquare 斜率 Variance RVariance Interception LineFit
0.982 2.730 98.628 1.686 -1.666 1.064、3.7945、6.526、9.256、11.987、14.718、17.449、20.180、22.910、25.641、28.371、31.102