1. 캠페인 정보
| CAMP_ID | 캠페인명 | 시작일 | 종료일 |
| 5221 | - | 2025-05-28 | 2025-07-01 |
2. 확인 데이터
| 테이블 명 | 시작일 | 종료일 |
| cvr_adpk_5221_sample | 2025-06-26 | 2025-07-01 |
3. 퀄리티 체크용 SQL 코드
- 연속형
SELECT ROUND(MIN(컬럼), 2) AS MIN, ROUND(MAX(컬럼), 2) AS MAX, ROUND(AVG(컬럼), 2) AS AVG, ROUND(STDDEV(컬럼), 2) AS STD, ROUND(APPROX_PERCENTILE(컬럼, 0.5), 2) AS MID
FROM 스키마. 테이블
WHERE (BASE_YM >= '202503' AND BASE_YM <= '202505')
- 범주 갯수
SELECT COUNT(DITINCT )
FROM 스키마. 테이블
WHERE (BASE_YM >= '202503' AND BASE_YM <= '202505'
- 범주 종류
SELECT DISTINCT 컬럼
FROM 스케마. 테이블
WHERE BASE_YM >= '202503' AND BASE_YM <= '202505'
ORDER BY 컬럼
- 최빈값
SELECT camp_id
FROM NAS_IF.DMP_SUM_ADID_MART
WHERE BASE_YM BETWEEN '202503' AND '202505'
GROUP BY camp_id
ORDER BY COUNT(*) DESC
LIMIT 1;
- 적재건수 및 널 값
SELECT
COUNT(*) - COUNT(index_score) AS NULL_NUM, -- NULL 값 개수
ROUND(100.0 * (COUNT(*) - COUNT(index_score)) / COUNT(*), 2) AS PERCENT_NULL, -- NULL 비율 %
COUNT(index_score) AS DATA_NUM, -- 값이 있는 데이터 개수
ROUND(100.0 * COUNT(index_score) / COUNT(*), 2) AS PERCENT_DATA -- 적재 비율 %
FROM 스키마.테이블
WHERE BASE_YM BETWEEN '202503' AND '202505';
- BOOLEAN 범주 비율
SELECT
ROUND(100.0 * COUNT(*) FILTER (WHERE 컬럼 = 'TRUE') / COUNT(*), 2) AS true_pct,
ROUND(100.0 * COUNT(*) FILTER (WHERE 컬럼 = 'FALSE') / COUNT(*), 2) AS false_pct,
ROUND(100.0 * COUNT(*) FILTER (WHERE 컬럼 IS NULL) / COUNT(*), 2) AS null_pct
FROM 스키마. 테이블
WHERE BASE_YM >= '202503' AND BASE_YM <= '202505'
- VARCHAR 타입 범주 비율
SELECT 컬럼, ROUND(100.0 * COUNT(*) / total. total_count, 2) as percentage
FROM 스키마. 컬럼,
(SELECT COUNT(*) AS total_count
FROM 스키마. 컬럼
WHERE BASE_YM >= '202503' AND BASE_YM <= '202505'
) AS total
WHERE BASE_YM >= '202503' AND BASE_YM <= '202505'
GROUP BY 컬럼, total_count
ORDER BY 컬럼;
4. 퀄리티 체크
5. 결론
대부분의 컬럼은 NULL 0건, 적재율 100% 로 정상
- camp_id: 5221 단일값 → 해당 캠페인 데이터만 정상 적재
- bm_type: 1(NORMAL) 단일값 → 정상
- dev_ip_country: KOR 단일값 → 정상
- log_type: 입찰(55.8%) > 낙찰(42.78%) > 클릭(1.19%) > 전환(0.09%) 순으로 정상 분포
- base_hh: 20~23시 트래픽이 높게 분포 (각 9~12%) → 저녁 피크 시간대 정상 반영
- 확인 필요 : bid_price QC 통계 누락
- 개선 권고 : dev_model NULL 15% 허용 기준 검토, ads_type 값 0 의미 확인, app_inv_type 미분류 비율 과다)
- kakao_imp_tagid 99.3% NULL은 설계상 자연스러운 결과
데이터 전반의 적재율 및 분포를 고려할 때, 모델 학습을 위한 기본적인 완전성 및 무결성 요건은 충족된 것으로 판단
'프로젝트 > kt나스미디어 현장실습 인턴' 카테고리의 다른 글
| 광고 데이터 CVR 예측 모델링_5221 - (EDA) (0) | 2026.04.06 |
|---|---|
| 광고 데이터 CVR 예측 모델링_5221 - (1차 가설 설정) (0) | 2026.04.06 |
| 쿠팡플레이 주간 리포트 자동화 (0) | 2026.02.04 |
| DMP 직업 세그먼트 개발 (0) | 2026.02.01 |
| 광고 데이터 CVR 예측 모델링 - (보완 및 2차 가설 설정) (0) | 2025.12.30 |