library(readxl)
library(ggpubr)
## Loading required package: ggplot2
library(effectsize)
library(rstatix)
## 
## Attaching package: 'rstatix'
## The following objects are masked from 'package:effectsize':
## 
##     cohens_d, eta_squared
## The following object is masked from 'package:stats':
## 
##     filter
data1 <- read_excel("A6Q2.xlsx")

#Creating Groups for Before and After

Before <- data1$Before
After <- data1$After

Differences <- After - Before

#Calculate the mean, standard deviation, median for the scores for each of your two groups.

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

#Creating Histogram

hist(Differences,
     main = "Histogram of body weight before and after",
     xlab = "body weight",
     ylab = "before and after",
     col = "blue",
     border = "black",
     breaks = 20)

boxplot(Differences,
        main = "Distribution of weights (After - Before)",
        ylab = "before and after diet change ",
        col = "blue",
        border = "darkblue")

#Boxplot #There are dots outside the boxplot. #The dots are not close to the whiskers. #The dots are very far away from the whiskers. #we are going to do wilcoxon signed rank

shapiro.test(Differences)
## 
##  Shapiro-Wilk normality test
## 
## data:  Differences
## W = 0.89142, p-value = 0.02856

#Shapiro-Wilk Difference Scores #The data is abnormally distributed, (p = .028).

df_long <- data.frame(
  id = rep(1:length(Before), 2),
  time = rep(c("Before", "After"), each = length(Before)),
  score = c(Before, After)
)
wilcox.test(Before, After, paired = TRUE, na.action = na.omit)
## 
##  Wilcoxon signed rank exact test
## 
## data:  Before and After
## V = 210, p-value = 1.907e-06
## alternative hypothesis: true location shift is not equal to 0
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  Before   0.877    20    20 large
df_long <- data.frame(
  id = rep(1:length(Before), 2),
  time = rep(c("Before", "After"), each = length(Before)),
  score = c(Before, After)
)

A Wilcoxon Signed-Rank Test was conducted to determine if there was a difference in OutcomeVariable before Independent Variable versus after Independent Variable. Before scores (Mdn = 75.95) were significantly different from after scores (Mdn = 58.36), V = 210, p = < 0.001 The effect size was large , r = 0.877.