분석방법

기술통계

  • 평균,최솟값, 최댓값, 중앙값
  • 데이터의 특징을 서술한다는 의미 (descriptive statistics)

추론통계

  • 평균차이 검정, 교차분석, 상관관계분석, 회귀분석
  • 변수 간의 관계를 파악하고, 인관관계나 새로운 사실들을 밝혀냄 (inferential statistics)

1) 평균차이 검정

  • 집단별 평균의 차이가 실제로 있는가를 검정

2) 교차분석

  • 범주형 변수로 구성된 집단들의 관련성을 검정
  • 카이제곱 검정, 카이스퀘어 검정, 독립성 검정과 동일한 의미

3) 상관관계 분석

  • 변수 간의 상관관계(correlation), 즉 연관성을 알아봄
  • 상관관계는 한 변수가 변하면 다른 변수도 변화하는 관계
  • 관계의 강도와 방향이 중요
  • r(상관계수)는 변화의 강도와 방향을 나타내는 계수
  • -1<=r<=1의 값을 가지며 +는 정의 관계 -는 역의 관계에 있음을 의미함
  • |r|>=0.7 -> 높은 상관관계, 0.4<=|r|<0.7 -> 다소 높은 관계, 0.2<=|r|<0.4 -> 낮은 관계, |r| < 0.2 -> 관계없음

4) 회귀분석

  • 독립변수와 종속변수 간의 인과관계를 분석하는 통계적 방법
  • 독립변수(independent variable)은 영향을 주는 변수, 종속변수(dependent variable)은 영향을 받는 변수
  • 독립변수의 개수에 따라 단순회귀분석과 다중회귀분석으로 나뉨 독립변수가 1개 -> 단순회귀분석 : y=a+βx 독립변수가 2개 이상 -> 다중회귀분석 : y=a+β1x1+β2x2… (x는 독립변수, y는 종속변수, β는 회귀계수, a는 상수)

통계검정

가설

  • 가설(hypothesis)은 어떤 현상을 설명하기 위해 가정하는 명제
  • 귀무가설과 대립가설이 있음
  • 귀무가설 : 가설이 채택될 확률이 극히 적어 기각될 것으로 예상되는 가설
  • 대립가설 : 귀무가설이 기각될 경우 받아들여지는 가설 -> 연구자가 검정하려는 가설임
  • 예를 들어 평균차이를 검정하려는 실험에서, 귀무가설(H0)은 ‘평균의 차이가 없다’, 대립가설(H1)은 ’평균의 차이가 있다’임

유의수준

  • 유의수준(significance level)은 귀무가설이 맞는데 대립가설을 채택할 확률, 즉 오류를 범할 확률
  • 통계분석에서는 p-value로 제시됨. p값이 0.01이면 오류를 범할 확률이 1%라는 의미
  • 통계분석에서도 오류가 있기 마련이라 허용할 수 있는 오류수준을 정하게 됨 -> 일반적으로 5%,1%,0.1% 세가지 유의수준 내에서 인정
  • 신뢰수준(confidence level)은 유의수준의 반대개념, 유의수준이 5%라면 신뢰수준은 95%임

척도

  • 측정도구이며 수치로 표시됨
  • 명목척도, 서열척도, 등간척도, 비율척도

1) 명목척도

  • 대상의 특성이나 범주를 구분하는 수치
  • 산술연산 불가능
  • 성별, 결혼유무, 종교, 인종 등

2) 서열척도

  • 대상의 등급순위
  • 산술연산 불가능
  • 계급, 사회계층, 자격등급 등

3) 등간척도

  • 대상을 일정간격으로 구분하는 수치
  • 더하기 빼기 가능
  • 온도, 학력, 시험점수

4) 비율척도

  • 대상을 비율로 나타낼 수 있는 척도
  • 사칙연산 가능
  • 연령, 무게 등

통계분석 사례

두 집단의 평균 차이 검정

  • 독립표본 t검정

  • R에서는 t.test()사용

  • 방법 2가지 t.test(data=데이터세트,종속변수~독립변수) t.test(데이터세트\(종속변수~데이터세트\)독립변수)

예제파일 mpg1.csv

  • 귀무가설(H0) : auto와 manual의 cty 평균은 차이가 없다.
  • 대립가설(H1) : auto와 manual의 cty 평균은 차이가 있다.
    • trans 변수에 auto와 manual이
mpg1 <- read.csv("public_dataset/mpg1.csv",stringsAsFactors = F)

t.test(data=mpg1,cty~trans)
## 
##  Welch Two Sample t-test
## 
## data:  cty by trans
## t = -4.5375, df = 132.32, p-value = 1.263e-05
## alternative hypothesis: true difference in means between group auto and group manual is not equal to 0
## 95 percent confidence interval:
##  -3.887311 -1.527033
## sample estimates:
##   mean in group auto mean in group manual 
##             15.96815             18.67532
  • p-value가 1.263e-05로 유의수준은 0.05보다 적기 때문에 유의수준 허용조건(p<0.05)을 충족했다.
  • 따라 대립가설을 채택할 수 있어 auto와 manual의 평균의 차이가 있다고 할 수 있다.
  • 결론 : cty 평균거리는 자동식이 15.97마일, 수동식이 18.68마일인데 유의수준이 0.05보다 작아 통계적으로 유의미한 차이가 있기 때문에 수동식의 평균이 자동식의 평균보다 약 2.7마일 길다고 할 수 있다.

등분산검정

  • 집단 간 평균 차이 분석을 할 때는 집단의 분산이 같은지를 먼저 분석한 후에 그게 맞춰 평균차이를 검정하는 것

  • 보통 등분산이 아니라는 전제로 검정을 진행하기 때문에 생략하는 경우가 많음

  • 코드 식 var.test(data,종속변수~독립변수)

  • 유의수준(p)>=0.05면 등분산, 유의수준(p)<0.05면 등분산이 아님

  • t.test()로 분석할 때 등분산인 경우 var.equal=T를 추가하고, 아니면 var.equal=F를 추가

교차분석

  • 범주형 변수들이 관계가 있다는 것을 입증하기 위해 실시
  • 평균의 차이가 아닌 비율에 차이가 있는지를 검정
  • R에서는 chisq.test()사용

예제파일 mpg1.csv

  • 귀무가설(H0) : trans에 따라 drv의 차이가 없다.
  • 대립가설(H1) : trans에 따라 drv의 차이가 있다.
mpg1 <- read.csv("public_dataset/mpg1.csv",stringsAsFactors = F)

table(mpg1$trans,mpg1$drv) #trans와 drv의 교차분석
##         
##           4  f  r
##   auto   75 65 17
##   manual 28 41  8
prop.table(table(mpg1$trans,mpg1$drv),1) #auto와 manual의 drv분석
##         
##                  4         f         r
##   auto   0.4777070 0.4140127 0.1082803
##   manual 0.3636364 0.5324675 0.1038961
  • auto에서는 4가 47.8%로 가장 많고, manual에서는 f가 53.2%로 가장 많아 trans에 따라 drv에 차이가 있는 것으로 보임
  • 정말 그런지 확인하기 위해 교차분석 실시
chisq.test(mpg1$trans,mpg1$drv)
## 
##  Pearson's Chi-squared test
## 
## data:  mpg1$trans and mpg1$drv
## X-squared = 3.1368, df = 2, p-value = 0.2084
  • 유의수준(p-value) 값이 0.2084로 0.05보다 큼
  • 따라 대립가설을 기각하지 못하므로(귀무가설 채택) trans에 따라 drv에 차이가 있다고 할 수 없다

상관관계분석

  • R-> cor.test()
  • 코드 식 cor.test(데이터세트\(비교변수1,데이터세트\)비교변수2)

예제파일 mpg1.csv

  • 귀무가설(H0) : cty와 hwy는 상관관계가 없다.
  • 대립가설(H1) : cty와 hwy는 상관관계가 있다.
mpg1 <- read.csv("public_dataset/mpg1.csv",stringsAsFactors = F)

cor.test(mpg1$cty,mpg1$hwy)
## 
##  Pearson's product-moment correlation
## 
## data:  mpg1$cty and mpg1$hwy
## t = 49.585, df = 232, p-value < 2.2e-16
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.9433129 0.9657663
## sample estimates:
##       cor 
## 0.9559159
  • p-value < 2.2e-16이므로 유의수준(p) <0.001이기 때문에 귀무가설을 기각하고 대립가설을 채택할 수 있다.
  • 즉 상관관계는 0이 아니라고 할 수 있다.

회귀분석

1) 단순회귀분석

  • 독립변수가 1개, 종속변수가 1개
  • 독립변수, 종속변수가 등간척도 또는 비율척도여야함.
  • R->Im() lm(data=데이터세트,종속변수~독립변수) lm(데이터세트\(종속변수~데이터세트\)독립변수) lm(종속변수~독립변수,data=데이터세트)

R파일 mtcars

  • 귀무가설(H0) : disp는 mpg에 영향을 주지 않는다.
  • 대립가설(H1) : disp는 mpg에 영향을 준다.
str(mtcars)
## 'data.frame':    32 obs. of  11 variables:
##  $ mpg : num  21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
##  $ cyl : num  6 6 4 6 8 6 8 4 4 6 ...
##  $ disp: num  160 160 108 258 360 ...
##  $ hp  : num  110 110 93 110 175 105 245 62 95 123 ...
##  $ drat: num  3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ...
##  $ wt  : num  2.62 2.88 2.32 3.21 3.44 ...
##  $ qsec: num  16.5 17 18.6 19.4 17 ...
##  $ vs  : num  0 0 1 1 0 1 0 1 1 1 ...
##  $ am  : num  1 1 1 0 0 0 0 0 0 0 ...
##  $ gear: num  4 4 4 3 3 3 3 4 4 4 ...
##  $ carb: num  4 4 1 1 2 1 4 2 2 4 ...
lm(mpg~disp,data=mtcars)
## 
## Call:
## lm(formula = mpg ~ disp, data = mtcars)
## 
## Coefficients:
## (Intercept)         disp  
##    29.59985     -0.04122
  • 단순 회귀분석은 1차 함수를 구하는 것과 같음

  • 따라 위의 결과를 바탕으로 mpg = 29.59985 - 0.04112*disp를 구할 수 있음

  • 배기량이 1단위 증가할 때마다 mpg는 0.04112씩 감소한다는 의미

  • 유의수준 구하기

summary(lm(mpg~disp,data=mtcars))
## 
## Call:
## lm(formula = mpg ~ disp, data = mtcars)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -4.8922 -2.2022 -0.9631  1.6272  7.2305 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 29.599855   1.229720  24.070  < 2e-16 ***
## disp        -0.041215   0.004712  -8.747 9.38e-10 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.251 on 30 degrees of freedom
## Multiple R-squared:  0.7183, Adjusted R-squared:  0.709 
## F-statistic: 76.51 on 1 and 30 DF,  p-value: 9.38e-10
  • p-value가 9.38e-10으로 0.05보다 작기 때문에 회귀모형이 적합하다고 할 수 있음
  • Coefficients 분석
    • estimate은 회귀계수β를 의미함
    • 절편(intercept)이 29.599855, disp는 -0.041215로 lm()의 결과랑 같음
    • Pr(>|t|)는 유의수준을 의미함,9.38e-10로 0.05보다 작기 때문에 귀무가설을 기각하고 대립가설을 채택
  • 회귀식 : mpg = -0.041215*disp + 29.599855 -> disp가 한 단위 증가할 때마다 mpg는 -0.041215씩 감소
  • ’ -> 유의수준 0.05 충족 ’’ -> 유의수준 0.01 충족 ’’ -> 유의수준 0.001 충족

결정계수

  • R-squared
    회귀모델의 추청된 회귀식이 관측된 데이터를 설명하고 있는 비율을 나타낸 것
  • r^2 = R-squared
  • 0<=R^2<=1 -> 1에 가까울수록 추정된 회귀선의 예측정확도와 변수관계 설명력이 높음을 의미
  • Adjusted R-squared(수정된 결정계수)
    결정계수는 데이터와 독립변수가 많을수록 예측력과 상관없이 커지는 경향이 있어 이를 보완한 결정계수

다중회귀분석

  • 독립변수가 2개 이상의 복수일 때 사용

  • 독립변수들은 종속변수 뿐만 아니라 서로에게도 영향을 줌

  • R코드 식 lm(data=데이터세트,종속변수~독립변수1+독립변수2+…) lm(종속변수~독립변수1+독립변수2+…,data=데이터세트) lm(데이터세트\(종속변수~데이터세트\)독립변수1+데이터세트$독립변수2+…)

R파일 mtcars

lm(data=mtcars,mpg~disp+hp+wt)
## 
## Call:
## lm(formula = mpg ~ disp + hp + wt, data = mtcars)
## 
## Coefficients:
## (Intercept)         disp           hp           wt  
##   37.105505    -0.000937    -0.031157    -3.800891
  • 다중회귀식 : mpg = 37.105505-0.000937disp -0.031157hp -3.800891*wt

  • 독립변수들의 회귀계수에 대한 유의수준 계산

RA <- lm(data=mtcars,mpg~disp+hp+wt)
summary(RA)
## 
## Call:
## lm(formula = mpg ~ disp + hp + wt, data = mtcars)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -3.891 -1.640 -0.172  1.061  5.861 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 37.105505   2.110815  17.579  < 2e-16 ***
## disp        -0.000937   0.010350  -0.091  0.92851    
## hp          -0.031157   0.011436  -2.724  0.01097 *  
## wt          -3.800891   1.066191  -3.565  0.00133 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.639 on 28 degrees of freedom
## Multiple R-squared:  0.8268, Adjusted R-squared:  0.8083 
## F-statistic: 44.57 on 3 and 28 DF,  p-value: 8.65e-11
  • p값 = 8.65e-11로 유의수준 0.001보다 작아 회귀모형은 적합함
  • Pr(>|t|)에서 disp의 유의수준은 0.92851로 p > 0.05 hp의 유의수준은 0.01097로 p < 0.05 wt의 유의수준은 0.00133로 p < 0.01 -> 유의수준에 따라 hp와wt는 허용되지만 disp는 허용되지 않음 -> disp는 mpg에 영향을 주지 않고, hp와 wt만 영향을 줌 (hp가 1단위 증가하면 mpg는 0.031157씩 감소하며 wt가 1단위 증가하면 mpg는 3.800891씩 감소)
  • 수정된 결정계수는 0.8083으로 1에 가까워 회귀모델의 설명력이 높다고 할 수 있음
  • 결론 : 회귀모형은 유의수준 p <0.001에서 적합하며, 회귀식의 수정된 결정계수는 0.81, 3개의 독립변수가 연비(mpg)에 미치는 회귀계수는 hp가 -0.03(p<0.05),wt가 -3.80(p<0.01)로 영향력이 가장 컸으며, disp는 영향없음을 알 수 있다.