다음을 통해 공유


series_dbl_exp_smoothing_fl()

이중 지수 평활화 필터를 계열에 적용합니다.

함수 series_dbl_exp_smoothing_fl() 는 동적 숫자 배열을 포함하는 식을 입력으로 사용하고 이중 지수 평활 필터를 적용하는UDF(사용자 정의 함수)입니다. 계열에 추세가 있는 경우 이 함수는 기본 지수 평활 필터를 구현하는 series_exp_smoothing_fl() 함수보다 우수합니다.

Syntax

series_dbl_exp_smoothing_fl(y_series [,알파 [,베타 ]])

구문 규칙에 대해 자세히 알아봅니다.

매개 변수

이름 형식 필수 Description
y_series dynamic ✔️ 숫자 값의 배열입니다.
알파 real 마지막 점의 가중치와 이전 점의 가중치()를 지정하는 [0-1] 범위의 값입니다 1 - alpha. 기본값은 0.5입니다.
베타 real 마지막 기울기의 가중치와 이전 기울기의 가중치()를 지정하는 [0-1] 범위의 값입니다 1 - beta. 기본값은 0.5입니다.

함수 정의

코드를 쿼리 정의 함수로 포함하거나 다음과 같이 데이터베이스에 저장된 함수로 만들어 함수를 정의할 수 있습니다.

다음 let 문을 사용하여 함수를 정의합니다. 사용 권한이 필요 없습니다.

중요

let 문은 자체적으로 실행할 수 없습니다. 테이블 형식 식 문 뒤에 이어서야 합니다. 의 작업 예제를 실행하려면 예제 series_dbl_exp_smoothing_fl()를 참조 하세요.

let series_dbl_exp_smoothing_fl = (y_series:dynamic, alpha:double=0.5, beta:double=0.5)
{
    series_iir(y_series, pack_array(alpha, alpha*(beta-1)), pack_array(1, alpha*(1+beta)-2, 1-alpha))
};
// Write your query to use the function here.

예제

쿼리 정의 함수를 사용하려면 포함된 함수 정의 다음에 호출합니다.

let series_dbl_exp_smoothing_fl = (y_series:dynamic, alpha:double=0.5, beta:double=0.5)
{
    series_iir(y_series, pack_array(alpha, alpha*(beta-1)), pack_array(1, alpha*(1+beta)-2, 1-alpha))
};
range x from 1 to 50 step 1
| extend y = x + rand()*10
| summarize x = make_list(x), y = make_list(y)
| extend dbl_exp_smooth_y = series_dbl_exp_smoothing_fl(y, 0.2, 0.4) 
| render linechart

출력

인공 계열의 이중 지수 평활을 보여 주는 그래프입니다.