당신은 주제를 찾고 있습니까 “회귀 분석 가정 – 통계데이터분석 – 회귀분석 – 회귀분석 가정 진단 모델수정 🔑 선형성 | 정규성 | 등분산성 homoscedasticity | 독립성 | 다중공선성 multicollinearity“? 다음 카테고리의 웹사이트 https://ppa.pilgrimjournalist.com 에서 귀하의 모든 질문에 답변해 드립니다: ppa.pilgrimjournalist.com/blog. 바로 아래에서 답을 찾을 수 있습니다. 작성자 곽기영 이(가) 작성한 기사에는 조회수 2,236회 및 좋아요 44개 개의 좋아요가 있습니다.
Table of Contents
회귀 분석 가정 주제에 대한 동영상 보기
여기에서 이 주제에 대한 비디오를 시청하십시오. 주의 깊게 살펴보고 읽고 있는 내용에 대한 피드백을 제공하세요!
d여기에서 통계데이터분석 – 회귀분석 – 회귀분석 가정 진단 모델수정 🔑 선형성 | 정규성 | 등분산성 homoscedasticity | 독립성 | 다중공선성 multicollinearity – 회귀 분석 가정 주제에 대한 세부정보를 참조하세요
[R을 이용한 통계데이터분석]회귀분석을 위해서는 관측값은 일반적으로 선형성(linearity), 정규성(normality), 등분산성(homoscedasticity, equality of variance), 독립성(independence) 가정을 충족해야 합니다. 회귀모델 진단도표(diagnostic plot)를 이용하여 이러한 가정을 진단합니다. 회귀분석의 결과를 해석할 때 주의해야 할 것 가운데 하나인 다중공선성(multicollinearity)의 존재 또한 점검합니다. 회귀분석의 가정이 심각하게 위배되었을 때는 회귀모델에 대한 수정이 필요할 수 있습니다. 관측값 제거, 변수 변환, 변수 추가/제거 등을 통해 회귀모델을 수정합니다. 다음과 같은 함수에 대한 설명이 포함되어 있습니다: lm(), plot(), vif(), summary(), powerTransform(), boxTidwell(), spreadLevelPlot().회귀 분석 가정 주제에 대한 자세한 내용은 여기를 참조하세요.
선형 회귀분석의 4가지 기본가정
선형 회귀분석의 4가지 기본가정 · 2017/07/02 – [ANALYSIS/Algorithm] – Linear Regression / 선형 회귀분석 · 2017/03/21 – [ANALYSIS/Algorithm] – …
Source: kkokkilkon.tistory.com
Date Published: 8/18/2022
View: 554
[통계학] 30. 선형 회귀 분석의 4가지 가정 – (1) : 네이버 블로그
통계 33개의 글 · 선형 회귀 분석을 예측 혹은 추론에 사용하기 위해서는, · 4가지의 가정이 충족되어야 그 사용이 적절하다고 할 수 있습니다. · · 그 4 …
Source: blog.naver.com
Date Published: 11/18/2022
View: 5405
[TIL] 회귀분석의 가정 – 데이터 공부하는 사람
선형회귀분석의 기본 4가지 가정은 다음과 같다. (1) 정규성 : 잔차가 평균이 0인 정규분포를 띈다. (2) 독립성 : 잔차 사이에는 상관관계가 없이 …
Source: taksw222.tistory.com
Date Published: 5/29/2021
View: 3423
선형 회귀 모형 가정을 왜 하는가? – Easy Statistics !
회귀 분석의 목적은 설명변수 x x 와 반응변수 y y 의 관계를 선형식으로 나타내고 싶은 것입니다. 그러나 현실적으로 변수 간의 관계를 선형식으로 …
Source: laoonlee.tistory.com
Date Published: 8/9/2021
View: 6401
[ADP 대비] 회귀분석의 가정
회귀분석의 가정 · 1. 선형성 입력변수(X)와 출력변수(Y)의 관계가 선형이다.(선형 회귀분석에서 가장 중요한 가정) · 2. 등분산성 오차(혹은 잔차)의 …
Source: specialscene.tistory.com
Date Published: 1/9/2021
View: 4361
선형 회귀분석 네가지 기본 가정(with Python) – Feel the Data
선형 회귀분석 네가지 기본 가정(with Python) · 1) 상관계수가 높은 변수 둘 중 하나 제거 · 2) 다중공선성이 높은 변수 제거 · 3) 다중공선성, 상관계수가 …
Source: mkitlez630.blogspot.com
Date Published: 1/17/2022
View: 7485
[회귀]회귀모형의 진단/ 오차의 등분산성, 선형성, 독립성
정규성에 대한 가정은 회귀분석에서 최소제곱법으로 구한 추정량의 분포에서 모수들에 대한 추론을 위해서 필요합니다. 보통은 표본을 가지고 회귀식을 …
Source: jangpiano-science.tistory.com
Date Published: 6/18/2022
View: 6328
Top 33 회귀 분석 가정 The 102 Latest Answer
선형 회귀분석을 통해 좋은 모델을 만들기 위해서는 분석 데이터가 아래 … 선형 회귀분석의 4가지 기본가정 How to make good linear regression model?
Source: 1111.com.vn
Date Published: 4/11/2022
View: 2217
회귀 분석의 이해 #2 – 브런치
회귀 분석에서 고려해야할 기본 가정 | (1편 보기) 앞서 소개했듯이 회귀 분석은 ‘조건부 평균’을 구하는 것입니다. 때문에 우리가 평균을 구할 때 …
Source: brunch.co.kr
Date Published: 11/18/2022
View: 4319
[내가 하는 통계 분석] 회귀분석(1). 회귀분석(Regression) in R
가정. 회귀분석의 가정은 총 4가지가 있습니다. 1) 선형성 : 독립 변수와 종속 변수는 선형 관계를 가진다. 2) 등분산성 : 잔차의 분산이 동일하다.
Source: lunch-box.tistory.com
Date Published: 12/13/2021
View: 8750
주제와 관련된 이미지 회귀 분석 가정
주제와 관련된 더 많은 사진을 참조하십시오 통계데이터분석 – 회귀분석 – 회귀분석 가정 진단 모델수정 🔑 선형성 | 정규성 | 등분산성 homoscedasticity | 독립성 | 다중공선성 multicollinearity. 댓글에서 더 많은 관련 이미지를 보거나 필요한 경우 더 많은 관련 기사를 볼 수 있습니다.
주제에 대한 기사 평가 회귀 분석 가정
- Author: 곽기영
- Views: 조회수 2,236회
- Likes: 좋아요 44개
- Date Published: 2020. 10. 20.
- Video Url link: https://www.youtube.com/watch?v=sbnq3xTC1Uk
선형 회귀분석의 4가지 기본가정
선형 회귀분석의 4가지 기본가정
How to make good linear regression model?
선형 회귀분석을 통해 좋은 모델을 만들기 위해서는 분석 데이터가 아래 4가지 기본가정을 만족해야 한다.
아래 4가지 기본가정을 만족하지 않으면 제대로 된 선형 회귀모델이 생성될 수 없다.
–
(1) 선형성
(2) 독립성
(3) 등분산성
(4) 정규성
–
각 기본가정의 의미와 지켜지지 않았을 때 어떻게 되는지,
그리고 이 기본가정을 만족하지 않는 경우 어떻게 해야하는지 해결방법을 R 코드 예제를 통해 살펴보도록 하자.
▼ 선형 회귀분석 이론 ▼
2017/07/02 – [ANALYSIS/Algorithm] – Linear Regression / 선형 회귀분석
(1) 선형성
선형성은 “선형” 회귀분석에서 중요한 기본가정으로, 당연히 “비선형” 회귀분석에서는 해당하지 않는다.
선형성이란, 예측하고자 하는 종속변수 y와 독립변수 x 간에 선형성을 만족하는 특성을 의미한다.
먼저 예제 데이터를 확인해보자.
# 분석 데이터 dt 만들기 dt <- iris[, -5] # dt의 분포를 시각적으로 확인하기 plot(dt) 만약 Sepal.Length를 우리가 예측하려고 하는 종속변수 y라고 한다면, 위 그래프를 보았을 때 Sepal.Length와 대략적인 선형관계를 이루고 있는 변수는 Petal.Length와 Petal.Width이고, 선형성을 만족하지 않는 것은 Sepal.Width인 것으로 보인다. 그럼 이 상황에서 선형 회귀모델을 만들어 보자. # 모델 mdl 생성 mdl <- lm(Sepal.Length ~ ., dt) # 회귀분석 결과 출력 summary(mdl) 회귀분석 결과, 모든 변수가 유의한 모델이 만들어졌음을 확인할 수 있다. 선형성을 만족하지 않는 Sepal.Width까지 유의하다고 결과가 나왔는데 왜 이런 결과가 나왔을까? 그것은 가장 선형성을 만족하는 Petal.Length와 Petal.Width의 영향도를 뺀 나머지 값들이 종속변수 y인 Sepal.Width와 선형성을 이루기 때문이다. 무슨 얘기인지 이해가 안 간다면 아래 시각화로 살펴보자. # Petal.Length와 Petal.Width의 영향도를 제거한 Rest.Sepal.Width를 만든다. dt$Rest.Sepal.Width <- dt$Sepal.Length - mdl$coefficients[["Petal.Length"]] * dt$Petal.Length - mdl$coefficients[["Petal.Width"]] * dt$Petal.Width # dt의 분포를 시각적으로 확인하기 plot(dt) 종속변수 y인 Sepal.Length와 새로 만들어진 변수 Rest.Sepal.Width 간에 약간의 선형관계가 있음을 확인할 수 있다. (단, 정말 약간이다. 기존 Sepal.Width 대비) 만약에 Petal.Length, Petal.Width 같은 다른 변수들 없이 선형성을 만족하지 않는 Sepal.Width 만 단독으로 사용하여 유의한 선형 회귀모델을 만들 수 있을까? # Sepal.Width만 사용한 단순 선형 회귀분석 결과 출력 summary(lm(Sepal.Length ~ Sepal.Width, dt)) 아까와 다르게 Sepal.Width 단독으로는 p-value가 0.152로 유의수준 0.05보다 크므로 Sepal.Length에 영향력이 없다는 귀무가설을 기각할 수 없다. 따라서 이 상황에서는 Sepal.Width가 Sepal.Length에 영향력이 없다는 의미로 해석된다. 따라서 본인이 가진 변수 중 일부가 선형성을 만족하지 않는다면, 첫째로 다른 새로운 변수를 추가해보거나, 둘째로는 로그, 지수, 루트 등 변수 변환을 취해보는 것, 세번째로는 아예 선형성을 만족하지 않는 변수를 제거하는 것, 네번째로는 일단 선형 회귀모델을 만들고 변수 선택법을 통과시키는 것 등 여러 가지 방법이 있다. 개인적으로 네번째 방법을 가장 추천한다. 왜냐하면 변수의 개수가 많아지면 개별 변수를 파악하기가 어려워지기 때문이다. 그리고 두번째 방법은 비추천하는데, 변환된 변수의 의미를 해석하기가 어렵기 때문이다. (2) 독립성 독립성은 "다중" 회귀분석에서 중요한 기본가정으로, 당연히 "단순" 회귀분석에서는 해당하지 않는다. 독립성이란, 독립변수 x 간에 상관관계가 없이 독립성을 만족하는 특성을 의미한다. (다중 회귀분석은 x변수가 2개 이상인 회귀분석이다.) 만약 서로 상관관계가 있는 독립변수 x들이 여러 개 들어간다면 회귀분석 결과는 어떻게 바뀔지 알아보자. 위에서 분석한 바로는, Sepal.Length와 Petal.Length는 선형성을 잘 만족하고 있는 유의한 변수이다. 이 Petal.Length와 유사한 변수를 3개 더 만들어 보자. # 분석 데이터 dt 만들기 dt <- iris[, -5] # Petal.Length와 상관성이 있는 변수를 강제로 만들기 dt$Petal.Length1 <- dt$Petal.Length + round(rnorm(nrow(dt), 0.05, 0.05), 1) dt$Petal.Length2 <- dt$Petal.Length + round(rnorm(nrow(dt), 0.05, 0.05), 1) dt$Petal.Length3 <- dt$Petal.Length + round(rnorm(nrow(dt), 0.05, 0.05), 1) # dt의 분포를 시각적으로 확인하기 plot(dt) 강제로 만든 Petal.Length1 ~ Petal.Length3 변수들이 Petal.Length까지 해서 강한 상관관계를 띄고 있으므로 당연히 이 데이터는 독립성을 만족하지 못하고 있는 상태이다. 이 상태의 데이터를 바로 회귀분석하면 어떻게 될까? # 모델 mdl 생성 mdl <- lm(Sepal.Length ~ ., dt) # 회귀분석 결과 출력 summary(mdl) 회귀분석 결과를 살펴보면 Petal.Length는 원래 유의했던 변수임에도 불구하고 독립성을 위배하는 비슷한 변수가 많이 들어가게 되니 마치 유의하지 않는 것과 같은 결과를 나타내게 된다. 그렇기 때문에 다중공선성, 즉 서로 상관관계가 있다면 이를 제거해주어야 한다. 제거하는 방법은 다중공선성을 일으키는 변수를 제거하거나, 이것들을 모아서 다른 변수로 치환을 해주면 된다. 나는 변수선택법 중 Stepwise를 사용해서 다중공선성을 일으키는 변수들을 제거해보려고 한다. # 변수선택법 - Stepwise mdl_step <- step(mdl) # 변수선택 결과 출력 summary(mdl_step) Stepwise를 사용하니, 독립성을 위배하는 강제로 만들었던 변수들이 제거되고 유의한 모델이 만들어진 것을 확인할 수 있다. (3) 등분산성 등분산성이란 분산이 같다는 것이고, 분산이 같다는 것은 특정한 패턴 없이 고르게 분포했다는 의미이다. 여기서 등분산성의 주체는 잔차이다. (여기서는 표준화 잔차를 볼 것이다.) # 분석 데이터 dt 만들기 dt <- iris[, -5] # 강제로 등분산성을 위배하는 변수 ydata 만들기 set.seed(1) dt$ydata <- c(round(rnorm(75, 1, 0.3), 1), round(rnorm(75, 10, 0.3), 1)) # dt의 분포를 시각적으로 확인하기 plot(dt) 위 그래프에서 볼 수 있듯이 매우 이상한 ydata라는 변수를 만들었다. 앞에서 했던 것과 다르게 Sepal.Length 대신 ydata를 종속변수 y로 두고 예측해보자. # 모델 mdl 생성 mdl <- lm(ydata ~ ., dt) # 회귀분석 결과 출력 summary(mdl) # 표준화 잔차의 분포를 시각적으로 확인하기 plot(rstandard(mdl)) 회귀분석 결과 유의한 모델이 나오지 않았는데, 표준화 잔차의 분포를 살펴보면 그 이유를 알 수 있다. 표준화 잔차가 등분산성을 만족하지 않고 4개의 덩어리가 있는 특정 패턴을 가지고 있기 때문이다. 표준화 잔차가 이러한 분포를 가지고 있는 경우, 매우 중요한 변수가 분석 데이터에 추가되지 않고 빠져있다는 의미로 해석할 수 있다. 앞에서 우리가 만든 ydata는 위에 75행은 평균이 1인 랜덤값이고, 아래 75행은 평균이 10인 랜덤값이므로 1~75행과 76~150행을 나누어줄 수 있는 추가적인 변수가 필요하다. - - (4) 정규성 마지막 정규성은 또한 잔차가 정규성을 만족하는지 여부로, 정규분포를 띄는지 여부를 의미한다. # 분석 데이터 dt 만들기 dt <- iris[, -5] # 강제로 등분산성을 위배하는 변수 ydata 만들기 set.seed(1) dt$ydata <- c(round(rnorm(20, 1, 0.3), 1), round(rnorm(30, 5, 0.3), 1), round(rnorm(100, 7, 1), 1)) # dt의 분포를 시각적으로 확인하기 plot(dt) 강제로 한쪽에 쏠려있어 정규분포가 아닌 변수 ydata를 만들어보았다. 이 변수로 회귀분석을 해보자. # 모델 mdl 생성 mdl <- lm(ydata ~ ., dt) # 회귀분석 결과 출력 summary(mdl) # 표준화 잔차의 분포를 시각적으로 확인하기 hist(rstandard(mdl)) 유의하지 않은 변수들이 섞여있는 것을 확인할 수 있다. 표준화 잔차의 히스토그램을 살펴보면 정규분포가 아님을 시각적으로 확인할 수 있다. 시각적으로 말고 수치적으로 확인하기 위해 Shapiro-Wilk Test로 정규성 검정을 해보자. # 정규성 검증 shapiro.test(rstandard(mdl)) 정규성 검정의 귀무가설은 "정규분포와 차이가 없다" 이다. p-value가 0.001 이므로 유의수준 0.05보다 작으므로 귀무가설을 기각한다. 즉, 이 데이터는 정규분포와 차이가 있다 = 정규성을 만족하지 않는다. 라는 해석을 할 수 있다. 정규성을 만족하기 위해서는 (3) 등분산성을 해결하기 위한 방식와 유사한 방법들이 필요하다. 요약 4가지 기본가정을 만족해야 유의한 회귀모델이 나온다. 가장 쉬운 방법은 Stepwise로 4가지 기본가정을 위배시키는 변수를 제거하자. 이 포스팅이 도움이 되셨다면 아래 하트를 눌러주세요. 큰 힘이 됩니다:) ▼ 로지스틱 회귀분석 이론 ▼ 2017/03/21 - [ANALYSIS/Algorithm] - Logistic Regression / 로지스틱 회귀분석 ▼ 로지스틱 회귀분석 R 예제 코드 ▼ 2017/03/22 - [ANALYSIS/R] - [R 예제 코드] Logistic Regression / 로지스틱 회귀분석 #회귀분석#선형회귀분석#다중회귀분석#기본가정#잔차#오차#표준화잔차#다중공선성#Regression#Residual#StandardizedResidual
[통계학] 30. 선형 회귀 분석의 4가지 가정 – (1)
통계 [통계학] 30. 선형 회귀 분석의 4가지 가정 – (1) 러닝머신 ・ URL 복사 본문 기타 기능 공유하기 신고하기 다중 선형 회귀 모형을 예측/추론에 사용하기 위해, 다음의 4가지 가정이 필요합니다. 선형성 : 종속변수와 독립변수 간의 선형 관계 독립성 : 독립 변수들 간의 통계적 독립성 (비 다중공선성) 등분산성 : 잔차들의 분산이 일정 정규성 : 잔차들의 분포가 정규 분포를 이룸 선형 회귀 분석을 예측 혹은 추론에 사용하기 위해서는, 4가지의 가정이 충족되어야 그 사용이 적절하다고 할 수 있습니다. 그 4가지 가정은 선형성/독립성/등분산성/정규성으로, 계량경제학 시간에서 지겹도록 들었지만 무슨 말인지 하나도 모르겠는 이름들입니다. 앞으로의 포스팅에서, 이 4가지 가정에 대해 자세히 알아보겠습니다. 이번 포스팅에서는 4가지 가정에 대해 개략적으로 알아보고, 이어지는 포스팅에서 각각의 가정의 자세한 개념과 진단 방법, 해결 방법에 대해 배워보겠습니다. 1. 선형성(Linearity) 선형성이란, 독립변수와 종속변수 간에 선형적인 관계를 가지는 성질입니다. 선형성이 위반될 경우, 회귀 모형은 심각한 문제에 당면합니다. 회귀 모형을 사용한 추정이 정확하지 않을 가능성이 크기 때문입니다. 그도 그럴 것이, 선형 회귀 분석이란 종속변수(y)와 독립변수(x) 간에 직선의 형태를 띤 관계가 있을 것이라고 가정하고 거기에 선형의 추정 모형을 적합시키는 방법이기 때문에 y와 x간에 선형인 관계가 없다면 아무런 의미 없는 분석이 되기 쉽기 때문입니다. 이렇게 x와 y간의 선형적인 관계를 가지는 성질을 선형성이라고 부릅니다. 2. 독립성 (Independency) 독립성은, 주로 회귀 모형의 가장 빈번한 문제로 제기되는 다중공선성(Multicollinearity)과 관련이 있습니다. 독립성이란, 다중 회귀 모형에 투입된 여러 변수들 간에 특정한 관계가 없는 성질을 뜻합니다. 식물의 성장속도(y)를 설명하는 섭씨기온(x1),화씨기온(x2),물의 양(x3) 세개의 변수가 있다고 생각해 봅시다. 이 경우, 섭씨 기온과 화씨 기온은 서로 강하게 관계가 있다고 할 수 있습니다. 이 말은 독립적으로 분리되지 않고 서로 연관이 있어서 모형 학습에 안좋은 영향을 미칩니다. 이 경우 독립성 가정이 위배되고, 회귀 계수의 분산이 비정상적으로 커져 계수 추정이 어려워지는 문제가 생깁니다. 3.등분산성(homoskedasticity) 등분산이란, 말 그대로 분산이 같다(같을 등, 等)는 의미입니다. 영어로는 조금 괴상하게 생겼는데요, homo-는 ‘같은’ 이라는 의미로 사용되는 말이고, skeda-는 (정확하지는 않지만) scatter와 같은 어원을 공유하고 있을 것 같습니다. 따라서 homoskedasticity는 ‘같은 형태로 흩뿌려진 성질’ 이라고 이해하면 좋을 것 같습니다. 반대로 이분산성은 heteroskedasticity라고 합니다. hetero-는 ‘다른’이라는 의미입니다. 여기서 이 분산의 주체는 ‘잔차’입니다. (잔차는, 추정치와 실제치의 차이입니다. 즉, y-y hat) 잔차가 균일한, 즉 하나의 분산을 가지고 흩어져 있는 성질을 등분산성이라고 합니다. 아래의 그림은, 등분산성을 띤 잔차의 분포를 보여줍니다. 잔차가 일정한 분산을 가지고 흩어져 있습니다. 반대로 위의 그림은 이분산성을 띤 잔차의 분포를 보여줍니다. 뒤로 갈수록 분산이 커지는 현상을 보여줍니다. 4. 정규성(Normality) 정규성의 주체 역시 잔차입니다. 잔차의 정규성이란, 잔차가 정규분포의 형태를 띤다는 말입니다. 회귀 분석에서, 알 수 없는 잔차의 형태를 최대한 간단하게 두기 위해 정규 분포를 따른다고 가정하고 모형을 만듭니다. 잔차의 형태입니다. 정규분포의 형태를 얼핏 가지는 것 같지만, 엄밀히는 정규성을 만족시키지 못합니다. 참고 자료: 김충락교수님 K-MOOC 강의자료 경영경제통계학, 명경사 현대통계학, 박영사 p.s. 도움이 되었다면, 공감/댓글 부탁드립니다! 누군가에게 도움이 되었다는 것이 제게 소소한 기쁨이 됩니다. 잘못된 정보, 수정해야할 내용 지적은 언제든지 환영합니다! 인쇄
[TIL] 회귀분석의 가정
반응형
개요
회귀모델이 정말 적절했는지를 따져보기 위한 검토 방법중의 하나로 회귀 모델의 기본 가설이 잘 성립했는지를 확인해 보는것이 그 방법이 될 수 있을 것이다 회귀 분석의 기본 가정 4가지에 대해 알아보고 이에 대한 여러 검증 방법 및 시각화 방법에 대해 정리해본다.
선형회귀분석의 가정
선형회귀분석의 기본 4가지 가정은 다음과 같다.
(1) 정규성 : 잔차가 평균이 0인 정규분포 를 띈다.
(2) 독립성 : 잔차 사이에는 상관관계가 없이 독립이어야 한다.
(3) 등분산성 : 잔차의 분산은 입력변수와 무관하게 일정해야 한다.
(4) 선형성 : 입력변수와 출력변수 사이에는 선형적인 관계를 띄어야 한다.
주의사항! 여기서 독립변수의 정규성이나 독립성 등을 따지는 것이 아니라 잔차의 정규성, 독립성을 따져야 한다. 조금 직관적으로 생각해보면 잔차에 대해 따지는 것이 회귀분석이 잘 되었는지에 대해 검토하는 과정을 확인하는 것이 조금 더 자연스럽다.
* 자세한 근거를 조금 더 통계적으로 조사 필요.
각각을 확인하는 방법
정규성 – Q-Q Plot 및 각종 정규분포임을 확인하는 통계 test 들..
독립성 – Durbin – Watson 통계량이 있다고 한다… 자세한 학습 필요.
반응형
선형 회귀 모형 가정을 왜 하는가?
선형 회귀모형 을 공부하다 보면 반드시 보게 되는 것이 회귀모형의 “가정”입니다.
물론 이 가정에 대해 아 그렇구나 하고 넘어가도 되지만, 왜 가정하는지 한 번 알아보는 것도 좋을 것 같습니다.
그렇다면 왜 가정을 하고 왜 그렇게 가정하는지를 알아보겠습니다.
가정을 하는 이유
먼저 회귀분석의 목적을 알아야 합니다.
회귀 분석의 목적은 설명변수 $x$와 반응변수 $y$의 관계를 선형식으로 나타내고 싶은 것입니다.
그러나 현실적으로 변수 간의 관계를 선형식으로 나타내는 것이 힘드므로, 여러 가정을 통해 선형식으로 만들어 내는 것입니다.
가정의 종류
1. $x, y$는 선형 관계
2. $x$ : 오차 없이 측정 가능한 수학 변수
$y$ : 오차를 수반하는 확률 변수(Random Variable)
3. $\varepsilon_i \sim N(0, \sigma^2) \ \ i.i.d$
(1) 정규성(Normality) : $\varepsilon_i \sim Normal$
(2) 독립성(Independent) : $Cov(\varepsilon_i , \varepsilon_j) = 0$ (i≠j)
(3) 등분산성(Homoscedasticity) : $Var(\varepsilon_i) = \sigma^2$
4. $Cov(X_i , X_j) = 0 $ (i≠j) → Multi Regression에서 해당하는 가정으로 여기서는 설명하지 않겠습니다.
5. $x$의 샘플 수는 2개 이상 → 당연한 이야기이므로 설명을 생략하겠습니다.
1. $x, y$는 선형 관계
이유
우리는 $x, y$의 선형관계식을 알고 싶어 진행하는 것으로, $x, y$가 어느정도 선형식으로 표현할 수 있는 형태를 갖고 있어야 선형 회귀 분석을 실시할 수 있습니다.
확인 방법
$x, y$가 선형의 관계를 갖고 있는지는 $x, y$ 의 산점도로 확인할 수 있습니다.
가정 위배 시
만약 $x, y$가 선형의 관계를 갖고있지 않다면, 다음과 같은 방법으로 선형 관계 형태로 만들어 줄 수 있습니다.
(1) $x^2$항을 추가
(2) 변수 변환법
2. $x$ : 오차 없이 측정 가능한 수학 변수 and $y$ : 오차를 수반하는 확률 변수(Random Variable)
$x$의 경우 우리가 관측한 값으로서 실제로 값을 알고 있는 값으로 생각합니다.
그러나 $y$의 경우 우리가 추정하고자 하는 값으로 $y_i = \beta_0 + \beta_1 x_i + \varepsilon_i$의 형태로 표현합니다.
여기서 보이듯이 $\varepsilon_i$이라는 오차를 갖고 있는 값으로서, 확률변수 값으로 생각합니다.
3. $\varepsilon_i \sim N(0, \sigma^2) \ \ i.i.d$
이 부분을 설명하기에 앞서 몇가지 알아야 할 점이 있습니다.
여기서 말하는 오차 $\varepsilon_i$는 우연 오차(random error)로 측정하는 사람이 도저히 조정할 수 없는 오류를 의미합니다. $\\$
따라서, 오차에 대한 검정은 할 수 없으므로 오차를 대신하여 잔차(Residual)를 사용합니다. $\\$이때 잔차는 실제값과 예측값의 차이로, 실제 $y$와 우리가 추정하여 만든 $\hat {y}$의 차이를 의미합니다.$\\$ $$ e_i = y_i – \hat {y_i} $$
(1) 정규성(Normality) : $\varepsilon_i \sim Normal$
① 의미 : 오차항은 정규분포형태
② 이유 : 회귀 분석은 회귀 모형을 추정한 이후 회귀 모형이 잘 맞는지 모형 검정과 계수 검정을 필요로 합니다.
모형 검정과 계수 검정 등의 가설검정을 하기 위해서는 분포 가정이 필요 하여, 이때 사용하기 위한 정규성 가정입니다.
③ 확인 : Q-Q plot, Shapiro-Wilk test, Kolmogolov-Smirnov test, Jarque-Bera test
※ 주의 사항!!!
정규성 검정은 $y_i$가 아닌 $\varepsilon_i$에 하는 것입니다!!
( 정말 많은 분들이 헷갈려하는 부분이니 꼭 명심하시기 바랍니다 🙂 )
(2) 독립성(Independent) : $Cov(\varepsilon_i , \varepsilon_j) = 0$ (i≠j)
① 의미 : 오차항은 서로 독립
② 이유 – 오차는 random error로서 서로 관계가 없다고 가정합니다.
– 오차항이 서로 상관관계가 있다면, 추정된 회귀식으로 설명되는 않은 부분에서 다른 어떤 관계가
있다는 것을 의미하는 것으로 이는 회귀식의 설명력을 약하게 만듭니다.
③ 확인 : Residual plor, Durbin-watson test, Breusch-Godfre’s LM test, ACF
④ 위배 : 독립성의 가정이 위배된 경우 “자기상관”을 갖는다고 말하며,
추후 회귀모형 검정에서 사용되는 $t, F, R^2$값이 모두 과대 추정되는 경향이 생깁니다.
⑤ 해결 : 변수의 차분
⑥ 특징 : 주로 시계열 자료에서만 독립성을 가정합니다.
(3) 등분 산성(Homoscedasticity) : $Var(\varepsilon_i) = \sigma^2$
① 의미 : 오차의 분산이 $x_i$에 관계없이 일정하다.
② 이유 : 정규성 가정과 마찬가지로 추후 회귀 모형의 검정에 있어, 검정을 용이하게 하기 위한 가정입니다.
③ 확인 : Resdiual plot, Brown-Forsythe, Breusch-Pagan
④ 위배 – 이분 산성(Hetroskedasticity)라고 하며, 추정량의 분산이 커져 최소분산을 갖는 효율성을 갖지 못합니다.
이에 BLUE(Best Linear Umbasied Estimator)가 되지 못합니다.
– 추정치 분산 추정량이 하향 편의를 갖게 됩니다.
⑤ 해결 : WLS(Weight Least Square), GLS regression
2번과 3번 가정을 통해 $y_i \sim N(\beta_0 + \beta_1 x_i , \sigma^2)$이 됩니다.
(1) $y_i$ = 상수($\beta_0 + \beta_1 x_i$) + Normal distribution($\varepsilon_i$) =$ Normal distribution
(2) $E(y_i) = E(\beta_0 + \beta_1 x_i + \varepsilon_i) = \beta_0 + \beta_1 x_i + E(\varepsilon_i) = \beta_0 + \beta_1 x_i$
$Var(y_i) = Var(\beta_0 + \beta_1 x_i + \varepsilon_i) = Var(\varepsilon_i) = \sigma^2$
[ADP 대비] 회귀분석의 가정
회귀분석의 가정
회구분석의 가정 중에는 선형성도 있기때문에 선형회귀분석의 가정이라고도 함
1. 선형성
• 입력변수(X)와 출력변수(Y)의 관계가 선형이다.(선형 회귀분석에서 가장 중요한 가정)
• 그래프로 확인하려면 X, Y 플롯을 봐야함(X, 잔차 그래프랑 헷갈리지 말것)
선형성 만족 O 선형석 만족 X
2. 등분산성
• 오차(혹은 잔차)의 분산이 입력변수와 무관하게 일정
• 오차와 입력변수간에 아무런 관련성이 없게 무작위적으로 고루 분포되어야함
이분산성과 등분산성 등분산성을 만족하지 못하는 경우
• ∩ 모양의 그래프는 X값이 커짐에 따라 잔차가 커지거나 작아지거나 하기때문에 오차와 입력변수간에 아무런 관련성이 없다고 보기힘듦
• 제일 우측 그림 역시 X값이 커짐에 따라 잔차가 커지는 모습을 보여 오차와 입력변수간에 아무런 관련성이 없다고 보기힘듦
3. 독립성
• 입력변수(X) 간에 상관관계가 없어야 함을 뜻함
• 보통 그래프로만 판단하기는 힘들다(=알 수 없음)
• 통계량으로는 Durbin-Watson 통계량
4. 정규성(정상성)
• 오차의 분포가 정규분포를 따른다.
• 그래프는 Q-Q plot
• Q-Q plot은 잔차가 대각방향의 직선의 형태를 지니고있으면 잔차는 정규분포를 따른다고함
• 통계량으로는 Kolmogolov-Smirnov 검정(KS검정), Shapiro_Wilk 검정 등을 활용
Q-Q plot
5. 가정에 대한 검증
• 단순 선형회귀분석 : 입력변수와 출력변수간의 선형성을 점검 하기위해 산점도를 확인
• 다중 성형회귀분선 : 회귀분석의 가정인 [선형성, 등분산성, 독립성, 정규성(정상성)]이 모두 만족하는지 확인
[회귀]회귀모형의 진단/ 오차의 등분산성, 선형성, 독립성
회귀분석에서는, 오차에 대한 가정을 전제로 최소제곱법에 의한 추정이 가능합니다.
1. E( εi ) = 0
2. Var( εi ) = σ^2 * Ι “등분산성”
3. Cov( εi, εj) = 0 “독립성”
회귀식을 추정할때, 가장 근본이 되는 원리인 ‘최소제곱법’에 의한 회귀식은 , 오차의 등분산성과 독립성에 의해 ‘최량 선형 비편향 추정량’이 되죠. 최량선형 비편향 추정량이란, ‘추정량이 그 어떠한 모수에 대한 추정량보다 분산이 작다. 즉, 최고의 추정량이다’ 라는 뜻입니다.
오차에 대한 등분산성과 독립성에 의해 ‘최소제곱법에 의한 추정량은 최량선형 비편향 추정량이다’ 라는 가우스 마코브 정리가 성립되는것이죠.
이를 조합해보면, 오차의 분포에 대한 가정은 기본적으로 εi~N(0, σ^2)인것이죠. 정규성에 대한 가정은 회귀분석에서 최소제곱법으로 구한 추정량의 분포에서 모수들에 대한 추론을 위해서 필요합니다.
보통은 표본을 가지고 회귀식을 추정하기 때문에, 모집단으로부터 추정한 회귀식으로부터 얻은 예측값과 실제값의 차이인, 오차는 관측할수 없는 값입니다. 따라서, 우리는 오차에 대해 ‘모든 오차는 동일한 분산을 가진다’, ‘오차간에 서로 영향을 주지 않는다’ 라는 가정을 전제하고, 회귀식을 추정하는 것이죠. 하지만, 오차에 대한 정보가 구체적으로 명시되어 있고, 그것이 오차에 대한 가정에 어긋나는 경우, 이를 무시하는것은 옳지 않습니다. 위의 가정들을 옳다고 가정하고 모형을 추정하지만, 확실하게 오차가 위의 가정을 위반하는것이 관측되면, 이에 대한 교정과정을 거치는것이 통상적 절차입니다. 또한, 오차가 관측되지 않은 변수임에도 불구하고, 오차의 정규성에 대한 검토가 가능한데, 이에 대한 진단은 잔차에 기초합니다. 잔차가 오차의 선형결합으로 표현되기 때문이죠.
잔차는 관측값과, 표본으로부터 추정한 회귀식에 의한 적합값의 차이를 나타냅니다. 잔차에 대한 자세한 설명은 https://jangpiano-science.tistory.com/116?category=875432 를 참고해 주세요.
회귀식을 추정하기 위한 중요한 가정의 타당성을 의심하여, 모형에 어떠한 문제점이 존재하는지 알아보는 진단을 ‘모형진단(model diagnostics)’라고 합니다. 이번 포스팅에서는, 잔차의 분포를 바탕으로 오차에 대한 가정의 타당성과 추정한 선형회귀모형의 타당성을 의심해보도록 하겠습니다. 잔차의 분포를 한눈에 살펴볼 수 있는 산점도(scatter plot)들을 통해, 잔차의 분포를 살펴봅시다.
<잔차산점도 residual plot>
x축 : 회귀식에 의한 적합값
y축: 잔차(ei) or 스튜던트화 잔차(ri)
*스튜던트화 잔차(ri)는 ‘표준화된 잔차’로 모형 진단에서 주로 표준화되지 않은 잔차(ei)를 대신하여 사용합니다.
<잔차산점도 R 코드>
plot(x = fitted(lm(Y~.,data = )), y = rstandard(lm(Y~., data = )))
– 적합 모형
: 잔차산점도가 -3과 3 사이에 고르게 분포되어 있음. (잔차산점도의 회귀선 기울기 = 0)
회귀식이 설명변수와 반응변수사이의 선형의 관계성(linearlity)을 나타내기에 적합하고, 오차에 대한 가정이 만족된다면, 잔차산점도가 y축을 기준으로 -3과 3 사이에 고르게 분포되고, 특별한 규칙성을 나타내지 않습니다.
-부적합 모형
1. 오차의 이분산성(Heteroscedasticity) : 적합값(x축)이 증가함에 따라, 스튜던트화 잔차(y축) 값의 퍼짐 정도가 증가하거나, 감소.
이미지 (d)를 보자면, x축 값(적합값)이 증가함에 따라, y축 값(ri)의 퍼짐 정도가 같이 증가하는것을 볼 수 있죠.
이미지 (e)역시, (d)만큼 뚜렷한 퍼짐정도를 보이진 않지만, x축 값이 증가함에 따라, y축 값의 퍼짐 정도가 같이 증가하는것을 볼 수 있습니다.
이미지 (f)에서는, x축 값이 증가함에 따라 y축 값의 퍼짐 정도가 일정하다가 증가하죠.
이 이미지들은 모두 오차의 이분산성을 나타낸다고 볼 수 있습니다. 따라서, 다음과 같은 잔차산점도가 관측된다면, 우리는 모형에 대한 적절한 변형이 필요하겠죠. 오차의 이분산성이 발견되었음에도 불구하고, 이를 무시하고 최소제곱법에 의한 회귀모형을 받아들이는것은 바람직하지 않습니다.
이분산의 증거가 분명히 발견된다면, 반응변수에 변환을 취한다던지, 가중최소 제곱법을 사용해야 합니다.
2. 회귀모형의 비선형성(non – linearlity) : 적합값(x축)에 대하여, 스튜던트화 잔차(y축) 값이 곡선의 형태를 보여줌.
이미지 (d)를 보자면, x축 값(적합값)이 증가함에 따라, y축값(ri)가 곡선의 형태를 띄는것을 보실 수 있으시죠.
이미지 (f)에서 역시, x축 값(적합값)이 증가함에 따라, y축값(ri)가 곡선의 형태를 띕니다.
우리는 최소제곱법에 의해 잔차의 제곱합을 최소로 하는 하나의 선을 회귀식으로 추정합니다. 따라서 선형 추정량이라고 하죠.
하지만, 다음과 같은 잔차산점도가 발견된다면, 회귀식에 이차항을 포함시키라는 뜻으로 해석됩니다. 즉, 선형 모형이 바람직하지 않다는것으로 해석이 가능하죠. 따라서, 다음과 같은 잔차산점도를 발견한다면, 변수변환을 통해 회귀식을 구성하는 항을 변환시켜주어야 바람직합니다.
<잔차 - 설명변수 산점도 residual versus predictor plots>
잔차산점도(residual plot)을 이용해, 회귀모형의 비선형성(non – linearlity)을 관측하였다면, 어떠한 설명변수에 의한 비선형성인지 알아내야 변수에 적절한 변형을 취할 수 있겠죠? 즉, 어떠한 설명변수에 적절한 변형을 취해야 하는지 알기 위해서는, 어떤 설명변수가 잔차와의 비선형성을 갖는지 알아야 합니다. 잔차-설명변수 산점도를 통해서 이에대한 정보를 얻을 수 있습니다.
x축: 검토하고자 하는 설명변수 —-> X1 or X2
y축: 전체 설명변수에 대한 회귀적합 후 잔차 —-> e(Y|X1, X2)
잔차-설명변수 산점도 역시, 모형이 잘 적합되었다면 특별한 형태를 띄지 않을것입니다. 하지만, X1을 x축으로 하고 e(Y|X1, X2)를 y축으로 한 산점도에서, 비선형 모형이 나타나는 경우, X1변수에 변환이 필요합니다.
<잔차-설명변수 산점도 R 코드>
plot(x = X1, y= resid(lm(Y~., data = ))) #X1의 잔차-설명변수 산점도
plot(x = X2, y= resid(lm(Y~., data = ))) #X2의 잔차-설명변수 산점도
예를들어, x축을 X1로 하고, y축을 전체 설명변수에 대한 회귀적합 후 잔차로 설정하였을때, 다음과 같은 산점도가 나타난다면, 이는 X1이 증가함에 따라 잔차가 비선형의 모양을 하는것이 보이므로, X1의 이차항을 모형에 포함시켜야 함을 알 수 있습니다.
<정규 확률 그림 Normal probability plot>
회귀분석에서의 중요한 또한가지의 가정은, 오차의 정규성입니다. 오차가 평균을 0으로, 분산을 σ^2로 가지는 정규분포를 따른다는 가정은 회귀분석에서 모수에 대한 검정과 신뢰구간을 구하는데 필요합니다. 카이제곱분포, t 분포와 정규분포와의 관계성 덕분에, 회귀분석에서 F 검정과 t검정이 유의한것이죠. 오차의 정규성에 대한 검정 역시, 오차는 관측할 수 없는 값이기 때문에, 잔차에 의존합니다. 설명변수의 수가 고정되어있고, 표본의 크기가 증가하면, 잔차의 정규성 검토로, 오차의 정규성을 검정할 수 있습니다.
정규 확률 그림을 그리는 방법은 다음과 같습니다.
1. 관측값(표본)을 작은것에서 큰순으로 나열한다. (표본의 순서통계량)
2. 각 자료에 해당하는 정규점수(normal score)를 계산한다.
3. 정규점수를 x축으로, 관측값(표본)의 순서통계량을 y 축으로 한 산점도인 ‘정규 확률 그림’을 그린다.
정규점수(normal score)란, 자료가 평균으로부터, 표준편차의 몇배만큼 떨어져있는지 보여주는 값입니다. 표준정규분포 (N(0,1))에서 관측값이 평균으로부터 얼마나 떨어져있는지를 기록한 경계값이라고 할 수 있죠. 정규분포는 평균에 밀집된 종 모양을 띄고 있으므로, 우리가 관측한 값이 정규분포에서 추출된 값인지 검토하기 위해서는, 정규분포와 비슷한 분포도를 가져야 겠죠. 만약, 관측값들이 평균에 밀집된 종 모양을 띄고 있으면, 정규분포에서 추출되었을 확률이 높아지는 것입니다. 관측값의 개수가 10개라고 하였을때, 정규분포를 10개의 등확률 구간으로 나눈후 경계값과 비교하였을때, 큰 차이가 없다면, 관측값은 정규분포로부터 추출되었다고 결론 내릴 수 있습니다. 정규 확률 그림이란, 정규점수를 x축으로, 관측값(표본)의 순서통계량을 y 축으로 한 산점도입니다. 따라서, 관측값이 정규분포로부터 추출된 값이라고 하였을때, 정규 확률 그림은 일직선에 접근하게 됩니다.
우리는 오차의 정규성에 대하여 관심이 있기 때문에, 잔차의 정규성을 검토하게 되는것이죠. 따라서, 구체적으로 오차의 정규성을 검정하기 위한 정규확률 그림을 그리는 방법은 다음과 같습니다.
1. 관측된 잔차를 작은것에서 큰순으로 나열한다. (잔차의 순서통계량)
2. 각 잔차에 해당하는 정규점수(normal score)를 계산한다.
3. 정규점수를 x축으로, 잔차의 순서통계량을 y 축으로 한 산점도인 ‘정규 확률 그림’을 그린다.
*R 코드로 만들어본 정규분포 그래프
> x <- seq(-3, 3, length = 200) > plot(x, dnorm(x, mean=0, sd=1), type=’l’, main=”Standard normal distribution”)
<정규확률그림 R 코드>
-정규확률 그림 그리는 방법에 의한, 정규확률 그림 그리는 법 요약 코드
qqnorm_function = function(Z){
Z <-sort(Z) #관측값(표본)의 순서통계량(order statistics) Q = qnorm(((1:length(Z))-0.3175)/(length(Z) + 0.365)) #정규점수(normal score) plot(x = Q, y = Z, xlab = "normal data", ylab = "ordered observed data") } #Q = qnorm((1:length(Z))/length(Z))로 설정하면, 정규분포는 (-inf, +inf)의 분포이므로, inf 값을 프린트한다. 따라서, 이를 방지하기 위해 일반적으로 0.3175, 0.365를 빼고 더해주어, inf값을 프린트 하지 않게 해준다. -정규확률 그림 그려주는 R 내장 함수 qqnorm(resid(lm(Y~X))) 평균을 10으로, 분산을 1로 하는 정규분포에서 100개의 표본을 추출하였다고 하였을때, 이 표본값들을 정규점수와 비교하는 정규 분포 그래프를 그려보겠습니다. 당연한 결과로, 정규 분포 그래프가 일직선을 나타내는것을 보실 수 있습니다. > X<-rnorm(100, 10, 1) > qqnorm(X)
그렇다면, 반대로, 정규분포가 아닌, 최솟값을 -10, 최댓값을 10으로 하는 균등분포(Uniform distribution)에서 100개의 표본을 추출한 후, 정규분포 그래프를 그리면, 일직선이 아닌 형태의 그래프가 그려지는것을 보실 수 있습니다.
> X<-runif(100, -10, 10) > qqnorm(X)
위에서 언급한 QQ-plot을 이용한 시각적 해석 이외에도, shapiro.test를 통해 데이터가 오차의 정규성을 만족하는지 확인 할 수 있습니다. R에서 샘플을 바탕으로, 전체데이터의 정규성을 시험하기 위해 사용되는 shapiro test 의 R 코드는 다음과 같습니다. 우리의 목적은 ‘오차’의 정규성이니, shapiro.test 함수 안에 resid(lm(Y~X)를 넣어주면 되겠죠?
shapiro.test(resid(lm(Y~X)))
shapiro 분석에서,
귀무가설(H0; Null hypothesis) : 데이터의 분포가 정규분포를 따른다 (정규성 만족)
대립가설(Ha; Alternative hypothesis) : 데이터의 분포가 정규분포를 따르지 않는다 (정규성 위배)
입니다.
따라서, shapiro test의 결과값에서 p-value가 유의수준(significance level)보다 작으면, 귀무가설을 기각하므로, 정규성이 위배된다는 결론을 내리게 되며, p-value가 유의수준보다 크게 되면, 귀무가설을 기각하는것을 실패하므로, 정규성의 가정이 위배되기에 근거가 충분하지 않다는 결론을 내리게 됩니다.
위에서, 정규 확률 그림(normal probability plot)을 통해 오차의 정규성을 검토하는 방법을 소개하였습니다. 이 방법 이외에도 정규성을 검정하기 위한 방안이 많이 제안되었지만, 그중에서도 Shapiro와 Wilk에 의해 고안된 Shapiro-Wilk 통계량, 간단히 말해 W-통계량을 설명하겠습니다.
W-통계량은 정규 확률 그림에서 X축, Y축을 형성하던, 정규점수와 관측값의 순서통계량의 상관계수(Correlation coefficient)의 제곱값입니다.
-W-통계량을 이용해, 오차의 정규성을 검토하는 R 코드
>?shapiro.test
>shapiro.test(resid(lm(Y~X)))
다음의 코드로부터 나온 p-value가 0.1보다 작다면, 오차의 정규성이 기각됩니다.
<스코어 검정 score test>
스코어 검정은, 오차의 등분산 가정에 대한 검정법입니다. 오차의 등분산 가정이란, 모든 관측값에 대해 오차의 분산이 같다는 뜻입니다. 이는, 모든 X의 값에 대해 Y의 분산은 같다는 가정이 되기도 하죠. 그러나 설명변수와 반응변수 혹은 외적요인에 의해 오차의 분산이 이루어지지 않는 경우도 있습니다.
위에서 잔차산점도와 설명변수-잔차산점도에서 X축이 증가함에 의해 Y축의 퍼짐 정도가 달라짐을 파악하며 등분산에 대한 대략적인 진단에 대해 소개하였습니다. 하지만, 산점도를 통해 오차의 이분산성을 파악하는것이 애매한 경우, 우리는 주관적인 판단에 의존해야만 합니다. 따라서, 산점도만을 통해 이분산성을 파악하는데에는 한계가 존재하므로, 스코어 검정(score-test)라는 이분산성을 판단하는 통계적인 방법이 제시되었습니다.
스코어 검정을 시행하는 단계는 다음과 같습니다.
H0: 등분산 (homoscedestic)
H1: 이분산 (heteroscedestic)
1. 추정회귀식과, 그에 따른 잔차 ei 를 구한다.
2. 조정된 제곱잔차 ui 를 구한다.
3. 반응변수를 U로, 설명변수를 Z로 회귀식을 추정한다. (Z : 오차의 값에 영향을 준다고 생각되는 변수 –> 만약 설명변수 X1이 오차와 상관관계가 있다고 생각되는 경우, Z를 X1로 취하고, 반응변수 Y가 오차와 상관관계까 있다고 생각되는 경우, Z를 Y로 취한다.)
4. 3번에서 구한 회귀식에서 회귀제곱합(SSreg)을 구한다.
5. 회귀제곱합의 절반을 구함으로써 스코어 검정 통계량을 구한다. 즉, 스코어 검정 통계량은 SSreg/2
(자유도: Z에 포함되는 설명변수의 수 : q)
6. 스코어 검정 통계량과 자유도를 q로 하는 카이제곱 분포를 비교하여 등분산 가정을 기각할지 말지 정한다.
스코어 검정 R 내장 함수
> ?car::ncvTest
> car::ncvTest(lm(Y~X))
스코어 검정 시행 단계에 따라 R 코드를 짜보았습니다.
Z는 반응변수를 U로 하여 회귀시키고자 하는 설명변수입니다. 제가 작성한 코드는, 하나의 설명변수로 가정하고 작성한 코드임으로, 두개 이상의 설명변수에 대한 스코어 검정을 위해서는, 코드의 변경이 필요합니다.
a는 유의수준(significant level)으로, 오차가 등분산이라는 귀무가설을 기각할지 말지 결정하는것에 기준이 되는 값입니다.
#a : significance level
#Z : variable that is supposed to affect variance
score_test = function(X, Y, Z, a){
print(“have a quick look at residual scatter plot for checking the Heteroscedasticity”)
plot(x = fitted(lm(Y~X)), y = rstandard (lm(Y~X)))
#process to have adjusted squared error
mle_var = sum(resid(lm(Y~X))^2)/length(X)
U = resid(lm(Y~X))^2/mle_var
print(“H0 :[Equal Variance] Variance does not rely on Z”)
print(“H1: [Heteroscedasticity] Variance relies on Z”)
test = lm(U~Z)
score_test_statistics = anova(test)[1,2]/2
df = anova(test)[1,1]
p_value = 1-pchisq(score_test_statistics, df)
print(paste(“p-value is”, p_value, collapse = ” “))
if (p_value Heteroscedasticity “)
}
else {
print(“do not reject null hyoothesis because p-value is not that small–> Equal Variance”)
}
}
<더빈 - 왓슨 통계량 >
더빈 – 왓슨 통계량(Durbin – Watson statistics)이란, 오차항의 독립성을 검정하는데 기준이 되는 통계량입니다.
오차의 독립성 가정이란, 모든 관측값에 대해 오차간의 상관관계가 없다는 뜻입니다. DW 통계량이라고 불리우는 더빈 – 왓슨 통계량을 이용하면, 잔차들의 상관계수를 측정하여, 오차의 독립성을 검정할 수 있습니다.
오차의 독립성은 선형회귀분석의 성립되어야 하는 가정으로써, 더빈 왓슨 통계량을 통한 오차항 독립성 검정에서 귀무가설과 대립가설은 다음과 같습니다.
H0(귀무가설 : Null hypothesis) : 각 오차들은 서로 독립이다.
H1(대립가설 : Alternative hypothesis) : 어떠한 오차는 서로 상관관계를 가진다.
DW 통계량은 다음과 같이 구하고,
DW 통계량이 2.0 에 인접하면, 오차항간의 상관관계가 없는것을 의미하며,
DW 통계량이 0~2.0 인 경우 , 오차항간의 양의 상관관계,
DW 통계량이 2.0 ~ 4.0 에 인접하면, 오차항간의 음의 상관관계가 있는것으로 검정합니다.
더빈 – 왓슨 통계량 R 내장 함수
lmtest::dwtest(lm(Y~X))
회귀모형의 오차 가정에 대한 전반적인 검정 R 코드
>?gvlma
>install.packages(“gvlma”)
>gvlma::gvlma(lm(Y~X))
해석
해석:
Global Stat: 전반적인 가정에 대한 결과
Skewness: 정규성
Kurtosis: 정규성
Link Function: 선형성
Heteroscedasticity: 등분산성
이상, 지금까지 몇가지 산점도와 통계량을 바탕으로 회귀모형에서 오차에 대한 가정(등분산성)과 회귀모형의 선형성에 대한 검토를 수행해 보았습니다.
감사합니다:)
Top 33 회귀 분석 가정 The 102 Latest Answer
통계데이터분석 – 회귀분석 – 회귀분석 가정 진단 모델수정 🔑 선형성 | 정규성 | 등분산성 homoscedasticity | 독립성 | 다중공선성 multicollinearity
통계데이터분석 – 회귀분석 – 회귀분석 가정 진단 모델수정 🔑 선형성 | 정규성 | 등분산성 homoscedasticity | 독립성 | 다중공선성 multicollinearity
선형 회귀분석의 4가지 기본가정
Article author: kkokkilkon.tistory.com
Reviews from users: 9341 Ratings
Ratings Top rated: 3.2
Lowest rated: 1
Summary of article content: Articles about 선형 회귀분석의 4가지 기본가정 선형 회귀분석의 4가지 기본가정 How to make good linear regression model? 선형 회귀분석을 통해 좋은 모델을 만들기 위해서는 분석 데이터가 아래 … …
Most searched keywords: Whether you are looking for 선형 회귀분석의 4가지 기본가정 선형 회귀분석의 4가지 기본가정 How to make good linear regression model? 선형 회귀분석을 통해 좋은 모델을 만들기 위해서는 분석 데이터가 아래 … 선형 회귀분석의 4가지 기본가정 How to make good linear regression model? 선형 회귀분석을 통해 좋은 모델을 만들기 위해서는 분석 데이터가 아래 4가지 기본가정을 만족해야 한다. 아래 4가지 기본가정을 만..
Table of Contents:
태그
‘회사생활통계학 공부’ Related Articles
티스토리툴바
선형 회귀분석의 4가지 기본가정
Read More
[TIL] 회귀분석의 가정Article author: taksw222.tistory.com
Reviews from users: 10157 Ratings
Ratings Top rated: 4.0
Lowest rated: 1
Summary of article content: Articles about [TIL] 회귀분석의 가정 선형회귀분석의 기본 4가지 가정은 다음과 같다. (1) 정규성 : 잔차가 평균이 0인 정규분포를 띈다. (2) 독립성 : 잔차 사이에는 상관관계가 없이 … …
Most searched keywords: Whether you are looking for [TIL] 회귀분석의 가정 선형회귀분석의 기본 4가지 가정은 다음과 같다. (1) 정규성 : 잔차가 평균이 0인 정규분포를 띈다. (2) 독립성 : 잔차 사이에는 상관관계가 없이 … 개요 회귀모델이 정말 적절했는지를 따져보기 위한 검토 방법중의 하나로 회귀 모델의 기본 가설이 잘 성립했는지를 확인해 보는것이 그 방법이 될 수 있을 것이다 회귀 분석의 기본 가정 4가지에 대해 알아보고..
Table of Contents:
관련글
댓글0
공지사항
최근글
인기글
최근댓글
태그
전체 방문자
[TIL] 회귀분석의 가정Read More
선형 회귀 분석의 가정
Article author: dodonam.tistory.com
Reviews from users: 32519 Ratings
Ratings Top rated: 3.5
Lowest rated: 1
Summary of article content: Articles about 선형 회귀 분석의 가정 선형 회귀 분석의 가정 · (1) 선형성 : 독립변수와 종속변수 사이에는 선형적인 관계를 띄어야 한다. · (2) 독립성 : 여러 변수들 간의 상관관계가 없이 … …
Most searched keywords: Whether you are looking for 선형 회귀 분석의 가정 선형 회귀 분석의 가정 · (1) 선형성 : 독립변수와 종속변수 사이에는 선형적인 관계를 띄어야 한다. · (2) 독립성 : 여러 변수들 간의 상관관계가 없이 … 선형회귀 분석을 사용하기 위해서는 4가지 가정을 충족해야 사용이 적절하다고 할 수 있음 선형성/독립성/등분산성/정규성 (1) 선형성 : 독립변수와 종속변수 사이에는 선형적인 관계를 띄어야 한다. (2) 독립성 :..
Table of Contents:
데이터과학 삼학년
선형 회귀 분석의 가정 본문
티스토리툴바
선형 회귀 분석의 가정
Read More
회귀 분석의 표준 가정 | Hooni’s Playground
Article author: hooni-playground.com
Reviews from users: 38469 Ratings
Ratings Top rated: 3.8
Lowest rated: 1
Summary of article content: Articles about 회귀 분석의 표준 가정 | Hooni’s Playground 회귀 분석의 표준 가정 · Independence of Error (오차 독립성) · Zero Mean Error (오차 평균이 0) · Homoscedasticity (등분산성) · + GMT 성립 조건. …
Most searched keywords: Whether you are looking for 회귀 분석의 표준 가정 | Hooni’s Playground 회귀 분석의 표준 가정 · Independence of Error (오차 독립성) · Zero Mean Error (오차 평균이 0) · Homoscedasticity (등분산성) · + GMT 성립 조건.
Table of Contents:
회귀 분석의 표준 가정
글 내비게이션
회귀 분석의 표준 가정 | Hooni’s Playground
Read More
선형 회귀 모형 가정을 왜 하는가?
Article author: laoonlee.tistory.com
Reviews from users: 1602 Ratings
Ratings Top rated: 4.0
Lowest rated: 1
Summary of article content: Articles about 선형 회귀 모형 가정을 왜 하는가? 회귀 분석의 목적은 설명변수 x x 와 반응변수 y y 의 관계를 선형식으로 나타내고 싶은 것입니다. 그러나 현실적으로 변수 간의 관계를 선형식으로 … …
Most searched keywords: Whether you are looking for 선형 회귀 모형 가정을 왜 하는가? 회귀 분석의 목적은 설명변수 x x 와 반응변수 y y 의 관계를 선형식으로 나타내고 싶은 것입니다. 그러나 현실적으로 변수 간의 관계를 선형식으로 … 선형 회귀모형을 공부하다 보면 반드시 보게 되는 것이 회귀모형의 “가정”입니다. 물론 이 가정에 대해 아 그렇구나 하고 넘어가도 되지만, 왜 가정하는지 한 번 알아보는 것도 좋을 것 같습니다. 그렇다면 왜 가..
Table of Contents:
태그
‘Regression’ Related Articles
티스토리툴바
선형 회귀 모형 가정을 왜 하는가?
Read More
선형 회귀분석의 4가지 기본가정 : 네이버 블로그
Article author: m.blog.naver.com
Reviews from users: 13063 Ratings
Ratings Top rated: 3.7
Lowest rated: 1
Summary of article content: Articles about 선형 회귀분석의 4가지 기본가정 : 네이버 블로그 1) 선형성 · 2) 독립성 · 3) 등분산성 · 4) 정규성. …
Most searched keywords: Whether you are looking for 선형 회귀분석의 4가지 기본가정 : 네이버 블로그 1) 선형성 · 2) 독립성 · 3) 등분산성 · 4) 정규성.
Table of Contents:
카테고리 이동
seungyi_aibigdata
이 블로그
통계
카테고리 글
카테고리
이 블로그
통계
카테고리 글
선형 회귀분석의 4가지 기본가정 : 네이버 블로그
Read More
선형 회귀분석 네가지 기본 가정(with Python) ~ Feel the Data
Article author: mkitlez630.blogspot.com
Reviews from users: 10145 Ratings
Ratings Top rated: 3.3
Lowest rated: 1
Summary of article content: Articles about 선형 회귀분석 네가지 기본 가정(with Python) ~ Feel the Data 선형 회귀분석 네가지 기본 가정(with Python) · 1) 상관계수가 높은 변수 둘 중 하나 제거 · 2) 다중공선성이 높은 변수 제거 · 3) 다중공선성, 상관계수가 … …
Most searched keywords: Whether you are looking for 선형 회귀분석 네가지 기본 가정(with Python) ~ Feel the Data 선형 회귀분석 네가지 기본 가정(with Python) · 1) 상관계수가 높은 변수 둘 중 하나 제거 · 2) 다중공선성이 높은 변수 제거 · 3) 다중공선성, 상관계수가 …
Table of Contents:
2021년 12월 8일 수요일
선형 회귀분석 네가지 기본 가정(with Python)
About Author
About Me
Popular Posts
Search This Blog
Recent Posts
Categories
선형 회귀분석 네가지 기본 가정(with Python) ~ Feel the Data
Read More
[ADP 대비] 회귀분석의 가정Article author: specialscene.tistory.com
Reviews from users: 29512 Ratings
Ratings Top rated: 3.7
Lowest rated: 1
Summary of article content: Articles about [ADP 대비] 회귀분석의 가정 회귀분석의 가정 · 1. 선형성 입력변수(X)와 출력변수(Y)의 관계가 선형이다.(선형 회귀분석에서 가장 중요한 가정) · 2. 등분산성 오차(혹은 잔차)의 … …
Most searched keywords: Whether you are looking for [ADP 대비] 회귀분석의 가정 회귀분석의 가정 · 1. 선형성 입력변수(X)와 출력변수(Y)의 관계가 선형이다.(선형 회귀분석에서 가장 중요한 가정) · 2. 등분산성 오차(혹은 잔차)의 … 회귀분석의 가정 회구분석의 가정 중에는 선형성도 있기때문에 선형회귀분석의 가정이라고도 함 1. 선형성 • 입력변수(X)와 출력변수(Y)의 관계가 선형이다.(선형 회귀분석에서 가장 중요한 가정) • 그래프..
Table of Contents:
one of a kind scene
[ADP 대비] 회귀분석의 가정 [ADP 대비] 회귀분석의 가정 본문Read More
선형 회귀의 가정, 우회방법, 유의사항 – 숨은원리 데이터사이언스
Article author: ds.sumeun.org
Reviews from users: 37382 Ratings
Ratings Top rated: 3.6
Lowest rated: 1
Summary of article content: Articles about 선형 회귀의 가정, 우회방법, 유의사항 – 숨은원리 데이터사이언스 선형 회귀의 가정 · Linearity(선형성) : 종속변수는 설명변수의 선형 함수이다. · Independence(독립성): 종속변수는 관찰값에 조건부로 독립이다. · Normality(정규성): … …
Most searched keywords: Whether you are looking for 선형 회귀의 가정, 우회방법, 유의사항 – 숨은원리 데이터사이언스 선형 회귀의 가정 · Linearity(선형성) : 종속변수는 설명변수의 선형 함수이다. · Independence(독립성): 종속변수는 관찰값에 조건부로 독립이다. · Normality(정규성): …
Table of Contents:
선형 회귀의 가정 우회방법 유의사항
선형 회귀의 가정 우회방법 유의사항
선형 회귀의 가정
LINE의 가정을 우회하는 방법
정리
Post navigation
Related Posts
로지스틱 회귀(Logistic Regression)
분위수 손실(Quantile loss)에 대한 직관적 이해
회귀 내삽과 외삽
ANN 평균과 표준편차 출력 모형
k-means와 GMM 비교
개정판 발간! R로 하는 빅데이터 분석 데이터 전처리와 시각화
Manual Regression
visualization of regression models
두 변수의 상관계수와 유클리드 거리
피처 엔지니어링 3 베이지안
피처 엔지니어링 2
BLACK BOX 모형 살펴보기 모형의 예측 잔차 02
Black Box 모형을 살펴보기 모형의 예측 과적합 잔차 01
모형의 예측을 활용한 EDA와 피처 엔지니어링
변수 선택 방법 선형 회귀 분석으로 변수를 선택한다면
고정효과(fixed effect)와 임의효과(random effect)
내생성 베이지안 분석 2 Stan
인과관계 추정에서 모형 설정의 중요성
핫 핸드 논쟁 1
내생성 베이지안 분석
경로 분석
내생성(Endogeneity)
공식에서 cbind
BigData Analysis with R
Comments on this post
선형 회귀의 가정, 우회방법, 유의사항 – 숨은원리 데이터사이언스
Read More
[회귀]회귀모형의 진단/ 오차의 등분산성, 선형성, 독립성Article author: jangpiano-science.tistory.com
Reviews from users: 2811 Ratings
Ratings Top rated: 3.9
Lowest rated: 1
Summary of article content: Articles about [회귀]회귀모형의 진단/ 오차의 등분산성, 선형성, 독립성 정규성에 대한 가정은 회귀분석에서 최소제곱법으로 구한 추정량의 분포에서 모수들에 대한 추론을 위해서 필요합니다. 보통은 표본을 가지고 회귀식을 … …
Most searched keywords: Whether you are looking for [회귀]회귀모형의 진단/ 오차의 등분산성, 선형성, 독립성 정규성에 대한 가정은 회귀분석에서 최소제곱법으로 구한 추정량의 분포에서 모수들에 대한 추론을 위해서 필요합니다. 보통은 표본을 가지고 회귀식을 … 회귀분석에서는, 오차에 대한 가정을 전제로 최소제곱법에 의한 추정이 가능합니다. 1. E( εi ) = 0 2. Var( εi ) = σ^2 * Ι “등분산성” 3. Cov( εi, εj) = 0 “독립성” 회귀식을 추정할때, 가..
Table of Contents:
‘Statistics’ Related Articles
티스토리툴바
[회귀]회귀모형의 진단/ 오차의 등분산성, 선형성, 독립성Read More
See more articles in the same category here: 361+ tips for you.
선형 회귀분석의 4가지 기본가정
선형 회귀분석의 4가지 기본가정 How to make good linear regression model? 선형 회귀분석을 통해 좋은 모델을 만들기 위해서는 분석 데이터가 아래 4가지 기본가정을 만족해야 한다. 아래 4가지 기본가정을 만족하지 않으면 제대로 된 선형 회귀모델이 생성될 수 없다. – (1) 선형성 (2) 독립성 (3) 등분산성 (4) 정규성 – 각 기본가정의 의미와 지켜지지 않았을 때 어떻게 되는지, 그리고 이 기본가정을 만족하지 않는 경우 어떻게 해야하는지 해결방법을 R 코드 예제를 통해 살펴보도록 하자. ▼ 선형 회귀분석 이론 ▼ 2017/07/02 – [ANALYSIS/Algorithm] – Linear Regression / 선형 회귀분석 (1) 선형성 선형성은 “선형” 회귀분석에서 중요한 기본가정으로, 당연히 “비선형” 회귀분석에서는 해당하지 않는다. 선형성이란, 예측하고자 하는 종속변수 y와 독립변수 x 간에 선형성을 만족하는 특성을 의미한다. 먼저 예제 데이터를 확인해보자. # 분석 데이터 dt 만들기 dt
Hooni’s Playground
회귀 분석에는 표준 가정들이 필요하다. 보통 4대 가정, 5대 가정, 6대 가정 이러는데 사실 정확한 표준은 없다. 일반적으로 여겨지는 assumption set이 있기는 하나 필자가 글을 쓰는 시점(2020. 12.)에서도 Wiki에서조차 해당 set에 대한 의견이 분분하다. 이에 필자 나름의 생각으로 표준 가정을 정리해보았다. 우선 회귀 모델은 다음과 같은 형태를 가정한다. 회귀는 를 에 최대한 근접하게 만드는 것이다. 선형회귀에서는 로 을 사용한다. 한편, 는 population(모집단)의 independent variable(독립변수)이며 는 동일한 집단의 dependent variable(종속변수)이다. 은 error(오차)이다. 이 글의 population을 sample(표본집단)로 바꾼다면 error는 residual(잔차)로 대치된다. Independence of Error (오차 독립성) Error의 독립성은 두 가지가 충족되어야 한다. 첫번째로는 error와 독립변수 간에 상관관계가 없어야한다. 상관관계가 있다는 것은 아직 error중 독립변수로 설명할 수 있는 변량이 존재한다는 것이다. 이는 변수가 weak exogeneity(약외생성)을 가져야한다는 논의로부터 도출된다. 두번째로는 error 간에 상관관계가 없어야한다. 두 확률변수 X, Y 사이에 상관관계가 없다는 것은 을 의미하므로 곧 error의 covariance matrix가 diagonal matrix라는 것을 의미한다. 한편, error 간에 상관관계가 있다는 것은 error에 대한 모델 정의가 필요하다는 것을 의미한다. 예를 들어 에러에서 자기상관(Autocorrelation)이 존재하는 경우를 들 수 있다. Zero Mean Error (오차 평균이 0) Error의 (조건부) 기댓값이 0이다. Error의 (조건부) 기댓값이 0이라는 것은 곧 종속변수의 (조건부) 기댓값이 라는 것을 의미한다. Homoscedasticity (등분산성) Scedasticity는 error의 분산을 의미한다. 다시말해 homoscedasticity는 error의 분산이 일정한 것(등분산)을 의미한다. 만약 error가 정규분포를 따른다면 error는 당연히 homoscedastic이다. (참고로 scedasticity의 어원이 그리스어기 때문에 skedasticity와 혼용한다 [Wiki]) 여기까지가 필자가 생각하는 회귀 분석의 표준 가정이다. (선형회귀분석의 표준 가정이 아니라는 것에 주의) + GMT 성립 조건 한편, GMT(Gauss-Markov Theorem)가 성립(OLS가 BLUE)하기 위해서는 아래의 두 가정이 더 필요하다. 참고로 GMT에서는 독립변수를 확률변수가 아닌 주어진 값(given value)으로 가정한다. 또한, error에 대한 normality(정규성) 가정은 필요하지 않다. 오로지 uncorrelated error with mean zero and homoscedastic with finite variance만을 필요로 한다. Linear Relationship (선형성) 모든 종속변수와 독립변수는 선형관계를 가져야 한다. 다시말해 위의 회귀 모델의 가 로 표현된다. 이 가정은 애초부터 회귀 분석이 선형모델을 기반으로 이루어진다는 것을 말하며 이 때문에 비선형모델에서는 GMT(Gauss-Markov Theorem)가 깨지게 된다. (다시말해 비선형모델에 대해서는 가 의미를 가지지 않게된다) No Multicollinearity (다중공선성) 모델이 다중공선성을 가진다는 것은 한 독립변수가 다른 독립변수와 선형관계인 것을 말한다. 이 경우 입력의 조그만 변화에도 큰 error가 발생할 수 있다. 그렇기 때문에 GMT에서는 다중공선성이 없을 것을 가정한다. 이 가정 또한 변수가 weak exogeneity(약외생성)을 가져야한다는 논의로부터 도출된다. 한편, 다중공선성은 편향된 결과를 제공한다기보다 표준오차를 더 크게 만드는 역할을 한다. [Wiki] 흔히들 선형 회귀의 가정을 LINE이라고 정리한다. Linearity (선형성) Independence (독립성) Normality (정규성) Equal Variance (등분산성) 그런데 만약 암기한다면 필자는 단순히 오차의 평균, 분산, 독립과 다중공선성으로 외울 듯 싶다. 이 경우 오차의 평균, 분산, 독립만으로 회귀의 기본 가정이 충족되고, 다중공선성은 GMT를 충족하기위해 추가로 필요한 조건이 된다. 한편, 선형성은 선형 회귀의 자명한 가정이기때문에 따로 기억할 필요가 없다. 참고로 일반적으로 선형 회귀의 가정이라 일컬어지는 오차의 정규성은 굳이 가정될 필요가 없다. 물론 오차의 정규성을 가정하면 당연히 GMT에 의해 OLS(Ordinary Least Square, 최소자승)가 BLUE(Best Linear Unbiased Estimator, 최량선형불편추정량)가 된다. 하지만 굳이 오차의 정규성을 가정하지 않아도 오차가 homoscedatic with finite variance (등분산) 하면 여전히 GMT가 성립한다. 좀 지저분하게 정리된 감은 있지만 이 정의가 보다 확실한 듯 싶다. 사실 field에서 위의 가정을 모두 만족할 정도의 data가 모여본 적이 단 한 번도 없기에 (하나라도 만족하면 다행이다) 별로 중요하게 생각해본 적은 없다. 특히 필자는 CS전공이기 때문에 이런 것들을 일일이 생각하면서 문제를 해결하진 않는다. 보통 다루는 데이터들이 거의 비선형모델을 사용해야하는 복잡한 형태(시계열, 이미지, 텍스트 등)를 하고 있기 때문이다. 이런 경우에는 데이터를 통계적으로 보다 고도로 전처리하는데 시간을 들이기보다는 도메인 지식을 사용해 데이터를 전처리하고 고차원에서 더 잘 선형분리될 수 있도록 해주는 것(training)이 더 중요하다.
선형 회귀 모형 가정을 왜 하는가?
선형 회귀모형 을 공부하다 보면 반드시 보게 되는 것이 회귀모형의 “가정”입니다. 물론 이 가정에 대해 아 그렇구나 하고 넘어가도 되지만, 왜 가정하는지 한 번 알아보는 것도 좋을 것 같습니다. 그렇다면 왜 가정을 하고 왜 그렇게 가정하는지를 알아보겠습니다. 가정을 하는 이유 먼저 회귀분석의 목적을 알아야 합니다. 회귀 분석의 목적은 설명변수 $x$와 반응변수 $y$의 관계를 선형식으로 나타내고 싶은 것입니다. 그러나 현실적으로 변수 간의 관계를 선형식으로 나타내는 것이 힘드므로, 여러 가정을 통해 선형식으로 만들어 내는 것입니다. 가정의 종류 1. $x, y$는 선형 관계 2. $x$ : 오차 없이 측정 가능한 수학 변수 $y$ : 오차를 수반하는 확률 변수(Random Variable) 3. $\varepsilon_i \sim N(0, \sigma^2) \ \ i.i.d$ (1) 정규성(Normality) : $\varepsilon_i \sim Normal$ (2) 독립성(Independent) : $Cov(\varepsilon_i , \varepsilon_j) = 0$ (i≠j) (3) 등분산성(Homoscedasticity) : $Var(\varepsilon_i) = \sigma^2$ 4. $Cov(X_i , X_j) = 0 $ (i≠j) → Multi Regression에서 해당하는 가정으로 여기서는 설명하지 않겠습니다. 5. $x$의 샘플 수는 2개 이상 → 당연한 이야기이므로 설명을 생략하겠습니다. 1. $x, y$는 선형 관계 이유 우리는 $x, y$의 선형관계식을 알고 싶어 진행하는 것으로, $x, y$가 어느정도 선형식으로 표현할 수 있는 형태를 갖고 있어야 선형 회귀 분석을 실시할 수 있습니다. 확인 방법 $x, y$가 선형의 관계를 갖고 있는지는 $x, y$ 의 산점도로 확인할 수 있습니다. 가정 위배 시 만약 $x, y$가 선형의 관계를 갖고있지 않다면, 다음과 같은 방법으로 선형 관계 형태로 만들어 줄 수 있습니다. (1) $x^2$항을 추가 (2) 변수 변환법 2. $x$ : 오차 없이 측정 가능한 수학 변수 and $y$ : 오차를 수반하는 확률 변수(Random Variable) $x$의 경우 우리가 관측한 값으로서 실제로 값을 알고 있는 값으로 생각합니다. 그러나 $y$의 경우 우리가 추정하고자 하는 값으로 $y_i = \beta_0 + \beta_1 x_i + \varepsilon_i$의 형태로 표현합니다. 여기서 보이듯이 $\varepsilon_i$이라는 오차를 갖고 있는 값으로서, 확률변수 값으로 생각합니다. 3. $\varepsilon_i \sim N(0, \sigma^2) \ \ i.i.d$ 이 부분을 설명하기에 앞서 몇가지 알아야 할 점이 있습니다. 여기서 말하는 오차 $\varepsilon_i$는 우연 오차(random error)로 측정하는 사람이 도저히 조정할 수 없는 오류를 의미합니다. $\\$ 따라서, 오차에 대한 검정은 할 수 없으므로 오차를 대신하여 잔차(Residual)를 사용합니다. $\\$이때 잔차는 실제값과 예측값의 차이로, 실제 $y$와 우리가 추정하여 만든 $\hat {y}$의 차이를 의미합니다.$\\$ $$ e_i = y_i – \hat {y_i} $$ (1) 정규성(Normality) : $\varepsilon_i \sim Normal$ ① 의미 : 오차항은 정규분포형태 ② 이유 : 회귀 분석은 회귀 모형을 추정한 이후 회귀 모형이 잘 맞는지 모형 검정과 계수 검정을 필요로 합니다. 모형 검정과 계수 검정 등의 가설검정을 하기 위해서는 분포 가정이 필요 하여, 이때 사용하기 위한 정규성 가정입니다. ③ 확인 : Q-Q plot, Shapiro-Wilk test, Kolmogolov-Smirnov test, Jarque-Bera test ※ 주의 사항!!! 정규성 검정은 $y_i$가 아닌 $\varepsilon_i$에 하는 것입니다!! ( 정말 많은 분들이 헷갈려하는 부분이니 꼭 명심하시기 바랍니다 🙂 ) (2) 독립성(Independent) : $Cov(\varepsilon_i , \varepsilon_j) = 0$ (i≠j) ① 의미 : 오차항은 서로 독립 ② 이유 – 오차는 random error로서 서로 관계가 없다고 가정합니다. – 오차항이 서로 상관관계가 있다면, 추정된 회귀식으로 설명되는 않은 부분에서 다른 어떤 관계가 있다는 것을 의미하는 것으로 이는 회귀식의 설명력을 약하게 만듭니다. ③ 확인 : Residual plor, Durbin-watson test, Breusch-Godfre’s LM test, ACF ④ 위배 : 독립성의 가정이 위배된 경우 “자기상관”을 갖는다고 말하며, 추후 회귀모형 검정에서 사용되는 $t, F, R^2$값이 모두 과대 추정되는 경향이 생깁니다. ⑤ 해결 : 변수의 차분 ⑥ 특징 : 주로 시계열 자료에서만 독립성을 가정합니다. (3) 등분 산성(Homoscedasticity) : $Var(\varepsilon_i) = \sigma^2$ ① 의미 : 오차의 분산이 $x_i$에 관계없이 일정하다. ② 이유 : 정규성 가정과 마찬가지로 추후 회귀 모형의 검정에 있어, 검정을 용이하게 하기 위한 가정입니다. ③ 확인 : Resdiual plot, Brown-Forsythe, Breusch-Pagan ④ 위배 – 이분 산성(Hetroskedasticity)라고 하며, 추정량의 분산이 커져 최소분산을 갖는 효율성을 갖지 못합니다. 이에 BLUE(Best Linear Umbasied Estimator)가 되지 못합니다. – 추정치 분산 추정량이 하향 편의를 갖게 됩니다. ⑤ 해결 : WLS(Weight Least Square), GLS regression 2번과 3번 가정을 통해 $y_i \sim N(\beta_0 + \beta_1 x_i , \sigma^2)$이 됩니다. (1) $y_i$ = 상수($\beta_0 + \beta_1 x_i$) + Normal distribution($\varepsilon_i$) =$ Normal distribution (2) $E(y_i) = E(\beta_0 + \beta_1 x_i + \varepsilon_i) = \beta_0 + \beta_1 x_i + E(\varepsilon_i) = \beta_0 + \beta_1 x_i$ $Var(y_i) = Var(\beta_0 + \beta_1 x_i + \varepsilon_i) = Var(\varepsilon_i) = \sigma^2$
So you have finished reading the 회귀 분석 가정 topic article, if you find this article useful, please share it. Thank you very much. See more: 단순회귀분석 가정, 회귀분석 가정 위배, R 회귀분석 가정, 회귀분석 가정 spss, 다중회귀분석 기본가정, 회귀분석 정규성 위배, 선형 회귀분석 기본가정, r 회귀분석 가정 확인
회귀 분석의 이해 #2
(1편 보기)
앞서 소개했듯이 회귀 분석은 ‘조건부 평균’을 구하는 것입니다. 때문에 우리가 평균을 구할 때 주의해야 할 점들이 회귀 분석에서도 동일하게 적용됩니다. 그럼 어떤 주의점이 있는지 예시를 통해 살펴 보죠.
아래 두 데이터 중 평균을 대푯값으로 사용하기 부적절한 것은 무엇일까요?
1) 우리 나라 성인 남성의 키
2) 우리 나라 전체 근로자 연봉
아래 자료는 2016년 기준 우리나라 근로자들의 평균 연봉 및 분위별 연봉하한액을 나타낸 그래프입니다. 아마 뉴스나 신문기사를 통해 아래와 같은 표를 한번쯤 보셨을 겁니다. 아래 자료에 의하면 2016년 기준으로 우리 나라 근로자 평균 연봉은 3387만원이고, 대기업 정규직의 경우 6521만원이라고 합니다.
그런데 그래프를 자세히 보면 중간값이 2623만원입니다. 다시말해, 전체 근로자 중 절반은 연봉이 2623만원이 안된다는 뜻입니다. 반면 평균 연봉 이상을 받은 사람은 전체의 30% 정도에 불과합니다. 아무래도 ‘평균 연봉 3387만원’ 이라는 수치를 접하고선 자괴감에 빠지는 사람들이 꽤 될 것 같습니다. 결국 전체 집단의 연봉을 대표하는 값으로 평균을 사용하는 것은 그리 좋은 선택이 아닌 것 같습니다.
대다수의 직장인들에게 자괴감을 주는 자료의 예 (출처: http://bitly.kr/LUj2nP6r)
반면, 성인 남성의 키 분포는 종형 분포에 가깝기 때문에 대략 평균 키가 전체 집단의 가운데 쯤에 위치합니다. 그러니 이 경우에는 평균이 우리 나라 성인 남성의 대략적인 키를 대표한다고 보는데 (적어도 연봉과 비교했을 때보다는) 크게 문제가 없을 것 같습니다.
물론 모든 자료에는 왜곡이 존재합니다… (출처: https://www.clien.net/service/board/park/7152183)
정리하자면, 평균을 전체 집단을 대표하는 값으로 사용하기 좋은 경우는 데이터가 아래 그림의 왼쪽 그래프처럼 좌우 대칭이 되는 종형 분포인 경우입니다. 종형 분포에서는 평균값이 중간값이나 최빈값과 거의 일치하기 때문에 대푯값이 되기에 적절합니다. 반면 오른쪽 그래프처럼 한쪽으로 분포가 쏠리게 되면 이 세 수치가 서로 달라지기 때문에 평균값을 대푯값으로 사용하기에는 그리 적절치 않습니다.
분포의 형태에 따른 평균, 중앙값, 최빈값의 대략적인 위치
회귀 분석 역시 평균을 구하는 기법이기 때문에 회귀 모델이 적절한 대푯값이 되려면 대상 데이터의 분포가 종 모양이어야 합니다. 그런데 회귀 모형은 그냥 전체 집단의 평균이 아니라 조건부 평균이기 때문에 분포를 확인할 때도 전체 분포가 아닌 조건별 분포를 확인해야 합니다.
이를테면 아래 그림 같은 걸 상상하시면 됩니다. 아래 그림에서 Y축에 있는 Distance 는 평균 측정이 되는 타겟 변수이고, X축에 있는 Speed는 Distance의 변화에 영향을 주는 요인 변수입니다. 따라서 회귀 분석을 통해 얻게 되는 회귀 모형이 의미하는 것은 Speed 에 따라 달라지는 Distance의 조건별 평균입니다. 때문에 이 평균이 적절한지 확인하려면 아래 그림처럼 같은 speed 조건을 갖는 distance 값들의 분포가 종형 분포인지를 봐야 하는 것이죠.
출처: https://blogs.sas.com/content/iml/2015/09/10/plot-distrib-reg-model.html
그렇다면 실제 조건별 데이터의 분포는 어떻게 확인할 수 있을까요? 언뜻 생각하기에는 각 조건에 따라 데이터를 분류해서 분포를 확인하면 될 것 같습니다. 그런데 그렇게 하면 1편에서 예시로 들었던 아파트 평균 가격을 표로 집계할 때와 동일한 문제가 발생합니다. 수천 개의 경우의 수 별로 분포를 그리고 확인해야 할텐데 여간 번거로운 일이 아니죠. 게다가 위 그림에 나온 예시대로라면 나올 수 있는 모든 조건에 비해 데이터 개수가 적어서 분포를 확인하기 힘든 경우가 생깁니다. 가령, 위 자료에서 speed가 15인 데이터는 불과 3개에 불과한데 이걸로 종형 분포인지를 확인하는 건 거의 불가능하겠죠.
다행히 좋은 방법이 있습니다. 아래 그림처럼 일단 먼저 회귀 모형을 만든 후 이 모형을 통해 계산한 평균값(아래 그림에서 f(x))과 실제 관측값 사이의 차이값에 대한 분포를 확인하는 것입니다. 이 차이값의 분포는 중심이 평균이냐 아니면 0이냐의 차이만 있을 뿐 원래 데이터의 조건별 분포와 형태가 비슷하기 때문입니다 (좀 더 엄밀히 얘기하자면, 조건별 분포들이 모두 ‘정규 분포’ 인 경우에 그렇습니다). 그러니 이 차이값의 분포가 종형 분포라면 우리가 만든 회귀 모형의 평균값들은 원래 데이터를 잘 대표할 것이라고 생각할 수 있습니다.
참고로 통계학에서는 실측치와 회귀 모형의 예측치 (조건부 평균) 사이의 차이값을 ‘잔차 (residual)’ 라고 부릅니다. 그리고 종형 분포라는 말 대신 ‘정규’ 분포라는 말을 더 자주 사용합니다 (엄밀히 말하면 종형 분포가 꼭 정규 분포인 것은 아니지만 자세한 이론적인 배경은 복잡하니 일단은 그냥 넘어가겠습니다). 더 나아가 회귀 모형이 원본 데이터를 잘 대표하는 것을 보통 잘 ‘적합(fit)했다’라고 표현합니다.
따라서 지금까지 설명한 내용을 좀 더 통계학스럽게 표현하자면, 회귀 모형을 데이터에 잘 적합시키려면 잔차가 정규 분포이어야 합니다. 대개 통계학 교재에서는 ‘정규성 가정을 만족해야 한다’ 라고 설명하기도 합니다.
이 말을 바꿔서 표현하면 ‘ 잔차가 정규 분포가 되도록 회귀 모형을 만들어야 모형이 데이터에 잘 적합한 것이다 ‘ 라고 얘기할수도 있습니다. 개인적으로는 이 표현이 좀 더 분석가의 능동적인 역할을 강조하는 것 같아 더 마음에 듭니다.
참고로 회귀 분석을 접하는 많은 사람들이 이 ‘정규성 가정’을 잘못 생각해서 ‘잔차’의 분포가 아니라 회귀 분석 대상이 되는 관측 데이터의 분포가 정규 분포가 되어야 한다라고 착각하곤 합니다 (솔직히 고백하자면 저 역시 한동안은 이 차이를 잘 몰랐습니다). 그래서 데이터를 분석할 때 전체 아파트 가격이나 연봉 데이터의 분포가 어떤 형태인지를 확인하는 것이죠. 하지만 위에 설명드렸듯이 이건 정규성 가정을 잘못 이해한 것이고, 실제로는 같은 조건 내에서의 데이터 분포 (이것을 조건부 확률 분포라고 부릅니다) 가 정규 분포가 되는지를 확인해야 합니다. 다만 이것을 직접적으로 확인하기가 불가능하기 때문에 잔차의 분포를 대신 확인하는 것이죠.
더 나아가 조건부 평균이 적절한 값이 되려면 보유하고 있는 각 조건별 데이터들이 특정 조건에 편향되거나 서로 이질적인 특성을 갖고 있어서도 안됩니다. 예를 들어, 아파트 가격 평균을 구하는데 면적이 작은 아파트들은 모두 강북에 있는 아파트들의 가격 정보만 사용하고 면적이 큰 아파트들은 강남에 있는 아파트들의 가격 정보만 사용한다고 해보죠. 혹은 층별 아파트 가격을 취합하는데 낮은 층 아파트는 모두 오래된 아파트의 가격 정보이고 높은 층은 모두 신축 아파트의 가격 정보라고 하면 어떨까요? 아마 이런 데이터들을 이용해서 조건별 평균을 구할 경우 실제 면적이나 층수에 따른 평균 가격의 변화가 정확히 측정되지 못하고 다른 조건에 의해 편향된 결과가 나올 겁니다.
또 다른 예로 강남에 있는 아파트를 조사할 때는 반포에 있는 특정 아파트 단지의 데이터만 취합하고, 강북에 있는 아파트를 조사할 때는 모든 지역의 아파트 가격을 조사한다면 또 어떨까요? 아마 강남 아파트에 비해 강북 아파트의 가격 편차가 훨씬 클 겁니다. 이런 경우 평균 가격을 구할 수 있다 하더라도 이렇게 구한 평균 가격 정보를 신뢰하기는 힘들겠죠.
즉, 신뢰할 수 있는 조건별 평균을 구하려면 데이터들이 특정 조건에 편향되지 않고 독립적으로 공평하게 수집되어야 하고, 각 조건별로 취합된 데이터들의 편차(분산) 역시 서로 비슷해야 합니다. 통계학에서는 전자를 ‘잔차의 독립성’ 후자를 ‘잔차의 등분산성’ 이라고 말합니다. 이 역시 신뢰할 수 있는 회귀 분석 결과를 얻기 위해 만족해야할 중요한 가정입니다.
마지막으로 평균을 구할 때 주의할 점 중 대표적인 것이 소위 ‘아웃라이어 (outlier)’라고 부르는 데이터로 인해 평균이 왜곡되는 현상입니다. 이를 테면 어떤 방에 모여있는 사람들의 평균 재산을 조사했더니 5억 쯤 되었는데 이건희씨가 방에 들어오니까 갑자기 평균 재산이 5000억이 되더라…뭐 이런 거죠. 회귀 분석에서도 마찬가지로 아웃라이어는 평균을 크게 왜곡시키기 때문에 이런 자료는 분석 대상에서 제외하는 것이 좋습니다. 우리가 원하는 것은 대다수의 데이터를 대표할 수 있는 평균값이기 때문에 이런 소수의 이질적인 데이터는 예외로 처리하는 것이죠.
다른 데이터와는 동떨어진 특성을 가진 극소수 데이터를 아웃라이어라고 합니다
지금까지 보셨듯이 회귀 분석을 할 때는 이렇게 여러 가지 고려해야할 사항들이 많습니다. 간혹 어떤 자료를 보면 잔차의 정규성, 독립성, 등분산성 같은 조건을 마치 수학적으로 자명한 규칙이라거나 뭔가 심오한 원리인냥 과도한 의미를 부여하는 경우가 있습니다. 하지만 이런 잔차에 대한 가정들을 만족하지 못한다고 해서 회귀 분석이 불가능한 것은 아닙니다. 근로자 연봉 사례에서도 보시다시피 전체 연봉 분포가 크게 평향되어 있더라도 평균 연봉을 구하는데 아무런 문제가 없습니다.
마찬가지로 위에서 소개한 가정들을 만족하지 못하더라도 회귀 분석을 할 수 있습니다. 다만 그렇게 해서 구한 회귀 모델의 신뢰도가 다소 떨어질 뿐이죠. 때문에 내가 분석한 결과가 얼마나 신뢰할만한 수준인지를 파악하기 위해 위 가정을 잘 만족하는지 확인하는 과정이 필요한 것일 뿐입니다 (이런 확인 과정을 통계학에서는 모델 검정이라고 부릅니다).
그런데 실제 데이터 분석을 해보면 위 가정을 만족시키기가 대단히 어렵습니다. 좀 더 노골적으로 얘기하면 실전에서 회귀 분석을 위해 요구하는 가정을 모두 만족하는 회귀 모델은 거의 없습니다.
여러 가지 이유가 있겠지만 가장 큰 이유는, 현실에서는 확보할 수 있는 데이터에 한계가 있기 때문이죠. 이건 단순히 데이터의 크기를 말하는 것이 아니라 조건부 평균을 구할 때 사용될 여러 가지 조건 정보를 의미합니다 (이렇게 평균에 영향을 주는 조건들을 독립 변수 혹은 피처라고 부릅니다).
앞서 예로 들었던 아파트 평균 가격을 구하는 문제를 다시 생각해 보면, 가격에 영향을 주는 요인들이 대단히 많기 때문에 이런 요인별 거래 정보를 모두 충분히 확보하는 건 쉽지 않습니다. 가령, 아파트의 면적, 층, 지역 정보 등등의 기본 정보는 알고 있는데 주변 상가나 학군 정보를 모르고 있는 상태라고 가정해보죠. 그러면 분명 동일한 조건의 아파트임에도 불구하고 유명 학원가나 백화점 등의 편의 시설이 주변에 있는 아파트들과 그렇지 않은 아파트들 사이에는 가격 차이가 크게 날 것입니다. 그리고 이로 인해 잔차의 분포가 종 모양으로 깔끔하게 나오지 않고 들쑥날쑥한 모양이 될 가능성이 높습니다. 결국 아무리 회귀 모델을 잘 만들고 싶어도 이렇게 보유한 정보량의 한계로 인해 이론적으로 이상적인 모델이 만들어질 수 없는 것이죠.
이런 경우에는 어쩔 수 없이 지금 보유한 정보 내에서 최선의 결과를 만들 수 밖에 없습니다. 다시 말해, 이론적으로는 정규성, 독립성, 등분산성을 만족해야 하지만 현실에서는 이걸 완벽히 만족하기는 어려우니 적당한 선에서 타협하는 것이죠. 대신 적어도 분석 결과에 어떤 한계점이 있는지는 최대한 정확하게 파악해야 합니다. 또한 이런 한계를 극복하거나 조금이나마 해소하기 위한 여러 가지 기법들도 있습니다. 이런 방법들은 서로 장단점이 있고 대개는 특정 상황에서 적용할 수 있습니다 (현재의 상황에 맞는 적절한 방법을 찾아 사용하는 것은 데이터 분석가에게 필요한 중요한 역량중 하나입니다).
최악의 경우에는 회귀 분석을 하지 말아야 합니다. 즉, 데이터를 확인해 봤을 때 너무 정보가 부족하거나 편향되어 있다고 생각이 들 경우에는 과감하게 회귀 분석을 포기해야 합니다. 자칫 잘못된 정보로 인해 더 큰 혼란을 주거나 혹은 잘못된 의사 결정을 함으로써 오히려 손해를 볼 수도 있기 때문입니다. 이런 판단 역시 데이터 분석가가 해야할 일 중 하나입니다.
(3편에서 계속)
[내가 하는 통계 분석] 회귀분석(1). 회귀분석(Regression) in R
반응형
안녕하세요, 산격동 너구리입니다.
이번 포스팅은,
R을 이용한 “회귀분석”입니다.
회귀분석은 너무 유명해서 이미 참고할만한 도서, 블로그 등 좋은 자료가 충분하다고 생각합니다.
이론은 충분하니까 저는 최대한 풀어서 쓰도록 하겠습니다.
개요
회귀분석이란?
독립 변수와 종속 변수 간의 관계를 가장 잘 나타내는 함수를 만드는 것입니다.
회귀분석을 통해 적절한 함수를 만들 수 있다면,
1) 독립 변수만으로도 종속변수를 예측할 수 있고,
2) 독립 변수가 종속 변수에 어떤 영향을 끼치는지 설명할 수 있습니다.
가정
회귀분석의 가정은 총 4가지가 있습니다.
1) 선형성 : 독립 변수와 종속 변수는 선형 관계를 가진다.
2) 등분산성 : 잔차의 분산이 동일하다.
3) 정규성 : 잔차는 정규성을 가진다.
4) 독립성 : 잔차는 독립적이다.
* 잔차 : $ y $ – $ \hat{y} $
$ y $ : 실제 관측값
$ \hat{y} $ : 회귀분석에서 얻은 함수식에 독립 변수를 대입해서 얻은 결과
가설
회귀분석은 2가지 검정이 포함되어 있습니다.
F 검정과 T 검정인데요, 각각의 검정은 비슷하면서도 조금 다릅니다.
회귀분석 결과를 얻으면, F검정을 먼저 확인합니다.
F검정은 회귀모형 전체에 대한 검정입니다. 가설은,
$H_0$ : $ \beta_1 = \beta_2 = \cdots = \beta_k = 0 $
$H_1$ : 적어도 하나의 $\beta$는 0이 아니다.
T검정은 독립변수 각각에 대한 검정입니다. 가설은,
$H_0$ : $ \beta_k = 0 $
$H_1$ : $ \beta_k
eq 0 $
예제
14. [산격동 너구리] 회귀 분석 예제.csv 0.00MB
R의 datarium이라는 라이브러리에서 Marketing이라는 데이터셋입니다.
총 변수는 4개입니다.
1) youtube : 유튜브 광고 투자금액
2) facebook : 페이스북 광고 투자금액
3) newspaper : 뉴스 광고 투자금액
4) sales : 매출액
간단하게 생각하면, 광고 투자 금액과 매출액의 관계라고 생각하시면 될 것 같네요.
데이터 불러오기
## 데이터 불러오기 data = read.csv(“F:/잡동사니/산격동 너구리/[수정]/예제 파일/14. [산격동 너구리] 회귀 분석 예제.csv”, header = T)
가정
가정을 확인하고, 분석을 시행하는게 정상적인 순서겠지만…
회귀분석의 가정은 잔차가 필요하기 때문에 분석을 먼저 해야 가정을 확인할 수 있습니다.
하지만 현실에서는 “회귀분석을 위한 데이터”라는건 없습니다.
데이터를 보고 어떤 분석을 해야할지 고민해봐야겠죠.
그 중 한가지 방법으로 산점도가 있습니다.
pairs(data)
저는 주로 종속변수와 독립변수의 관계를 확인합니다.
맨 아랫줄 왼쪽부터 하나씩 보면,
1) Youtube 광고 투자금액이 많아질수록 매출액이 늘어나는 형태입니다.
2) facebook 광고 투자금액이 많아질수록 매출액이 늘어나는 형태입니다.
3) newpaper 광고 투자금액은 확실한 관계가 보이지 않네요.
그리고 facebook과 youtube를 비교했을 때, youtube와 sales의 퍼짐 정도가 적네요.
따라서, Youtube가 가장 중요한 변수가 될 것이고, newspaper가 가장 의미없는 변수가 될 것 같네요.
그리고 Youtube는 약간 곡선 형태인 것 같습니다.
이렇게 산점도를 그려보고 빠르게 분석 방향을 생각해볼 수 있습니다.
회귀분석 결과를 보고, 나머지 가정과 가설에 대해 해석해보겠습니다.
회귀분석
## 회귀분석 model1 = lm(sales ~ ., data = data)
실제로 분석 코드는 거의 한줄로 끝이 납니다.
회귀분석 가정을 확인하는 방법으로는,
검정을 통한 가정 확인도 있고, 그래프를 이용해서 간단하게 확인하는 방법도 있습니다.
이번 포스팅에서는 그래프를 이용한 가정확인법을 말씀드리겠습니다.
## 잔차 그래프 그래기 par(mfrow = c(2,2)) # 2행, 2열로 그래프 표현 # 한번에 그래프 4개를 볼 수 있음 plot(model1)
첫 번째 그래프는, 기본적인 잔차 그래프입니다.
1) 잔차가 커브 형태네요. 선형성 가정이 의심스럽습니다.
2) 잔차의 퍼짐정도도 조금씩 바뀌는 것 같네요. 등분산성도 조금 의심스럽습니다.
두 번째 그래프는, Nomal Q-Q plot, 정규성 확인을 위한 그래프입니다.
점들이 점선에서 벗어난 경우도 좀 있네요. 정규성도 의심스럽습니다.
세 번째 그래프는, 잔차 그래프에서 조금 변형한 형태로, 등분산성 확인을 위한 그래프입니다.
분산이 조금씩 변하고 있네요. 마찬가지로 등분산성은 만족되지 않을 것 같네요.
네 번째 그래프는, 이상치를 확인하기 위한 그래프입니다.
그래프에 적혀있는 숫자는 이상치로 의심되는 관측치라고 보시면 됩니다.
Cook’s distance를 벗어난 점은 없지만, 이상치로 의심되는 점이 조금 있네요.
전체적으로, 가정에서 문제가 있어보입니다.
이 회귀분석 결과를 그대로 확인하기에는….결과가 약간 의심스럽죠.
그래도 상황에 따라 가정을 조금 무시할 때도 있으니, 결과까지 확인해보겠습니다.
## 회귀분석 결과 summary(model1)
맨 아래 F 검정 결과, 유의하다고 나왔고.
각각의 변수에서도 youtube, facebook에서 유의한 결과가 나왔네요.
따라서,
1) 유튜브에 광고를 많이 할수록 매출이 늘어난다.
2) 페이스북에 광고를 많이 할수록 매출이 늘어난다.
라는 결과를 얻을 수 있겠네요.
설명력을 의미하는 $ R^2$는 0.8972, 수정된 $ R^2$는 0.8956입니다.
다시 말씀드리지만, 가정에서 문제가 있어보이기 때문에….
이 결과를 보는 것은 이론적으로는 의미가 없습니다.
아무리 유의하다고 한들, 가정이 충족되지 않았기 때문에 분석 자체가 의미가 없기 때문이죠.
하지만, 의학계나 사회과학분야처럼 사람과 관련된 데이터는 깔끔하지 않기 때문에
그런 분야에서는 가정을 어느정도 무시하는 경향이 있습니다.
회귀분석은 내용이 너무 많네요…
분석이 진짜 어려운 점은 정답이 없기 때문이 아닐까…싶습니다.
이것으로 이번 포스팅을 마무리하도록 하고,
회귀분석은 이어서 계속 해보도록 하겠습니다.
이상, 산격동 너구리였습니다.
감사합니다.
* 잘못된 정보 및 오타가 포함되어 있을 수 있습니다.
그대로 받아들이시기보다는 다른 사람의 의견도 참고하셔서 분석하시길 바랍니다.
* 포스팅 내용 및 통계 분석 관련 질문은 언제나 환영입니다.
가능한 선에서 최대한 답변하도록 하겠습니다.
반응형
키워드에 대한 정보 회귀 분석 가정
다음은 Bing에서 회귀 분석 가정 주제에 대한 검색 결과입니다. 필요한 경우 더 읽을 수 있습니다.
이 기사는 인터넷의 다양한 출처에서 편집되었습니다. 이 기사가 유용했기를 바랍니다. 이 기사가 유용하다고 생각되면 공유하십시오. 매우 감사합니다!
사람들이 주제에 대해 자주 검색하는 키워드 통계데이터분석 – 회귀분석 – 회귀분석 가정 진단 모델수정 🔑 선형성 | 정규성 | 등분산성 homoscedasticity | 독립성 | 다중공선성 multicollinearity
- 통계
- 데이터분석
- 회귀분석
- 선형회귀식
- 선형회귀모델
- 단순회귀분석
- 다항회귀분석
- 다중회귀분석
- regression analysis
- 다중공선성
- multicollinearity
- 선형성
- 정규성
- 등분산성
- 독립성
통계데이터분석 #- #회귀분석 #- #회귀분석 #가정 #진단 #모델수정 #🔑 #선형성 #| #정규성 #| #등분산성 #homoscedasticity #| #독립성 #| #다중공선성 #multicollinearity
YouTube에서 회귀 분석 가정 주제의 다른 동영상 보기
주제에 대한 기사를 시청해 주셔서 감사합니다 통계데이터분석 – 회귀분석 – 회귀분석 가정 진단 모델수정 🔑 선형성 | 정규성 | 등분산성 homoscedasticity | 독립성 | 다중공선성 multicollinearity | 회귀 분석 가정, 이 기사가 유용하다고 생각되면 공유하십시오, 매우 감사합니다.