library(readxl)
library(ggpubr)
## Loading required package: ggplot2
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(effectsize)
library(effsize)
library(readxl)
library(rstatix)
## 
## Attaching package: 'rstatix'
## The following objects are masked from 'package:effectsize':
## 
##     cohens_d, eta_squared, omega_squared
## The following object is masked from 'package:stats':
## 
##     filter
A6Q2 <- read_excel("C:/Users/USER/OneDrive - Saint Louis University/AA 5221/Assignment 6/A6Q2.xlsx")
View(A6Q2)

Before_diet <- A6Q2$Before
After_diet <- A6Q2$After

Differences <- After_diet - Before_diet

mean(Before_diet, na.rm = TRUE)
## [1] 76.13299
median(Before_diet, na.rm = TRUE)
## [1] 75.95988
sd(Before_diet, na.rm = TRUE)
## [1] 7.781323
mean(After_diet, na.rm = TRUE)
## [1] 57.17874
median(After_diet, na.rm = TRUE)
## [1] 58.36459
sd(After_diet, na.rm = TRUE)
## [1] 14.39364
#Histogram

hist(Differences,
     breaks = 15,
     col = "blue",
     border = "white")

#Interpretations of Histogram
#Data for the difference scores appears abnormally distributed.

#Boxplot

boxplot(Differences,
        main = "Distribution of Score Differences(After_diet - Before_diet)",
        ylab = "Difference in Scores",
        col = "blue",
        border = "darkblue")

#The difference scores boxplot has one outlier.

#Shapiro wilk test
shapiro.test(Differences)
## 
##  Shapiro-Wilk normality test
## 
## data:  Differences
## W = 0.89142, p-value = 0.02856
# The data is Abnormally distributed (p< .05)

#Conduct the Wilcoxon Signed-Ranked Test

wilcox.test(Before_diet, After_diet, paired = TRUE, na.action=na.omit)
## 
##  Wilcoxon signed rank exact test
## 
## data:  Before_diet and After_diet
## V = 210, p-value = 1.907e-06
## alternative hypothesis: true location shift is not equal to 0
#Effect size

df_long <- data.frame(id = rep(1:length(Before_diet), 2), time = rep(c("Before_diet", "After_diet"), each = length(Before_diet)), score = c(Before_diet, After_diet))

wilcox_effsize(df_long, score ~ time, paired = TRUE)
## # A tibble: 1 × 7
##   .y.   group1     group2      effsize    n1    n2 magnitude
## * <chr> <chr>      <chr>         <dbl> <int> <int> <ord>    
## 1 score After_diet Before_diet   0.877    20    20 large
#Report the Wilcoxon Signed-Rank Test

#A Wilcoxon Signed-Rank Test was conducted to determine if there was a difference in body weight before versus after participants followed the keto diet. 
# Before scores (Mdn = 75.96) were significantly/not significantly different from after scores (Mdn = 58.36), V = 210, P < .001
#The effect size was small, r = 0.90.