본문 바로가기
Database/Oracle

[ORACLE] REGR_COUNT() 함수 사용법과 실무 예제로 배우는 회귀 분석

by Papa Martino V 2025. 6. 2.
728x90

오라클 REGR_COUNT() 함수 사용법과 실무 예제로 배우는 회귀분석
[Oracle] REGR_COUNT

 

REGR_COUNT() 함수는 Oracle SQL에서 선형 회귀 관련 함수들과 함께 사용되며, 유효한 (x, y) 데이터 쌍의 개수를 반환합니다. 

1. REGR_COUNT 함수란?

REGR_COUNT(y, x)는 선형 회귀 분석 시 사용 가능한 유효한 데이터 쌍 수를 반환합니다. 여기서 유효하다는 의미는 x와 y가 모두 NULL이 아닌 경우를 말합니다.

2. 기본 문법

REGR_COUNT(y_expr, x_expr)

두 인자는 수치형 칼럼이어야 하며, NULL 값은 분석에서 제외됩니다.

3. REGR_COUNT의 사용 목적

  • 회귀 분석 대상이 되는 유효한 데이터 쌍 수 확인
  • REGR_SLOPE, REGR_INTERCEPT, REGR_R2 등의 함수와 결합해 분석 신뢰도 판단
  • NULL 값이 데이터셋에 얼마나 영향을 주는지 점검

4. 실전 예제 1: 판매량과 광고비 데이터 분석

CREATE TABLE sales_data (
  month VARCHAR2(10),
  ad_spend NUMBER,   -- 독립 변수 x
  sales NUMBER       -- 종속 변수 y
);

INSERT INTO sales_data VALUES ('Jan', 100, 800);
INSERT INTO sales_data VALUES ('Feb', 200, NULL);
INSERT INTO sales_data VALUES ('Mar', NULL, 1800);
INSERT INTO sales_data VALUES ('Apr', 400, 3000);
INSERT INTO sales_data VALUES ('May', 500, 3700);
COMMIT;

5. 실전 예제 2: REGR_COUNT 함수 실행

SELECT REGR_COUNT(sales, ad_spend) AS valid_pairs
FROM sales_data;

위 쿼리는 salesad_spend가 모두 NULL이 아닌 레코드의 개수를 반환합니다. 결과: 3 (Jan, Apr, May)

6. 실전 예제 3: 그룹별 유효 데이터 분석

CREATE TABLE dept_performance (
  dept_id NUMBER,
  working_hours NUMBER,
  performance_score NUMBER
);

-- 예시 쿼리
SELECT dept_id,
       REGR_COUNT(performance_score, working_hours) AS valid_data_points
FROM dept_performance
GROUP BY dept_id;

이 쿼리는 부서별로 회귀 분석에 사용 가능한 데이터 수를 제공합니다.

7. 활용 팁 및 해석

  • REGR_COUNT 값이 너무 적으면 회귀 분석의 신뢰도와 일반화 가능성이 낮아질 수 있음
  • 데이터 전처리 과정에서 NULL 값 처리 여부 점검 지표로 활용
  • 다른 회귀 함수들과 함께 사용해 회귀 모델의 품질을 높임

8. 자주 묻는 질문 (FAQ)

Q1. REGR_COUNT는 COUNT 함수와 무엇이 다른가요?

COUNT()는 하나의 칼럼을 기준으로 NULL을 제외한 전체 개수를 반환하지만, REGR_COUNT()x와 y가 모두 NULL이 아닌 경우만 계산합니다.

Q2. 회귀 함수에서 REGR_COUNT를 꼭 사용해야 하나요?

필수는 아니지만, 회귀 분석 결과의 신뢰성 판단데이터 품질 검증에 매우 유용합니다.

9. 참고 자료

728x90