일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- CrossValidation
- dplyr
- 주식데이터시각화
- ggplot()
- 미국 선거데이터
- 콕스비례모형
- 생존그래프
- R select
- R dplyr
- ISLR
- R ggplot2
- R 연습문제
- 데이터핸들링
- 생존분석
- Bias-Variance Tradeoff
- ggplot2
- ggsurvplot
- 교차타당성
- geom_errorbar
- 강화학습 #추천서적 #강화학습인액션
- R mutate
- R 결측치
- 데이터 핸들링
- 의사결정나무
- R
- R filter
- 확률실험
- 이산형 확률분포
- R문법
- 카플란마이어
- Today
- Total
Must Learning With Statistics
카이제곱분포와 F분포 (Chi-square distribution and F-distribution) 본문
11. χ2 분포와 F 분포 (Chi-square distribution and F-distribution)
통계에서는 변동(분산)은 비교, 관계 등 모든 분석에서 사용되는 개념입니다. 변동은 단순히 해당 변수의 퍼짐 정도를 나타내는 것뿐 아니라 비교의 신뢰성을 표현하기도 합니다. 예를 들어, 두 집단의 평균이 큰 차이가 없어도 그 평균의 변동이 크다면 신뢰하기 힘듭니다. 또한 변동은 볼륨을 뜻하기도 합니다. A라는 변동과 B라는 변동이 있을 때, 비교를 통하여 더 큰 볼륨(파워, 확장성)을 가진 변동을 알 수 있습니다. 우리는 이러한 변동을 측정하는 도구로 제곱합 구조 (∑a2) 사용하게 됩니다. 그 이유는 변동을 측정하는 방법에 있습니다. 변동은 어떤 값을 기준으로 각 관찰값들이 그 기준값과 얼만큼 떨어져 있는지 평가하는 방식으로 측정하게 되는데, 대부분의 경우 평균을 사용하게 됩니다. 그렇지만 단순히 평균과 관찰값들의 거리를 이용하면 그 합이 0이 되어 의미가 없어지기 때문이죠. 이 구조적인 문제를 해결하고자 기준값과의 거리의 제곱을 이용하게 됩니다. 그렇기에 변동은 오로지 양적인 값으로만 표현됩니다.
또한 두 집단의 변동을 비교하는 방법으로 두 변동의 차이를 사용하면 곤란합니다. 비교하려는 집단의 단위가 다를 수 있을 뿐더러 각 집단의 수를 반영해주어야 하기 때문입니다. 예컨대, 한 집단은 cm 단위로 조사되었고 다른 집단은 m단위로 표현되어 있는 길이를 생각해 봅시다. 같은 수준의 변동을 가졌다고 해도 막상 제곱합을 구해보면 cm로 조사된 집단의 더 크게 나올 것입니다. 단위가 다르기 때문이죠. 또한 10개 데이터에서와 100개 데이터에서의 분산을 똑같이 보면 곤란합니다. 이는 '제곱의 합' 꼴로 표현되므로 자료 수가 많으면 많을수록 더욱 커질 수 밖에 없는 구조이기 때문이죠.
이러한 특성들 때문에, 변동을 이용하여 검정, 추정을 하고 싶으면 위와 같은 상황들을 전부 고려한 확률구조가 필요합니다. 변동의 '단위' 와 '자료 수' 를 반영할 수 있도록 고안된 분포가 바로 χ2 분포이고 χ2 들의 비(ratio)가 따라는 분포가 F 분포입니다. χ2 들의 비는 두 변동을 비교하기 위해 사용되는 것으로, 이 역시 자료 수와 관련된 자유도가 반영됩니다.
Chi_2 = rchisq(n = 100, df = 2)
Chi_3 = rchisq(n = 100, df = 3)
Chi_10 = rchisq(n = 100, df = 10)
Chi_30 = rchisq(n = 100, df = 30)
DF_Chi = data.frame(
`df=2` = Chi_2,
`df=3` = Chi_3,
`df=10` = Chi_10,
`df=30` = Chi_30
)
DF_Chi %>%
melt() %>%
ggplot() +
geom_density(aes(x = value, fill = variable),alpha = 0.4) +
theme_bw() +
xlab("") + ylab("") + labs(fill = "") +
theme(legend.position = "bottom") +
ggtitle("카이제곱 분포")
F_11 = rf(n = 100, df1 = 1, df2 = 1)
F_21 = rf(n = 100, df1 = 2, df2 = 1)
F_52 = rf(n = 100, df1 = 5, df2 = 2)
F_101= rf(n = 100, df1 = 10, df2 = 1)
DF_F = data.frame(
`df=1,1` = F_11,
`df=2,1` = F_21,
`df=5,5` = F_52,
`df=10,1` = F_101
)
DF_F %>%
melt() %>%
ggplot() +
geom_density(aes(x = value, fill = variable),alpha = 0.05) +
theme_bw() +
xlab("") + ylab("") + labs(fill = "") +
theme(legend.position = "bottom") + xlim(0,5) +
ggtitle("F분포")
)
χ2 변수를 만드는 아이디어는 정규분포를 따르는 변수에서 시작합니다. 우선 단위를 일반화하기 위해 표준화를 한 후 제곱을 하면 자유도 1인 χ2 변수가 됩니다. 또한 χ2 변수는 가법성이라고 불리는 성질이 있어, 독립적인 χ2 변수끼리 더해도 χ2 분포를 따르게 됩니다.
Z∼N(0,1) ⇒Z2∼χ2(df=1) ⇒n∑i=1Z2i∼χ2(df=n)(Zi 끼리는 서로 독립)
이것을 조금 풀어서 생각해 봅시다. iid는 독립적으로 같은 분포를 따른다는 뜻입니다.
Xi ∼ iid N(μ,σ2) ⇒(Xi−μσ)=Zi ∼ iid N(0,1) ⇒
(Xi−μσ)2=Zi2 ∼ iid χ2(1) ⇒n∑i=1(Xi−μσ)2=n∑i=1Zi2=Q ∼ χ2(n)
위와 같이 정규분포의 제곱합은 χ2 분포를 따릅니다.
또한 F 분포는 독립적인 χ2 변수의 비가 따르는 분포라고 하였습니다.
Q1∼χ2(n1),Q2∼χ2(n2) ⇒Q1/n1Q2/n2 ∼F(n1,n2) ,(Q1과 Q2는 독립)
F 분포를 이용하면 자유도를 반영한 비교가 가능합니다. 이는 후에 분산분석 등에서 실습하도록 하겠습니다.
'통계 이론' 카테고리의 다른 글
점추정 (0) | 2020.03.22 |
---|---|
통계적 추정과 검정 (0) | 2020.03.22 |
t분포(student's t-distribution) (0) | 2020.03.22 |
모수(parameter)와 통계량(statistic) (0) | 2020.03.22 |
정규분포(Normal Distribution) (0) | 2020.03.22 |