1. 분석 방법

1) 기술 통계

  • 빅데이터 분석에는 평균, 최솟값과 같이 데이터의 특징을 알려주는 값을 기술통계라고 한다.
  • 데이터의 특징을 서술한다는 의미로 사실 확인에 해당

2) 추론 통계

  • 변수 간의 관게 파악과 인관관게나 새로운 사실들을 밝혀내는 것을 추론통계라고 한다.

(1) 평균 차이 검정

  • 집단별로 평균의 차이가 실제로 존재하는 가를 검정하는 방법.
  • 즉, 이 결과가 우연하게 발생한 것인지를 통계적으로 검정해야 한다.

(2) 교차 분석

  • 범주형 변수로 구성된 집단들의 관련성을 검정하는 방법.
  • 제곱 검정, 카이스퀘어 검정, 독립형 검정이라고도 한다.
  • 범주형은 평균 차이 검정이 불가능하다.
  • 교차 분석의 결과는 관계가 ‘있다’와 ’없다’ 두가지가 해당된다.
  • 관계가 있다 = 독립적이지 않다. / 관게가 없다 = 독립적이다.

(3) 상관관계 분석

  • 변수 간의 상관관계를 알아보는 방법.
  • 상관관계 = 변수 간의 연관성
  • 관계의 강도와 방향이 중요
  • 강도 : 한 변수가 변화할 때 다른 변수가 변화하는 정도
  • 방향 : 한 변수가 변화할 때 변수가 어느 방향으로 변화하는지를 판단
  • 상관계수(r) : 변화의 강도와 방향을 나타낸다. (-1<= r <= 1)
  • r은 수치가 클수록 영향을 주는 강도가 크고 +는 ‘정의관계’, - 는 ‘역의 관계’ or ‘부의관계’ 의미
  • |0.7|이상 = 높은 관계, |0.4| ~ |0.7| = 다소 높은 관계, |0.2| ~ |0.4| = 낮은 관계, |0.2| 미만 = 거의 없음, 0 = 관게 없음.

(4) 회귀 분석

  • 독립변수와 종속변수 간의 인과관계를 분석하는 방법.
  • 독립변수(x) : 영향을 주는 변수
  • 종속변수(y) : 영향을 받는 변수
  • 단순회귀분석 : 독립변수가 1개. / y = a + βx
  • 다중회귀분석 : 독립변수가 2개 이상, 종속변수가 1개 / y = a + β1x1 + β2x2 …
  • β 회귀계수 / a 상수(절편)

2. 통계 검정

1) 가설

  • 어떤 현상을 설명하기 위해 가정하는 명제
  • 증명되지 않은 추정
  • 귀무가설(H0) - 설정한 가설이 맞을 확률이 매우 적어서 기각될 것으로 예상되는 가설. (평균차이가 없다.)
  • 대립가설(H1) - 귀무가설이 기각될 경우 받아들여지는 가설, 연구자가 검정하고자 하는 가설. (평균차이가 있다.)
  • 즉, 통계 검정은 대립가설이 맞는가를 검정하는 것

2) 유의수준

  • 귀무가설이 맞는데도 대립가설을 채택할 확률
  • 즉, 오류를 범할 확률을 의미
  • 오류가 없다는 것은 불가능하므로 ’혀용할 수 있는 오류 범위’를 인정
  • 유의수준 5% = 오류 5%까지 인정
  • 통게 분석 결과 해석시 유의 수준이 0.05 이내인지를 보고 결과가 통계적으로 유의미한지 판단
  • 유의 수준 <-> 정확성, 신뢰수준

3) 척도

  • 측정도구로 척도의 종류에 따라 통게 분석 가능여부가 달라지므로 분석 전 척도의 종류를 파악 #### (1) 명목척도
  • 대상의 특성이나 범주 구분 / 산술 X
  • 성별, 결혼유무,종교, 인종 등

(1) 서열척도

  • 대상의 등급순위 / 산술 X
  • 계급, 사회계층, 자격등급 등

(1) 등간척도

  • 대상을 일정 간격으로 구분 / 덧셈,뺄셈 가능
  • 온도, 학력, 시험 점수 등

(1) 비율척도

  • 대상을 비율로 구분 / 4칙연산 가능
  • 연령, 무게 등

3. 통계 분석 사례

1) 두 집단의 평균 차이 검정

  • 귀무가설 : 평균차이가 없다.
  • 대립가설 : 평균차이가 있다.
mpg1 <- read.csv("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 이므로 auto와 manual의 평균 차이가 있다.(대립가설)

-> cty 평균거리는 자동식이 15.91마일, 수동식이 18.68마일이고 유의수준이 0.05보다 작아 통계적으로 유의미한 차이가 있기 때문에 수동식의 평균이 자동식의 평균보다 약 2.7마일 길다고 할 수 있다.

2) 교차 분석

  • 범주형 변수들의 관게 검증, 비율에 차이가 있는지를 검증한다.
  • 귀무가설 : 차이가 없다.
  • 대립가설 : 차이가 있다.
table(mpg1$trans,mpg1$drv)
##         
##           4  f  r
##   auto   75 65 17
##   manual 28 41  8
prop.table(table(mpg1$trans,mpg1$drv),1)
##         
##                  4         f         r
##   auto   0.4777070 0.4140127 0.1082803
##   manual 0.3636364 0.5324675 0.1038961

– 방법 1

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

– 방법 2

chisq.test(table(mpg1$trans,mpg1$drv))
## 
##  Pearson's Chi-squared test
## 
## data:  table(mpg1$trans, mpg1$drv)
## X-squared = 3.1368, df = 2, p-value = 0.2084

– 방법 3

summary(table(mpg1$trans,mpg1$drv))
## Number of cases in table: 234 
## Number of factors: 2 
## Test for independence of all factors:
##  Chisq = 3.1368, df = 2, p-value = 0.2084

-> p-value = 0.2084 > 0.05 이므로 trans에 따라 drv의 차이가 없다.(귀무가설)

3) 상관관계 분석

  • 귀무가설 : 상관관계가 없다.
  • 대립가설 : 상관관계가 있다.
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 < 0.05 이므로 cty와 hwy는 상관관계가 있다.

-> 상관계수 r = 0.9559159로 cty와hwy는 유의미하게 매우 높은 상관관계에 있다.

4) 회귀 분석

  • 귀무가설 : 영향을 주지 않는다.
  • 대립가설 : 영향을 준다.

(1) 단순 회귀 분석

lm(data = mtcars, mpg~disp)
## 
## Call:
## lm(formula = mpg ~ disp, data = mtcars)
## 
## Coefficients:
## (Intercept)         disp  
##    29.59985     -0.04122
  • 계수 = -0.04122 / 절편 = 29.59985으로 식을 구할 수 있다.
  • mpg = 29.59985 - 0.04122 x disp
  • 베타가 -0.04122로 배기량이 1단위 증가하면 mpg는 0.04122씩 감소한다.
summary(lm(data = mtcars, mpg ~ disp))
## 
## 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.001 이므로 회귀 모형에 적합하다.
  • Pr(>|t|)는 유의수준을 의미하므로 < 0.05이기 때문에 이는 대립가설을 채택.
  • Signif.codes : *** = 0.001, ** = 0.01, * = 0.05
  • R-squared(r^2) : 결정계수로 회귀모델로 추정된 회귀식이 관측된 데이터를 설명하고 있는 비율을 의미
  • 1에 가까울수록 추정된 회귀선이 에측 정확도와 변수 관계 설명력이 높다.
  • 0에 가까울수록 추정된 회귀선이 예측 정확도와 변수 관계 설명력이 낮다.
  • 0.7183로 추정된 회귀선이 설명력이 높다.
  • Adjusted R-squared는 수정된 결정계수로 결정계수 보완한 것

-> 회귀모형은 유의수준 p < 0.001에서 적합하며, 회귀식의 수정된 결정게수는 0.709이다. 배기량이 연비에 미치는 회귀계수는 유의수준 < 0.001에서 -0.04이다.

(2) 다중 회귀 분석

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.000937 * disp - 0.031157 * hp - 3.800891 * wt
summary(lm(data = mtcars, mpg~disp+hp+wt))
## 
## 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-value: 8.65e-11 < 0.001 이므로 회귀모형은 적합하다.
  • disp는 mpg에 영향을 주지 않고, hp와 wt만 영향을 준다.
  • 단순회귀분석에서는 disp가 mpg에 정적인 영향을 주었는데, 다중회귀분석에서는 영향을 주지 않는다.
  • 수정된 결정게수가 0.8083으로 회귀모델의 설명력이 높다.

-> 회귀모형은 유의수준 ㅔ < 0.001에서 적합하며, 회귀식의 수정된 걸정계수는 0.81이다.

-> 3개 독립변수가 연비에 미치는 회귀계수는 hp가 -0.03(p<0.05), wt가 -3.8(p<0.01)이었고 disp는 없었다. 즉, wt의 영향력이 가장 크다.

연습문제

1.

library(dplyr)
## 
## 다음의 패키지를 부착합니다: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
iris <- iris
summary(iris)
##   Sepal.Length    Sepal.Width     Petal.Length    Petal.Width   
##  Min.   :4.300   Min.   :2.000   Min.   :1.000   Min.   :0.100  
##  1st Qu.:5.100   1st Qu.:2.800   1st Qu.:1.600   1st Qu.:0.300  
##  Median :5.800   Median :3.000   Median :4.350   Median :1.300  
##  Mean   :5.843   Mean   :3.057   Mean   :3.758   Mean   :1.199  
##  3rd Qu.:6.400   3rd Qu.:3.300   3rd Qu.:5.100   3rd Qu.:1.800  
##  Max.   :7.900   Max.   :4.400   Max.   :6.900   Max.   :2.500  
##        Species  
##  setosa    :50  
##  versicolor:50  
##  virginica :50  
##                 
##                 
## 
iris1 <- filter(iris,Species%in%c("setosa","versicolor"))
t.test(data = iris1, Sepal.Length~Species)
## 
##  Welch Two Sample t-test
## 
## data:  Sepal.Length by Species
## t = -10.521, df = 86.538, p-value < 2.2e-16
## alternative hypothesis: true difference in means between group setosa and group versicolor is not equal to 0
## 95 percent confidence interval:
##  -1.1057074 -0.7542926
## sample estimates:
##     mean in group setosa mean in group versicolor 
##                    5.006                    5.936
  • p-value < 2.2e-16 < 0.05 이므로 종 setosa와 versicolor의 Sepal.Length 평균 차이가 있다. (대립가설)

2.

library(ggplot2)
diamonds <- diamonds
chisq.test(diamonds$cut,diamonds$color)
## 
##  Pearson's Chi-squared test
## 
## data:  diamonds$cut and diamonds$color
## X-squared = 310.32, df = 24, p-value < 2.2e-16
  • p-value < 2.2e-16 < 0.05 이므로 cut에 따라 color의 차이가 있다. (대립가설)
round(prop.table(table(diamonds$cut, diamonds$color),1)*100,2)
##            
##                 D     E     F     G     H     I     J
##   Fair      10.12 13.91 19.38 19.50 18.82 10.87  7.39
##   Good      13.49 19.02 18.53 17.75 14.31 10.64  6.26
##   Very Good 12.52 19.86 17.91 19.03 15.10  9.97  5.61
##   Premium   11.62 16.95 16.90 21.20 17.11 10.35  5.86
##   Ideal     13.15 18.11 17.75 22.66 14.45  9.71  4.16
  • Fair에서는 G가 19.5, J가 7.39로 12.11 차이가 난다.
  • Good에서는 E가 19.02, J가 6.26으로 12.76 차이가 난다.
  • Very Good에서는 E가 19.86, J가 5.61으로 14.25 차이가 난다.
  • Premium에서는 G가 21.2, J가 5.86으로 15.34 차이가 난다.
  • Idea에서는 G가 22.66, J가 4.16으로 18.5 차이가 난다.

3.

cor.test(diamonds$carat, diamonds$price)
## 
##  Pearson's product-moment correlation
## 
## data:  diamonds$carat and diamonds$price
## t = 551.41, df = 53938, p-value < 2.2e-16
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.9203098 0.9228530
## sample estimates:
##       cor 
## 0.9215913
  • p-value < 2.2e-16 < 0.05 이므로 carat와 price는 상관관계에 있고 상관계수가 0.9215913로 매우 높은 상관관계이다.

4.

cars <- cars
summary(lm(data = cars, dist ~ speed))
## 
## Call:
## lm(formula = dist ~ speed, data = cars)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -29.069  -9.525  -2.272   9.215  43.201 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -17.5791     6.7584  -2.601   0.0123 *  
## speed         3.9324     0.4155   9.464 1.49e-12 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 15.38 on 48 degrees of freedom
## Multiple R-squared:  0.6511, Adjusted R-squared:  0.6438 
## F-statistic: 89.57 on 1 and 48 DF,  p-value: 1.49e-12
  • 회귀모형은 유의수준 p < 0.001에서 적합하며, 수정된 결정계수는 0.6438이다. 속도가 제동거리에 미치는 회귀계수는 유의수준 1.49e-12 (<0.001)로 영향을 준다.

5.

summary(lm(data = diamonds, price ~ carat + depth))
## 
## Call:
## lm(formula = price ~ carat + depth, data = diamonds)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -18238.9   -801.6    -19.6    546.3  12683.7 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 4045.333    286.205   14.13   <2e-16 ***
## carat       7765.141     14.009  554.28   <2e-16 ***
## depth       -102.165      4.635  -22.04   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1542 on 53937 degrees of freedom
## Multiple R-squared:  0.8507, Adjusted R-squared:  0.8507 
## F-statistic: 1.536e+05 on 2 and 53937 DF,  p-value: < 2.2e-16
  • 회귀모형은 유의수준 p < 0.001에서 적합하며, 회귀식의 수정된 결정계수는 0.8507이다. 2개의 독립변수가 가격에 미치는 회귀계수는 carat이 6611이고, depth은 -74.3이다. 둘다 < 0.001로 통계적으로 유의미하다.