스터디 날짜: 3월 26일
스터디 범위: Part 3 R 기초와 데이터 마트(p117-146), 통계분석 (p147-200)
Part 3. 데이터 분석
Chapter 1. R기초와 데이터 마트
Section 1. R 프로그래밍 기초
1. R의 자료 구조
- R에서 사용하는 데이터의 기본 타입: 숫자형, 문자형, 논리형
- 자료구조는 변수에 의해서 메모리에 할당
- 벡터, 행렬, 배열은 한 가지 타입의 데이터로만 이러우진 원소들만 저장, 데이터 프레임은 다양한 타입 저장 가능
- 데이터 형에 따른 R구조: 스칼라, 팩터, 백터, 행렬, 데이터프레임, 배열, 리스트 / 데이터 프레임과 리스트는 복합 원소 저장 가능
- factor: 문자형 데이터가 저장된 벡터의 일종 (성별, 혈액형, 학점)
- vector: 스칼라 원소들을 갖는 1차원 구조의 집합, 숫자, 문자, 논리형 데이터를 원소로 사용
- matrix: 2차원 구조, rbind(행 결합), cbind(열 결합), apply(행 또는 열에 특정 함수 적용)
- data.frame: 행과 열 2차원 테이블 구조
- array: 동일한 데이터 타입을 갖는 데이터 다차원 구조, 3차원 배열은 행, 열, 면을 가짐
- list: Key, Value로 구성, 리스트 내부에 벡터, 리스트, 데이터 프레임과 같이 다양한 자료구조 저장
2. R 자료구조 생성
1) vector 생성: c(데이터, 데이터 ...), seq(시작, 끝, 증감), rep(데이터, times, each)
2) matrix 생성: matrix(데이터, nrow= , ncol= ), matrix(데이터, nrow=, byrow=TRUE) -> 행 우선
3) array 생성: array(데이터, 데이터 크기) ex) array(1:4, c(1,4)) -> 1부터 4까지 1행 4열
4) list 생성: member <- list(name="영희", age=35, address="서울", gender="여자", htype="아파트)
5) factor 생성: bt.new <- factor(bt) 벡터 bt를 팩터 bt.new로 정의 / levels(bt.new) 팩터에 저장된 값의 종류 출력 / as.integer(bt.new) 팩터의 문자값을 숫자로 바꾸어 출력
3. R 기초
- cat(): 괄호 속 내용 하나로 연결해 화면에 출력
- print(): 괄호 속 한개 값을 화면에 출력
- ls(): 사용 중인 변수 목록을 확인
1) 패키지
함수, 데이터, 코드 등을 모아놓은 집합
패키지 사용: install.packages("패키지명"), library() 혹은 require() 함수로 불러오기
패키지 설치 후 확인: installed.packages()
패키지 삭제: remove.packages("패키지명")
2) plyr 패키지
데이터를 분석하기 용이한 형태로 변경해주는 함수들로 구성
데이터 분할 - 함수를 적용 - 재결합
데이터 프레임, 리스트, 배열에서 입력 자료형 - 출력 자료형 순서+ply / ex) ddply (데이터 프레임 - 데이터 프레임), ldply (리스트 - 데이터 프레임)
- apply: margin 방향으로 함수 적용, margin 값이 1이면 행, 2이면 열
ex) apply (a, 1, sum): a라는 행렬에서 각 행들의 합 / apply(iris[ , -5], 2, sum): iris 데이터의 5번째를 제외한 나머지 열들에 대한 합
- lapply: 벡터, 리스트, 데이터 프레임을 변수로 가짐, 함수 적용 결과는 리스트 형태로 반환
ex) lapply(x[1], mean): x에서 첫 번째로 인덱싱한 값들의 평균
- sapply: 행렬, 벡터 등으로 결과를 반환
- tapply: 그룹 단위로 함수를 수행
3) 데이터 형 및 자료 구조 변환
- 데이터 형 변환: as.factor(), as.numeric(), as.character(): 문자열을 저장한 벡터로 변환, as.matrix(), as.array(), as.data.frame(), as.Date(x,format): 날짜로 변환
- 자료구조 변환: as.vector(), as.matrix(), as.list(), as.data.frame()
Section 2. R 데이터 마트
- 데이터 저장소
1) 데이터 마트
- 단일 주제에 초점을 맞춘 단순한 형태의 데이터 웨어하우스
- 손쉬운 엑세스 제공
- 데이터 웨어하우스와 사용자 사이의 중간층에 위치
- 데이터 웨어하우스로부터 data를 복제하거나 자체 수집하는 것도 가능
- 요약변수: 데이터 마트에서 가장 기본이 됨, 재활용성 높음, 수집된 정보를 분석에 맞게 요약한 변수 (기간 및 상품별 구매 금액, 횟수, 구매여부)
- 파생변수: 기존 변수에 특정 조건 혹은 함수 등을 사용하여 새롭게 재정의한 변수, 데이터 속 변수들을 조합하거나 함수 적용하여 새로운 변수 생성 (특정시간 구매지수, 선호하는 가격대 변수)
2) 데이터 저장소 종류
- 데이터 웨어하우스: 중앙 집중식의 여러 주제 영역, 전사적, 데이터 원본은 여러 소스로부터 옴, 대규모, 하향식
- 데이터 마트: 분산된 특정 주제 영역, 단일 커뮤니티 또는 부서, 데이터 원본은 단일 또는 몇 개의 소스 또는 이미 수집된 데이터의 일부, 소규모, 상향식, 영업, 제무 마케팅 등 단일 주제에 중점
- 데이터 레이크: 방대한 양의 원시 데이터가 그대로 저장, 정형 및 비정형 데이터에 저장, 데이터를 원본 형식 그대로 수집 가능
2. 데이터 분석 패키지
1) sqldf 패키지: R에서 SQL명령어를 사용하게 해줌
2) plyr 패키지: ply(), ddply(), mply() 함수
3) data.table 패키지: 대규모 데이터 탐색, 연산, 병합
4) dplyr 패키지: select(), filter(), mutate(), arrange(), summarize() 함수
5) tidyr 패키지: gather(), spread(), separate(), unite() 함수
6) ggplot2 패키지: ggplot(), aes(), geom_(), scale_() 함수
7) forecast 패키지: 시계열 분석 수행 기능 제공, auto.arima()
8) caret 패키지: train(), trainControl(), tune(), predict() 함수
Section 3. 결측값 처리와 이상값 검색
- 결측값 처리
1) 데이터 탐색: 데이터 특성 파악 | str, summary, head, tail, plot 함수
2) 결측값 처리
- 표기되지 않은 값, 존재하지 않는 값을 의미
- NA, 공백으로 표기
- 측정 오류, 데이터 누락, 의도적인 누락으로 인해 발생
- 결측값 자체에도 의미 있을 수 있음 (가입자 중 특정 거래 없을 때, 부정 사용 방지 시스템 속 부정 사용 발생 x, 부도 예측 시스템에서 부도 발생 x)
3) 결측값 처리 방법
- 단순 대치법: 불완전 자료 다 무시, 결측값 존재하는 행 삭제
- 평균 대치법: 데이터의 평균으로 결측값 대치 -> 비 조건부 평균 대치법(관측 데이터의 평균 값으로 대치), 조건부 평균 대치법(회귀분석 활용하여 예측한 값으로 대치)
- 단순 확률 대치법: 관측된 데이터의 확률 분포를 사용하여 대체, 평균 대치법에서 추정한 표준오차 과소 추정 문제를 보완
- 다중 대치법: 단순 대치법을 여러번 수행, m개의 가상적 완전 자료를 만듦, 과소 추정 또는 계산의 난해성 문제
- 탐색: complete.cases(), is.na()
2. 이상값 검색
1) 이상값: 관측된 데이터 범위에서 크게 벗어난 아주 큰 값 또는 작은 값
2) 이상값 판단 방법
- ESD 알고리즘: 하나 이상의 이상치를 탐지하는 데 사용
- 상자 그림: IQR*1.5 밖의 값을 이상치로 간주
- summary() 평균과 중앙값과 IQR을 보고 판단
3) 이상값 처리
- 절단: 이상값을 포함하는 행 전체 삭제
- 조정: 이상값을 상한 또는 하한값으로 조정
3. 기초 분석 및 데이터 관리
1) 데이터 처리
- 데이터 웨어하우스나 데이터 마트를 통해 분석을 위한 데이터 구성
- 스테이징 영역(원시, 처리되지 않은 데이터가 변환되기 전에 임시로 있는 영역)에서 데이터 전처리해서 운영 데이터 저장소에 저장된 데이터를 DW, DM과 결합해 데이터 구성
2) 시각화 기법
- 가장 낮은 수준의 분석, 효율적 해석, 차트 형식, 다이어그램 맵, 워드 클라우드 등으로 나타냄
3) 공간 분석
- 공간적 차원과 관련된 속성들을 시각화
- 지도 위에 관련 속성들 생성 후 크기, 모양, 선, 굵기 등으로 데이터 구분
4) 탐색적 자료 분석(EDA)
- 특이점이나 의미 있는 사실 도출
- 데이터의 주요 특성을 요약, 패턴 발견, 변수간 잠재적 관계를 찾아감
- 데이터 분석 초기 단계에 수행, 데이터 특징과 구조적 관계를 알아내기 위함
5) 통계 분석
- 기술 통계: 데이터 특성 요약, 데이터는 표본, 오류 없음
- 요약통계: 전체적 특성 요약, 평균, 표준편차, 분산, 최빈값, 중위수, 사분위수
- 분포통계: 데이터 분포를 나타냄, 히스토그램, 분포표, 밀도함수
- 상관관계통계: 두 변수 간의 관계를 나타냄, 상관계수, 공분산
- 추측통계: 데이터 기반 모집단에 대한 추론, 숫자 또는 그래프의 형태, 모집단의 특성인 모수에 관해 통계적 추론, 오류 존재
- 추정: 특성 추정, 평균, 표준편차, 분포
- 검정: 가설 검정, 평균, 분산, 상관관계
6) 데이터 마이닝
자료에 존재하는 관계, 패턴, 규칙 등을 탐색, 모형화해 이전에 알지 못한 유용한 지식을 추출
- 데이터 마이닝 방법론: 데이터 베이스에서의 지식탐색, 기계학습, 패턴인식
- 데이터 마이닝 활용 분야: 금융(투자, 대출, 보험, 신용평가), 제조(생산, 품질 관리, 마케팅), 유통(고객 분석, 마케팅, 재고 관리), 의료(질병 진단, 치료, 예방), 정부(공공 정책 수립, 범죄 예방)
* 관련 용어: 시뮬레이션 모델링 (처리 시간에 대한 분포 파악), 최적화 (목적함수와 계수 값을 프로세스 별로 산출), 데이터 마이닝 분류(인구통계, 요약변수, 파생변수 산출), 비정형 데이터 (텍스트 마이닝을 거쳐 데이터 마트와 통합), 관계형 데이터 (사회 신경망 분석을 거쳐 통계값이 데이터 마트와 통합)
7) 시뮬레이션: 복잡한 실제 상황을 단순화해 컴퓨터상의 모델로 만들어 재현, 변경
8) 최적화: 목적함수 값을 최대화 또는 최소화하는 것을 목표, 제약조건 하에서 목표값을 개선
Chapter 2. 통계분석
Section 1. 통계학 개론
- 통계학
1) 통계분석
통계학: 정보를 추출하는 방법을 연구
통계분석: 수집된 데이터 이용하여 의미있는 정보 추출
통계적 추론: 의사결정을 수행하는 과정 (모수추정, 가설검정, 예측)
기술통계: 수량화하는 통계분석 방법론 (평균, 표준편차)
2) 모집단
조사하고자 하는 대상 집단 전체
- 원소: 모집단 구성하는 개체, 정보 수집 및 분석의 기본 단위
- 모수: 모집단의 특성을 나타내는 수치
- 표본: 추출한 표본으로 모집단의 특성을 추론
- 통계량: 표본의 평균, 분산같은 특성을 나타내는 수치
- 모집단의 모수 추정 과정: 모집단 -> 표본추출 -> 표본 -> 통계량 -> 추론 -> 모수
2. 표본추출
1) 표본 추출의 종류
- 단순 랜덤 추출법: 모집단의 각 개체가 표본으로 선택될 확률이 동일하게 추출
- 계통 추출법: 모집단 개체에 1,2,...N이라는 일련번호 부여 후 첫 번째 표본을 임의로 선택, 일정 간격으로 다음 표본 선택
- 층화 추출법: 모집단을 여러 집단 또는 층으로 나누고 각 집단 내에서 단순 랜덤 추출법으로 추출
- 군집(집단) 추출법: 모집단을 차이가 없는 여러 개의 집단으로 나누고 그 중 일부를 선택한 후 선택된 군집 내에서 필요한 마늠의 표본을 임의로 선택
2) 표본 추출 오차
표본을 추출하는 과정에서 발생하는 오차
- 표본 오차 / 표본 추출 오차: 모집단을 대표하지 못하는 표본을 추출하여 발생, 표본 오차는 표본의 크기가 커질수록 작아짐
- 비표본 추출 오차: 표본 오차를 제외한 조사, 집계, 분석 과정에서 발생할 수 있는 모든 오차
- 표본 편의: 표본 추출 과정에서 발생하는 추정값의 기댓값과 모수의 차이
표본 크기 늘리기, 무작위 추출 방법 사용, 층화추출법과 군집 추출법 등 특수한 추출 방법을 사용하여 오차 줄일 수 있음
3. 자료 형태
1) 척도
측정된 변수의 값을 표현하는 수준을 의미
- 명목척도: 특성을 분류하거나 확인을 하기 위한 목적, 값이 크고 작음을 나타내지 않고 범주를 표시, 측정값들 사이에 순서 없음, 사칙연산 불가능, 종류에 따른 빈도만 계산 (성별, 혈액형, 출생지)
- 서열(순위)척도: 높고 낮음의 순위만 제공, 양적인 비교 불가, 항목들 간에 서열이나 순위 존재, 측정값들 사이에 순서 존재, 측정값들의 간격 동일 X (금,은,동메달, 선호도, 만족도, 학년)
- 등간(구간) 척도: 측정값들 사이에 순위 부여, 순위 사이의 간격이 일정, 양적인 비교 가능, 절대0 존재X (온도계 수치, 물가 지수)
- 비율 척도: 절대 0이 존재, 측정값 사이의 비율 계산이 가능, 등간 척도+절대0의 개념 (금액, 길이, 몸무게, 나이, 소득, 강수량)
2) 중심 경향치
자료의 중심을 나타냄, 자료 전체를 대표하는 값으로 평균, 중앙값, 최빈값이 있음
- 평균: 무게 중심이 어디인지 나타냄
- 중앙값: 중앙에 위치하는 값
- 최빈값: 가장 많이 관찰되는 값
3) 변산성 (산포도, 데이터 퍼짐의 정도) 측정치
- 자료가 흩어져 있는 정도, 변할 수 있는 정도를 의미
- 범위, 사분위수 범위, 분산, 표준 편차, 절대 편차, 변동 계수 등이 있음
- 변산성이 크다 -> 변량들이 평균에서 멀리 떨어져 있음, 변동성 커짐
- 변산성이 작다 -> 변량들이 평균 주위에 밀집, 변동성 작아짐
- 편차: 변량 - 평균, 편차의 총합은 항상 0, 절댓값이 클수록 평균에서 멀리 떨어져 있는 것
- 분산: 편차의 제곱의 합을 n-1로 나눈 것, 데이터 집합이 얼마나 퍼져있는지 알아볼 수 있는 수치, 평균이 같아도 분산 다를 수 있음
- 표준편차: 분산의 양의 제곱근, 평균으로부터 각 데이터의 관찰 값까지의 평균 거리
- 변동 계수: 표준편차 / 평균, 관측되는 자료가 모두 양수일 때 사용
- 범위: 최소값과 최대값의 차이
4. 사건
- 독립사건: 서로 영향이 없음
- 배반사건: 동시에 일어날 수 없음, 한 쪽이 일어나면 다른 쪽이 일어나지 않을 때의 두 사건
- 종속사건: 한 사건의 결과가 다른 사건에 영향을 주는 사건
Section 2. 확률 및 확률 분포
- 확률과 확률분포
1) 확률: 가능성의 척도, 0과 1사이
- 표본공간: 모든 수행 결과들의 집합
- 사건: 관찰자가 관심있는 사건
- 원소: 개개의 사건에 대한 결과물
2) 조건부 확률
사건 B가 먼저 발생했다는 조건 아래서 사건 A가 일어날 확률
3) 베이즈 정리
두 확률 변수의 사전 확률과 사후 확률 사이의 관계를 나타냄
- P(A): 사전 확률, 사건 B가 발생하기 전 사건 A를 의미
- P(B|A): 우도, 가능도, A라는 사건이 발생했을 때 원래의 모집단이 B일 확률
- P(A|B): 사후 확률, 사건 B가 발생한 후 A의 확률
4) 확률 분포
- 확률 변수: 하나의 실험에서 나타날 수 있는 결과를 수치로 표현, 대문자 X로 표기, 표본공간에 발생하는 원소를 정의역, 대응되는 실수값을 치역
- 확률 분포: 확률 변수가 특정 값을 가질 확률을 나타내는 분포, 이산확률분포, 연속확률분포
- 이산 확률 분포: 확률 변수가 분리된 값을 가짐, 각 사건은 서로 독립, 확률 변수가 취할 수 있는 값은 유한개, 모든 값에 대한 확률의 합은 1
- 연속 확률 분포: 실수와 같이 연속적인 값을 가질 때, 확률 변수가 특정한 값을 가질 확률은 0, 특정 구간에 있을 확률은 그 구간의 넓이로 표현 (확률 밀도 함수),
- 확률 함수: 확률 변수의 값이 특정 점위에 속할 확률을 나타내는 함수 ,확률 변수가 이산값을 가질 때는 확률 질량 함수(이산 확률 변수에서 특정 값에 대한 확률을 나타냄), 연속 값을 가질 때는 확률 밀도 함수 (연속 값을 가질 때의 확률 함수)
5) 확률 변수의 기대값
- 확률 분포에서 평균적으로 기대되는 값
- 기대값 = ( 확률 변수 값 * 확률)을 모두 합한 값 = E(X)
- 평균과 유사성: 기대값은 확률 변수의 값에 대한 평균을 나타냄
- 가중 평균: 연속 확률 변수 - 기대값은 확률 밀도 함수로 가중 평균을 구함 / 이산 확률 변수 - 각 값에 대한 확률을 가중치로 사용한 평균
- 분포의 중심: 중심 경향성 제공, 분포를 하나의 대표값으로 설명하는데 사용
6) 확률 변수의 분산
- 분산은 평균으로 부터 얼마나 떨어져있는지를 나타낸 값 = V(X)
- 기대값으로부터 멀리 떨어져 있을 수록 분산이 커짐
- 0이 되는 경우는 확률 변수가 항상 기대값을 취하는 경우
2. 이산 확률 분포
1) 베르누이 분포: 결과가 두 가지 중 하나로만 나오는 실험이나 시행
- 베르누이 시행의 결과를 실수 0 또는 1로 바꾼 것이 베르누이 확률 변수
- 실험 결과는 두 가지로 구성, 성공의 확률은 항상 일정
- P(X=0)=p, P(X=1)=q -> 기댓값: p | 분산: p(1-p)
2) 이항분포: 베르누이 시행을 n번 반복했을 때 k번 성공할 확률
- n회 반복, x번 성공 -> 기댓값=np | 분산=np(1-p)
- 실험 결과 항상 두가지로 나옴, 성공 확률 항상 일정, 실험을 반복하면 성공의 횟수의 분포는 이항 분포를 따름
3) 기하 분포: 성공 확률이 p인 베르누이 시행에서 첫 번째 성공이 있기 까지 실패횟수 (x)를 나타낸 확률 분포
4) 포아송 분포: 단위 시간이나 영역에서 어떤 사건이 며 번 발생할 것인지를 표현
- 사건 발생은 무작위, 서로 독립, 사건 발생률은 일정
- 예시: 전화 통화 수신, 자동차 사고의 수, 고객의 방문 횟수, 상품의 판매량, 자연 재해 발생 횟수
3. 연속형 확률 분포
1) 정규 분포
- 평균을 중심으로 대칭인 종모양
- 분산이 클수록 모양이 양옆으로 넓게 퍼짐
2) t 분포
- 두 집단 평균이 동일한지 여부를 확인
- 모집단의 표준 편차를 모를 때 사용, 표본을 이용하여 모집단의 평균과 분산을 추측
- 평균이나 비율에 대한 검정에 사용
3) 카이제곱 분포
- 모평균과 모분산이 알려지지 않은 모집단의 모분산에 대한 가설 검정과 동질성 검정에 사용
- 분산에 대한 검정을 할 경우 카이제곱 분포나 F분포를 사용
4) F 분포
- 모집단 분산이 동일하다고 가정
- 두 모집단 간 분산, 평균, 비율의 동일성 검정에 사용
4. 추정과 가설
1) 통계적 추론
- 모집단의 표본으로 옹계량 계산하여 해당 모집단의 모수를 추정하고 추정 결과에 대한 신뢰성을 검정하는 통계적 방법
- 모수적 추론: 모집단에 특정 분포를 가정하고 모수에 대해 추론
- 비모수적 추론: 모집단에 대해 특정 분포 가정을 하지 않음
- 추정: 표본으로 부터 표본의 평균, 분산, 표준편차 (통계량)을 가지고 모집단의 모수 추측하여 결정 - 점추정, 구간추정으로 나뉨
- 검정: 설정한 명제에 대한 증거가 자료에서 나타나는지를 판단 - 가설 검정 (표본의 정보를 통해 가설에 대한 검정)
2) 점 추정
- 모수가 특정 값이라고 추정, 모수의 값이 얼마인지 추측 (A과목 수강한 전체 학생 중 임의로 30명 추출, 평균 70점, A과목 수강한 전체 학생들의 점수를 하나의 값 70점으로 추정)
- 적률법: 표본의 기댓값을 통해 모수 추정, 모집단의 분포가 복잡한 경우에 사용
- 최대 가능도 추정법: 함수 미분해서 기울기가 0인 위치에 존재하는 MLE를 찾음, 모집단의 분포에 대한 가정이 가능한 경우, 모집단의 분포가 알려져 있는 경우, 모집단의 분포가 간단한 경우에 사용
- 최소 제곱법: 회귀분석에서 많이 사용, 함수값과 측정값의 차이인 오차를 제곱한 합이 최소가 되는 함수를 구하는 방법
3) 구간 추정
- 추정 값에 대해 신뢰도 제시, 범위로 모수 추정, 모수를 포함할 것으로 기대되는 구간(신뢰구간)을 확률적으로 구함
- 추정량의 분포에 대한 전제 필요, 점 추정의 정확성을 보완, 구해진 구간 안에 모수가 있을 가능성에 대한 신뢰수준이 주어져야 한다
- 신뢰 수준: 모수값이 정해져 있을 때 다수 신뢰구간 중 모수값을 포함하는 신뢰구간이 존재할 확률 (신뢰수준이 95% -> n번 반복하여 추출하여 산정하는 신뢰 구간들 중에서 평균적으로 95%는 모수값을 포함하고 있을 것이라는 의미)
- 신뢰 구간: 신뢰 수준으로 추정된 통계적으로 유의미한 모수의 범위 (90%의 신뢰 구간 -> 100번 중 90번은 구간 내에 모평균이 포함), 표본의 크기가 커지만 신뢰 구간의 길이는 줄어듦
4) 가설 검정
- 모집단의 특성에 대한 가정, 통계적 가설을 표본을 사용하여 검토하는 통계적 추론
- 밝히고 싶은 가설 -> 특정 분포 따른다고 알려진 모집단에서 표본 추출 -> 표본의 정보를 통해 가설에 대한 검정
- 가설 설정 후 표본 관찰을 통해 가설의 채택 여부 결정
- 통계적 유의성(모집단에 대한 가설이 가지는 통계적 의미)를 검정하는 것
- 귀무가설: 가설 검정의 대상이 되는 가설, 연구자가 부정하고자 하는 가설/ 알고 있는 것과 같음, 영향력, 효과 없음에 대한 가설
- 대립가설: 연구자가 연구를 토해 입증 또는 증명되기를 기대하는 에상, 주장, 귀무가설이 기각되면 채택됨/ 알고 있는 것과 같음, 영향력, 효과 있음에 대한 가설
가설 검정 요류
- 제1종 오류: 귀무가설이 참인데 잘못하여 이를 기각
- 제2종 오류: 귀무가설이 거짓인데 이를 채택
가설검정 절차
- 가설 설정 - 귀무가설, 대립가설 설정
- 유의 수준의 결정: 제1종 오류의 최대 허용 한계 설정( 보통 0.05)
- 표집 및 검정 통계량 설정: 가설의 진위를 판단하는 기준
- 기각역의 설정: 귀무가설이 맞다는 전제 하에 구한 검정 통계량의 분포에서 확률이 유의 수준인 부분
- 검정 통계량 계산 및 귀무가설 확인: 검정 통계량으로 p-value 구함 (낮을수록 귀무가설과 데이터의 일치성이 낮아 대립가설을 지지하는 증거가 강해짐)
- 기각/채택 판단: p-value < 유의수준 -> 귀무가설 기각, 대립가설 채택 | p-value > 유의수준 -> 귀무가설 채택
5) 모수 검정과 비모수 검정
- 모수 검정: 표본을 추출해 평균, 표준편차, 분산 등의 통계량으로 모집단을 추정, 검정력 높음, 신뢰구간 계산 가능, 모수에 대한 가정이 만족되는 경우에 사용
- 비모수 검정: 모수에 대한 가정을 전제로 하지 않고 모집단의 형태와 관계없이 주어진 데이터에서 직접 확률을 계산하여 통계적으로 검정 (관측된 수가 적거나 정규분포를 따르지 않는다고 증명되면 모수적 방법 사용 불가하므로 비모수 검정 사용), 검정력 낮음, 신뢰구간 계산 불가
Section 3. 기초 통계 분석
- 기술 통계
- 표, 그림, 통계량 등 정리 및 요약한 것, 자료를 쉽게 파악할 수 있도록 하는 기초적 통계
- 통계량에 의한 자료 정리
- 중심위치 측도: 표본 평균, 중앙값
- 산포의 측도: 분산, 표준편차, 사분위수범위, 사분위수, 평균의 표준 오차
- 자료의 집중화 경향: 평균, 중앙값, 최빈수, 사분위수
- 분포의 형태: 왜도(데이터 분포가 기울어진 정도를 나타냄, 관측값들이 어느쪽으로 치우쳐있는가를 측정), 첨도 (데이터 분포가 얼마나 뾰족한지, 평균에 어느정도 몰려있는지 측정)
- 그래프: 히스토그램(연속형), 막대 그래프(범주형), 줄기-잎 그림, 상자그림
- R: summary, mean, median, sd(표준편차), var(분산), quantile(사분위수)
2. 회귀분석
1) 회귀분석 개념
- 독립변수들이 종속변수에 미치는 영향을 추정, 인과 관계 분석, 모형 적합, 관심있는 변수를 예측 및 추론
- 독립변수가 변할 때 종속 변수가 어떻게 변하는지 수식으로 표현
- 독립 변수가 1개인 단순 회귀, 독립변수가 2개 이상인 다중회귀로 구분
- y: 종속변수(반응변수, 결과변수) | x: 독립변수 (설명변수, 예측변수)
- 회귀 계수: 데이터를 가장 잘 설명하는 회귀 방정식을 찾기 위해 최소 제곱법 사용, 오차의 제곱에 대한 합이 최소가 되는 추세선을 찾아내고 이를 이용하여 회귀분석 실시
- 선형 쇠귀 분석의 가정: 선형성, 등분산성, 독립성, 비상관성, 정상성
- 선형 회귀 모델 평가 방법: MAE(실제 값과 예측 값의 절대 차이의 평균), MAPE(실제 값과 예측 값의 절대 차이의 평균을 실제 값으로 나눈 백분율), MSE(실제 값과 예측값의 차이의 제곱의 평균), RMSE(MSE의 제곱근), MLSE(실제값과 예측값의 로그 차이의 제곱의 평균), RMSLE(MLSE의 제곱근)
2) 다중 선형 회귀 분석
- 독립 변수가 2개 이상인 선형 회귀 분석, 독립변수가 k개이면 매개변수는 k+1개
- R에서는 lm() 함수로 구성 가능, F통계량으로 유의성 확인, 회귀 계수의 유의성은 t통계량으로 확인
- 독립변수 간에 종속관계인 다중 공선성 문제가 발생할 수 있음
다중 공선성
- 회귀 분석에서 독립변수들 간에 상관관계가 존재하는 것, 회귀 모형의 추정량이 불안정해질 수 있음
- 공선성 검정 방법: 공차 계수 (0.1미만이면 공선성 존재 가능성 높음), 분산 팽창 요인 (VIF가 5이상), 상태지수 (30이상)
- 연봉과 직급, 시험점수와 학점처럼 강한 상관관계가 있을 때 모두 독립변수로 포함하면 공선성 존재 가능성 높음
- 다중 공선성은 독립변수들간에 강한 상관관계가 발생하여 데이터 분석에 부정적인 영향을 미치는 현상 (정확한 추정이 어려움)
- 해결방법: 선형관계가 있는 변수 제거, 주성분 회귀를 수행하여 차원 줄이기
회귀 분석 결과에 대한 해석 방법
- R에서는 lm()함수 사용 / result <- lm (y~x1+x2,...,data), 결과확인은 summary(result)
회귀분석에 대한 분산 분석
- 집단 내의 분산, 총평균, 각 집단의 평균의 차이에 의해 생긴 집단 간 분산의 비교를 통해 만들어진 F분포를 사용하여 가설검정
- 집단별 평균과 분산 구함 -> 집단 간 분산과 집단 내 분산을 구함 -> 집단 간 분산과 집단 내 분산의 비율을 구함 -> F통계량을 구하고 F 분포를 사용하여 귀무가설을 검정
- 선형 회귀 분석에서 ANOVA는 모델을 평가하거나 모델간의 비교를 하기 위해 사용
- 집단의 평균 차이를 검정, 2개 이상의 집단에 대한 평균이 서로 차이가 있는지 검정
- R에서는 anova() 함수 이용하여 분산분석
- 분산분석 가정 사항: 정규성(정규분포 따름),등분산성 (동일한 분산 가져야 함), 독립성(서로 영향 안 줌)
- 분산 분석 유형: 일원분산분석(두 개 이상의 집단의 평균이 동일한지), 이원분산분석(두 개의 독립변수에 의해 영향을 받는 두 개 이상의 집단의 평균이 동일한지)
- 일원분산분석의 사례: 두 개 이상의 약의 효과 비교, 교육 방법 효과 비교, 마케팅 전략의 효과 비교
- 이원분산분석의 사례: 성별과 학력에 따른 평균 키의 차이 검정, 나이와 연봉에 따른 평균 소비의 차이 검정, 지역과 브랜드에 따른 평균 구매 빈도 차이 검정
다중 선형 회귀 모델에서 변수 선택
- 종속 변수를 설명하는데 도움이 되는 독립변수가 다수 존재 (모든 독립변수가 종속 변수를 설명하는데 사용되는 건 아님)
- R에서는 모델에 기여하는 변수를 선별할 수 있는 stepAIC() 함수가 있음
- stepAIC(): AIC 값이 가장 낮은 회귀 모형이 최적, 최적 모형 선택하는 과정 간소화, AIC 샘플 크기에 따라 민감하게 변할 수 있음, 다중 공선성 문제에 민감하게 반응, 최적의 모형이 아닌 과적합된 모형 선택할 수도 있음
선형 회귀 모델의 정규화
- 선형회귀모델에 대해 과적합되는 문제 개선 (모델이 훈련 데이터에 너무 맞춰져서 새로운 입력 데이터에 대해 일반화가 어려워지는 것이 과적합)-> 선형 회귀 계수에 대한 제약조건을 추가하여 모델의 일반화 성능 개선
- 라쏘 회귀: L1 규제(회귀 계수의 절대값을 제한)를 적용, 다중 공선성 문제를 완화
- 릿지 회귀: L2 규제(회귀 계수의 제곱의 합을 제한)를 적용, 다중 공선성 문제를 완화
- 엘라스틱 넷: L1 규제 + L2 규제 결합한 회귀모형, 비용함수에 L1 노름과 L2 노름을 추가
3) 최적 회귀 방정식의 선택
- 변수 선택: 독립 변수 중에 종속 변수에 관련성이 높은 변수들을 선택
- 가능한 적은 수의 독립변수 선택
- AIC 또는 BIC 값이 가장 작은 모델을 선택 (R에서는 둘 다에 해당하는 함수 제공)
- AIC: 최소의 정보손실을 갖는 모델이 가장 잘 적합된 모델로 선택된다는 이론으로 만들어진 지표
- BIC: 자료의 수가 많아질수록 부정확해지는 문제를 해결하기 위해 도입된 변수 선택 지표
- 변수 선택법
- 전진선택법: 독립변수를 하나씩 추가하면서 설명력이 가장 큰 조합 찾는 것, 독립변수 개수 많아도 사용 가능, 변수값의 작은 변화에도 결과가 크게 달라져서 안정성 부족, 설명변수 추가했을 때 모델 성능 개선되지 않으면 중단
- 후진제거법: 가장 적은 영향을 주는 변수부터 독립변수를 하나씩 제거해나가면서 설명력이 가장 큰 조합을 찾는 것, 변수의 개수가 많을 때는 사용하기 어려움
- 단계적 방법: 전진 선택법과 후진 제거법을 함께 사용, 전진 선택법으로 변수 추가하면서 추가된 변수에 따라 기존 변수의 중요도가 약해지면 해당 변수 제거
- step(대상, 탐색범위, 방향) 함수: 단계적 회귀 분석을 수행하는 데 사용되는 함수, 모든 변수를 포함하는 모델에서 시작하여 AIC 또는 BIC와 같은 정보 기준을 사용해 변수를 추가하거나 제거하는 과정 반복, AIC가 작은 방향으로 변수를 선택
3. 상관 분석
1) 상관계수
- 두 변수가 함께 변하는 정도를 -1~1 범위의 수로 나타냄
- 양수인 경우 두 변수가 같은 방향으로 변화, 음수인 경우 반대방향으로 변화, 0이면 두 변수가 독립이며 한 변수의 변화로 다른 변수의 변화 예측 불가, 상관계수의 절대값이 클수록 두 변수는 함께 크게 변화
- R에서는 상관계수를 구할 수 있는 cor(), cor.test() 함수, Hmisc 패키지의 rcorr()도 있음
- 피어슨 상관계수
- 두 변수 사이의 선형 상관 관계를 측정하는 통계량, 두 변수의 공분산을 두 변수의 표준편차의 곱으로 나눈 값
- 수치형 자료, 등간 척도, 비율 척도에 해당되는 연속형 데이터로 상관계수를 구함
- -1~1 사이의 값을 가짐, 1에 가까울수록 두 변수 사이에는 양의 선형 상관 관계, -1에 가까울수록 음의 선형 상관관계, 0에 가까울수록 선형 상관관계가 없다는 것을 의미
- 스피어만 상관계수
- 서열척도에 해당되는 데이터 순서에 대해 의미를 부여한 자료로 부터 상관계수를 구함
- 두 변수의 순위를 비교하여 계산, 비선형적인 관계, 연속형 외에 이산형 데이터도 사용 가능, -1에서 1사이의 값을 가짐
2) 척도
- 명명척도: 데이터 사이에 순서 없음, 사칙연산 불가능, 종류에 따라 빈도수를 계산
- 비모수통계, 빈도분석, 교차분석, 카이제곱 검정에 적용 가능 (혈액형, 성별, 국적, 출신학교)
- 서열 척도: 데이터 사이에 순서 있음, 사칙 연산 불가능, 데이터 값들 간에 간격이 다름
- 서열 상관관계, 비모수 통계, 스피어만 상관분석에 적용 가능 (직급, 사장과 부장간 차이와 부장과 차장간의 간격이 다름)
- 등간 척도: 데이터 사이에 상대적인 크기를 나타냄, 데이터 값들 간의 차이가 동일, 절대 0의 값을 가지고 있지 않음 (절대 영점 없음)
- 모수 통계, 피어슨 상관 분석에 적용 가능 (섭씨온도, 연도 등이 해당)
- 비율 척도: 등간 척도와 유사, 사칙연산 가능, 데이터 값들 간에 차이 비교 가능, 절대 영점이 있음
- 모수 통계, 피어슨 상관 분석에 적용 가능 (길이, 무게, 자녀의 수, 시간)
3) 공분산(Cov)
- 2개의 변수에 대해 하나의 변수 값이 변화함에 따라 다른 하나의 변수 값의 변화 정도를 나타낸 수치
- 두 변수에 대한 방향성 확인, 얼마나 같이 변화하는지를 측정
- 단위에 따라 공분산 크기가 달라짐, 절대적 크기로 판단하기 어려움
- 선형적인 관계를 측정하므로 두 변수가 비선형적으로 함께 변하는 경우는 잘 측정하지 못함
- 공분산의 크기가 클수록 두 변수는 함께 많이 변화
- 공분산 수치 값을 표준화하여 -1~1사이로 변환한 값이 상관계수
4. 주성분 분석
- 여러 변수들의 변량을 주성분이라는 서로 상관성이 높은 변수들의 선형 결합으로 만들어 기존의 상관성이 높은 변수들을 요약 및 축소
- 상관관계가 있는 고차원 자료 -> 저차원 자료로 변환
- 정보 손실량에 대한 최소화 및 분산을 최대화함, 다중 공선성 문제 해결 가능
- 군집 분석의 사전 분석 및 회귀 부넉에서 설명변수의 개수를 결정하거나 시계열 분석 등 다양한 분석에도 중성분 분석을 사용
1) 주성분과 분산
- 분산이 가장 큰 첫 번째 주성분: 전체 변동을 가장 많이 설명
- 분산이 두 번째로 큰 주성분: 제1 주성분과 독립, 제1 주성분의 영향 제거한 상태에서 데이터를 가장 잘 설명
- 주성분 간에는 상관계수가 0이면서 각 주성분은 분산을 최대화
2) 차원 축소
- 차원이 적어지면 겹치는 부분에 정보 손실 발생 -> 분산을 늘려 정보의 손실을 최소화 하는 차원 축소 기법
- 차원 감소 폭의 결정은 스크리 산점도를 활용
- 고유값을 기준으로 정렬, 가장큰 고유값에 해당하는 고유벡터로부터 데이터를 복원
3) R에서 주성분 분석
- princomp(), prcomp() 함수 이용
- 작성형식: princomp(주성분 분석을 수행하고자 하는 데이터, cor=T/F), prcomp(주성분 분석을 수행하고자 하는 데이터, scale=T/F)
- 주성분 분석 결과 해석
- Standard deviation: 표준편차
- Proportion of Variance: 분산비율, 각 주성분이 차지하는 비율, 클수록 영향도 높음
- Cumulative Proportion: 분산의 누적합, 분산 비율의 합
- 주성분 분석의 적재 값
- 적재 값은 예측 변수들을 성분으로 변형할 때 사용
- loadings 변수 사용하여 알 수 있음 -> 주성분에 기여하는 가중치가 제시됨
4) 주성분 결정
- 누적 기여율, 고유값, 스크리 산점도 -> 주성분의 수를 결정하는 기준
- 주성분 선택법: 스크리 산점도(그래프의 기울기가 완만해지기 직전까지를 주성분 수로 정함), 전체 변이 공헌도(전체 분산 비율이 70~90% 사이가 되는 주성분의 개수를 선택), 평균 고윳값(고윳값들의 평균을 구한 후 고윳값이 평균값 이상이 되는 주성분을 제거)
5. 다차원 척도법
- 개체간 유사성 및 비유사성을 2차원 또는 3차원으로 시각화
- 개체간 근접성을 시각화, 데이터 속 패턴이나 구조 파악, 유클리드 거리 행렬을 이용하여 개체간 거리 계산
- 다차원 척도법(MDS)
- 계량적 MDS: 데이터가 연속형 변수(구간척도, 비율척도)인 경우에 사용, 개체들 간 유클리드 거리 행렬 계산 후 개체들 간의 비유사성을 공간상에 표현
- 비계량적 MDS: 데이터가 순서 척도인 경우 사용, 개체들 간의 거리가 순서로 주어진 경우에는 순서 척도를 거리의 속성과 같도록 변환하여 거리를 생성
6. 시계열 분석
- 시간의 흐름에 따라 관찰된 자료에 대하여 특성 파악, 미래값 예측
- 목적: 시계열 데이터에 대한 경향, 주기, 계절성, 불규칙성 등 패턴을 설명할 수 있는 모델을 만들기 위함
- 시간 그래프 작성 -> 추세와 계절성 제거 -> 잔차 예측 -> 잔차에 대해 모델 적합 -> 예측된 잔차에 추세와 계절성을 더하여 미래 예측 순서
1) 정상성
- 시점에 관계없이 시계열의 특성이 일정, 시계열 자료 분석을 위해서는 정상성 만족해야 함
- 정상성 조건인 평균 일정, 분산 일정, 공분산 일정을 모두 만족해야 정상성 시계열 자료라고 할 수 있음, 만족못하는 경우엔 비정상 시계열
- 일정한 평균: 모든 시점에 대해 일정한 평균을 가짐, 일정하지 않다면 차분(현시점 자료에서 이전 시점 자료를 빼는 것)을 통해 정상화
- 일정한 분산: 분산도 시점에 의존X, 분산이 일정하지 않은 시계열 데이터는 변환을 통해 정상화
- 일정한 공분산: 공분산도 시차에만 의존할 뿐 특정 시점에는 의존 X
2) 시계열 모형
- 시계열 분석을 위한 모델: 자기 회귀 모형, 이동 평균 모형, 자기 회귀 누적 이동 평균 모형, 지수 평활법
- 자기 회귀 모형(AR): 변수의 과거 값에 대한 선형 조합 -> 관심있는 변수 예측, AR 모형인지 판단하기 위해서 자기상관함수, 부분자기상관함수를 이용, 현시점의 자료가 p시점 전까지 유한개의 과거 자료로 설명될 수 있으면 p차 자기 회귀 모형이라고 함
- 이동평균모형(MA): 현시점의 자료를 p시점 전까지 유한개 백색잡음들의 선형결합으로 표현, AR 모형은 과거의 값을 활용하여 미래를 예측하는 반면 MA 모형은 과거의 예측 오차를 활용하여 미래를 예측함, 과거의 몇 개의 관측치들에 대해 평균 계산하여 전반적인 추세 파악, 항상 정상성을 만족함, MA 모형인지 판단하기 위해 자기 상관함수와 부분자기상관함수를 이용
- ARIMA(자기 회귀 누적 이동 평균 모형): 분기, 연간, 주간, 월간 단위로 지표 리뷰하여 트렌드 분석, 비정상 시계열 모형, 차분이나 변환을 통해 AR, MA, ARMA 모형으로 정상화 가능
- 지수평활법: 데이터의 추세와 계절성에 대한 설명에 기초하여 시계열 예측, 지수 평활을 사용하여 구한 예측값은 과거 관측값의 가중 평균, 과거 관측값은 오래될수록 감소하고 가장 최근 관측값에 대해서는 높은 가중치
3) 분해 시계열
- 시계열에 영향을 주는 요인을 분해식 사용하여 시계열에서 분리해 분석
- 추세요인, 계절요인, 순환요인, 불규칙 요인으로 구성
통계를 제대로 공부하는 것은 처음이었어서 어려웠다.
R은 학교에서 배우고 있었던 부분이라 이해하기가 그렇게 어렵지는 않았는데 통계 부분에서는 내가 알고 있었던 '모집단에서 표본을 뽑아서 가설을 설정하고 채택한다'를 아주 상세하게 배워서 나중에 통계를 쓸 때도 도움이 될 것 같다. 이해가 안 되는 부분도 많았지만 따로 찾아서 이해를 할 수 있도록 할 것이다.
'BDA 빅데이터 분석 학회 > ADsP 스터디' 카테고리의 다른 글
ADsP 자격증 스터디 4주차 (데이터의 이해) (0) | 2024.05.03 |
---|---|
ADsP 자격증 스터디 3주차 (데이터 분석 기획) (1) | 2024.05.03 |
ADsP 자격증 스터디 2주차(정형 데이터 마이닝) (0) | 2024.05.03 |