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(effsize)

A6Q4 <- read_excel("A6Q4.xlsx")

A6Q4 %>%
  group_by(lift_condition) %>%
  summarise(
    Mean = mean(Weight, na.rm = TRUE),
    Median = median(Weight, na.rm = TRUE),
    SD = sd(Weight, na.rm = TRUE),
    N = n()
  )
## # A tibble: 2 × 5
##   lift_condition  Mean Median    SD     N
##   <chr>          <dbl>  <dbl> <dbl> <int>
## 1 lift            33.0   40.8  56.7    25
## 2 nolift         120.   116.   53.3    25
hist(A6Q4$Weight[A6Q4$lift_condition == "lift"],
     main = "Histogram of lift weight",
     xlab = "Value",
     ylab = "Frequency",
     col = "lightblue",
     border = "black",
     breaks = 10)

hist(A6Q4$Weight[A6Q4$lift_condition == "nolift"],
     main = "Histogram of nolift weight",
     xlab = "Value",
     ylab = "Frequency",
     col = "lightgreen",
     border = "black",
     breaks = 10)

#Group 1: lift
#The first variable looks abnormally distributed.
#The data is negatively skewed.
#The data does not have a proper bell curve.


#Group 2: Nolift
#The second variable looks abnormally distributed.
#The data is positively skewed.
#The data does not have a proper bell curve.

ggboxplot(A6Q4, x = "lift_condition", y = "Weight",
          color = "lift_condition",
          palette = "jco",
          add = "jitter")

#Boxplot 1: lift
#There are dots outside the boxplot.
#The dots are not close to the whiskers.
#The dots are very far away from the whiskers.
#The outliers are not balanced.
#Based on these findings, the boxplot is not normal.

#Boxplot 2: Nolift
#There are dots outside the boxplot.
#The dots are not close to the whiskers.
#The dots are very far away from the whiskers.
#The outliers are not balanced.
#Based on these findings, the boxplot is not normal.

shapiro.test(A6Q4$Weight[A6Q4$lift_condition == "lift"])
## 
##  Shapiro-Wilk normality test
## 
## data:  A6Q4$Weight[A6Q4$lift_condition == "lift"]
## W = 0.70002, p-value = 7.294e-06
shapiro.test(A6Q4$Weight[A6Q4$lift_condition == "nolift"])
## 
##  Shapiro-Wilk normality test
## 
## data:  A6Q4$Weight[A6Q4$lift_condition == "nolift"]
## W = 0.78786, p-value = 0.0001436
#Group 1: lift
#The first group is abnormally distributed, (p < .001).

#Group 2: Nolift
#The second group is abnormally distributed, (p < .001).

wilcox.test(Weight ~ lift_condition, data = A6Q4)
## 
##  Wilcoxon rank sum exact test
## 
## data:  Weight by lift_condition
## W = 22, p-value = 7.132e-11
## alternative hypothesis: true location shift is not equal to 0
mw_effect <- cliff.delta(Weight ~ lift_condition, data = A6Q4)
print(mw_effect)
## 
## Cliff's Delta
## 
## delta estimate: -0.9296 (large)
## 95 percent confidence interval:
##      lower      upper 
## -0.9969233 -0.0729899
#A Mann-Whitney U test was conducted to determine if there was a difference in Weight between Lift and Nolift.
#Group1 scores (Mdn = 40.80) were significantly different from Group2 scores (Mdn = 116.00) U = 22.00, p < .001.
#The effect size was large, Cliff's Delta = -0.93.