R

One Way Anova atau Anova 1 Arah di RStudio

Halo sobat Exsight!! Gimana kabarnya? Semoga selalu dalam keadaan sehat walafiat yaa. Okay, jika di artikel sebelumnya sudah pernah dibahas mengenai teori uji ANOVA, maka pada artikel kali ini akan dibahas lebih lanjut mengenai langkah uji One Way ANOVA menggunakan software R. Jika kamu belum membaca teori nya, kamu bisa baca di sini.

Nah, telah disebutkan pada artikel sebelumnya bahwa uji ANOVA adalah uji statistika parametrik yang digunakan untuk membandingkan nilai mean dari 3 kelompok atau lebih. Dengan ANOVA, kamu akan mengetahui apakah ada perbedaan nilai mean antar kelompok-kelompok tersebut.

Sebelum melakukan analisis menggunakan software R, pastikan terlebih dahulu bahwa kamu sudah menginstall software R. Atau jika belum kamu bisa men-download-nya di web CRAN.

Studi Kasus


Seorang petani ingin mengetahui apakah ada pengaruh jenis pupuk terhadap tinggi tanaman cabenya (dalam cm). Petani tersebut menggunakan 5 jenis pupuk yang berbeda (A, B, C, D dan E) dan melakukan pengamatan selama 2 minggu terhadap 20 tanaman cabe. Adapun 1 jenis pupuk akan dicobakan pada 4 tanaman cabe yang berbeda. Diperoleh data sebagai berikut.

Jenis Pupuk
ABCDE
14.916.11820.29.5
15.917.617.920.57.3
14.716.917.920.58.6
14.816.917.621.49.1

Dari dataset di atas, One Way ANOVA merupakan metode yang tepat untuk menjawab pertanyaan petani tersebut. Hal ini dikarenakan ada 5 kelompok tanaman yang akan dibandingkan untuk melihat ada tidaknya perbedaan tinggi tanaman antar kelompok. Jika diperoleh hasil bahwa terdapat perbedaan tinggi tanaman antar kelompok, maka dapat disimpulkan terdapat pengaruh jenis pupuk terhadap tinggi tanaman. Dan sebaliknya, jika diperoleh hasil tidak terdapat perbedaan tinggi tanaman antar kelompok, maka dapat disimpulkan tidak terdapat pengaruh jenis pupuk terhadap tinggi tanaman

Import Data


Sebelum dilakukan import data ke software R, kamu harus mempersiapkan datanya terlebih dahulu. Tabel hasil pengamatan di atas harus dikonversi menjadi 2 kolom saja, yaitu kolom tinggi_tanaman dan jenis_pupuk. Kolom tinggi_tanaman berisi nilai pengukurannya dalam cm dan kolom jenis_pupuk yang berisi kode pupuk yang dicobakan ke tanaman tersebut.

Secara umum, jika ingin melakukan uji One Way ANOVA di R, dataset harus dibuat menjadi 2 kolom yang berisi variabel independen dan variabel dependennya. Di mana dalam kasus ini yang merupakan variabel independen adalah jenis pupuk dan variabel dependennya adalah tinggi tanaman.

Berikut tampilan dataset di excel.

Data One Way Anova

Setelah dibuat tabel seperti di atas, maka simpan file tersebut dalam file berekstensi .xlsx

Karena data sudah siap, maka buka software R dan ketikkan sintaks berikut untuk mengimport file excel tersebut ke R

#Input Data
library(readxl) #Mengaktifkan library readxl
data=read_excel(file.choose()) #Memilih file yang akan dianalisis

Setelah sintaks tersebut di-run, silahkan pilih data yang akan dianalisis dan klik Open

Untuk mengecek apakah data telah diinput secara benar, kita dapat mengetikkan sintaks berikut

View(data)

Maka data akan terlihat sebagai berikut

Data tersebut terdiri dari 20 baris dan 2 kolom.

Uji Asumsi ANOVA


Karena Anova merupakan uji statistika parametrik, maka ada dua asumsi yang harus terpenuhi. Menurut Widasari (1988) dalam bukunya yang berjudul Materi Pokok Rancangan Percobaan, asumsi-asumsi yang mendasari ANOVA yang perlu diperhatikan agar pengujian menjadi sahih adalah residual percobaan menyebar normal (asumsi normalitas residual) serta residual percobaan mempunyai varian yang homogen (asumsi homogenitas residual).

Untuk menghitung nilai residual, terlebih dahulu dilakukan pemodelan ANOVA menggunakan sintaks berikut

anova_pupuk <- aov(tinggi_tanaman ~ jenis_pupuk, data = data)

Pemodelan anova akan dilakukan menggunakan function aov dimana maksud dari tinggi_tanaman ~ jenis_pupuk adalah untuk menguji hipotesis apakah tinggi_tanaman dipengaruhi oleh jenis pupuk atau tidak.

Untuk penjelasan lebih lanjut mengenai function aov, kamu dapat mengetikkan sintaks berikut.

?aov

Dan pada jendela help akan muncul penjelasan sebagai berikut

Setelah dilakukan pemodelan, definiskan nilai residual dari model dengan nama pupuk.residuals

pupuk.residuals <- residuals(object = anova_pupuk)

Pada bagian object, sesuaikan dengan nama model yang akan diuji. Karena sebelumnya model anova telah saya definisikan dengan nama anova_pupuk, maka object = anova_pupuk.

Karena kita telah mendapatkan nilai residual yang disimpan dalam variabel pupuk.residuals, maka uji asumsi dapat segera kita lakukan.

Asumsi Normalitas


Untuk asumsi normalitas, dapat digunakan berbagai jenis metode. Pad artikel kali ini, akan dilakukan uji normalitas menggunakan metode Shapiro Wilk yang terdapat pada package nortest

library(nortest)
shapiro.test(pupuk.residuals)

Berikut output yang diperoleh

> shapiro.test(pupuk.residuals)

Shapiro-Wilk normality test

data:  pupuk.residuals
W = 0.94162, p-value = 0.2572  

Dari output di atas, kita dapat menyimpulkan bahwa pada taraf signifikansi 5%, residual berdistribusi normal. Hal ini dikarenakan residual memiliki p-value sebesar 0.2572 > 0.05.

Karena uji asumsi normalitas terpenuhi, maka kita dapat melanjutkan ke uji asumsi homogenitas.

Tapi, jika pada tahap ini asumsi normalitas nya tidak terpenuhi, kamu harus melakukan transformasi data terlebih dahulu atau melakukan uji perbandingan menggunakan metode lain, seperti Kruskal Wallis yang merupakan uji perbandingan non parametrik

Asumsi Homogenitas


Untuk uji homogenitas residual, akan dilakukan menggunakan function leveneTest pada package car. Kamu bisa menggunakan metode yang lain sesuai kebutuhanmu

library(car)
leveneTest(tinggi_tanaman ~ jenis_pupuk, data = data, center=mean)

Berikut output yang diperoleh

> leveneTest(tinggi_tanaman ~ jenis_pupuk, data = data, center=mean)

Levene's Test for Homogeneity of Variance (center = mean)

Df F value Pr(>F) group
4  1.1556  0.369      15

Dari output di atas, kita dapat menyimpulkan bahwa pada taraf signifikansi 5%, residual memenuhi asumsi homogenitas. Hal ini dikarenakan residual memiliki p-value sebesar 0.369 > 0.05.

Karena uji asumsi normalitas dan homogenitas terpenuhi, maka kita dapat melanjutkan ke analisis utama kita, yaitu One Way Anova

One Way ANOVA


Untuk melihat tabel F dari uji ANOVA, kita bisa langsung mengetikkan sintaks berikut. Sama seperti pemodelan anova di bagian awal

anova_pupuk <- aov(tinggi_tanaman ~ jenis_pupuk, data = data) summary(anova_pupuk)

Berikut output yang diperoleh

> summary(anova_pupuk)            

............Df Sum Sq Mean Sq F value   Pr(>F)
jenis_pupuk 4  323.5   80.89   212.8 5.15e-13***
Residuals   15    5.7    0.38             ---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Untuk pengujian hipotesis, kita dapat melihat F Value atau Pr(>F) pada tabel.

  • Jika menggunakan F Value, maka pengujian akan dilakukan dengan membandingkan nilai F value dengan F tabel, di mana H0 ditolak jika F Value > F tabel
  • Jika menggunakan Pr(>F), maka pengujian akan dilakukan dengan membandingkan nilai Pr(>F) dengan alpha, di mana H0 ditolak jika Pr(>F) < alpha

Dari output di atas diperoleh hasil bahwa, pada taraf signifikansi 5%, H0 ditolak karena Pr(>F) = 5.15 x 10-13 yang artinya terdapat perbedaan tinggi tanaman antar kelompok pupuk atau dapat dikatakan bahwa ada pengaruh jenis pupuk terhadap tinggi tanaman.

Nah, jika kamu ingin tau jenis pupuk mana yang merupakan jenis pupuk terbaik, kamu dapat melanjutkannya menggunakan Post Hoc test. Baca artikel ini ya untuk penjelasan lengkapnya.

https://exsight.id/2-cara-post-hoc-test-uji-lanjut-anova-menggunakan-r-studio/

Untuk diskusi lebih lanjut, kamu bisa klik tombol WA di pojok kanan bawah yaaa!

See you di artikel selanjutnya.

Baca Juga : Langkah Mudah Uji t Independen dan Mann Whitney di R

Jangan lupa selalu gunakan software asli untuk analisis data mu.

One Way Anova atau Anova 1 Arah di RStudio Read More »

Langkah Mudah Uji Korelasi Pearson di R

Pada artikel sebelumnya, sudah pernah dibahas mengenai berbagai jenis uji korelasi berdasarkan skala data, sumber serta distribusi data. Nah, pada artikel kali ini akan dibahas lebih lanjut mengenai salah satu uji korelasi, yaitu Korelasi Pearson dan bagaimana cara pengaplikasiannya menggunakan software R. Jika kamu belum membaca artikel sebelumnya, kamu bisa klik di sini.

Korelasi Pearson


Korelasi Pearson merupakan salah satu ukuran korelasi yang digunakan untuk mengukur kekuatan dan arah hubungan linier dari dua variabel yang berskala interval atau rasio. Uji korelasi pearson ini merupakan analisis statistika parametrik yang mensyaratkan data memiliki sebaran normal. Pada analisis ini, nilai koefisien korelasi dapat dihitung dengan menggunakan Pearson Product Moment dengan persamaan sebagai berikut:

uji korelasi pearson

Nilai r pada persamaan di atas selalu berada di antara -1 sampai 1 (-1 ≤ r ≤ 1). Apabila nilai r = 1 maka disebut dengan korelasi linier positif sempurna. Apabila nilai r = -1 maka dinamakan korelasi linier negatif sempurna, sedangkan apabila nilai r = 0 menunjukkan bahwa tidak terdapat korelasi di antara kedua variabel tersebut.

Menurut Walpole et al. (2012) dalam bukunya yang berjudul Probability and Statistics for Engineers and Scientists, pengujian koefisien korelasi dilakukan dengan menggunakan uji hipotesis sebagai berikut:

  • Hipotesis

H0 : ρ = 0 (tidak terdapat korelasi linier di antara kedua variabel)

H1 : ρ ≠ 0  (terdapat korelasi linier di antara kedua variabel)

  • Statistik Uji

dengan n merupakan banyaknya pasangan data dari variabel-variabel yang diduga berkorelasi dan r merupakan nilai koefisien korelasi yang diperoleh berdasarkan persamaan (a) atau persamaan (b).

  • Kriteria Uji

H0 ditolak jika nilai p-value < 

α

atau \left | t \, hitung \right | > t \left ( 1-\frac{\alpha }{2},n-2 \right )

Jika H0 ditolak, maka terdapat korelasi linier di antara kedua variabel.

Nah, jika kita sudah mengetahui serta memahami dasar teori dari korelasi pearson, maka kita akan mencoba mengaplikasikan uji tersebut menggunakan software R.

Langkah Analisis di R


Misal ingin diketahui apakah terdapat hubungan antara Indeks Pembangunan Manusia (IPM) dan Harapan Lama Sekolah (HLS) di Jawa Tengah. Karena kedua indikator tersebut merupakan data berskala rasio, maka korelasi pearson merupakan uji korelasi yang tepat untuk menganalisis korelasi antar kedua variabel tersebut.

Data yang digunakan dalam tahap analisis dapat di-download di sini

Langkah pertama yang harus dilakukan saat akan melakukan analisis data menggunakan R adalah melakukan input data. Banyak cara yang dapat dilakukan untuk mengimpor data, disini saya menggunakan sintaks read_excel yang terdapat pada library (readxl)

#Input Data
library(readxl) #Mengaktifkan library readxl
data=read_excel(file.choose()) #Memilih file yang akan dianalisis

Setelah sintaks tersebut di-run, silahkan pilih data yang akan dianalisis. Jangan lupa untuk menyimpan data dalam format .xlsx jika ingin menggunakan sintaks read_excel.

Untuk mengecek apakah data telah diinput secara benar, kita dapat mengetikkan sintaks berikut

View(data)

Maka data akan terlihat sebagai berikut

Data tersebut terdiri dari 35 baris dan 3 kolom.

Sebelum dilakukan uji korelasi pearson, maka kita harus melakukan pengecekan asumsi normalitas terhadap kedua data tersebut. Metode uji normalitas yang saya gunakan di sini adalah uji Shapiro Wilk yang terdapat pada library nortest. Kamu bisa menggunakan uji normalitas lain sesuai dengan kebutuhan

#Uji normalitas
library(nortest)
shapiro.test(data$IPM)
shapiro.test(data$HLS)

Berikut hasil pengujiannya

> shapiro.test(data$IPM)

Shapiro-Wilk normality test

data: data$IPM
W = 0.94138, p-value = 0.06165

> shapiro.test(data$HLS)

Shapiro-Wilk normality test

data: data$HLS
W = 0.94315, p-value = 0.06981

Dari output di atas, kita dapat menyimpulkan bahwa pada taraf signifikansi 5%, kedua variabel berdistribusi normal. Hal ini dikarenakan kedua variabel memiliki p-value > 0.05.

Karena uji asumsi normalitas kedua variabel terpenuhi, maka kita dapat melanjutkan ke analisis utama kita, yaitu uji korelasi pearson. Pengujian akan dilakukan dengan sintkas cor.test sebagai berikut

#Uji Korelasi Pearson
cor.test(data$IPM,data$HLS,method=c('pearson'))

Dan berikut hasil pengujiannya

> cor.test(data$IPM,data$HLS,method=c('pearson'))

Pearson's product-moment correlation

data: data$IPM and data$HLS

t = 11.458, df = 33, p-value = 4.816e-13
alternative hypothesis: true correlation is not equal to 0

95 percent confidence interval:
0.7986102 0.9455189

sample estimates:
cor
0.893947

Berdasarkan uji hipotesis dan cara penarikan kesimpulan seperti yang telah dijelaskan sebelumnya, kita memperoleh informasi bahwa pada taraf signifikansi 5%, terdapat korelasi linier yang signifikan antara variabel IPM dan HLS. Adapun korelasi antar kedua bernilai positif, yaitu sebesar 0.893947

Korelasi positif tersebut juga dapat dilihat dari scatterplot berikut

#Plot antara IPM dan HLS
plot(data$IPM,data$HLS,main='IPM vs HLS')

Terlihat jelas dari plot tersebut bahwa keduanya memiliki korelasi positif. Hal ini berarti bahwa jika HLS mengalami peningkatan, maka IPM juga akan mengalami peningkatan dan begitu juga sebaliknya.

Okaaay, sekian penjelasan mengenai uji korelasi pearson dan tutorialnya di software R. Semoga bermanfaat dan jangan lupa share ke teman-teman mu biar banyak yang makin tau apa itu uji korelasi pearson. Jika kamu ada pertanyaan atau kendala, silahkan hubungi Exsight untuk penjelasan lebih lanjut.

See you in the next article!

Baca Juga: PENJELASAN DAN LANGKAH MUDAH UJI KORELASI SPEARMAN RHO DI R STUDIO

Langkah Mudah Uji Korelasi Pearson di R Read More »

Uji Kruskal Wallis di R

Apa itu Uji Kruskal Wallis


Kita akan bahas Uji Kruskal Wallis di R. Sebelumnya, Uji Kruskal Wallis adalah uji Anova NonParametrik yang disarankan sebagai alternatif jika asumsi normalitas residual dari One-Way Anova tidak terpenuhi. Kamu bisa membaca One-Way Anova Test di sini.

Import Data


Dalam tutorial ini, digunakan data built-in di R, sehingga tidak perlu repot – repot import menggunakan data pribadi yaa

data.kita <- PlantGrowth  #memanggil data PlantGrowth
head(data.kita)
summary(data.kita)  #melihat secara sepintas data PlantGrowth

Maka akan muncul output sebagai berikut

weight group
1   4.17  ctrl
2   5.58  ctrl
3   5.18  ctrl
4   6.11  ctrl
5   4.50  ctrl
6   4.61  ctrl

Singkatnya data ini adalah data perbandingan berat tanaman, yang terdiri dari tiga grup : ctr1, trt1, dan trt2.

Uji kruskal

Lakukan Visualisasi


Visualisasi data perlu digunakan untuk melihat keadaaan data secara sekilas, sebelum melakukan uji hipotesis dengan Uji Kruskal-Wallis. Seringkali dari langkah visualisasi ini diperoleh insight yang sebelumnya tidak kita ketahui, maka dari itu langkah ini menjadi penting. Berikut sintaks untuk visualisasi data

library(ggplot2)
plot1 <- ggplot(data.kita, aes(x=group, y=weight, fill=group))+geom_boxplot()
plot1+ggtitle("plot by www.exsight.id")+theme(plot.title = element_text(hjust = 0.5))+   scale_fill_manual(values=c("red", "green", "blue"))

Lakukan Uji Kruskal-Wallis


Tentu tidak cukup jika mengambil kesimpulan/inferensi dari visualisasi Boxplot saja ya sob, berikut pengujian menggunakan metode Kruskal-Wallis di R.

kruskal.test(data=data.kita, weight~group)
Kruskal-Wallis rank sum test
data:  weight by group
Kruskal-Wallis chi-squared = 7,9882, df = 2, p-value = 0,01842

Interpretasi


Karena p-value < 0,05 maka dapat kita simpulkan bahwa terdapat perbedaan weight yang signifikan antara ketiga group dalam data.kita.

Uji Lanjut


Sekarang, mari kita lakukan uji lebih lanjut agar kita tahu grup mana yang berbeda secara signifikan.

pairwise.wilcox.test(data.kita$weight, data.kita$group, p.adjust.method = "BH")

Pairwise comparisons using Wilcoxon rank sum test

data:  data.kita$weight and data.kita$group

     ctrl  trt1
trt1 0,199 -  
trt2 0,095 0,027 

P value adjustment method: BH

Dari output tersebut, kita bisa tahu kalau kelompok pengamatan trt1 dan trt2 saja yang berbeda secara signifikan. Hal ini dikarenakan nilai p-value nya < 0.05.

Okey, sekian dulu ya sobat Exsight. Jika kamu ada pertanyaan atau kendala, silahkan hubungi Exsight untuk penjelasan lebih lanjut.

Jangan lupa share menyebarkan konten ini untuk kebermanfaatan yaa

Baca Juga : Unsupervised Learning dan Implementasinya

Stay safe di tengah pandemi dan jangan lupa selalu pakai Software Original !

Uji Kruskal Wallis di R Read More »

Hubungi Admin
Halo, selamat datang di Exsight! 👋

Hari ini kita ada DISKON 20% untuk semua transaksi. Klaim sekarang!