knitr::opts_chunk$set(echo = TRUE)
options(repos = c(CRAN = "https://cloud.r-project.org"))
install.packages("MASS")
##
## The downloaded binary packages are in
## /var/folders/lj/0v7ttc9x1ds4s5myk2ngjj0m0000gn/T//Rtmp5f6T1c/downloaded_packages
library(MASS)
data("anorexia")
str(anorexia)
## 'data.frame': 72 obs. of 3 variables:
## $ Treat : Factor w/ 3 levels "CBT","Cont","FT": 2 2 2 2 2 2 2 2 2 2 ...
## $ Prewt : num 80.7 89.4 91.8 74 78.1 88.3 87.3 75.1 80.6 78.4 ...
## $ Postwt: num 80.2 80.1 86.4 86.3 76.1 78.1 75.1 86.7 73.5 84.6 ...
head(anorexia)
## Treat Prewt Postwt
## 1 Cont 80.7 80.2
## 2 Cont 89.4 80.1
## 3 Cont 91.8 86.4
## 4 Cont 74.0 86.3
## 5 Cont 78.1 76.1
## 6 Cont 88.3 78.1
summary(anorexia)
## Treat Prewt Postwt
## CBT :29 Min. :70.00 Min. : 71.30
## Cont:26 1st Qu.:79.60 1st Qu.: 79.33
## FT :17 Median :82.30 Median : 84.05
## Mean :82.41 Mean : 85.17
## 3rd Qu.:86.00 3rd Qu.: 91.55
## Max. :94.90 Max. :103.60
knitr::opts_chunk$set(echo = TRUE)
ft_data<-subset(anorexia,Treat=="FT")
##3.Treatment 전과 후의 weight 변화에 대한 히스토그램을 작성합니다.
knitr::opts_chunk$set(echo = TRUE)
# 체중 변화량 변수 추가
ft_data$weight_change <- ft_data$Postwt - ft_data$Prewt
# 히스토그램 작성
hist(ft_data$Prewt, main = "Before Treatment Weight distribution (FT)", col = "skyblue", xlab = "weight")
hist(ft_data$Postwt, main = "After Treatment Weight distribution (FT)", col = "lightgreen", xlab = "weight")
hist(ft_data$weight_change, main = "weight change distribution (Post - Pre)", col = "salmon", xlab = "change")
##4.Treatment 전과 후의 weight 에 대한 정규성 검정을 수행합니다.
knitr::opts_chunk$set(echo = TRUE)
shapiro.test(ft_data$Prewt)
##
## Shapiro-Wilk normality test
##
## data: ft_data$Prewt
## W = 0.98821, p-value = 0.9972
shapiro.test(ft_data$Postwt)
##
## Shapiro-Wilk normality test
##
## data: ft_data$Postwt
## W = 0.83928, p-value = 0.007391
shapiro.test(ft_data$weight_change)
##
## Shapiro-Wilk normality test
##
## data: ft_data$weight_change
## W = 0.95358, p-value = 0.5156
#weight_change 의 정규성 검정에서 p=0.5156으로 0.05보다 크므로 paired t-test를 사용할 수 있다.
##5.정규성 검정결과와 데이터 특성에 따라서 두 집단 평균 비교에 대한 적절한 통계적 방법을 선택하고 그 이유를 설명하시오.
knitr::opts_chunk$set(echo = TRUE)
#paired t-test: 동일한 대상의 치료 전과 후 체중을 비교하기 때문에(종속표본), 그리고 정규성 검정 결과가 0.05보다 크기 때문에 정규성을 만족하므로 t-test 사용.
##6. 두 집단의 평균 비교에 대한 가설 검정을 5% 유의수준으로 진행하세요.
knitr::opts_chunk$set(echo = TRUE)
#H0(귀무가설):치료전과 후의 평균 체중 차이가 없다.(μ_d = 0) H1(대립가설):치료전과 후의 평균 체중 자이가 있다.(μ_d ≠ 0)
t.test(ft_data$Postwt, ft_data$Prewt, paired = TRUE)
##
## Paired t-test
##
## data: ft_data$Postwt and ft_data$Prewt
## t = 4.1849, df = 16, p-value = 0.0007003
## alternative hypothesis: true mean difference is not equal to 0
## 95 percent confidence interval:
## 3.58470 10.94471
## sample estimates:
## mean difference
## 7.264706
#p-value가 0.0007003으로 0.05보다 작기 때문에 귀무가설을 기각한다. 따라서 치료 전후 체중의 차이가 유의하다.