데이터 마트와 요약·파생 변수
쉽게 말하면
가게 계산대에는 '누가 언제 얼마를 샀다'는 기록이 한 줄씩 쌓여요. 분석하려면 이걸 고객 한 명당 한 줄로 정리해야 해요. 고객별 총 구매액처럼 모아서 계산한 값이 요약변수, '총 구매액 50 이상이면 VIP'처럼 기준을 정해 새로 만든 값이 파생변수예요. 이렇게 분석용으로 다듬어 둔 데이터가 데이터 마트예요.
시험용 정의
데이터 마트(DM)는 전사 데이터 웨어하우스(DW)에서 특정 부서나 분석 목적에 맞게 데이터를 골라 정리한 작은 저장소다. 분석용 데이터 마트를 만들 때 두 종류의 변수를 만든다. 요약변수는 수집된 기록을 분석 단위(고객·상품·기간)로 종합한 변수로, 총 구매 금액, 구매 횟수, 기간별 구매 금액 같은 것이며 여러 분석에 재활용하기 좋다. 파생변수는 사용자가 특정 조건이나 함수로 값을 만들어 의미를 부여한 변수로, 주 구매 매장, 선호 시간대, VIP 여부 같은 것이며 주관적일 수 있어 논리적 타당성을 갖춰야 한다. 데이터를 본격적으로 모델링하기 전에 요약 통계와 그래프로 특징을 살피는 단계를 탐색적 자료분석(EDA)이라 한다.
비유로 이해하기
학교 생활기록부 정리다. 날마다 쌓인 출결 기록을 학생별로 모아 '결석 일수'를 세면 요약변수, 담임이 '결석 3일 이하면 개근상 후보'라고 기준을 정해 표시하면 파생변수다. 이렇게 학생 한 명당 한 줄로 정리한 표가 데이터 마트다.
자세히
먼저 알아 둘 말
| 말 | 뜻 |
|---|---|
| 데이터 웨어하우스 (DW) | 회사 전체의 데이터를 주제별로 통합해 쌓아 둔 저장소 |
| 데이터 마트 (DM) | DW 에서 부서·목적별로 떼어 낸 작은 저장소 |
| 분석 단위 | 한 줄이 무엇을 뜻하나. 구매 기록 한 건? 고객 한 명? |
요약변수와 파생변수
| 요약변수 | 파생변수 | |
|---|---|---|
| 만드는 법 | 기록을 모아 합계·횟수·평균 | 조건·함수로 새 의미 부여 |
| 예 | 총 구매 금액, 구매 횟수, 월별 방문 수, 상품별 구매 여부 | 주 구매 매장, 선호 시간대, 근무시간 구매 비율, VIP 여부 |
| 특징 | 객관적, 여러 모델에 재활용 | 주관적일 수 있어 논리적 근거 필요, 특정 상황에만 맞을 수 있음 |
R 데이터 가공 패키지
| 패키지 | 하는 일 |
|---|---|
| reshape | melt 로 넓은 표를 긴 표(식별자·변수·값)로 녹이고, cast 로 원하는 모양으로 다시 짠다 |
| sqldf | R 데이터 프레임에 SQL 문(SELECT … GROUP BY)을 그대로 쓴다 |
| plyr | 데이터를 나누고(split) 함수를 적용하고(apply) 합친다(combine). ddply 처럼 입력·출력 모양을 이름 두 글자로 고른다 |
| data.table | 키(key)를 잡아 큰 데이터를 빠르게 찾고 묶는다 |
탐색적 자료분석 (EDA)
통계학자 존 투키가 강조한 방식으로, 가설을 세우기 전에 데이터를 이리저리 살펴 특징과 이상한 점을 찾는다. 네 가지 주제는 저항성(이상값에 흔들리지 않는 중앙값 같은 통계 사용), 잔차 해석(모형에서 벗어난 점 보기), 자료 재표현(로그 변환 등으로 보기 쉽게), 현시성(그래프로 드러내기)이다. R 에서는 head, str, summary, table, 상자그림과 히스토그램으로 시작한다.
시험에 이렇게 나와요
- 요약변수: 기록을 종합(총액·횟수), 재활용성 높음 / 파생변수: 조건·함수로 의미 부여, 주관적이라 논리적 타당성 필요
- reshape 의 melt·cast, sqldf 는 R 에서 SQL, plyr 는 split-apply-combine
- EDA 네 주제: 저항성, 잔차 해석, 자료 재표현, 현시성
확인 문제
Q1. 고객의 구매 기록을 모아 '고객별 총 구매 금액'을 만들었다. 이 변수는?
- 목표변수
- 요약변수
- 더미변수
- 파생변수
정답 보기
2번 요약변수
여러 기록을 고객 단위로 모아 합계·횟수 같은 값을 낸 것은 요약변수다. 분석가가 기준을 정해 새 의미를 붙이면 파생변수다.
Q2. 파생변수에 대한 설명으로 옳은 것은?
- 언제나 객관적이라 근거가 필요 없다
- 여러 기록을 단순히 합산한 변수만 뜻한다
- 원천 데이터를 그대로 옮긴 변수다
- 분석가가 특정 조건이나 함수로 의미를 부여해 만든 변수다
정답 보기
4번 분석가가 특정 조건이나 함수로 의미를 부여해 만든 변수다
파생변수는 주관적일 수 있어 논리적 근거가 필요하다. 단순 합산은 요약변수.
Q3. 다음 중 요약변수로 보기 가장 알맞은 것은?
- 고객별 월 구매 횟수
- VIP 여부
- 근무시간 구매 비율이 높은 고객 표시
- 주 구매 시간대
정답 보기
1번 고객별 월 구매 횟수
기록을 세어 모은 값은 요약변수, 나머지는 기준을 세워 만든 파생변수다.
Q4. R 에서 데이터를 melt 로 녹이고 cast 로 다시 모양을 짜는 패키지는?
- sqldf
- reshape
- data.table
- ggplot2
정답 보기
2번 reshape
reshape 패키지다. melt로 긴 형태로 녹이고 cast로 원하는 모양으로 다시 짠다. sqldf는 SQL 문, data.table은 빠른 데이터 처리, ggplot2는 시각화를 맡는다.
Q5. R 데이터 프레임에 SQL 문을 그대로 쓰게 해 주는 패키지는?
- caret
- reshape
- sqldf
- plyr
정답 보기
3번 sqldf
sqldf 패키지다. 데이터 프레임을 테이블처럼 SQL로 조회한다. plyr는 데이터를 나눠 적용하고 합치며, caret은 모형 학습을 돕는다.
Q6. 탐색적 자료분석(EDA)의 네 가지 주제가 아닌 것은?
- 저항성
- 현시성
- 가설 확정
- 잔차 해석
정답 보기
3번 가설 확정
저항성, 잔차 해석, 자료 재표현, 현시성이다. EDA 는 가설을 세우기 전에 데이터를 살핀다.
헷갈리기 쉬운 O·X
요약변수는 한 번 만들면 다른 분석 모델에도 재활용하기 쉽다.
정답 보기
O
파생변수는 객관적인 계산 결과라 별도의 논리적 근거가 필요 없다.
정답 보기
X 분석가의 기준이 들어가 주관적일 수 있다.
데이터 마트는 데이터 웨어하우스보다 범위가 넓은 전사 저장소다.
정답 보기
X DW 의 일부를 부서·목적별로 떼어 낸 것이다.