DataAnalysis

[ADsP] 04_R기초와 데이터 마트

2wnswoo 2024. 10. 4. 13:52

- R기초

데이터 전처리

  - 데이터를 분석하기 위해 데이터를 가공하는 작업

(1) 요약변수 : 수집된 정보를 종합한 변수로서 재활용성이 높음 ( 1개월간 수입 )

(2) 파생변수 : 의미를 부여한 변수, 논리적 타당성 필요 ( 고객구매등급 )

 

● R에서의 데이터 전처리 패키지

  (1) reshape : melt로 녹인 데이터를 cast로 재구조화

  (2) sqldf : R에서 SQL을 활용하여 데이터프레임( DF )을 다룰 수 있게 해줌

  (3) plyt : apply 함수 기반 데이터 처리

  (4) data.table : 칼럼별 인덱스로 빠른 처리가 가능한 데이터 구조

 

- 데이터 마트

● 데이터 마트( DM )

  - 데이터 웨어 하우스의 한 분야로 특정 목적을 위해 사용 ( 소규모 데이터웨어하우스 )

 

 - 결측값과 이상값 검색

● EDA ( 탐색적 자료 분석 )

  - 데이터의 의미를 찾기 위해 통계, 시각화를 통해 파악

  - EDA의 4가지 주제 : 저항성의 강조, 잔차 계산, 자료변수의 재표현, 그래프를 통한 현시성

 

● 결측값

  - 존재하지 않는 데이터, null/NA로 표시, 의미 있는 데이터 일수도 있음

(1) 단순 대치법

  - 결측값 가지는 데이터 삭제

  - complete.cases 함수로 FALSE 데이터에 결측값 제거

(2) 평균 대치법

  - 평균으로 대치

(3) 단순 확률 대치법

  - 가까운 값으로 변경 ( KNN을 활용 )

(4) 다중 대치법

  - 여러번 대치 ( 대치 > 분석 > 결합 )

 

● 이상값

  - 극단적으로 크거나 작은값이며, 의미 있는 데이터 일수도 있음 ( ex. 체중 3kg )

  - 이상값을 항상 제거하는 것은 아님

(1) ESD( Extreme Studentized Deviation )

  - 평균으로부터 표준편차의 3배 넘어가는 데이터는 이상값으로 판단

 

2. 통계분석

- 통계학 개론

전수조사와 표본조사

  - 전수조사 : 전체를 다 조사, 시간과 비용 많이 소모

  - 표본조사 : 일부만 추출하여 모집단을 분석

 

● 표본 추출 방법

(1) 랜덤 추출법 : 무작위로 표본 추출

(2) 계통 추출법 : 번호 부여하여 일정 간격으로 추출

(3) 집락 추출법

  - 여러 군집으로 나눈 뒤 군집을 선택하여 랜덤 추출

  - 군집 내 이질적 특징, 군집 간 동질적 특징

(4) 층화 추출법

  - 군집 내 동질적 특징, 군집 간 이질적 특징

  - 같은 비율로 추출 시, 비례 층화 추출법

(5) 복원, 비복원 추출

  - 복원 추출 : 추출되었던 데이터를 다시 포함시켜 표본 추출

  - 비복원 추출 : 추출되었던 데이터는 제외하고 표본 추출

 

● 자료의 척도 구분

(1) 질적 척도

  - 명목적도 : 어느 집단에 속하는지 나타내는 자료 ( 대학교, 성별 )

  - 순서척도( 서열척도 ) : 서열관계가 존재하는 자료 ( 학년, 순위 )

(2) 양적 척도

  - 등간척도( 구간척도 ) : 구간 사이 간격이 의미가 있으며 덧셈과 뺄셈만 가능 ( 온도, 치수 등 )

  - 비율척도 : 절대적 기준 0이 존재하고 사칙연산 가능한 자료 ( 무게, 나이 등 )

 

기초 통계량

(1) 평균( 기댓값 ) : 전체 합을 개수로 나눈 값

(2) 중앙값 : 자료를 크기 순으로 나열했을 때 가운데 값

(3) 최빈값 : 가장 빈번하게 등장하는 값

(4) 분산 : 자료들이 퍼져있는 정도 / 표준편차 : 분산의 제곱근 값

(5) 공분산 : 두 확률변수의 상관정도

  - 공분산 = 0 : 상관이 전혀 없는 상태

  - 공분산 > 0 : 양의 상관관계

  - 공분산 < 0 : 음의 상관관계

  - 최소, 최대값이 없어 강약 판단 불가

(6) 상관계수

  - 상관정도를 -1 ~ 1 값으로 표현

  - 상관계수 = 1 정비례 관계

  - 상관계수 = -1 : 반비례 관계

 

첨도와 왜도

(1) 첨도 : 자료의 분포가 얼마나 뾰족한지 나타내는 척도

  - 첨도 = 0 : 정규 분포 형태

> 3을 기준으로 정규분포 형태를 판단하기도 함

  - 값이 클수록 뾰족한 모양

 

(2) 왜도 : 자료 분포의 비대칭 정도 ( 0일때 대칭 )

  - 왜도 < 0 : 최빈값 > 중앙값 > 평균값

  - 왜도 > 0 : 최빈값 < 중앙값 < 평균값

 

Summary 함수 결과의 해석

 

 기초 확률 이론

(1) 조건부 확률 : 특정 사건 B가 발생했을 때 A가 발생할 확률

  - p(A|B) = P(A ∩ B) / P(B) ( 백신을 맞았을 때 감기에 걸릴 확률 )

(2) 독립사건 : A,B가 서로 영향을 주지 않는 사건 P(A|B) = P(A)

  - P(A ∩ B) = P(A)P(B) (주사위 A가 3이 나왔을 때, 주사위 B가 3이 나올 확률)

(3) 배반사건 : A, B가 서로 동시에 일어나지 않는 사건

  - P(A ∩ B) = 0 ( 동전을 던졌을 때 앞면과 뒷면이 동시에 나올 확률 )

 

 확률분포

  - 확률변수가 특정한 값을 가질 확률을 나타내는 함수

(1) 이산 확률분포

- 값을 셀 수 있는 분포 확률질량함수로 표현

  1) 이산균등분포 : 모든 곳에서 값이 일정한 분포

  2) 베르누이분포 : 매 시행마다 오직 두 가지의 결과 분인 분포

  3) 이항분포 : N번의 독립적인 베르누이 시행 통해 성공할 확률 P를 가지는 분포

  4) 기하분포 : 처음 성공이 나올 때까지 시도횟수를 확률변수로 가지는 분포

  5) 다항분포 : 여러 개의 값을 가질 수 잇는 확률 변수들에 대한 분포

  6) 포아송분포 : 단위 공간 내에서 발생할 수 잇는 사건의 발생 횟수를 표현하는 분포

 

(2) 연속 확률분포

  - 값을 셀 수 없는 분포, 확률밀도함수로 표현

  1) 정규분포 : 우리가 일상생활에서 흔히 보는 가우스분포 (Z검정)

  2) t분포 : 두 집단의 평균치 차이의 비교 검정 시 사용 (T검정)

    - 데이터 개수가 30개 이상이면 정규성 검정 불필요

  3) 카이제곱분포 : 두 집단의 동질성 검정, 혹은 단일 집단 오분산에 대한 검정 ( 카이제곱 검정 )

  4) F분포 : 두 집단의 분산의 동일성 검정 시 사용 (F검정)

 

(3) 확률변수 X의 f(x) 확률분포에 대한 기댓값(E(X))

 

 추정

  - 표본으로부터 모집단을 추측하는 방법

(1) 점추정 : 모집단이 특정한 값

(2) 구간추정 : 모집단이 특정한 구간 ( 95%, 99%를 가장 많이 사용 )

 

 가설검정

  - 모집단의 특성에 대한 주장을 가설로 세우고 표본조사로 가설의 채택여부를 판정

(1) 귀무가설(H0) : 일반적으로 생각하는 가설 ( 차이가 없다 )

(2) 대립가설(H1) : 귀무가설을 기각하는 가설, 증명하고자 하는 가설 ( 차이가 있다, 크다/작다 )

(3) 유의수준(α) : 귀무가설이 참일때 기각하는 1종 오류를 범할 확률의 허용 한계 ( 일반적 0.05 )

(4) 유의확률( p-value ) : 귀무가설을 지지하는 정도를 나타내는 확률

검정결과 → H0가 사실이라고 판정 H0가 거짓이라고 판정
실제 ↓
H0가 사실 옳은 결정 1종 오류(α)
H0가 거짓 2종 오류(β) 옳은 결정

 

 가설 검정 문제 풀이 방법

  1) 귀무가설 / 대립가설 설정

    - '차이가 없다' 혹은 '동일하다' 귀무가설

  2) 양측 혹은 단측검정 확인

    - 대립가설의 값이 '같지 않다' 양측검정 / '값이 크다,','값이 작다' 단측검정

  3) 일표본 혹은 이표본 확인

    - 하나의 모집단 > 일표본 / 두 개의 모집단 > 이표본

  4) 귀무가설 기각 혹은 채택

    - p-value < 유의수준(α) → 귀무가설 기각 / p-value > 유의수준(α) 귀무가설 채택

  5) t검정인 경우 - 단일표본, 대응표본, 독립표본 확인

    - 모집단에 대한 평균검정 > 단일표본

    - 동일 모집단에 대한 평균비교 검정 > 대응표본

    - 서로 다른 모집단에 대한 평균비교 검정 > 독립표본

 

1) 귀무가설/대립가설 설정
  - '차이가 없다' 혹은 '동일하다' → 귀무가설로 설정
: 두 학교의 성적은 동일하다
2) 양측 혹은 단측검정 확인
  - 대립가설의 값이 같지 않다 → 양측검정
3) 일표본 혹은 이표본 확인

  - 두 개의 모집단 → 이표본
4) 귀무가설 기각 혹은 채택
  - p-value : 0.5515 > 유의수준(α) : 0.05 →  귀무가설 채택
5) 단일표본, 대응표본, 독립표본 확인
  - 서로 다른 모집단에 대한 평균비교 검정 → 독립표본

 

 비모수검정

  (1) 모집단에 대한 아무런 정보 없을때

  (2) 관측 자료가 특정 분포를 따른다고 가정 불가

  (3) 부호검정, 순위합검정, 만-휘트니 U검정, 크리스컬-윌리스 검정

 

- 기초 통계분석

 회귀분석

  (1) 개념 : 독립변수들이 종속변수에 영향을 미치는지 파악하는 분석방법

    1) 독립변수 : 원인을 나타내는 변수 (x)

    2) 종속변수 : 결과를 나타내는 변수 (y)

    3) 잔차 : 계산값과 예측값의 차이 ( 오차 : 모집단 기준, 잔차 : 표본집단 기준 )

  (2) 회귀계수 추정방법

    - 최소제곱법 : 잔차의 제곱합이 최소가 되는 회귀계수와 절편을 구하는 방법

  (3) 회귀모형 평가

    - R-squared : 총 변동 중에서 회귀모형에 의하여 설명되는 변동이 차지하는 비율 ( 0 ~ 1 )

 

 회귀분석의 가정

  (1) 선형성 : 종속변수와 독립변수는 선형관계

  (2) 동분산성 : 잔차의 분산이 고르게 분포

  (3) 정상성( 정규성 ) : 잔차가 정규분포의 특성을 지님

  (4) 독립성 : 독립변수들간 상관관계가 없음

 

 회귀분석 종류

  (1) 단순회귀 : 1개의 독립변수와 종속변수의 선형관계

  (2) 다중회귀 : 2개 이상의 독립변수와 종속변수의 선형관계

  (3) 다항회귀 : 2개 이상의 독립변수와 종속변수가 2차 함수 이상의 관계

  (4) 릿지회귀 : L2 규제를 포함하는 회귀 모형

  (5) 라쏘회귀 : L1 규제를 포함하는 회귀 모형

 

 

 회귀 모형의 검정

  1) 독립변수와 종속변수 설정

  2) 회귀계수 값의 추정

  3) 모형이 통계적으로 유의미한가 : 모형에 대한 F통계랑, p-value

    - 귀무가설 : '모든 회귀계수는 0이다'

  4) 회귀계수들이 유의미한가 : 회귀계수들의 t통계량, p-value

    - 각각의 회귀계수에 대한 귀무가설 : '회귀 계수는 0이다'

  5) 위1), 2) 모두를 기각하면 해당 모델을 활용

  6) 모형이 설명력을 갖는가 : 결정계수( R square )

 

 최적의 회귀 방정식 탐색 방법

  (1) 전진선택법 : 변수를 하나씩 추가하면 최적의 회귀방정식을 찾아내는 방법

  (2) 후진제거법 : 변수를 하나씩 제거하면서 최적의 회귀방정식을 찾아내는 방법

  (3) 단계별 선택법 : 전진선택법 + 후진선택법으로 변수를 추가할때 별점을 고려

    1) AIC ( 아카이케 정보 기준 )

      - 편향과 분산이 최적화 되는 지점 탐색, 자료가 많을수록 부정확

    2) BIC ( 베이즈 정보 기준 )

      - AIC를 보완했지만 AIC보다 큰 패널티를 가지는 단점, 변수가 적은 모델에 적합

 

- 다변량 분석

 상관분석

  - 두 변수간의 선형적 관계가 존재하는 파악하는 분석

  (1) 종류

    1) 피어슨 상관분석 : 양적 척도, 연속형 변수, 선형관계 크기 측정

    2) 스피어만 상관분석 : 서열척도, 순서형 변수, 선형/비선형적 관계 나타냄

  (2) 다중공선성

    - 다중회귀분석에서 설명변수들 사이에 상관관계가 클 때 모델을 불안정하게 만듦

 

 다차원 척도법 ( MDS : MultiDimensional Scaling )

  - 데이터 간의 근접성을 시각화 ( 2차원 평면이나 3차원 공간에 표현 )

(1) 특징 : 데이터 축소 목적, Stress 값이 0에 가까울수록 좋음, x/y축 해석이 불가

(2) 종류

  1) 계량적 MDS : 양적척도 활용

  2) 비계량적 MDS : 순서척도 활용

 

 주성분 분석 ( PCA )

  - 상관성 높은 변수들의 선형 결합으로 차원을 축소하여 새로운 변수를 생성

  - 자료의 분산이 가장 큰 축이 첫 번째 주성분

  - 70 ~ 90%의 설명력을 갖는 수를 결정

 

(1) 스크리플롯( Screeplot )

  - 주성분의 개수를 선택하는데 도움이 되는 그래프 ( x축 주성분 개수, y축 분산변화 )

  - 수평을 이루기 바로 전 단계 개수로 선택

 

(2) 바이플롯

  - 데이터간 유사도를 한 번에 볼 수 있는 그래프 ( x축 첫번째 주성분, y축 두번째 주성분 )

  - PC와 평행할수록 해당 PC에 큰 영향

  - 화살표의 길이가 길수록 분산이 큼

 

- 시계열 예측

 시계열 분석

  - 시간의 흐름에 따라 관찰된 자료의 특성을 파악하여 미래를 예측 ( 주가데이터, 기온데이터 )

 

 정상성

  - 시계열 예측을 위해서는 모든 시점에 일정한 평균과 분산을 가지는 정상성을 만족해야 함

  - 정상시계열로 변환 방법

    1) 차분 : 현 시점의 자료를 이전 값으로 빼는 방법

    2) 지수변환, 로그변환

 

 백색 잡음

  - 시계열 모형의 오차항을 의미하며 원인은 알려져 있지 않음

  - 평균이 0이면 가우시안 백색잡음

 

 시계열 모형

  (1) 자기회귀( AR ) 모형

    - 자기자신의 과거 값이 미래를 결정하는 모형

    - 부분자기상관함수( PACF )를 활용하여 p+1 시점 이후 급격 감소하면 AR(p) 모형 산정

  (2) 이동평균( MA ) 모형

    - 이전 백색잡음들의 선형결합으로 표현되는 모형

    - 자기상관함수( ACF )를 활용하여 q + 1 시차 이후 급격히 감소하면 MA(q) 모형 선정

  (3) 자기회귀누적이동평균( ARIMA ) 모형

    - AR 모형과 MA 모형의 결합

    - ARIMA( p, d, q )

      1) p와 q는 AR 모형과 MA 모형이 관련 있는 차수

      2) d는 정상화시에 차분 몇 번 했는지 의미

      3) d = 0 이면, ARIMA 모델

 

 분해시계열

  - 시계열에 영향을 주는 일반적인 요인을 시계열에서 분리해 분석하는 방법

    (1) 추세 요인 : 장기적으로 증가, 감소하는 추세

    (2) 계절 요인 : 계절과 같이 고정된 주기에 따라 변화

    (3) 순환 요인 : 알려지지 않은 주기를 갖고 변화 ( 경제 전반, 특정 산업 )

    (4) 불규칙 요인 : 위 3가지로 설명 불가한 요인

 

 


이 글은 IT의 답을 터득하다, 아답터님의 ADsP 2시간만에 완벽 정복하기 강의 내용을 옮겨 적은 글입니다.