Поделиться через


series_fit_2lines()

Область применения: ✅Microsoft Fabric✅Azure Data ExplorerAzure MonitorMicrosoft Sentinel

Применяет две сегментированные линейные регрессии к рядам, возвращая несколько столбцов.

Принимает выражение, содержащее динамический числовый массив в качестве входных данных, и применяет две сегментированные линейные регрессии , чтобы определить и квалифицировать изменение тренда в ряде. Функция выполняет итерацию по индексам ряда. В каждой итерации функция разбивает ряд на две части, помещает отдельную строку (с помощью series_fit_line()) к каждой части и вычисляет общую площадь r-квадрат. Наилучшее разделение характеризуется максимальным значением R-квадрата. Функция возвращает следующие параметры.

Параметр Описание
rsquare R-квадрат является стандартной мерой качества соответствия. Это число в диапазоне [0-1], где 1 - является лучшим подходящим, и 0 означает, что данные не упорядочены и не соответствуют какой-либо строке.
split_idx Индекс критической точки на два сегмента (от нуля).
variance Дисперсию входных данных.
rvariance Остаточное отклонение, которое является дисперсией между входными значениями данных, приблизительными (двумя сегментами строк).
line_fit Числовый массив, содержащий ряд значений лучшей линии. Длина ряда равна длине входного массива. Он в основном используется для диаграммы.
right_rsquare R-квадрат линии справа от раскола, см . series_fit_line().
right_slope Наклон правой приблизительной линии (формы y=ax+b).
right_interception Перехват приблизительной левой линии (b от y=ax+b).
right_variance Вариативность входных данных в правой части разделения.
right_rvariance Остаточное отклонение входных данных справа от разделения.
left_rsquare R-квадрат линии слева от раскола, см . series_fit_line().
left_slope Наклон левой приблизительной линии (формы y=ax+b).
left_interception Перехват приблизительной левой линии (формы y=ax+b).
left_variance Вариативность входных данных в левой части разделения.
left_rvariance Остаточное отклонение входных данных в левой части разделения.

Примечание.

Эта функция возвращает несколько столбцов, поэтому нельзя использовать в качестве аргумента для другой функции.

Синтаксис

Серия проектов series_fit_2lines()

Дополнительные сведения о соглашениях синтаксиса.

  • Возвращает все упомянутые выше столбцы со следующими именами: series_fit_2lines_x_rsquare, series_fit_2lines_x_split_idx и т. д.

project (rs, si, v)=series_fit_2lines(series)

  • Возвращает следующие столбцы: rs (r-square), si (разделенный индекс), v (дисперсия) и остальные будут выглядеть как series_fit_2lines_x_rvariance, series_fit_2lines_x_line_fit и т. д.

extend (rs, si, v)=series_fit_2lines(series)

  • Возвращает только: rs (R-квадрат), si (индекс разбиения) и v (дисперсия).

Параметры

Имя (название) Type Обязательно Описание
серия dynamic ✔️ Массив числовых значений.

Совет

Наиболее удобным способом использования этой функции является применение его к результатам оператора make-series .

Примеры

print
    id=' ',
    x=range(bin(now(), 1h) - 11h, bin(now(), 1h), 1h),
    y=dynamic([1, 2.2, 2.5, 4.7, 5.0, 12, 10.3, 10.3, 9, 8.3, 6.2])
| extend
    (Slope, Interception, RSquare, Variance, RVariance, LineFit)=series_fit_line(y),
    (RSquare2, SplitIdx, Variance2, RVariance2, LineFit2)=series_fit_2lines(y)
| project id, x, y, LineFit, LineFit2
| render timechart

Ряд подходит 2 линии.