728x90

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;
위 쿼리는 sales와 ad_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. 참고 자료
- Oracle 공식 문서: https://docs.oracle.com/en/database/
- Oracle SQL Reference - REGR_COUNT: Oracle 19c SQL Reference
- W3Schools SQL Tutorial: https://www.w3schools.com/sql/
728x90
'Database > Oracle' 카테고리의 다른 글
| [ORACLE] REGR_R2() 함수로 회귀 분석의 신뢰도 측정하는 법 (0) | 2025.06.02 |
|---|---|
| [ORACLE] REGR_AVGX() 함수로 데이터 회귀 분석 시작하기 (0) | 2025.06.02 |
| [ORACLE] REGR_INTERCEPT() 실전 예제로 회귀 분석 절편 구하기 (0) | 2025.06.02 |
| [ORACLE] REGR_SLOPE() 함수로 선형 회귀 기울기 계산하는 방법 (0) | 2025.06.02 |
| [ORACLE] STDDEV_SAMP() 함수로 표본 표준편차 쉽게 이해하기 (0) | 2025.06.02 |