[ADsP/ADP] 4과목. 데이터 분석
1장. R기초와 데이터 마트
R
- 통계 계산과 그래픽을 위한 프로그래밍 언어이자 소프트웨어 환경
- 표준 플랫폼(S 언어 기반 : GNU S라고도 함)
- 오픈소스
- 모든 운영체제에서 사용
- 객체지향언어이며 함수형 언어
- setwd("작업영역") : 작업영역 설정
- help(함수), ?함수, RsiteSearch("함수") : 도움말
- history() : 기록보기
- savehistory(file = "파일명") : 기록 저장
- loadhistory(file = "파일명") : 기록 불러오기
- Ctrl + L : 콘솔 청소
- Ctrl + R : 한 줄 실행
- # : 주석처리
- install.packages("패키지명") : 패키지 설치
- library(패키지) : 패키지 불러오기
- rm() : 삭제
- 변수에 할당할 때는 대입연산자 <-, <<-, =, ->>, ->을 사용할 수 있다.
- mean() : 평균
- max() : 최대값
- min() : 최소값
- median() : 중간값
- sd() : 표준편차
- var() : 분산
- cov() : 공분산
- cor() : 상관계수
- read.csv("파일명", header = T) : csv파일 읽기
- write.csv(데이터프레임, "파일명") : csv 파일로 저장
- nchar("문자") : 문자열 길이
- length(vec) : 벡터의 길이
- paste("문자", "문자") : 문자 연결하기
- substr("대상문자", 시작번호, 끝번호) : 문자열 추출하기
- gsub("대상문자", "대체할문자")
- setwd("작업영역") : 작업영역 설정
- help(함수), ?함수, RsiteSearch("함수") : 도움말
- history() : 기록보기
- savehistory(file = "파일명") : 기록 저장
- loadhistory(file = "파일명") : 기록 불러오기
- Ctrl + L : 콘솔 청소
- Ctrl + R : 한 줄 실행
- # : 주석처리
- install.packages("패키지명") : 패키지 설치
- library(패키지) : 패키지 불러오기
- rm() : 삭제
- 변수에 할당할 때는 대입연산자 <-, <<-, =, ->>, ->을 사용할 수 있다.
- mean() : 평균
- max() : 최대값
- min() : 최소값
- median() : 중간값
- sd() : 표준편차
- var() : 분산
- cov() : 공분산
- cor() : 상관계수
- read.csv("파일명", header = T) : csv파일 읽기
- write.csv(데이터프레임, "파일명") : csv 파일로 저장
- nchar("문자") : 문자열 길이
- length(vec) : 벡터의 길이
- paste("문자", "문자") : 문자 연결하기
- substr("대상문자", 시작번호, 끝번호) : 문자열 추출하기
- gsub("대상문자", "대체할문자")
1) reshape 패키지
- 데이터 재정렬을 수행하되, 원래 데이터가 가지고 있는 모든 정보들을 그대로 유지한다.
- melt, cast
2) sqldf : SQL
3) plyr : 데이터를 분리하고 처리한 다음 다시 결합
- 열 = 입력되는 데이터 형태, 행 = 출력되는 데이터 형태
데이터가공 및 데이터관리
1. 변수의 구간화
1) binning : 연속형 변수를 범주형 변수로 변환하기 위해 데이터의 의미를 파악하면서 구간을 축소
2) 의사결정나무 : 모형을 이용해 연속형변수를 범주형 변수로 변환
2. 결측값 처리
1) 데이터가 없는 경우 : NA, ., 999999999, Unknown, Not Answer 등
2) 단순대치법
- completes analysis : 삭제
- 평균대치법 : 평균으로 대치
① 비조건부 평균 대치법 : 관측 데이터의 평균으로 대치
② 조건부 평균 대치법 : 회귀분석을 통해 데이터를 대치
3) 다중대치법 : 단순 대치법을 m번 실시하여 m개의 가상적 자료를 만들어 대치
3. 이상값 처리
- bad data : 잘못 입력된 값이나 분석 목적에 부합하지 않는 값 삭제
- 이상값 : 극단값
1) 이상값의 인식
- 평균으로부터 3 표준편차 떨어진 값
- 기하평균보다 2.5 표준편차 이상 떨어진 값
- 1사분위와 3분위 값에서 범위보다 2.5배이상 떨어진 값
2) 이상값의 처리
- 절단(trimming) : 삭제
- 조정(winsorizing) : 조정
2장. 통계 분석
통계분석의 이해
- 통계 : 결과에 대한 요약된 형태의 표현
1. 자료 획득 방법 : 총조사, 표본조사
- 모집단 : 전체집단
- 표본집단 : 조사를 수행하기 위해 추출한 모집단의 일부
- 모수(parameter) : 표본 관측에 의해 구하고자 하는 모집단에 대한 정보(평균, 분산)
- 통계량 : 모수를 추론하기 위해 구하는 표본의 값들
2. 표본추출 방법
1) 단순랜덤추출법
- 각 샘플에 번호를 부여하여 임의의 n개를 추출하는 방법으로 각 샘플은 선택될 확률이 동일
- 복원, 비복원 추출 / 제비뽑기, 난수표뽑기
2) 계통추출법
- 단순랜덤추출법의 변형된 방식으로 번호를 부여한 샘플을 나열하여 k개씩(k=N/n) n개의 구간으로 나누고 첫 구간 (1, 2, ..., k)에서 하나를 임의로 선택한 후에 k개씩 띄어서 표본을 선택, 임의의 위치에서 매 k번째 항목 추출
3) 집락추출법
- 군집을 구분하고 군집별로 단순랜덤추출법을 한 후 모든 자료를 활용하거나 샘플링하는 방법
- 지역표본추출, 다단계표본추출
4) 층화추출법
- 이질적인 원소들로 구성된 모집단에서 각 계층을 고루 대표할 수 있도록 표본을 추출하는 방법, 유사한 원소끼리 몇 개의 층으로 나누어 각 층에서 랜덤추출하는 방법
- 비례층화추출법, 불비례층화추출법
3. 자료측정
- 명목척도 : 측정 대상이 어느 집단에 속하는지 분류할 때 사용 (성별, 출생지 구분)
- 순서척도 : 측정 대상의 서열관계를 관측하는 척도 (만족도, 선호도, 학년, 신용등급)
- 구간척도 : 측정 대상이 갖고 있는 속성의 양을 측정하는 것으로 구간이나 구간 사이의 간격이 의미가 있는 자료(온도, 지수)
- 비율척도 : 간격(차이)에 대한 비율이 의미를 가지는 자료, 절대적인 기준 0이 존재하고 사칙연산이 가능하며 제일 많은 정보를 가지는 척도
4. 통계분석
- 통계적 추론 : 추정, 가설검정, 예측
- 기술통계 : 평균, 표준편차, 중위수, 최빈값, 그래프의 표현
5. 확률 및 확률분포
1) 확률변수 : 특정값이 나타날 가능성이 확률적으로 주어지는 변수
2) 확률분포
- 이산형 확률분포 : 베르누이분포, 이항분포, 기하분포, 다항분포, 포아송분포
- 연속형 확률분포 : 균일분포, 정규분포, 지수분포, t분포, F분포, x2분포
[ 추정 및 가설검정 ]
1. 추정 : 표본으로부터 미지의 모수를 추정하는 것
1) 점추정 : 모수가 특정한 값일 것이라고 추정
- 평균, 표준편차, 중앙값 등을 추정
- 점추정 조건 : 불편성, 효율성, 일치성, 충족성
2) 구간추정 : 점추정을 보완하기 위해 모수가 특정 구간에 있을 것이라 추정하는 것
- 모분산을 알거나 대표본 : 표준정규분포 활용
- 모분산을 모르거나 소표본 : t분포 활용
2. 가설검정
- 귀무가설(null hypothesis, H0) : 비교하는 값과 차이가 없다
- 대립가설(alternative hypothesis, H1) : 뚜렷한 증거가 있을 때 주장하는 가설
- p-value : 대립가설을 지지하는 검정통계량이 나올 확률
- 검정통계량 : 검정 시 가설의 진위 판단 기준
- 유의수준 : 귀무가설을 기각(차이가 있다)하게 되는 확률의 크기
- 기각역 : 귀무가설이 옳다는 전제하에서 구한 검정통계량의 분포에서 확률이 유의수준(α)인 부분
사실/가설검정결과 |
H0이 사실 |
H1이 사실 |
H0이 사실 |
옳은 결정 |
제1종 오류 |
H1이 사실 |
제2종오류 |
옳은 결정 |
- 유의수준 ↓ 2종오류↑
- 2종오류가 최소가 되도록 기각역을 설정
[ 비모수 검정 ]
- 모집단의 분포에 대한 아무 제약을 가하지 않고 실행하는 검정
- 관측된 자료가 특정분포를 따른다고 가정할 수 없는 경우
- 가정된 분포(모평균, 모분산 등)가 없으므로 "분포의 형태가 동일하다" 또는 "동일하지 않다"라는 식으로 가설 설정
- 관측값의 절대적인 크기에 의존하지 않는 관측값들의 순위나 두 관측값 차이의 부호 등을 이용해 검정
- 부호검정, 윌콕슨의 순위합검정, 윌콕슨의 부호순위합검정, 만-위트니의 U검정, 스피어만의 순위상관계수
기초 통계분석
[ 상관분석 ]
- 두 변수 간의 관계파악
- cor(x, y) : x와 y의 상관계수
- rcorr() : 모든 변수들 사이의 상관계수와 함께 p-값 출력
[ 회귀분석 ]
- 하나나 그 이상의 변수들이 또 다른 변수에 미치는 영향
- 영향을 주는 변수(x) : 설명변수, 독립변수, 예측변수
- 영향을 받는 변수(y) : 반응변수, 종속변수, 결과변수
1. 회귀분석에서 검토사항
- 모형이 통계적으로 유의미한지 : F통계량 확인. 유의수준 5% 하에서 F통계량의 p-값이 0.05보다 작으면 통계적으로 유의미하다.
- 회귀계수들이 유의미한지 : 계수의 t통계량, p-value, 신뢰구간 확인
- 모형의 설명력 : 결정계수를 확인한다. 0~1의 값이며 높은 값을 가질수록 추정된 회귀식의 설명력이 높다.
- 모형이 데이터를 잘 적합하는지 : 잔차를 그래프로 그리고 회귀진단을 한다.
2. 가정
- 선형성
- 독립성 : 잔차와 독립변수의 값에 관련이 없어야한다.
- 등분산성 : 독립변수들의 모든 값에 대해 오차들의 분산이 일정하다.
- 비상관성 : 관측치의 잔차들끼리 상관이 없어야한다.
- 정상성 : 잔차항이 정규분포를 이뤄야한다.
3. 최적회귀방정식의 선택
- 모든 가능한 조합의 회귀분석 : AIC / BIC가 가장 작은 값을 갖는 모형
- 단계적 변수 선택 : 전진선택법, 후진제거법, 단계별방법
4. R
1) 회귀분석
> lm(Y ~ x1+x2+x3, data = df)
2) 전진선택법
> step(lm(Y ~ x1+x2, data = df), scope = list(lower = ~1, upper = ~ x1+x2), direction = "forward")
3) 후진제거법
> step(lm(Y ~ x1+x2, data = df), scope = list(lower = ~1, upper = ~ x1+x2), direction = "backward")
4) 단계별방법
> step(lm(Y ~ x1+x2, data = df), scope = list(lower = ~1, upper = ~ x1+x2), direction = "both")
[ 다차원 척도법 ]
- 여러 대상 간의 거리가 주어져 있을 때, 대상들을 동일한 상대적 거리를 가진 실수공간의 점들로 배치시키는 방법
- 관측치들 간의 전반적 관계에 대한 직관적 이해를 할 수 있게 도와준다.
- 자료들의 상대적 관계를 이해하는 시각화 방법의 근간으로 주로 사용
[ 주성분 분석 ]
- 고차원의 자료의 변동을 최대한 보존하여 저차원으로 변환
- 자료의 차원을 축약
- princomp(data, cor = True) : 상관계수 행렬을 사용하여 주성분분석
- 스크리 그림 : 주성분의 분산의 크기 그래프
# 주성분 분석
fit <- princomp(data, cor = True)
# 주성분의 결과
summary(fit)
# 관측치를 주성분들로 표현한 값
fit$scores
# 스크리 그림 : 주성분의 분산의 크기 그래프
plot(fit)
# 관측치들을 첫 번째와 두 번째 주성분의 좌표에 그린 그림
biplot(fit)
[ 시계열 예측 ]
1. 정상성 : 시점에 상관없이 시계열의 특성이 일정하다.
1) 정상성 만족
- 평균이 일정하다.
- 분산이 시점에 의존하지 않는다.
- 공분산은 단지 시차에만 의존하고 시점 자체에는 의존하지 않는다.
2) 정상성 판단
- 이상점 → 제거
- 개입 → 회귀분석
- 추세 : 평균이 일정하지 않은 경우 → 차분 : 현 시점의 자료값에서 전 시점의 자료값을 빼는 것
- 시간에 따라 분산이 일정하지 않은 경우 → 변환
2. 시계열 모형
1) 자기회귀 모형(AR : Autoregressive model)
- 현 시점의 자료가 p시점 전의 과거 자료로 설명된다.
- AR(p)
- 현 시점의 자료의 몇 번째 전까지 영향을 주는지 = p
- 자기상관함수 : 시차가 증가함에 따라 점차적으로 감소
- 부분자기상관함수 : p+1시차 이후 급격히 감소하여 절단된 형태
2) 이동평균 모형(MA : Moving Average model)
- 현 시점의 자료를 유한개의 백색잡음(정상시계열)의 선형결합으로 표현
- MA(q)
- 정상성 가정이 필요없다.
- 자기상관함수 : p+1 시차 이후 급격히 감소하여 절단된 형태
- 부분자기상관함수 : 시차가 증가함에 따라 점차 감소
3) 자기회귀누적이동평균모형(ARIMA)
- ARIMA(p, d, q) : 비정상 시계열 모형
- 차수 p : AR / d : 차분의 횟수 / 차수 q : MA
① p = 0이면 IMA(d, q) → d번 차분하면 MA(q)
② d = 0이면 ARMA(p, q) → 정상성 만족
③ q = 0이면 ARI(p, d) → d번 차분하면 AR(p)
4) 분해 시계열
- 시계열에 영향을 주는 일반적인 요인을 시계열에서 분리하여 분석
- 추세 요인 : 자료가 어떤 특정한 형태를 취할 때
- 계절 요인 : 고정된 주기에 따라 자료가 변화할 때
- 순환 요인 : 알려지지 않은 주기에 따라 자료가 변화할 때
- 불규칙 요인 : 위 세가지 요인으로 설명할 수 없는 요인
'정보수집 > 데이터분석' 카테고리의 다른 글
[ADP] 5과목. 데이터 시각화 (0) | 2020.06.06 |
---|---|
[ADsP/ADP] 3과목. 데이터 분석 기획 (0) | 2019.11.05 |
[ADP] 2과목 2장. 데이터 처리 기술 이해 :: 데이터 처리 프로세스 (0) | 2019.11.04 |
[ADP] 2과목 1장. 데이터 처리 기술 이해 :: 데이터 처리 프로세스 (0) | 2019.11.04 |
[ADsP/ADP] 1과목. 데이터 이해 (0) | 2019.11.04 |
Comments