R

Analisis Diskriminan dengan Software R (Part 2)

Holaa, ketemu lagi nih dengan sobat Exsight. Dalam klasifikasi pada ilmu statistik, tentunya sobat Exsight tidak asing dong dengan salah satu metode klasifikasi ini. Yapss benar, yaitu metode Analisis Diskriminan. Pada beberapa artikel yang lalu, kita pernah membahas terkait metode ini beserta penerapannya dengan software SPSS. Selengkapnya bisa di cek di artikel Analisis Diskriminan (Part 1).

Nah berbeda dari sebelumnya, sekarang kita akan membahas lebih detail penerapan Analisis Diskriminan dengan software lainnya, yaitu software R. Yuk yuk langsung saja, bisa dibaca lanjut ya untuk pembahasannya!

Konsep Dasar Analisis Diskriminan

Analisis diskriminan merupakan sebuah metode statistik multivariat yang digunakan untuk menentukan perbedaan atau diskriminasi antara dua atau lebih kelompok berbeda berdasarkan pada variabel-variabel yang telah ditentukan sebelumnya. 

Tujuan dari analisis diskriminan adalah untuk menemukan kombinasi linear atau non-linear dari variabel-variabel independen yang paling baik dapat memisahkan atau membedakan antara kelompok-kelompok tersebut. Metode diskriminan seringkali digunakan dalam klasifikasi atau pengelompokan data ke dalam kategori atau kelas yang berbeda berdasarkan karakteristik atau atribut tertentu yang diamati.

Jenis-Jenis Analisis Diskriminan

Jenis-jenis analisis diskriminan dapat dibagi menjadi beberapa kategori berdasarkan pendekatannya dan cara penerapannya. Berikut adalah beberapa jenis analisis diskriminan:

A. Analisis Diskriminan Linier
Metode ini menggunakan pendekatan linier untuk memisahkan atau membedakan antara kelompok-kelompok yang berbeda berdasarkan kombinasi linier dari variabel-variabel independen. Tujuan utamanya adalah untuk menemukan fungsi linear yang paling baik dalam membedakan antara kategori-kategori yang ada.

B. Analisis Diskriminan Non-Linier
Berbeda dengan analisis diskriminan linier, analisis diskriminan non-linier lebih fleksibel dan dapat menangani pola yang tidak dapat diuraikan secara linier.

C. Analisis Diskriminan Berganda
Dalam analisis diskriminan berganda, terdapat lebih dari dua kelompok atau kategori yang dipertimbangkan. Metode ini berfokus pada pemisahan atau klasifikasi lebih dari dua kelompok dengan menggunakan beberapa variabel independen sekaligus.

Setiap jenis analisis diskriminan memiliki kelebihan dan kelemahan serta dapat lebih tepat digunakan tergantung pada kondisi data yang dimiliki serta tujuan analisis yang ingin dicapai.

Dalam hal ini, untuk artikel kali ini, kita akan berfokus pada tutorial analisis diskriminan linier menggunakan software R.

Asumsi Analisis Diskriminan

Terdapat beberapa asumsi yang harus dipenuhi sebelum dilakukan analisis diskriminan, diantaranya adalah sebagai berikut.

  1. Variabel- variabel prediktor (independen) mengikuti distribusi normal multivariat.
  2. Tidak terdapat outlier pada variabel independen.
  3. Adanya homogenitas varians antara kelompok data (matriks varians-kovarians variabel penjelas berukuran pxp pada kedua kelompok harus sama)

Studi Kasus

Dalam hal ini, kita akan menggunakan studi kasus menggunakan data sampel terkait Lung Cancer (Kanker Paru- Paru) data akses disini, yang didapatkan dari situs kaggle.com, dimana data di-publish oleh Ms. Nancy Al Aswad.
* Tidak terdapat missing value pada data.
* Data terdiri atas 309 observasi.

Data terdiri atas 16 variabel, yaitu:

VariabelSimbol VariabelKeterangan VariabelSkala Data
GenderX1M = Male
F = Female
Kategorik
AgeX2Numerik
SmokingX31 = No
2 = Yes
Kategorik
Yellow FingerX41 = No
2 = Yes
Kategorik
AnxietyX51 = No
2 = Yes
Kategorik
Peer PressureX61 = No
2 = Yes
Kategorik
Chronic DiseaseX71 = No
2 = Yes
Kategorik
FatigueX81 = No
2 = Yes
Kategorik
AllergyX91 = No
2 = Yes
Kategorik
WheezingX101 = No
2 = Yes
Kategorik
AlcoholX111 = No
2 = Yes
Kategorik
CoughingX121 = No
2 = Yes
Kategorik
Shortness of BreathX131 = No
2 = Yes
Kategorik
Swallowing DifficultyX141 = No
2 = Yes
Kategorik
Chest PainX151 = No
2 = Yes
Kategorik
Lung CancerY1 = No
2 = Yes
Kategorik
Tabel 1. Data

Pada Tabel 1. variabel Lung Cancer berperan sebagai variabel Dependen, sedangkan lainnya merupakan variabel Independen.

Tutorial Analisis Diskriminan dengan Software R

Load Library

Sebelum melakukan running syntax di software R untuk analisis diskriminan, terlebih dahulu melakukan load library R. Adapun library yang diperlukan untuk analisis diskriminan, yaitu:

library(MVN)
library(biotools)
library(candisc)
library(MASS)
library(caret)

Load Data

Kemudian melakukan input data ke R. Data yang diinput diberi nama sebagai data. Perlu diperhatikan untuk jenis file data yang diinput ke R, untuk tutorial kali ini jenis file data yang digunakan yaitu dalam format CSV. Syntax yang digunakan untuk load data adalah sebagai berikut.

data<-read.csv(file.choose(),header=TRUE,sep=",")
analisis diskriminan

Model Diskriminan

Tahapan selanjutnya yaitu melakukan running model diskriminan, syntax yang digunakan adalah sebagai berikut.

#Model Diskriminan
modellda<-lda(data$LUNG_CANCER~., data = data)
modellda
analisis diskriminan
analisis diskriminan

Berdasarkan hasil output R di atas terlihat hasil untuk Prior Probabilities of Groups. Dalam hal ini Prior Probabilities of Groups merupakan probabilitas yang diberikan kepada setiap kelompok berdasarkan informasi awal atau asumsi sebelum data fitur digunakan. Hasil di atas menunjukkan bahwa probabilitas kelompok NO (tidak memiliki penyakit kanker paru- paru ) sebesar 0,1261 dan probabilitas kelompok YES (memiliki penyakit paru- paru) sebesar 0,8737864.

Penggunaan Prior Probabilities of Groups dapat membantu dalam membuat keputusan klasifikasi yang lebih akurat dengan mempertimbangkan distribusi kelompok yang mungkin tidak seimbang dalam data.

Hasil output lainnya yaitu Group Means. Group Means dalam hasil output analisis diskriminan merujuk pada rata-rata nilai untuk masing-masing variabel independen (prediktor) dalam setiap kelompok yang sedang dianalisis. Group Means memberikan informasi tentang karakteristik rata-rata dari setiap kelompok berdasarkan variabel yang digunakan dalam model diskriminan.

Kemudian terdapat pula hasil output coefficients of linear discriminants. Coefficients of linear discriminants pada hasil output analisis diskriminan merujuk pada koefisien yang digunakan untuk membentuk kombinasi linier dari variabel prediktor yang memaksimalkan perbedaan antara kelompok. Koefisien ini menunjukkan kontribusi masing-masing variabel prediktor dalam menentukan fungsi diskriminan. Fungsi diskriminan dibangun sedemikian rupa sehingga nilai koefisien optimal untuk memaksimalkan perbedaan antara kelompok. Berdasarkan coefficients of linear discriminants, maka diperoleh fungsi diskriminan dengan persamaan sebagai berikut:

D=0.006610150X_{1}+0.008736665X_{2}+0.448595676X_{3}+0.733785633X_{4}+0.471094976X_{5}
+\\0.540638400X_{6}+0.560243295X_{7}+0.921038883X_{8}+0.912006373X_{9}+0.367686786X_{10}+\\1.189833401X_{11}+0.648283306X_{12}+0.272951385X_{13}+0.610664146X_{14}+0.169307312X_{15}

Berdasarkan persamaan model di atas, dapat diinterpretasikan bahwa koefisien diskriminan linier tertinggi yaitu terdapat pada variabel Alcohol Consuming (X11), yaitu sebesar 1.189833401. Sedangkan variabel dengan koefisien diskriminan linier terendah adalah variabel Gender (X1) dengan nilai variabel sebesar 0.006610150.

Hal ini dapat diartikan bahwa variabel Alcohol Consuming (X11) adalah faktor paling penting dalam memprediksi apakah pasien memiliki penyakit kanker paru-paru. Sedangkan variabel Gender (X1) tidak terlalu memegang peran penting dalam prediksi apakah pasien memiliki penyakit kanker paru-paru.

Dengan kata lain, dalam konteks kesehatan, dapat ditekankan bahwa konsumsi alkohol memegang peran penting dalam menentukan risiko penyakit kanker paru-paru.

Secara keseluruhan, coefficients of linear discriminants memberikan wawasan yang mendalam tentang peran masing-masing variabel dalam memisahkan kelompok dan membantu dalam membangun model diskriminan yang dapat diandalkan dan akurat.

Ketepatan Model

Ketepatan model dalam analisis diskriminan merujuk pada seberapa baik model tersebut mampu mengklasifikasikan data ke dalam kategori yang benar. Dalam analisis diskriminan, tujuan utama adalah membedakan atau mengklasifikasikan objek atau individu ke dalam dua atau lebih kelompok berdasarkan beberapa variabel independen.

#Ketepatan Model
pred_LDA1<- predict(modellda, data)
confmatLDA1<-confusionMatrix(pred_LDA1$class,as.factor(data$LUNG_CANCER),positive = "YES")
confmatLDA1
analisis diskriminan

Pada tabel Confusion Matrix and Statistics, diketahui bahwa:
– Terdapat 28 (pasien yang tidak memiliki penyakit Kanker Paru- Paru dan diprediksi memiliki penyakit Kanker Paru- Paru).
– Terdapat 261 (pasien yang benar-benar tidak memiliki penyakit Kanker Paru- Paru dan diprediksi tidak memiliki penyakit Kanker Paru-Paru).
– Terdapat 11 (Pasien yang sebenarnya tidak memiliki penyakit kanker paru-paru tetapi diprediksi memiliki penyakit kanker paru-paru)
– Terdapat 9 (Pasien yang sebenarnya memiliki penyakit kanker paru- paru tetapi diprediksi tidak memiliki penyakit kanker paru-paru).

Informasi lainnya yaitu berdasarkan analisis diskriminan terlihat bahwa nilai akurasi sebesar 0.9353. Akurasi merupakan proporsi dari total jumlah prediksi yang benar. Artinya model yang terbentuk pada analisis diskriminan memiliki akurasi sebesar 93.53% yang berarti model ini memprediksi dengan benar 93.53% dari semua kasus.

Hasil output software di atas menampilkan pula nilai sensitivity. Sensitivity adalah proporsi prediksi positif yang benar. Pada hasil, didapatkan nilai untuk sensitivity yaitu sebesar 0.9667. Artinya dari semua pasien yang benar-benar memiliki penyakit kanker paru- paru, model diskriminan ini berhasil mengidentifikasi 96.67% dari mereka.

Selanjutnya untuk hasil output di atas terkait nilai Specificity. Nilai Specificity mengukur kemampuan model untuk benar-benar mengidentifikasi negatif sejati (True Negatives) dari semua kasus yang benar-benar negatif. Specificity sering disebut juga sebagai True Negative Rate. Dikarenakan model diskriminan di atas memiliki nilai specificity sebesar 0.7179 , ini berarti 71.79% dari semua kasus yang sebenarnya negatif (tidak memiliki penyakit kanker paru-paru) telah diidentifikasi dengan benar oleh model.

Adapun untuk hasil output Positive Predictive Value (PPV) mengukur proporsi dari semua prediksi positif yang benar-benar positif. Model diskriminan di atas memiliki nilai Positive Predictive Value (PPV) sebesar 0.9596, ini berarti 95,96% dari semua kasus yang diprediksi positif oleh model benar-benar positif (memiliki penyakit kanker paru-paru).

Lalu untuk hasil Negative Predictive Value (NPV) mengukur proporsi dari semua prediksi negatif yang benar-benar negatif. Model diskriminan di atas memiliki memiliki nilai Negative Predictive Value (NPV) sebesar 0.7568, ini berarti 75,68% dari semua kasus yang diprediksi negatif oleh model benar-benar negatif (tidak memiliki penyakit kanker paru-paru).

Secara keseluruhan, model diskriminan yang terbentuk ini tampaknya cukup andal dalam memprediksi apakah seorang pasien memiliki penyakit tertentu. Namun, ada ruang untuk perbaikan, terutama dalam mengurangi jumlah false positives dan false negatives untuk meningkatkan hasil lebih lanjut.

Referensi

Kartikawati, A., Mukid, M, A. & Ispriyanti, D. (2013). Perbandingan Analisis Diskriminan Linier Klasik dan Analisis Diskriminan Linier Robust untuk Pengklasifikasian Kesejahteraan Masyarakat Kabupaten/Kota di Jawa Tengah. Jurnal Gaussian, Vol. 2, No. 3.

Johnson, R. A., & Wichern, D. W. (2007). Applied Multivariate Statistical Analysis. Pearson Education.

Sampai di sini dulu penjelasan terkait Analisis Diskriminan dengan Software R. Jika sobat Exsight masih ada yang dibingungkan terkait pembahasan pada artikel ini, bisa langsung saja ramaikan kolom komentar atau hubungi admin melalui tombol bantuan di kanan bawah. Stay tuned di website https://exsight.id/blog/ agar tidak ketinggalan artikel-artikel menarik lainnya. See you in the next article yaa!

Analisis Diskriminan dengan Software R (Part 2) Read More »

Pengecekan Normalitas Data dengan Software R

Masih ingat gak nih sobat Exsight, pada beberapa artikel Exsight sebelumnya, kita pernah membahas terkait normalitas data. Beberapa artikel tersebut diantaranya berjudul:
Distribusi Normal pada Data #1
Uji Normalitas Shapiro-Wilk dengan SPSS #2
Tutorial Pembuatan Q-Q Plot untuk Cek Normalitas Data #3

Berbeda dari artikel- artikel sebelumnya, di mana sebagian besar berkaitan dengan penerapan software SPSS. Nah, untuk artikel kali ini, akan berfokus pada pengecekan normalitas data menggunakan software R. Tanpa berlama- lama lagi, yuk yuk simak artikel ini dengan seksama yaa!

Studi Kasus

Studi kasus dalam artikel kali ini terkait pengecekan normalitas data, kita akan menggunakan data terkait nilai ujian dari 20 mahasiswa di suatu perguruan tinggi. Untuk data bisa diakses disini.

pengecekan normalitas data
normalitas

Tahapan R untuk Pengecekan Normalitas Data

Pengecekan normalitas data dapat dilakukan menggunakan berbagai uji normalitas yang kerap kali digunakan diantaranya adalah:
A. Uji normalitas Shapiro Wilk
B. Uji normalitas Kolmogorov-Smirnov
C. Uji normalitas Anderson-Darling
D. Uji normalitas Jarque-Bera
E. Uji normalitas Pearson Chi-Square
F. Uji normalitas Cramer-von Mises
G. Uji normalitas Shapiro-Francia

Load Library

Sebelum melakukan running syntax di software R untuk pengecekan normalitas data, terlebih dahulu melakukan load library R. Adapun library yang diperlukan untuk pengecekan normalitas data yaitu

#Library
library(nortest)

Load Data

Tahapan selanjutnya yaitu melakukan load data pada software R. Adapun syntax yang digunakan adalah sebagai berikut.

data<-read.csv(file.choose(),header=TRUE,sep=”,”)

A. Uji Normalitas Shapiro Wilk

Hipotesis yang digunakan untuk uji normalitas adalah sebagai berikut.
H0 : Data berdistribusi normal
H1 : Data tidak berdistribusi normal

Apabila p-value yang dihasilkan dari uji Shapiro-Wilk bernilai lebih besar dari tingkat signifikansi yang ditentukan sebelumnya (biasanya 0.05), maka diambil keputusan hipotesis nol diterima artinya data berdistribusi normal. Sebaliknya, jika p-value lebih kecil dari tingkat signifikansi, maka hipotesis nol ditolak dan dapat diartikan data tidak berdistribusi normal.

Uji Normalitas Shapiro- Wilk

Syntax R yang digunakan untuk uji normalitas Shapiro- Wilk adalah sebagai berikut.

shapiro.test(data$Nilai_Ujian)
normalitas

Berdasarkan hasil output software R di atas, diketahui bahwa untuk hasil p-value yaitu sebesar 0.82 , dikarenakan p-value bernilai lebih besar dari taraf signifikansi (5% atau 0.05) maka diambil keputusan Terima H0 atau Gagal Tolak H0. Artinya data nilai ujian apabila dilakukan pengecekan menggunakan uji Shapiro- Wilk berdistribusi Normal.

B. Uji Normalitas Kolmogorov-Smirnov

Sama seperti halnya uji normalitas Shapiro-Wilk. Untuk uji normalitas Kolmogorov-Smirnov, hipotesis yang digunakan adalah sebagai berikut.
H0 : Data berdistribusi normal
H1 : Data tidak berdistribusi normal

Uji Normalitas Kolmogorov-Smirnov

#Kolmogorov-Smirnov
nortest::lillie.test(data$Nilai_Ujian)
normalitas

Hasil output software R menunjukkan bahwa untuk p-value hasil pengujian Kolmogorov-Smirnov yaitu sebesar 0.6946, dalam hal ini, dapat dilihat bahwa untuk p-value bernilai lebih besar daripada taraf signifikansi (5% atau 0.05). Sehingga berdasarkan hasil pengujian dapat diambil keputusan Terima H0 atau Gagal Tolak H0. Artinya data nilai ujian apabila dilakukan pengecekan normalitas data menggunakan uji Kolmogorov- Smirnov berdistribusi Normal.

C. Uji Normalitas Anderson Darling

Uji normalitas Anderson-Darling sering digunakan dalam analisis data untuk memastikan bahwa asumsi normalitas terpenuhi sebelum menerapkan metode statistik yang memerlukan data berdistribusi normal.

Uji normalitas Anderson-Darling dinamakan berdasarkan dua statistikawan, Theodore W. Anderson dan Donald A. Darling, yang mengembangkannya pada tahun 1952. Keduanya adalah statistikawan dari Universitas Princeton. Mereka menciptakan metode ini sebagai alternatif yang lebih sensitif dibandingkan dengan metode uji normalitas yang sudah ada pada saat itu, seperti uji normalitas Kolmogorov-Smirnov serta uji normalitas Shapiro-Wilk.

Anderson dan Darling mengembangkan uji normalitas ini dengan fokus pada meningkatkan ketepatan dalam mengidentifikasi ketidaknormalan dalam data. Mereka mengusulkan penggunaan statistik Anderson-Darling sebagai alat untuk mengukur kesesuaian antara data yang diamati dengan distribusi normal yang diharapkan.

Hipotesis yang digunakan untuk pengecekan normalitas data dengan Anderson-Darling adalah sebagai berikut.
H0 : Data berdistribusi normal
H1 : Data tidak berdistribusi normal

Uji Normalitas Anderson Darling

#Anderson-Darling
nortest::ad.test(data$Nilai_Ujian)
normalitas

Berdasarkan output software R di atas, terlihat bahwa untuk p-value hasil pengujian normalitas dengan Anderson Darling yaitu sebesar 0.8159. Dikarenakan p-value bernilai lebih besar daripada taraf signifikansi (5% atau 0.05) maka diambil keputusan Terima H0 atau Gagal Tolak H0. Sehingga dapat diartikan, data nilai ujian apabila dilakukan pengecekan menggunakan uji Anderson Darling berdistribusi Normal.

D. Uji Normalitas Jarque-Bera

Uji normalitas Jarque-Bera dinamakan sesuai dengan nama dua ekonom, Carlos Jarque dan Anil K. Bera. Uji normalitas Jarque-Bera pertama kali dikembangkan pada tahun 1980. Carlos Jarque dan Anil K. Bera merupakan profesor di bidang ekonomi dan statistik di Universitas Illinois di Urbana-Champaign pada saat itu.

Perhitungan Statistik Jarque- Bera didasarkan pada kurtosis dan skewness dari sampel data. Skewness mengukur simetri data, sedangkan kurtosis mengukur tajam atau datar dari puncak distribusi.

Penelitian oleh Carlos Jarque dan Anil K. Bera menunjukkan bahwa skewness dan kurtosis dari sampel data memiliki distribusi asimtotik, yang memungkinkan mereka untuk menentukan distribusi sampling dari statistik Jarque-Bera. Hal ini memungkinkan penggunaan nilai kritis untuk menguji hipotesis nol bahwa data berasal dari distribusi normal.

Seiring dengan peningkatan penggunaan teknik statistik dalam berbagai bidang, uji normalitas Jarque-Bera menjadi semakin populer karena sensitivitasnya terhadap deviasi dari distribusi normal. Meskipun demikian, seperti halnya dengan semua metode statistik, penting untuk memahami kekuatan dan keterbatasan uji normalitas Jarque-Bera dalam konteks penggunaannya.

Hipotesis yang digunakan untuk pengecekan normalitas data dengan Jarque-Bera adalah sebagai berikut.
H0 : Data berdistribusi normal
H1 : Data tidak berdistribusi normal

Uji Normalitas Jarque-Bera

#Jarque-Bera
library(tseries)
tseries::jarque.bera.test(data$Nilai_Ujian)
normalitas

Hasil output software R menunjukkan bahwa untuk p-value hasil pengujian Jarque-Bera yaitu sebesar 0.7725, dalam hal ini, dapat dilihat bahwa untuk p-value bernilai lebih besar daripada taraf signifikansi (5% atau 0.05). Sehingga berdasarkan hasil pengujian dapat diambil keputusan Terima H0 atau Gagal Tolak H0. Artinya data nilai ujian apabila dilakukan pengecekan normalitas data menggunakan uji Jarque-Bera berdistribusi Normal.

E. Uji Normalitas Pearson Chi-Square

Uji normalitas Pearson Chi-Square pertama kali diperkenalkan oleh Karl Pearson, seorang ahli statistik Inggris pada akhir abad ke-19 dan awal abad ke-20. Karl Pearson adalah salah satu tokoh utama dalam perkembangan statistik modern. Kontribusi Pearson dalam penggunaan uji Chi-Square dalam konteks normalitas adalah penggunaannya dalam pengujian goodness-of-fit untuk mengevaluasi sejauh mana suatu distribusi teoritis (misalnya distribusi normal) sesuai dengan distribusi data yang diamati. Pengujian goodness-of-fit ini menjadi dasar bagi penggunaan uji normalitas Pearson Chi-Square seperti yang kita kenal saat ini.

Hipotesis yang digunakan untuk pengecekan normalitas data dengan Pearson Chi-Square adalah sebagai berikut.
H0 : Data berdistribusi normal
H1 : Data tidak berdistribusi normal

Uji Normalitas Pearson Chi-Square

#Pearson Chi-Square
nortest::pearson.test(data$Nilai_Ujian)
normalitas

Berdasarkan output software R di atas, terlihat bahwa untuk p-value hasil pengujian normalitas dengan Pearson Chi-Square yaitu sebesar 0.7907. Dikarenakan p-value bernilai lebih besar daripada taraf signifikansi (5% atau 0.05) maka diambil keputusan Terima H0 atau Gagal Tolak H0. Sehingga dapat diartikan, data nilai ujian apabila dilakukan pengecekan menggunakan uji Pearson Chi- Square berdistribusi Normal.

F. Uji normalitas Cramer-von Mises

Uji normalitas Cramér-von Mises, yang juga dikenal sebagai uji Cramér-von Mises-Wald-Wolfowitz, adalah metode statistik yang digunakan untuk menguji apakah data berdistribusi normal. Metode ini dinamai berdasarkan dua ahli statistik, Harald Cramér dan Richard von Mises, yang berkontribusi dalam pengembangannya.

Uji ini awalnya dirancang untuk menguji kesesuaian model dalam statistik nonparametrik, tetapi kemudian digunakan secara luas untuk menguji normalitas data. Penggunaan uji Cramer-von Mises telah menjadi populer dalam analisis data modern, terutama karena sensitivitasnya terhadap variasi dalam distribusi data dan kemampuannya untuk mengatasi banyak distribusi non normal.

Meskipun uji normalitas Cramér-von Mises bukanlah salah satu uji normalitas yang paling umum digunakan, kontribusi Cramér dan von Mises dalam pengembangannya tetap diakui sebagai bagian penting dari sejarah statistik dan analisis data.

Uji normalitas Cramer-von Mises

Hipotesis yang digunakan untuk pengecekan normalitas data dengan Cramer-von Mises adalah sebagai berikut.
H0 : Data berdistribusi normal
H1 : Data tidak berdistribusi normal

#Cramer-von Mises
nortest::cvm.test(data$Nilai_Ujian)
normalitas

Hasil output software R menunjukkan bahwa untuk p-value hasil pengujian Cramer-von Mises yaitu sebesar 0.7666, dalam hal ini, dapat dilihat bahwa untuk p-value bernilai lebih besar daripada taraf signifikansi (5% atau 0.05). Sehingga berdasarkan hasil pengujian dapat diambil keputusan Terima H0 atau Gagal Tolak H0. Artinya data nilai ujian apabila dilakukan pengecekan normalitas data menggunakan uji Cramer-von Mises berdistribusi Normal.

G. Uji normalitas Shapiro-Francia

Uji normalitas Shapiro- Francia adalah metode statistik yang digunakan untuk menguji apakah suatu data memiliki distribusi normal (pengecekan normalitas data). Uji ini dinamakan berdasarkan nama dua ahli statistik, yaitu Samuel Shapiro dan Morton Francia, yang berkontribusi dalam pengembangannya.

Uji normalitas Shapiro-Francia mengukur kesesuaian antara distribusi data dan distribusi normal dengan membandingkan kemiripan antara dua kelompok estimasi dari varians sampel. Uji ini memiliki keunggulan dalam mengatasi beberapa kelemahan yang dimiliki oleh uji normalitas lainnya, seperti uji Shapiro-Wilk, terutama dalam hal ukuran sampel yang besar.

Meskipun tidak sepopuler uji normalitas Shapiro-Wilk, uji Shapiro-Francia tetap digunakan dalam analisis data modern karena keakuratannya dan kemampuannya untuk menangani ukuran sampel yang besar. Kontribusi Shapiro dan Francia dalam pengembangan teknik ini memiliki nilai penting dalam sejarah statistik dan analisis data.

Uji normalitas Shapiro-Francia

Hipotesis yang digunakan untuk pengecekan normalitas data dengan Shapiro-Francia adalah sebagai berikut.
H0 : Data berdistribusi normal
H1 : Data tidak berdistribusi normal

#Shapiro-Francia
nortest::sf.test(data$Nilai_Ujian)
normalitas

Berdasarkan output software R di atas, terlihat bahwa untuk p-value hasil pengujian normalitas dengan Shapiro- Francia yaitu sebesar 0.8934. Dikarenakan p-value bernilai lebih besar daripada taraf signifikansi (5% atau 0.05) maka diambil keputusan Terima H0 atau Gagal Tolak H0. Sehingga dapat diartikan, data nilai ujian apabila dilakukan pengecekan menggunakan uji Shapiro-Francia berdistribusi Normal.

Kesimpulan

Berdasarkan hasil pengecekan normalitas data, baik dengan menggunakan:
A. Uji normalitas Shapiro Wilk
B. Uji normalitas Kolmogorov-Smirnov
C. Uji normalitas Anderson-Darling
D. Uji normalitas Jarque-Bera
E. Uji normalitas Pearson Chi-Square
F. Uji normalitas Cramer-von Mises
G. Uji normalitas Shapiro-Francia
Dapat disimpulkan bahwa data terkait nilai ujian dari 20 mahasiswa di suatu perguruan tinggi, berdistribusi normal.

Referensi

Montgomery, D. C., Peck, E. A., & Vining, G. G. (2012). Introduction to Linear Regression Analysis. John Wiley & Sons.

Finally, sampai sudah kita di penghujung artikel, sekian penjelasan terkait Pengecekan Normalitas Data dengan Software R. Apabila masih ada yang dibingungkan bisa langsung saja ramaikan kolom komentar atau hubungi admin melalui tombol bantuan di kanan bawah. Stay tuned di website https://exsight.id/blog/ agar tidak ketinggalan artikel-artikel menarik lainnya.

Pengecekan Normalitas Data dengan Software R Read More »

Iterasi Numerik Newton Raphson

Halo halo sobat Exsight, dalam artikel kali ini, kita akan membahas suatu metode iterasi bernama Newton Raphson. Sobat Exsight pernah gak sih merasa bingung saat mencoba menyelesaikan suatu soal matematika yang rumit? Jika ya, sobat Exsight tidak sendirian! Kadang-kadang, solusi dari persoalan matematika khususnya berkaitan dengan persamaan non linier tidak bisa ditemukan dengan mudah menggunakan rumus-rumus yang telah dipelajari di kelas, maka dari itu diperlukan suatu metode numerik.

Metode numerik merupakan suatu metode alternatif yang digunakan untuk menyelesaikan persoalan-persoalan matematis selain metode analitik. Pemakaian metode numerik umumnya dilengkapi dengan suatu algoritma agar penyelesaian masalah dapat dilakukan secara sistematis dan logis sehingga diperoleh jawaban numerik yang efisien dan efektif dari berbagai macam permasalahan yang diselesaikan.

Salah satu metode numerik yang paling umum digunakan yaitu Iterasi Newton Raphson. Tanpa berlama-lama lagi, yuk simak artikel ini dengan seksama yaa!

Definisi

Metode Iterasi Newton-Raphson adalah suatu metode numerik yang digunakan untuk mendapatkan nilai solusi dari suatu persamaan nonlinear. Metode ini termasuk dalam metode pendekatan iteratif yang menggunakan nilai titik awal atau sebagai titik permulaan, kemudian dengan teknik ini, secara berulang dilakukan perhitungan untuk memperbaiki perkiraan solusi tersebut.

Iterasi Newton-Rhapson pertama kali dikembangkan oleh Isaac Newton dan Joseph Raphson. Metode ini memanfaatkan konsep turunan fungsi untuk mendapatkan perkiraan solusi hasil yang lebih baik dengan melakukan iterasi. Metode iterasi Newton Raphson digunakan dalam berbagai bidang ilmu, termasuk teknik, ilmu komputer, matematika, fisika, dan ekonomi, untuk menyelesaikan berbagai masalah nonlinear.

Konsep Dasar

Metode Iterasi Newton Raphson adalah salah satu algoritma yang paling umum digunakan untuk menyelesaikan persamaan nonlinear. Algoritma ini bekerja dengan cara memperbarui tebakan awal secara berulang hingga mendekati solusi yang diinginkan. Berikut adalah komponen-komponen utama dari algoritma ini:

A. Proses Konvergensi
Proses konvergensi terjadi saat iterasi dilakukan berulang kali dan solusi mendekati solusi yang sebenarnya. Dalam metode Newton-Raphson, proses konvergensi terjadi ketika nilai fungsi mendekati nol, atau ketika perubahan antara perkiraan solusi baru dan solusi sebelumnya menjadi sangat kecil.

B. Kriteria Penghentian Iterasi
Sebagai upaya untuk menghentikan proses iterasi, diperlukan kriteria penghentian yang memadai. Beberapa kriteria umum yang digunakan untuk menghentikan iterasi Newton Raphson antara lain:
– Perubahan relatif atau absolut antara dua perkiraan solusi berturut-turut kurang dari suatu ambang batas yang ditentukan.
– Jumlah iterasi mencapai batas yang ditentukan.
– Nilai fungsi mendekati nol secara memadai.

Galat dan Toleransi dalam Iterasi Numerik

Galat

Ketika metode numerik digunakan untuk menyelesaikan suatu masalah, kita awali dengan menetapkan sembarang nilai awal (initial value). Dengan nilai awal tersebut selanjutnya dilakukan langkah-langkah komputasi numerik sehingga diperoleh suatu penyelesaian yang diinginkan, baik berupa bilangan ataupun model hampiran. Semakin kecil kesalahan/galat yang ditimbulkan oleh penggunaan suatu rumus/formula maka semakin baik hampiran yang dihasilkan. Galat berdasarkan tipe dibedakan atas 2 jenis diantaranya:

newton raphson

A. Galat Inheren (Inherent Error)
Galat inheren merupakan galat bawaan akibat penggunaan suatu metode numerik. Akibat perhitungan numerik yang sebagian besar adalah tidak eksak, dapat menyebabkan data yang diperoleh adalah data aproksimasi. Selain itu, keterbatasan dari alat komputasi seperti tabel matematika, kalkulator, dan komputer digital juga membuat perhitungan numerik tidak eksak. Karena keterbatasan tersebut, bilangan-bilangan yang diperoleh adalah hasil pembulatan. Di dalam perhitungan, galat inheren dapat diperkecil melalui penggunaan data yang besar, pemeriksaan galat yang jelas dalam data, dan penggunaan alat komputasi dengan ketelitan yang tinggi.

B. Galat Pemotongan (Truncated Errror)
Galat ini disebabkan oleh adanya penghilangan sebarisan suku dari suatu deret/ekspansi untuk tujuan peringkasan pekerjaan perhitungan. Galat pemotongan adalah galat yang tak dapat dihindarkan dalam proses komputasi secara numerik.

Toleransi

Toleransi mengacu pada batasan atau tingkat kesalahan yang diterima atau diizinkan dalam proses iterasi. Toleransi (Tol) dapat pula didefinisikan sebagai batas penerimaan suatu galat. Toleransi ditentukan sebelumnya oleh pengguna atau pemodel dan biasanya diukur dalam bentuk nilai numerik, misalnya 0.001 atau 0.0001. Ini menunjukkan bahwa jika galat antara solusi iteratif dan solusi yang diinginkan kurang dari nilai toleransi yang ditentukan, maka iterasi dianggap sudah mencapai solusi yang memadai dan dapat dihentikan.

Tahapan- Tahapan Iterasi Newton Raphson

Secara sistematis, tahapan- tahapan dari iterasi Newton Raphson adalah sebagai berikut.

1. Inisialisasi
Langkah pertama adalah memilih nilai awal x0 sebagai tebakan awal. Tebakan ini harus dekat dengan solusi yang sebenarnya untuk memulai proses iterasi.

2. Perhitungan Fungsi
Hitung nilai fungsi f(xn) pada tebakan awal xn . Fungsi ini merupakan persamaan nonlinear yang ingin diselesaikan.

3. Perhitungan Turunan
Hitung nilai turunan pertama f”(xn) dari fungsi pada tebakan awal xn ​. Turunan pertama ini diperlukan dalam rumus iterasi Newton-Raphson.

4. Gunakan Rumus Iterasi Newton-Raphson
Gunakan rumus iterasi Newton-Raphson untuk menghitung perkiraan solusi berikutnya xn+1 berdasarkan nilai xn ​, f(xn) , dan f”(xn). Rumus iterasi Newton- Raphson adalah sebagai berikut.

x_{n+1}=x_{n}-\frac{f\left ( x_{n} \right )}{f'\left ( x_{n} \right )}

5. Perhitungan Galat
Hitung galat antara solusi iteratif baru xn+1​ dengan solusi sebelumnya xn . Galat ini bisa dihitung sebagai selisih absolut atau relatif antara kedua solusi.

6. Pengecekan Konvergensi
Periksa apakah solusi iteratif sudah konvergen atau mendekati solusi yang diinginkan. Hal ini dapat dilakukan dengan memeriksa apakah nilai fungsi f(xn+1) mendekati nol atau apakah galat sudah lebih kecil dari nilai toleransi yang ditetapkan.

7. Iterasi Berulang
Jika solusi belum konvergen atau galat masih lebih besar dari toleransi, maka iterasi dilanjutkan dengan menggunakan nilai xn+1​ sebagai tebakan baru dan kembali ke tahap 3 untuk menghitung solusi iteratif berikutnya.

8. Penghentian Iterasi
Iterasi dihentikan ketika solusi sudah konvergen atau galat sudah lebih kecil dari toleransi yang ditetapkan. Pada tahap ini, solusi iteratif dianggap sudah memadai dan dapat digunakan sebagai perkiraan solusi dari persamaan nonlinear yang sedang diselesaikan.

Kelebihan dan Keterbatasan Newton Raphson

Metide iterasi Newton Raphson memiliki beberapa kelebihan dan kelemahan diantaranya:

Kelebihan

A. Laju Konvergensi Tinggi
1. Metode ini cenderung konvergen dengan cepat menuju solusi.
2. Membutuhkan jumlah iterasi yang relatif sedikit untuk mencapai akurasi yang tinggi.

B. Efisiensi Penggunaan Turunan
1. Memanfaatkan informasi turunan pertama untuk percepatan konvergensi.
2. Mengurangi beban komputasi dibandingkan dengan metode iteratif tanpa turunan.

C. Aplikasi Luas
1. Cocok untuk penyelesaian sistem persamaan nonlinear.
2. Digunakan secara luas dalam bidang optimisasi dan analisis numerik.

Kelemahan

A. Sensitif terhadap Pemilihan Titik Awal
1. Kinerja metode sangat tergantung pada pemilihan titik awal yang baik.
2. Kesalahan dalam memilih titik awal dapat mengakibatkan ketidakkonvergenan.

B. Kesulitan pada Akar Ganda
1. Tidak selalu berhasil menangani akar ganda dengan baik.
2. Mungkin mengalami konvergensi ke salah satu akar atau bahkan tidak konvergen sama sekali.

C. Memerlukan Perhitungan Turunan
1. Bergantung pada perhitungan turunan pertama yang akurat.
2. Menyulitkan jika turunan tidak mudah dihitung atau tidak tersedia dalam bentuk tertutup.

D. Keterbatasan pada Fungsi Nonmulur
1. Tidak selalu konvergen pada fungsi yang memiliki singularitas atau tidak bersifat mulur.
2. Memerlukan pemahaman mendalam terhadap sifat-sifat fungsi.

Tutorial Iterasi Newton Raphson dengan R Studio

Studi Kasus

Misalkan kita memiliki fungsi f(x)=x2-3 dan kita ingin mencari akar persamaan f(x)=0. Kita dapat menggunakan metode iteratif untuk mendekati akar persamaan ini. Salah satu metode yang sederhana adalah metode Newton-Raphson.

Newton Raphson

Tahapan R Studio Iterasi Newton Raphson

* Load Library

Tahapan awal, sebelum melakukan running syntax di software R terlebih dahulu melakukan load library R.  Adapun syntax R yang digunakan adalah sebagai berikut.

#Library
library(ggplot2)

* Iterasi Newton Raphson

Iterasi Newton-Rhapson dilakukan menggunakan syntax R yaitu sebagai berikut (Sebagai catatan, dalam proses penulisan syntax juga melibatkan perhitungan nilai turunan fungsi, dimana hasil turunan dari f(x)=x2-3  yaitu sebesar f(x)=2x. 

# Fungsi yang akan diiterasi
f <- function(x) {
  return(x^2 - 3)
}

# Turunan pertama dari fungsi
f_prime <- function(x) {
  return(2*x)
}

# Metode iterasi Newton-Raphson
newton_raphson <- function(x0, tol, max_iter) {
  x <- x0
  for (i in 1:max_iter) {
    x_new <- x - f(x) / f_prime(x)
    if (abs(x_new - x) < tol) {
      break
    }
    x <- x_new
  }
  return(x)
}

# Nilai awal, toleransi, dan maksimum iterasi
x0 <- 2
tolerance <- 1e-6
max_iterations <- 100

# Memanggil fungsi iterasi Newton-Raphson
result <- newton_raphson(x0, tolerance, max_iterations)

# Menampilkan hasil
print(paste("Nilai akar yang dihitung: ", result))
newton rhapson

Setelah dilakukan proses running, maka didapatkan hasil dari nilai akar yang dihitung yaitu sebesar 1.73205081001473.

Tahapan berikutnya yaitu melakukan visualisasi hasil iterasi Newton-Rhapson dengan menggunakan syntax R yaitu sebagai berikut.

x_values <- seq(-3, 3, 0.01)
y_values <- f(x_values)

plot_data <- data.frame(x = x_values, y = y_values)

ggplot(plot_data, aes(x, y)) +
  geom_line() +
  geom_hline(yintercept = 0, linetype="dashed", color = "red") +
  geom_vline(xintercept = result, linetype="dashed", color = "blue") +
  geom_point(aes(x = result, y = 0), color = "blue", size = 3) +
  labs(title = "Iterasi Newton-Raphson",
       x = "Nilai x",
       y = "Nilai f(x)")
# Plot fungsi dan akar yang ditemukan
newton rhapson

Berdasarkan hasil output software R berupa hasil perhitungan dan hasil visualisasi, diketahui bahwa dalam contoh ini, kita mencari akar persamaan f(x)=x2-3 menggunakan metode Newton-Raphson dengan nilai awal x0=2, toleransi 1×10−6, dan maksimum iterasi sebanyak 100 kali.

Sebagai catatan, dalam perhitungan kali ini, jumlah iterasi maksimum yang digunakan yaitu sebanyak 100 kali. Adapun penentuan jumlah iterasi dalam hal ini dapat menyesuaikan kebutuhan dari tiap penelitian. Pada penelitian ini, iterasi sebanyak 100 kali, diasumsikan telah menghasilkan hasil perhitungan yang konvergen, sehingga iterasi maksimum dilakukan sebanyak 100 kali.

Referensi

Zakaria, L., & Muharramah, U. (2013). Pengantar Metode Numerik (Solusi Masalah dengan Mathematica. Bandar Lampung: AURA CV. Anugrah Utama Raharja.

Mualifin, M. I. (2023, December 6th). Iterasi Newton-Raphson untuk Mencari Akar Persamaan: Implementasi dalam RStudio. Retrieved from https://rpubs.com/mualifin/Iterasi-Newton-Raphson

Finally, sampai sudah kita di penghujung artikel, sekian penjelasan terkait Iterasi Numerik Newton-Raphson. Apabila masih ada yang dibingungkan bisa langsung saja ramaikan kolom komentar atau hubungi admin melalui tombol bantuan di kanan bawah. Stay tuned di website https://exsight.id/blog/ agar tidak ketinggalan artikel-artikel menarik lainnya.

Iterasi Numerik Newton Raphson Read More »

Hubungi Admin
Halo, selamat datang di Exsight! 👋

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