< 데이터마트 >
- 데이터 웨어하우스와 사용자 사이의 중간층에 위치
- 데이터마트 내 데이터는 대부분 데이터웨어하우스에서 복제. 자체적으로 수집될 수 있고, 관계형 DB, 다차원 DB를 이용하여 구축할 수도
- 고객 데이터 마트 구축 : CRM(고객관계 관리) 관련 업무 중에서 핵심
- 동일한 데이터 셋 사용할 경우 최신 분석 기법을 이용하면 분석가의 역량 무의미 -> 데이터마트를 어떻게 구축하느냐에 따라 분석 효과 크게 차이
# 요약변수
- 수집된 정보를 분석에 맞게 종합한 변수
- 총 구매 금액, 금액, 횟수, 구매 여부 등 데이터 분석을 위해 만들어지는 변수
- 재활용성 ↑
- 단점 : 얼마 이상이면 구매하더라도 기준값의 의미 해석 애매 --> 연속형 변수를 그룹핑해 사용
[ 위클리 쇼퍼, 상품별 구매 순서, 단어 빈도, 초기 행동 변수, 트렌드 변수, 결측 값과 이상 값 처리, 연속형 변수의 구간화 ]
# 파생 변수
- 사용자가 특정 조건을 만족하거나 특정 함수에 의해 값을 만들어 의미를 부여한 변수
- 주관적! -> 논리적 타당성 갖추어 개발해야 함
- 세분화, 고객 행동 예측, 캠페인 반응 예측
- 상황에 따라 특정 상황에만 유의미하지 않게 대표성을 나타나게 할 필요 있음
[ 근무시간 구매지수, 주 구매 매장 변수, 주 활동 지역 변수, 주 구매 상품 변수 ]
< reshape의 활용 >
데이터 마트를 구성할 수 있는 패키지
# melt() 함수 : 원 데이터 형태로 만드는 함수
# cast() 함수 : 데이터를 원하는 형태로 계산 또는 변형시켜주는 함수
< 데이터 테이블 >
- R에서 가장 많이 사용하는 데이터 핸들링 패키지 중 하나
- 큰 데이터를 탐색, 연산, 병합하는데 아주 유용
- 데이터 프레임보다 빠른 속도
- 빠른 그루핑, ordering, 짧은 문장 지원 측에서 데이터프레임보다 유용
< 데이터 탐색 >
# head, tail : 시작 또는 마지막 6개 리코드만 조회하는 함수
# summary (데이터 분포 파악)
- 연속형 변수 : 4분 위수, 최소, 최대, 중앙
- 범주형 변수 : 각 범주의 빈도수 출력
- 명목형 변수 : 명목 값, 데이터 개수 (오로지 구분만을 위해 사용, 숫자의 크기나 의미는 중요 X)
< 변수의 구간화 >
연속형 변수를 분석 목적에 맞게 활용하기 위해 구간 화하여 모델링에 적용함
- 일반적으로 10진수 단위로 구간화, 보통: 5개의 구간, 7개 이상의 구간은 잘 만들지 않음
# binning
- 신용평가모형의 개발에서 연속형 변수를 범주형 변수로 구간화 하는데 자주 활용
# 의사결정 나무
- 세분화 또는 예측에 활용되는 의사결정 나무 모형을 사용하여 입력 변수들 구간화
- 동일한 변수를 여러 번의 분리 기준으로 사용이 가능 -> 연속 변수가 반복적으로 선택될 경우 각각의 분리 기준 값으로 연속형 변수 구간화 가능
< 데이터 EDA(탐색적 자료 분석) >
- 데이터의 분석에 앞서 전체적으로 데이터의 특징 파악, 데이터를 다양한 각도로 접근
- summary() 이용 -> 데이터의 기초 통계량 파악
[ 최솟값, 1 사분위수, 중앙값, 평균, 3 사분위수, 최댓값 ]
< 결측 값 인식 >
결측값 : NA, 99999999, ' '(공백), Unknown, Not Answer
- 결측 값을 처리하기 위해 시간을 많이 사용하는 것은 비효율적
- 결측 값이 의미있는 경우가 있음 -> 무조건 삭제 X
- 결측값 처리는 전체 작업 속도에 영향을 줌
< 결측값 처리 방법 >
# 단순 대치법
1. completes analysis : 결측 값이 존재하는 레코드 삭제
--> 삭제할 경우 부분적 관측 자료를 사용 : 통계적 추론의 타당성 문제 발생
2. 평균 대치법
관측 또는 실험을 통해 얻어진 데이터의 평균으로 대치
- 비조건부 평균 대치법 : 관측 데이터의 평균으로 대치
- 조건부 평균 대치법 : 회귀 분석을 활용한 대치법
3. 단순 확률 대치법 : 평균 대치법에서 추정량 표준 오차의 과소 추정 문제를 보완하고자 고완 된 방법
--> Hot-deck 방법, nearest neighbor 방법
# 다중 대치법
단순 대치법을 한 번에 하지 않고 m번의 대치를 통해 m개의 가상적 완전 자료를 만드는 방법
: 대치 -> 분석 -> 결합
< R에서 결측 값 처리 >
completes.cases() : 결측 값이 있으면 FALSE, 없으면 TRUE
is.na() : 결측값이 있으면 TRUE, 없으면 FALSE
DMwR 패키지의 centrallmputation()
DMwR 패키지의 knnlmputation()
Amelia 패키지의 amelia()
< 이상 값 인식과 처리 >
# 이상값
- Bad data: 의도하지 않게 잘못 입력한 경우, 의도하지 않게 입력되었으나 분석 목적에 부합하지 않아 제거해야 하는 경우
--> 삭제 후 분석
- Bad data X : 의도하지 않은 현상이지만 분석에 꼭 포함해야 하는 경우, 의도된 이상 값인 경우
--> 꼭 제거해야 하는 것은 아님, 분석 목적이나 종류에 따라 적절한 판단 필요
# 이상 값의 인식 방법
- 군집 분석을 이용하여 다른 데이터와 멀리 떨어진 데이터가 이상치? X - 멀리 떨어진 데이터는 다른 군집에 속함
- 설명 변수의 관측치에 비해 종속 변수의 값이 상이한 값이 이상치 ? O
1. EDS : 평균으로부터 3 표준편차 떨어진 값
2. 기하평균 - 2.5 * 표준편차 < data < 기하평균 + 2.5 * 표준편차
3. 사분위수 이용하여 제거하기 (상자 그림의 outer fence 밖에 있는 값 제거)
이상 값 정의 : Q1 - 1.5(Q3-Q1) < data < Q3 + 1.5(Q3-Q1)을 벗어나는 데이터
# 극단값 절단 방법
1. 기하평균을 이용한 제거 : geo_mean
2. 하단, 상단 % 이용한 제거 : 10% 절단(상하위 5%에 해당하는 데이터 제거)
3. 극단값 조정 : 상한 값과 하한 값을 벗어나는 값들을 하한, 상한 값으로 바꾸어 활용하는 방법
--> 절단보다 데이터 손실률도 적고, 설명력도 높아짐
* 오답
휴면 고객 : 많은 기업에서 평균 거래 주기를 3~4배 이상 초과하거나 다음 달에 거래가 없을 것으로 예상되는 고객
결측치 : 결측치가 20% 이상인 경우 해당 변수를 제거하고 분석해야 함
이상치 : 이상치는 분석에서 제외할 수 있지만, 무조건적으로 제거 X
plyr : multi-core를 사용하여 반복문을 사용하지 않고도 매우 간단하고 빠르게 처리할 수 있는 데이터 처리 함수를 포함하고 있는 패키지
'ADsP > 3장' 카테고리의 다른 글
ADsP 데이터 분석 준전문가 PART 03 - 5장 _1 정형 데이터마이닝 (0) | 2021.03.27 |
---|---|
ADsP 데이터 분석 준전문가 PART 03 - 4장_3 통계 분석 (0) | 2021.03.27 |
ADsP 데이터 분석 준전문가 PART 03 - 4장_2 통계 분석 (0) | 2021.03.27 |
ADsP 데이터 분석 준전문가 PART 03 - 4장_1 통계 분석 (0) | 2021.03.27 |
ADsP 데이터 분석 준전문가 PART 03 - 2장 R 프로그래밍 기초 (0) | 2021.03.27 |