R) 통계 - F-검정

R) 통계 - F-검정

R 에서 두 집단의 분산 차이를 검정하는 F-검정을 알아본다.


Statistics

bike.csv 파일을 활용한다.
bike.csv 다운받기 [클릭]


개요

F-검정은 두 집단의 분산을 비교하는 가설검정 방법.

통계량 계산

F-검정의 검정통계량 F는 두 표본 집단의 분산의 비로 산출하며 그 식은 다음과 같다.

$$F = \frac{V_1 / k_1} {V_2/k_2} \sim F(k_1,k_2)$$

가설

- 귀무가설($H_0$): 집단간 분산이 같다.
- 대립가설($H_1$): 집단간 분산이 다르다.


연산

함수 및 인자

var.test() 함수의 주요 인자는 다음과 같다.
● x, y: 연산 대상의 1차원 벡터
● ratio: 모분산의 비율을 지정하며 기본값은 1
● alternative: 양측검정은 “two.sided”이며 기본값이고, 단측검정은 “greater” 또는 “less”
● conf.level: 신뢰 수준
● formula: “종속변수 ~ 독립변수” 형식으로 입력
● data: formula 인자를 사용하는 경우 대상 데이터프레임 또는 메트릭스 할당

실행 및 결과

var.test() 함수와 두 일차원 벡터를 활용하여 산출 결과는 다음과 같다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
aa = 1:10
bb = 4:20
var.test(aa, bb)
##
## F test to compare two variances
##
## data: aa and bb
## F = 0.35948, num df = 9, denom df = 16, p-value = 0.1231
## alternative hypothesis: true ratio of variances is not equal to 1
## 95 percent confidence interval:
## 0.1179095 1.3459172
## sample estimates:
## ratio of variances
## 0.3594771

F는 검정통계량이며 0.35948이며, p-value는 0.1231이다. 즉, 유의수준 5% 기준으로 귀무가설을 기각하지 못하기 때문에 두 집단의 분산이 다르다고 하기 어렵다.

var.test() 함수와 두 일차원 벡터를 활용하여 산출 결과는 다음과 같다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
df = read.csv("bike.csv")
head(df, 2)
## datetime season holiday workingday
## 1 2011-01-01 00:00:00 1 0 0
## 2 2011-01-01 01:00:00 1 0 0
## weather temp atemp humidity windspeed casual
## 1 1 9.84 14.395 81 0 3
## 2 1 9.02 13.635 80 0 8
## registered count
## 1 13 16
## 2 32 40

var.test(temp ~ holiday, data = df)
##
## F test to compare two variances
##
## data: temp by holiday
## F = 0.78503, num df = 10574, denom df = 310, p-value = 0.001858
## alternative hypothesis: true ratio of variances is not equal to 1
## 95 percent confidence interval:
## 0.6649051 0.9156003
## sample estimates:
## ratio of variances
## 0.7850275

p-value가 0.001858 이기 떄문에 유의수준 5% 기준으로 귀무가설을 기각하고 대립가설을 채택한다.

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×