1: Persiapan data

Baca data

data <- read.csv2("bp_before_after.csv")
head(data)
##   id before after
## 1  1    140   132
## 2  2    150   145
## 3  3    135   130
## 4  4    142   138
## 5  5    128   125
## 6  6    155   148
summary(data)
##        id            before          after      
##  Min.   : 1.00   Min.   :127.0   Min.   :124.0  
##  1st Qu.: 8.25   1st Qu.:134.2   1st Qu.:130.0  
##  Median :15.50   Median :139.5   Median :134.5  
##  Mean   :15.50   Mean   :139.8   Mean   :135.0  
##  3rd Qu.:22.75   3rd Qu.:145.8   3rd Qu.:139.8  
##  Max.   :30.00   Max.   :155.0   Max.   :148.0

Buat selisih

data$diff <- data$before - data$after

2. Visualisasi

Histogram

hist(data$diff, main = "Histogram selisih (before - after)", xlab = "Selisih (mmHg)")

Boxplot

boxplot(data$diff, main = "Boxplot selisih", ylab = "Selisih (mmHg)")

Scatter plot before vs after

plot(data$before, data$after, xlab = "Before (mmHg)", ylab = "After (mmHg)", main = "Before vs After")
abline(0, 1, col = "red", lty = 2) # garis y = x


3: Pemeriksaan asumsi (Shapiro-Wilk)

Uji normalitas (Shapiro-Wilk)

shapiro.test(data$diff)
## 
##  Shapiro-Wilk normality test
## 
## data:  data$diff
## W = 0.89942, p-value = 0.008129

4: Uji hipotesis (paired t-test / Wilcoxon)

Paired t-test

t.test(data$before, data$after, paired = TRUE)
## 
##  Paired t-test
## 
## data:  data$before and data$after
## t = 16.826, df = 29, p-value < 2.2e-16
## alternative hypothesis: true mean difference is not equal to 0
## 95 percent confidence interval:
##  4.216556 5.383444
## sample estimates:
## mean difference 
##             4.8

Wilcoxon signed-rank test

wilcox.test(data$before, data$after, paired = TRUE)
## Warning in wilcox.test.default(data$before, data$after, paired = TRUE): cannot
## compute exact p-value with ties
## 
##  Wilcoxon signed rank test with continuity correction
## 
## data:  data$before and data$after
## V = 465, p-value = 1.619e-06
## alternative hypothesis: true location shift is not equal to 0

5: Ukuran efek dan interpretasi

Ukuran efek (paired Cohen’s d)

mean_diff <- mean(data$diff)
sd_diff <- sd(data$diff)
cohen_d_paired <- mean_diff / sd_diff
cohen_d_paired
## [1] 3.072017

6: Laporan singkat hasil analisis

mean_before <- mean(data$before)
mean_after <- mean(data$after)
sd_before <- sd(data$before)
sd_after <- sd(data$after)

list(mean_before = mean_before, mean_after = mean_after, sd_before = sd_before, sd_after =
sd_after,
mean_diff = mean_diff, sd_diff = sd_diff, cohen_d_paired = cohen_d_paired)
## $mean_before
## [1] 139.8333
## 
## $mean_after
## [1] 135.0333
## 
## $sd_before
## [1] 7.70617
## 
## $sd_after
## [1] 6.713257
## 
## $mean_diff
## [1] 4.8
## 
## $sd_diff
## [1] 1.562491
## 
## $cohen_d_paired
## [1] 3.072017