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.
- Variabel- variabel prediktor (independen) mengikuti distribusi normal multivariat.
- Tidak terdapat outlier pada variabel independen.
- 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:
Variabel | Simbol Variabel | Keterangan Variabel | Skala Data |
Gender | X1 | M = Male F = Female | Kategorik |
Age | X2 | Numerik | |
Smoking | X3 | 1 = No 2 = Yes | Kategorik |
Yellow Finger | X4 | 1 = No 2 = Yes | Kategorik |
Anxiety | X5 | 1 = No 2 = Yes | Kategorik |
Peer Pressure | X6 | 1 = No 2 = Yes | Kategorik |
Chronic Disease | X7 | 1 = No 2 = Yes | Kategorik |
Fatigue | X8 | 1 = No 2 = Yes | Kategorik |
Allergy | X9 | 1 = No 2 = Yes | Kategorik |
Wheezing | X10 | 1 = No 2 = Yes | Kategorik |
Alcohol | X11 | 1 = No 2 = Yes | Kategorik |
Coughing | X12 | 1 = No 2 = Yes | Kategorik |
Shortness of Breath | X13 | 1 = No 2 = Yes | Kategorik |
Swallowing Difficulty | X14 | 1 = No 2 = Yes | Kategorik |
Chest Pain | X15 | 1 = No 2 = Yes | Kategorik |
Lung Cancer | Y | 1 = No 2 = Yes | Kategorik |
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=",")
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
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
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
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 »