[회귀 분석] Inferences in Regression and Correlation analysis (1)

그렘린·2022년 7월 25일
0

회귀 분석

목록 보기
4/9

Statistical inferece란..

데이터 분석 과정을 통해 분포의 특성을 추론하는 과정이다.
가설을 testing하고, 모수를 추정한다.

Normal linear regression model

Yi=β0+β1Xi+ϵiY_i = \mathit{\beta}_0 + \mathit{\beta}_1X_i + \mathit{\epsilon}_i

에서는 beta들이 추정된 값이었고, error term은 각각 독립적이며 정규분포를 따랐다.
먼저 β1\mathit{\beta}_1에 대해 생각해보자..

Inference concerning β1\mathit{\beta}_1

β1\mathit{\beta}_1은 우리가 추정한 regression line의 Slope (기울기) 와 같다.
이 기울기 term은 우리에게 X와 Y가 어떤 선형 관계를 갖는 지 설명해주는 term이라고 생각하면 편하다. 그렇다면 우리의 주된 관심은 ? ! !

Testing H0:β1=0H_0 : \mathit{\beta}_1 = 0 vs H1:β10H_1 : \mathit{\beta}_1 {\not=}0

왜 이런 가설을 세워야하는지 얼핏보면 이해가 되지 않는다.
하지만 Yi=β0+β1Xi+ϵiY_i = \mathit{\beta}_0 + \mathit{\beta}_1X_i + \mathit{\epsilon}_i 식에서 생각해보면, 기울기가 0이라는 의미는 X와 Y가 서로 독립이라는 의미다.

Regression이란 'X를 통해 Y를 설명하고자 하는 것' 이라고 말할 수 있으므로 만약 slope가 0이라면 우리가 원하는 것을 설명할 수 없다는 의미가 될 것이다!

그래서 slope가 0이냐, 0이 아니느냐 라는 귀무가설과 대립가설을 세울 수 있는 것이다.

우리가 추정한 β1\mathit{\beta}_1의 값을 b1b_1이라고 하면 위와 같은 결과를 얻을 수 있다. 이에 대한 증명은 대학원에서 할 수 있다고 하니, 궁금하면 대학원에 진학해보자.(?)

T test를 이용한 testing

T-test를 이용하는 이유는 우리는 σ2\mathit{\sigma}^2를 모를때 s2s^2으로 대체하기 때문이다.
우리는 분산을 모르기 때문에 ϵ2n2{\sum \mathit{\epsilon}^2 \over n-2}로 대체하게 되고 이제는 b1b_1이 더 이상 정규분포가 아닌 t분포를 따르게 된다.

T=b1β1s(b1)t(n2)T = {b_1 - \mathit{\beta}_1\over s(b_1)} \sim t(n-2)

여기서 s2(b1)=MSE(XiXˉ)2s^2(b_1) = { MSE \over \sum(X_i - \bar{X})^2} 을 의미한다.

R에서는 qt함수를 이용해서 유의 수준을 설정해서 나의 검정통계량 값과 비교해보면 된다.

예시를 이용해서 R로 계산을 해보자.

Toluca company example

data1 <- read.table("CH01TA01.txt")

# data를 불러온다

names(data1) <- c("X", "Y")

# data의 변수명을 변경해준다.

lm.data1 <- lm(Y~X, data= data1)

# lm이라는 함수는 regression을 해주는 함수라고 생각하면 된다.

summary(lm.data1)

# summary해서 추정한 계수를 알려준다. 
이때 summary 안에 들어간 data는 lm으로 추정된 것이다.

anova(lm.data1)

# anova는 반드시 lm 함수 과정을 거치고 사용해야한다. 
그렇지 않으면 작동이 되지 않는 것으로 알고 있다. 
우리가 알고 있는 anova table을 보여준다.

이것을 실행하면 다음과 같은 결과를 얻을 수 있다.

위에가 Summary 결과, Analysis of Variance Table 부터가 anova 함수를 이용한 결과값이다.
Sum sq라고 적힌 것이 Sum Square, Mean Sq가 Sum sq를 degree free 값으로 나누어준 결과이다.
두 함수를 이용하면 T value, F value 모두 쉽게 알 수 있다.

b1b_1 했으면 b0b_0도 해야지^^

Inference concerning β0\mathit{\beta}_0

b0b_0는 평균과 분산, 분포를 알아야 추정할 수 있으므로 우리는 순서를 지켜서 estimate를 해야한다.

순서 : b1b_1 -> b0b_0 -> E(Y)E(Y) -> Y(new)Y_(new)

b0b_0는 다음과 같이 정보를 얻을 수 있다. 이때 우리는 역시 sigma를 모르므로 , MSE로 대체해준다.

그렇다면 검정통계량을 얻는 방법은 β1\mathit{\beta}_1과 동일하다.

T=b0β0s2(1n+Xˉ(XiXˉ)2)t(n2)T = {b_0 - \mathit{\beta}_0 \over s^2({1\over n} + {\bar{X} \over \sum(X_i - \bar{X})^2 }) } \sim t(n-2)

example 직접 계산해보기

위에 있는 table을 이용해서 직접 계산해보자.

s2(b0)=2384(0.04+702/19800)=685.34s^2(b_0) = 2384(0.04+70^2/19800) = 685.34
유의수준 α=0.95\mathit{\alpha} = 0.95 로 추정한 interval
(62.371.714(26.18),62.37+1.714(26.18))(62.37 - 1.714(26.18), 62.37+1.714(26.18))
β0\mathit{\beta}_0의 interval : [17.5,107.2][17.5,107.2]


to be continued

0개의 댓글