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
data <- read_excel("C:/Users/kvpra/Documents/spring 2026/rlaanguage/A6Q2.xlsx")

Before <- data$Before
After  <- data$After

Differences <- After - Before

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
hist(Differences,
     main = "Histogram of  keto diet",
     xlab = "weight in kgs",
     ylab = "Frequency",
     col = "blue",
     border = "black",
     breaks = 20)

#Histogram of Difference Scores
#The difference scores look [abnormally] distributed.
#The data is [ positively skewed].
#The data [ does not have] a proper bell curve.

boxplot(Differences,
        main = "Distribution keto diet (After - Before)",
        ylab = "Difference in weight ",
        col = "blue",
        border = "darkblue")

# Boxplot
# There is one outlier present below the lower whisker.
# The outlier is far from the rest of the data.
# The distribution appears positively skewed.
# Based on these findings, the data does not appear to be abnormally distributed

shapiro.test(Differences)
## 
##  Shapiro-Wilk normality test
## 
## data:  Differences
## W = 0.89142, p-value = 0.02856
# Shapiro-Wilk Difference Scores
# The data is not normally distributed (p = 0.02856).

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
df_long <- data.frame(
  id = rep(1:length(Before), 2),
  time = rep(c("Before", "After"), each = length(Before)),
  score = c(Before, After)
)

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
# A Wilcoxon Signed-Rank Test was conducted to determine if there was a difference in weight before the keto diet versus after the keto diet.
# Before scores (Mdn = 75.96) were significantly different from after scores (Mdn = 58.36), V = 210, p < .001.
# The effect size was large, r = .88.