과목 Ⅳ. 데이터 분석
1장 R 기초와 데이터마트
제1절 R기초
1. 분석 환경의 이해
1)데이터 분석 도구의 현황
◆분석도구 비교
|
SAS
|
SPSS
|
R
|
프로그램 비용 |
고가 |
고가 |
오픈소스 |
설치 용량 |
대용량 |
대용량 |
모듈화로 간단 |
모듈지원 및 비용 |
별도 구매 |
별도 구매 |
오픈 소스 |
최근 알고리즘 및 기술 반영 |
노르미 |
다소 느림 |
매우 빠름 |
학습자료 입수 편의성 |
유료 도서 위주 |
유료 도서 위주 |
논문 및 자료 많음 |
질의를 위한 공개 커뮤니티 |
없음 |
없음 |
매우 활발 |
◆R의 특징
- 오픈소스, 무료: 사용자 커뮤니티 활발, 5,000여개 패키지 수시 업데이트
- 그래픽 및 성능이 좋음
- 시스템 데이터 저장방식: 각 세션 사이마다 시스템에 데이터 셋 저장, 명령어 히스토리 저장 가능
- 모든 운영체제 사용 가능
- S통계 언어 기반(R/S 플랫폼은 전문가들의 표준 플랫폼)
- 객체지향언어, 함수형 언어
◆R스튜디오
- 오픈소스, 무료, 다양한 운영체제 지원
- 메모리에 변수와 타입 확인 가능
- 스크립트 관리와 도큐먼테이션 편리
- 쉽게 자동화
제2절 데이터 마트
1. R reshape를 활용한 데이터마트 개발
◆데이터 마트
- 웨어하우스와 사요앚 사이 중간층에 위치, 웨어하우스로부터 복제된 data, 자체 수집도 가능
- CRM 업무 핵심: 고객 데이터마트 구축
- 데이터마트 구축에 따라 분석 효과 차이
◆요약변수 vs. 파생변수
요약변수
|
파생변수
|
수집된 정보를 분석에 맞게 종합한 변수 |
사용자가 만들어 의미를 부여한 변수 |
데이터마트에서 가장 기본적인 변수 (기간, 상품별 구매 금액, 횟수, 구매여부 등) |
주관적이므로 논리적 타당성 필요 (근무시간 구매지수, 주 활동 지역 변수, 선호하는 가격대 변수 등) |
재활용성 높음 |
대표성을 나타나게 할 필요 있음 |
간단한 구조이므로 자동화 가능 |
|
◆reshape 활용
- melt(): 데이터를 DB 구조로 녹이는 함수
- cast(): 새로운 구조로 데이터를 만드는 함수
- melt(data, id=c(고정변수1, 2))
- cast(melt_data, 고정변수1+2 – column이 되게 하고 싶은 변수명, 함수)
- 다양한 요약변수와 파생변수를 쉽게 생성하여 데이터마트 구축
2. sqldf를 이용한 데이터 분석
◆R에서 sql명령어를 사용 가능하게 해주는 패키지(SAS의 proc sql)
- head(df) = sqldf(‘select * from df limit 6’)
- subset(df, col %in% c(‘BF’, ‘HF’) = sqldf(‘select * from df where col in (‘BF’, ‘HF’)’)
- merge(df1, df2) = sqldf(“select * from df1, df2”)
3. plyr
◆데이터와 출력변수를 동시에 배열로 치환하여 처리하는 패키지
◆분리-처리-결합 방식
4. 데이터 테이블
◆큰 데이터를 탐색, 연산, 병합하는데 유용한 데이터 핸들링 패키지
◆기존 data.frame보다 빠름
◆색인 지정 가능
◆빠른 그룹핑, 오더링(ordering), 짧은 문장 지원
◆setkey(DT,y);x<-DT[J(“C”),]
제3절 결측값 처리와 이상값 검색
1. 데이터 탐색
◆데이터 탐색: 변수 상태 파악(head, summary)
2. 결측값 처리
◆표현: NA
◆자체가 의미 있을 수 있음.
Ex. 가입자 중 특정 거래가 없을 경우, 부정사용방지시스템이나 부도 예측시스템
◆결측값 처리가 전체 작업속도에 영향
◆결측값 처리 방법
- 단순 대치법: 결측값 존재하는 행 삭제 (평균 대치법, 단순확률 대치법)
- 다중 대치법: 단순 대치법을 여러 번 (boostrapping based algorithm)
◆R에서 결측값 처리
- 탐색: complete.cases(), is.na()
- 단순 대치: DMwR::centrallmputation(), DMwR::knlmputation()
- 다중 대치: Amelia::amelia()
3. 이상값 검색
◆이상 값
- bad data: 잘못 입력, 분석 목적에 부합하지 않는 경우 삭제
- 이상값: 의도하지 않은 현상으로 입력, 의도된 극단값 경우 활용
◆이상값 인식 방법
- 평균으로부터 3 표준편차 떨어진 값
- 기하평균보다 2.5 표준편차 떨어진 값
- 1사분위와 3사분위 사이 범위보다 2.5배 이상 떨어진 값
◆이상값 처리
- 절단: 이상값 포함행 삭제
- 조정: 이상값을 상한 또는 하한값으로 조정(데이터 손실률 낮아짐)
'□ ADsP' 카테고리의 다른 글
[ADsP - 4과목] 제2장 통계 분석: (2) 기초 통계 분석 (0) | 2019.02.06 |
---|---|
[ADsP - 4과목] 제2장 통계 분석: (1) 통계학 개론 (0) | 2019.02.06 |
[ADsP - 3과목] 제2장 분석 마스터 플랜 (0) | 2018.09.11 |
[ADsP - 3과목] 제1장 데이터 분석 기획의 이해 -2 (0) | 2018.09.07 |
[ADsP - 3과목] 제1장 데이터 분석 기획의 이해 -1 (0) | 2018.09.07 |