data_panen <- data.frame(
  Pupuk = rep(c("A", "B", "C"), each = 10),
  Hasil = c(rnorm(10, mean = 6, sd = 0.5),
            rnorm(10, mean = 7, sd = 0.5),
            rnorm(10, mean = 8, sd = 0.5))
)
data_panen
##    Pupuk    Hasil
## 1      A 6.475007
## 2      A 6.517252
## 3      A 6.461461
## 4      A 5.249366
## 5      A 5.500162
## 6      A 6.078959
## 7      A 6.110409
## 8      A 5.541260
## 9      A 5.757883
## 10     A 5.664780
## 11     B 8.356760
## 12     B 6.633095
## 13     B 7.149304
## 14     B 6.374856
## 15     B 7.158134
## 16     B 7.027900
## 17     B 6.305832
## 18     B 7.107645
## 19     B 7.133409
## 20     B 6.337847
## 21     C 7.735703
## 22     C 7.833656
## 23     C 8.586099
## 24     C 8.107029
## 25     C 7.500562
## 26     C 8.218103
## 27     C 7.875385
## 28     C 7.694598
## 29     C 8.388435
## 30     C 7.478235

Analisis ANOVA

Kita akan menganalisis apakah ada perbedaan hasil panen antar jenis pupuk.

anova_result <- aov(Hasil ~ Pupuk, data = data_panen)
summary(anova_result)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Pupuk        2 20.125   10.06   41.98 5.17e-09 ***
## Residuals   27  6.472    0.24                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Hasil summary akan memberikan:

Nilai F (uji signifikansi)

P-value (jika <0.05 → signifikan)

Df (degree of freedom)

📌 Visualisasi ANOVA

Visualisasi dengan boxplot:

library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.3.3
ggplot(data_panen, aes(x = Pupuk, y = Hasil, fill = Pupuk)) +
  geom_boxplot() +
  labs(title = "Hasil Panen per Jenis Pupuk",
       x = "Jenis Pupuk",
       y = "Hasil Panen (ton/ha)") +
  theme_minimal()

Dari boxplot di atas, terlihat perbedaan distribusi hasil panen untuk tiga jenis pupuk: A, B, dan C.

📈 Pupuk A Rata-rata hasil panen lebih rendah dibandingkan pupuk lain (sekitar 6 ton/ha). Variasi (lebar boxplot) cukup kecil, artinya data lebih homogen. Tidak ada outlier ekstrem, distribusi relatif stabil.

📈 Pupuk B Rata-rata hasil panen lebih tinggi dari A (sekitar 7 ton/ha). Terdapat outlier di bawah distribusi utama (titik hitam), menunjukkan ada satu percobaan dengan hasil rendah. Variasi data lebih kecil dibandingkan pupuk C.

📈 Pupuk C Rata-rata hasil panen paling tinggi (sekitar 8 ton/ha). Variasi data sedikit lebih besar dibandingkan A dan B, namun cenderung stabil. Tidak ada outlier yang signifikan.

📌 Kesimpulan Visual ✅ Ada perbedaan rata-rata hasil panen yang cukup jelas antara jenis pupuk. ✅ Pupuk C terlihat memberikan hasil panen tertinggi. ✅ Pupuk A paling rendah hasil panennya. ✅ Variasi dalam grup relatif kecil, artinya perlakuan cukup konsisten.

📌 Asumsi ANOVA

✅ Normalitas residual → cek dengan Q-Q plot:

plot(anova_result, which = 2)

📌 Q-Q Plot Residuals (/br) Plot Q-Q (Quantile-Quantile) residuals digunakan untuk memeriksa apakah asumsi normalitas residual pada analisis ANOVA terpenuhi. (/br) 📌 Penjelasan Plot (/br) Sumbu X: Theoretical quantiles (nilai-nilai teoretis dari distribusi normal standar). (/br) Sumbu Y: Standarized residuals (selisih antara nilai aktual dan nilai yang diprediksi oleh model, di-standardisasi). (/br)

📌 Interpretasi (/br) ✅ Titik-titik mengikuti garis diagonal → menunjukkan bahwa residual mendekati distribusi normal. (/br) ✅ Sedikit deviasi di ujung → wajar, tetapi tidak terlalu ekstrem, sehingga asumsi normalitas relatif tidak dilanggar. (/br) ✅ Tidak ada pola yang sangat melengkung atau terputus dari garis → mendukung asumsi ANOVA bahwa residual terdistribusi normal. (/br)

Homogenitas varians → uji Levene atau plot residual vs fitted:

plot(anova_result, which = 1)

Plot ini digunakan untuk memeriksa homogenitas varians (homoskedastisitas) pada residual analisis ANOVA. Plot ini juga dapat membantu mendeteksi pola non-linear atau outlier yang signifikan. (/br)

📌 Penjelasan Plot (/br) Sumbu X: Nilai fitted (nilai prediksi hasil panen oleh model). (/br) Sumbu Y: Nilai residual (selisih antara hasil aktual dan hasil prediksi). (/br)

📌 Interpretasi (/br) ✅ Pola titik-titik: Titik-titik residual tersebar secara acak di sekitar garis horizontal (y=0) — ini menunjukkan homogenitas varians terpenuhi. (/br) ✅ Tidak ada pola sistematis (misalnya bentuk kipas atau kurva) → model ANOVA sudah sesuai. (/br) ✅ Sebagian titik berada di luar ±1 → wajar karena ada variasi alami antar sampel.