curvefit

선형 회귀 분석을 수행하여 입력 데이터에 가장 잘 맞는 다항 곡선을 계산합니다. 최소제곱법을 이용하여 독립변수와 종속변수 간의 다항 함수를 추정합니다.

명령어 속성

항목설명
명령어 유형가공 쿼리
필요 권한없음
라이선스 사용량해당 없음
병렬 실행미지원
분산 실행미지원

문법

curvefit [degree=INT] X_FIELD, Y_FIELD

옵션

degree=INT
입력값을 근사시킬 다항 함수의 차수 (기본값: 3)

대상

X_FIELD
독립변수로 사용할 필드. 값이 숫자형이어야 합니다.
Y_FIELD
종속변수로 사용할 필드. 값이 숫자형이어야 합니다.

출력 필드

필드타입설명
_x실수독립변수 필드 값
_p실수다항 함수로 계산한 추정값 (predicted value)

오류 코드

파싱 오류
오류 코드메시지설명
40804머신러닝 라이선스가 필요합니다.머신러닝 라이선스가 없는 경우
missing-curvefit-fields-독립변수와 종속변수 필드가 모두 지정되지 않은 경우
런타임 오류

해당 사항 없음

설명

curvefit 명령어는 최대 1만 개의 입력 레코드에 대하여 최소제곱법을 이용한 선형 회귀 분석을 수행합니다. 독립변수 필드 값을 _x 필드로, 다항 함수로 계산한 추정값을 _p 필드로 출력합니다. 1만 개를 초과하는 레코드는 무시합니다.

독립변수 또는 종속변수 값이 숫자가 아닌 레코드는 분석에서 제외됩니다. degree 옵션으로 다항 함수의 차수를 지정할 수 있으며, 기본값은 3차 다항식입니다.

이 명령어를 사용하려면 머신러닝 라이선스가 필요합니다.

사용 예

이 사용 예에서 조회하는 WEB_APACHE_SAMPLE 테이블을 준비하려면 쿼리 실습용 데이터를 참고하세요.

  1. 3차 다항 함수로 데이터 근사

    json "[{'x': 1, 'y': 2}, {'x': 2, 'y': 5}, {'x': 3, 'y': 10}, {'x': 4, 'y': 17}, {'x': 5, 'y': 26}]"
    | curvefit x, y
    

    x 필드를 독립변수, y 필드를 종속변수로 하여 기본 3차 다항 함수로 근사합니다.

  2. 시간 경과에 따른 전송 바이트 추이 근사

    table WEB_APACHE_SAMPLE
    | eval x = long(_time)
    | curvefit x, bytes
    

    요청 시각을 독립변수, 전송 바이트를 종속변수로 하여 3차 다항 함수로 근사합니다. _p 필드에 추정값이 출력됩니다.

  3. 차수를 지정한 회귀 분석

    table WEB_APACHE_SAMPLE
    | eval x = long(_time)
    | curvefit degree=5 x, bytes
    

    시간 순서를 독립변수, 전송 바이트를 종속변수로 하여 5차 다항 함수로 근사합니다.

호환성

curvefit 명령어는 소나 4.0 이전 버전부터 제공되었습니다.