1. 데이터 이해
1-1. 데이터의 이해
1-2. 데이터의 가치와 미래
1-3. 가치 창조를 위한 데이터 사이언스와 전략 인사이트
2. 데이터 분석 기획
2-1. 데이터 분석 기획의 이해
2-2. 분석 마스터 플랜
3. 데이터 분석
3-1. R 기초와 데이터 마트
3-1-1. R 프로그래밍 기초
3-1-2. 데이터마트
3-2. 통계분석
3-3. 정형 데이터 마이닝
데이터마트
#데이터 변경 및 요약
(1) 데이터 마트(Data Mart)
- 데이터 웨어하우스(DW)와 사용자 사이의 중간층에 위치한 것으로, 하나의 주제 또는 하나의 부서 중심의 데이터 웨어하우스라고 할 수 있다.
- 데이터 마트 내 대부분의 데이터는 DW로부터 복제되지만, 자체적으로 수집될 수도 있으며, 관계형 DB나 다차원 DB를 이용하여 구축한다.
- 동일한 데이터 셋을 활용할 경우 최신 분석기법들을 이용하면 분석가의 역량에서는 분석 효과가 크게 차이가 나지 않는다.
- 데이터 마트를 어떻게 구축하느냐에 따라 분석 효과는 크게 차이난다.
(2) 요약변수
- 수집된 정보를 분석에 맞게 종합한 변수
- 많은 모델에서 공통적으로 사용될 수 있어 재활용성이 높다.
- 합계, 횟수와 같이 간단한 구조이므로 자동화하여 상황에 맞게 또는 일반적인 자동화 프로그램으로 구축이 가능
- 연속형 변수를 범주화하여 사용해도 좋다.
(3) 파생변수
- 사용자가 특정 조건을 만족하거나 특정 함수에 의해 값을 만들어 의미를 부여한 변수이다.
- 매우 주관적일 수 있으므로 논리적 타당성을 갖추어 개발해야 한다.
- 파생변수는 특정 상황에만 유의미하지 않도록 대표성을 띄게 생성해야 한다.
(4) plyr을 이용한 데이터 분석
- plyr은 apply 함수에 기반해 데이터와 출력변수를 동시에 배열로 치환하여 처리하는 패키지
- split-apply-combine: 데이터를 분리하고 처리한 다음 다시 결합하는 등 필수적인 데이터 처리기능을 제공한다.
(5) data.table을 이용한 데이터 분석
- data.table은 큰 데이터를 탐색, 연산, 병합하는 데 아주 유용하다.
· 기존 data frame 방식보다 월등히 빠른 속도
- 특정 column을 key 값으로 색인을 지정한 후 데이터를 처리한다.
- 빠른 grouping과 ordering, 짧은 문장 지원 측면에서 데이터프레임보다 유용하다.
#데이터 가공
(1) Data Exploration
- 데이터 분석을 위해 구성된 데이터의 상태를 파악한다. head( ), summary( )
(2) 변수 중요도
- 모형을 생성하여 사용된 변수의 중요도를 살피는 과정이다.
(3) 변수의 구간화
- 신용평가모형, 고객 세분화 등 시스템으로 모형을 적용하기 위해서는 각 변수들을 구간화해서 구간별로 점수를 적용할 수 있어야 한다.
- bining: 연속형 변수를 범주형 변수로 변형하는 방식. 각각 동일한 개수의 레코드를 50개 이하의 구간에 데이터를 할당하여 구간들을 병합하면서 구간을 줄여나가는 방식의 구간화 방법이다.
#기초 분석 및 데이터 관리
(1) EDA(Exploratory Data Analysis)
- 데이터 분석에 앞서 전체적으로 데이터의 특징을 파악하고 데이터를 다양한 각도로 접근한다.
(2) 결측값(Missing value)
- 결측값 자체가 의미있는 경우도 있다.
- 결측값이나 이상값을 꼭 제거해야 하는 것은 아니기 때문에 분석의 목적이나 종류에 따라 적절한 판단이 필요
(3) 결측값 처리 방법(Imputation)
단순 대치법(Single Inputation) |
completes analysis: 결측값이 존재하는 레코드를 삭제한다. |
|
평균대치법(mean imputation): 관측 또는 실험을 통해 얻어진 데이터의 평균으로 대치한다 |
- 비조건부 평균 대치법: 관측 데이터의 평균 |
|
- 조건부 평균 대치법: 회귀분석을 활용 |
||
단순확률 대치법(Single Stochastic Imputation): 평균대치법에서 추정량 표준 오차의 과소 추정문제를 보완하고자 고완된 방법으로 Hot-deck 방법, nearest neighbor 방법 등이 있다. |
||
다중 대치법(Multiple Imputation) |
단순 대치법을 한 번 적용하지 않고 m번의 대치를 통해 m개의 가상적 완전 자료를 생성 |
(4) R에서 결측값 처리
- 랜덤포레스트는 결측값이 존재할 경우, 에러 발생: randomForest 패키지의 rfImpute() 함수를 활용하여 결측값을 대치한 후 알고리즘에 적용
complete.cases() |
데이터 내 레코드에 결측값이 있으면 FALSE, 없으면 TRUE 반환 |
is.na() |
결측값이 NA인지 여부를 반환 |
DMwR::centralImputation() |
NA 값에 가운데 값(central value)으로 대치. 연속형 변수 - 중위값, 범주형 변수 - 최빈값 |
DMwR::knnImputation() |
NA 값을 knn 알고리즘을 사용하여 대치. k개 주변 이웃까지의 거리를 고려하여 가중 평균한 값을 사용 |
(5) 이상값(Outlier)
- 의도하지 않게 잘못 입력한 경우
- 의도하지 않게 입력되었으나 분석 목적에 부합되지 않아 제거해야 하는 경우
- 의도하지 않은 현상이지만 분석에 포함해야 하는 경우
- 의도된 불량(fraud)인 경우
(6) 이상값 탐지(detection)
- ESD(Extreme Studentized Deviation): 평균으로부터 3 표준편차 떨어진 값
- (기하평균 - 2.5 * 표준편차 < data < 기하평균 + 2.5 * 표준편차)의 범위를 벗어나는 값
- (-1.5 * IQR(Q3-Q1) < data < 1.5 * IQR)의 범위를 벗어나는 값
(7) 극단값 절단(trimming)
- 기하평균을 이용한 제거
- 상, 하위 5%에 해당되는 데이터 제거
(8) 극단값 조정(winsorizing)
- 상한값과 하한값을 벗어나는 값들을 상한, 하한값으로 바꾸어 활용하는 방법
(참고 사이트)
'Certificates > ADsP' 카테고리의 다른 글
[ADsP] 1과목~3과목 개념 정리 (14) | 2020.11.18 |
---|---|
[ADsP D-20] 연습 문제 풀이 (21회) (0) | 2020.11.04 |
[ADsP] R 프로그래밍 기초 (0) | 2020.08.23 |
[ADsP] 주성분 분석 (0) | 2020.08.22 |
[ADsP] 다차원 척도법 (0) | 2020.08.22 |
댓글