/*
* http://sosal.kr/
* made by so_Sal
*/
1. 적합성 검정 ( goodness of fit )
관찰된 비율값이 기대값과 같은지 조사하는 검정방법.
- Heart attack 발생 1년 후 생존률은 0.7이라고 가정하자.
따라서 환자 40명중 28명이 생존할것으로 기대된다.
실제로 40명중 24명이 생존, 16명이 죽었다면 생존률이 0.7이라는 귀무가설을 기각할 수 있는가?
> # Goodness of Fit
> chisq.test( c(24, 16), p=c(0.7, 0.3) )
Chi-squared test for given probabilities
data: c(24, 16)
X-squared = 1.9048, df = 1, p-value = 0.1675
자유도가 1인 x-squared 값과 p-value를 통해 생존률이 0.7이라는 귀무가설을 기각할 수 없다.
>
> # Test for independence
> countTable <- matrix( c(10845, 189, 10933, 104), nrow=2, byrow=TRUE )
> rownames(countTable) <-c("Placebo", "Aspirin")
> colnames(countTable) <-c("No Heart Attack", "Heart Attack")
> countTable
No Heart Attack Heart Attack
Placebo 10845 189
Aspirin 10933 104
> chisq.test(countTable)
Pearson's Chi-squared test with Yates' continuity correction
data: countTable
X-squared = 24.4291, df = 1, p-value = 7.71e-07
>
아스피린 복용 여부와 Heart Attack 간에는 상호 독립적이지 않다.
- birthwt 데이터
189명의 데이터와 10개의 변수로 이루어짐
low: indicator of birth weight less than 2.5 kg.
age: mother's age in years.
lwt: mother's weight in pounds at last menstrual period.
race: mother's race (1 = white, 2 = black, 3 = other).
smoke: smoking status during pregnancy.
ptl: number of previous premature labours.
ht: history of hypertension.
ui: presence of uterine irritability.
ftv: number of physician visits during the first trimester.
bwt: birth weight in grams.
library(MASS)
#0=> Non Smoker, 1=> Smoker
birthwt$smoke <- factor( birthwt$smoke, label=c("Non Smoker", "Smoker") )
#0 => No, 1 => Yes 범주형 자료
birthwt$low <- factor( birthwt$low, label=c("No", "Yes") )
smoke_low_tb <- table( birthwt$smoke, birthwt$low )
> smoke_low_tb로 변환
No Yes
Non Smoker 86 29
Smoker 44 30
# Fisher's exact test
추측 | Milk Tea (진실)
Milk | 3 1
Tea | 1 3
무엇을 먼저 넣었는가? 에 대한 테스트.
fisher.test() 함수를 이용하여 Fisher's exact test 수행.
p-value = 0.4857: 우유를 먼저 넣고 차를 넣었는지, 차를 먼저넣고 우유를 넣었는지 맞추는 능력이 있다고 보기 힘들다.
TeaTasting <- matrix( c(3, 1, 1, 3), nrow=2 )
TeaTasting
[,1] [,2]
[1,] 3 1
[2,] 1 3
fisher.test( TeaTasting )
Fisher's Exact Test for Count Data
data: TeaTasting
p-value = 0.4857
alternative hypothesis: true odds ratio is not equal to 1
95 percent confidence interval:
0.2117329 621.9337505
sample estimates:
odds ratio
6.408309
# Macnemar Test
광고전| 광고후 |
| 상품A 상품B
상품A | 5 5
상품B | 15 7
> mcnemar.test( matrix( c(5, 15, 5, 7), ncol=2) )
McNemar's Chi-squared test with continuity correction
data: matrix(c(5, 15, 5, 7), ncol = 2)
McNemar's chi-squared = 4.05, df = 1, p-value = 0.04417
-> 위 결과를 통해 광호 전후 상품의 선호도에 차이가 있다는것으로 결론내릴 수 있다.
'Programing > R- programming' 카테고리의 다른 글
R graphics, plot 저장하기 (0) | 2014.08.22 |
---|---|
two-way ANOVA (0) | 2014.08.21 |
상관관계 분석 R programming (0) | 2014.08.21 |
데이터 검정 R programming (2) | 2014.08.21 |
파일 입출력, R 프로그래밍 (0) | 2014.08.21 |