데이터분석 준전문가(ADsP)

[ADsP] 3-1. R 기초와 데이터 마트

✨️데이터분석가✨️ 2023. 5. 22. 08:00
728x90
728x90

[데이터분석 준전문가, ADsP] 자격증 시험 요약자료로

3과목. 데이터 분석의 "제1장. R 기초와 데이터 마트" 입니다.
출제 빈도가 높은 내용 위주로 요약했으니, 이 자료로 공부하시는 모든 분들 합격하시길 바랍니다!


[목차]
3과목. 데이터 분석
 제1장. R 기초와 데이터 마트
          0. 데이터 분석 기법의 이해
          1. R 기초
          2. 데이터 마트
          3. 결측값 처리와 이상값 검색

 

0. 데이터 분석 기법의 이해

 

1) 데이터 처리

- 데이터웨어하우스(DW)와 데이터마트(DM)로 분석 데이터를 가져옴

- 이 외 '기존 운영시스템', '스테이징 영역', 'ODS'에서도 가져와 결합함

 

2) 탐색적 자료 분석 (EDA)

- 구조적 관계를 알아내기 위한 기법들의 통칭

- '저항성의 강조', '잔차 계산', '자료변수의 재표현', '그래프를 통한 현시성'

 

3) 통계분석

- 기술통계: 표본 정보 파악을 위해 데이터를 요약한 숫자/그래프 형태로 표현하는 절차

- 추론통계: 표본통계량으로부터 모집단 특성인 모수에 대해 통계적으로 추론하는 절차

 

4) 데이터마이닝

- 대용량 자료로부터 관계, 패턴, 규칙 등을 탐색하고 유용한 지식을 추출하는 분석 방법

- 기계학습: 인공신경망, 의사결정나무, 클러스터링, 베이지안 분류, SVM 등

- 패턴인식: 장바구니분석, 연관규칙 등 

 

 


1. R 기초

 

1) R의 특징

- 오픈소스

- 그래픽 및 성능 월등

- 사용자들과 예제 공유, 수시로 업데이트

- 모든 운영체제 사용 가능

- 시스템에 데이터셋 저장 (명령어 스토리 저장 가능)

- 표준 플랫폼 (S 언어 기반)

- 객체지향 언어 (결과값을 객체에 저장하여 필요 부분 호출 가능)

- 함수형 언어 (단축 코드, 빠른 속도, 병렬 프로그래밍)

 

2) R 기초 코드

패키지 설치 패키지 도움말 출력
install.packages
("패키지명")
library(help=패키지명) print(), cat()
파일 목록 보기 테이블 데이터 읽기 csv 데이터 저장
list.files() read.table("파일명", sep="구분자") write.csv(변수명, "파일명")
데이터 불러오기 데이터셋 요약 데이터셋 조회
data(데이터셋) summary(데이터셋) head(데이터셋)
데이터 할당 결합 수열 반복 문자 붙이기
a<-1, a=1 a<-c(1,2,3) seq(form=0, to=20, by=2) rep(1:4, each=2) paste("a","b", sep="-")
비교 논리 부정 and or 나눗셈 나머지
== ! & | %%
평균 분산 공분산 상관계수 변수 길이
mean(a) sd(a) cov(a,b) cor(a,b) length(a)

 

3) 데이터 구조

벡터 (Vector) 리스트 (Lists)
벡터는 동질적임 (같은 자료형)
벡터는 위치로 인덱스 됨, V[2]
인덱스로 하위 벡터 반환 가능
벡터 원소들은 이름을 가질 수 있음
리스트는 이질적임 (여러 자료형)
리스트는 위치로 인덱스 됨, L[[2]]
하위 리스트 추출 가능
리스트 원소들은 이름을 가질 수 있음
단일값 (Scalars) 행렬 (Matrix) 배열 (Arrays) 요인 (Factors)
원소가 하나인 벡터 차원을 가진 벡터 행렬에 n차원까지
확장
범주형 변수,
집단분류 등
행렬 → 벡터 벡터 → 리스트  벡터 → 행렬 벡터 → 데이터프레임
as.vector(mat) as.list(vec) as.matrix(vec) as.data.frame(vec)

 

4) 데이터 프레임

- 데이터 구조가 행과 열로 구성되지만, 행렬보단 리스트에 가까움

- 각 열은 서로 다른 데이터 형식을 가질 수 있음

- 원소는 벡터 or 요인이며, 이는 데이터 프레임의 에 해당, 열은 이름이 있어야 함

- 벡터와 요인은 동일한 길이임

# 재활용 규칙: 길이가 다른 두 벡터 연산 시, 짧은 벡터는 연산 끝날때까지 원소들을 재활용함

데이터 프레임 결합 결합
data.frame(벡터,벡터) rbind(a1, a2) cbind(a1, a2)
데이터 프레임 조회 데이터셋 조회 데이터 병합
a[a$sex="male"] subset(a, select=age, subset=age>30) merge(a1,a2,
by="공통 열 이름")

 


2. 데이터 마트

 

1) 데이터 변경 및 요약

(1) 데이터 마트

- 데이터웨어하우스와 사용사 사이의 중간층에 위치

 

(2) 요약/파생변수

요약변수 파생변수
분석에 맞게 수집된 변수
재활용성이 높음, 연속형 변수 구간화 필요
예) 구매 금액, 횟수 등
사용자가 의미 부여한 변수
주관적이라 대표성/타당성 필요
예) 고객행동 예측, 세분화 등

 

(3) reshape 활용

- melt(): 원데이터 형태로 만드는 함수

- cast(): 요약 형태로 만드는 함수

 

(4) 데이터 테이블

- data.table(): 데이터 핸들링 패키지, 탐색/연산/병합에 유용

- data.frame()보다 빠른 속도, 빠른 그루핑, ordering, 짧은 문장 지원에서 유용

 

2) 데이터 가공

- head(): 시작 6개만 조회

- tail(): 마지막 6개만 조회

- summary(): 데이터 요약 조회(최댓/최솟값, 평균, 사분위수, 개수 등)

 


3. 결측값 처리와 이상값 검색

 

1) 결측값 처리

(1) 결측값 처리 방법

- completes analysis: 결측값 데이터 삭제 (단점은 데이터 수 부족)

- 평균대치법: 평균으로 대치

- 단순확률 대치법: Hot-deck 방법, nearest neighbor 방법 등

- 다중대치법: 단순대치법을 m번 대치하여 m개의 가상적 완전 자료를 만드는 방법

 

(2) R 결측값 처리

complete.cases() is.na()
결측값 O → FALSE
결측값 X → TRUE
결측값 O → TRUE
결측값 X → FALSE

 

2) 이상값 검색

(1) 이상값 인식 방법

- ESD: 평균으로부터 3 표준편차 떨어진 값

- 기하평균 -2.5X표준편차 < data < 기하평균 + 2.5X표준편차

- 사분위수: Q1 - 1.5XIQR < data < Q3 + 1.5XIQR 밖에 있는 데이터

  *IQR = Q3-Q1

 

(2) 이상값 절단 방법

- 기하평균(geo_mean)으로 제거

- 상/하단 10% 제거

→ 이상값 조정 방법보다 데이터 손실율↓, 설명력↑

 

(3) 이상값 조정 방법

- 상/하한값 벗어나는 값을 상/하한값으로 바꾸어 활용하는 방법

 

 

위 내용은 [ADsP 데이터분석 준전문가, (주)데이터에듀]를 참고하여 요약한 자료입니다.

 

 

 

728x90
728x90