R

Tutorial SVM (Support Vector Machine) dengan R #2

Apa kabar sobat Exsight? Masih dalam segmen artikel tutorial. Nah untuk tutorial ini, kita akan membahas terkait bagaimana cara kerja algoritma SVM (Support Vector Machine) menggunakan software R. Kalau sobat Exsight masih bingung terkait apa itu SVM, bisa dilihat pada artikel sebelumnya dengan judul Algoritma SVM (Support Vector Machine) #1. Yuk yuk simak tutorial SVM dengan seksama yaa!

Studi Kasus

Studi kasus yang akan kita gunakan dalam hal ini menggunakan data sampel terkait Lung Cancer (Kanker Paru-Paru) 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.

SVM

Data terdiri atas 16 variabel yaitu:

VariabelKeterangan VariabelSkala Data
GenderM = Male
F = Female
Kategorik
AgeNumerik
Smoking1 = No
2 = Yes
Kategorik
Yellow Finger1 = No
2 = Yes
Kategorik
Anxiety1 = No
2 = Yes
Kategorik
Peer Pressure1 = No
2 = Yes
Kategorik
Chronic Disease1 = No
2 = Yes
Kategorik
Fatigue1 = No
2 = Yes
Kategorik
Allergy1 = No
2 = Yes
Kategorik
Wheezing1 = No
2 = Yes
Kategorik
Alcohol1 = No
2 = Yes
Kategorik
Coughing1 = No
2 = Yes
Kategorik
Shortness of Breath1 = No
2 = Yes
Kategorik
Swallowing Difficulty1 = No
2 = Yes
Kategorik
Chest Pain1 = No
2 = Yes
Kategorik
Lung Cancer1 = No
2 = Yes
Kategorik
Tabel 1. Data

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

Tahapan R Studio SVM

Load Library

Sebelum melakukan running syntax di software R terlebih dahulu melakukan load library R. Adapun library yang diperlukan untuk analisis jalur yaitu e1071 dan caret. Adapun syntax R yang digunakan adalah sebagai berikut.

library(e1071)
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=",")

Pre-Processing

Data yang telah kita load selanjutnya kita split menjadi data training testing 80/20. Artinya dari data yang ada, 80% dari data kita jadikan sebagai data training dan 20% data kita jadikan data testing.

##Membuat data training dan data testing (training 80, testing 20)
n_train <- round(nrow(data) * 0.8)
idx_train <- sample(seq_len(n_train))

data_train <- data[idx_train, ]
data_test <- data[-idx_train, ]

#Menyimpan data hasil training dan testing dalam format csv
write.csv(data_train,"training.csv")
write.csv(data_test,"testing.csv")

#Membuka file hasil training dan testing
data_train=read.csv(file.choose(),header=TRUE,sep=",")
data_test=read.csv(file.choose(),header=TRUE,sep=",")

Selanjutnya mengacu pada Tabel 1. variabel dengan skala data “kategorik” baik pada data training dan data testing, kita pastikan tipe data menjadi “factor” di R.

#Mengubah tipe data
##Data Train
data_train$GENDER=as.factor(data_train$GENDER)
data_train$SMOKING=as.factor(data_train$SMOKING)
data_train$YELLOW_FINGERS=as.factor(data_train$YELLOW_FINGERS)
data_train$ANXIETY=as.factor(data_train$ANXIETY)
data_train$PEER_PRESSURE=as.factor(data_train$PEER_PRESSURE)
data_train$CHRONIC.DISEASE=as.factor(data_train$CHRONIC.DISEASE)
data_train$FATIGUE=as.factor(data_train$FATIGUE)
data_train$ALLERGY=as.factor(data_train$FATIGUE)
data_train$WHEEZING=as.factor(data_train$WHEEZING)
data_train$ALCOHOL.CONSUMING=as.factor(data_train$ALCOHOL.CONSUMING)
data_train$COUGHING=as.factor(data_train$COUGHING)
data_train$SHORTNESS.OF.BREATH=as.factor(data_train$SHORTNESS.OF.BREATH)
data_train$SWALLOWING.DIFFICULTY=as.factor(data_train$SWALLOWING.DIFFICULTY)
data_train$CHEST.PAIN=as.factor(data_train$CHEST.PAIN)
data_train$LUNG_CANCER=as.factor(data_train$LUNG_CANCER)

##Data Test
data_test$GENDER=as.factor(data_test$GENDER)
data_test$SMOKING=as.factor(data_test$SMOKING)
data_test$YELLOW_FINGERS=as.factor(data_test$YELLOW_FINGERS)
data_test$ANXIETY=as.factor(data_test$ANXIETY)
data_test$PEER_PRESSURE=as.factor(data_test$PEER_PRESSURE)
data_test$CHRONIC.DISEASE=as.factor(data_test$CHRONIC.DISEASE)
data_test$FATIGUE=as.factor(data_test$FATIGUE)
data_test$ALLERGY=as.factor(data_test$FATIGUE)
data_test$WHEEZING=as.factor(data_test$WHEEZING)
data_test$ALCOHOL.CONSUMING=as.factor(data_test$ALCOHOL.CONSUMING)
data_test$COUGHING=as.factor(data_test$COUGHING)
data_test$SHORTNESS.OF.BREATH=as.factor(data_test$SHORTNESS.OF.BREATH)
data_test$SWALLOWING.DIFFICULTY=as.factor(data_test$SWALLOWING.DIFFICULTY)
data_test$CHEST.PAIN=as.factor(data_test$CHEST.PAIN)
data_test$LUNG_CANCER=as.factor(data_test$LUNG_CANCER)
SVM
Gambar 1. Struktur Data Training dan Data Testing

Berikutnya, kita perhatikan kembali data training dan testing, kita hilangkan kolom yang tidak perlu, dalam hal ini kolom pertama (x) yang hanya menunjukkan urutan observasi.

#Removing Kolom "Nomor urut di awal data train & test"
data_train=data_train[,-1]
data_test=data_test[,-1]
SVM
Gambar 2. Data Training, Before dan After Removing Kolom Urutan Observasi

Pemodelan

Setelah melakukan Pre-Processing, tahapan berikutnya melakukan pemodelan SVM. Pada tutorial kali ini, jenis SVM yang digunakan terdiri atas 3 kernel diantaranya: SVM Linier, SVM Radial, dan SVM Polynomial. Pemodelan SVM mula-mula dilakukan pada data training dengan syntax sebagai berikut.

#Linier
svm.Lin = svm(LUNG_CANCER~ ., 
              data = data_train, kernel = "linear",cost=1)
print(svm.Lin)

#Radial
svm.Rad = svm(LUNG_CANCER~ ., 
              data = data_train, kernel = "radial",cost=1, gamma=2)
print(svm.Rad)

#Polynomial
svm.Poly = svm(LUNG_CANCER~ ., 
              data = data_train, kernel = "polynomial",cost=2, gamma=10)
print(svm.Poly)
svm
Gambar 3.  Hasil Pemodelan SVM Linier pada data Training
svm
Gambar 4.  Hasil Pemodelan SVM Radial pada data Training
svm
Gambar 5.  Hasil Pemodelan SVM Polynomial pada data Training

Tahapan selanjutnya, melakukan prediksi data Testing masing-masing pada SVM Linier, SVM Radial, dan SVM Polynomial dengan syntax R sebagai berikut.

# Memprediksi Variabel Verdict pada Data testing
##Linier
ypred_svmlinier= predict(svm.Lin, newdata = data_test)

##Radial
ypred_svmradial= predict(svm.Rad, newdata = data_test)

##Polynomial
ypred_svmpolynomial= predict(svm.Poly, newdata = data_test)

Setelah melakukan running syntax R untuk prediksi hasil SVM pada data testing, berikutnya menentukan confusion matrix dengan syntax sebagai berikut.

#Confussion Matrix
##Linier
cm.testing_svmlinier = table(data_test$LUNG_CANCER, ypred_svmlinier)
confusionMatrix(cm.testing_svmlinier)

##Radial
cm.testing_svmradial = table(data_test$LUNG_CANCER, ypred_svmradial)
confusionMatrix(cm.testing_svmradial)

##Polynomial
cm.testing_svmpolynomial = table(data_test$LUNG_CANCER, ypred_svmpolynomial)
confusionMatrix(cm.testing_svmpolynomial)

Sehingga, didapatkan hasil confusion matrix

svm
Gambar 6. Confusion Matrix SVM Linier
svm
Gambar 7. Confusion Matrix SVM Radial
svm
Gambar 8. Confusion Matrix SVM Polynomial

Apabila kita perhatikan berdasarkan confusion matrix pada Gambar 6, Gambar 7, dan Gambar 8 dapat kita ringkas sebagai berikut.

Jenis SVMAccuracySensitivitySpecificity
SVM Linier0,967710,9630
SVM Radial0,854810,8525
SVM Polynomial0,88710,714290,9091
Tabel 2. Ringkasan Hasil Confusion Matrix

Berdasarkan Tabel 2. diketahui bahwa jenis SVM dengan accuracy, sensitivity dan specificity tertinggi yaitu SVM Linier.

Dalam hal ini:
Accuracy menunjukkan sejauh mana model SVM mampu mengklasifikasikan data dengan benar secara keseluruhan. Accuracy menghitung jumlah prediksi yang benar (true positives dan true negatives) dibagi oleh jumlah total data.

*Sensitivity menunjukkan sejauh mana model SVM mampu mengidentifikasi jumlah prediksi yang benar positif (true positive) dalam dataset.

*Specificity menunjukkan sejauh mana model SVM mampu mengidentifikasi jumlah prediksi yang benar negatif (true negative) dalam dataset.

Referensi

Hastie, T., Tibshirani, R., & Friedman, J. (2009). “The Elements of Statistical Learning: Data Mining, Inference, and Prediction.” Springer.

Novianti, F.A dan Purnami, S.W. (2012). “Analisis Diagnosis Pasien Kanker Payudara Menggunakan Regresi Logistik dan Support Vector Machine (SVM) Berdasarkan Hasil Mamografi”. Jurnal Sains dan Seni ITS, Vol. 1,No. 1.

Sekian penjelasan terkait Tutorial SVM (Support Vector Machine) dengan R. Jika 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.

Tutorial Algoritma Naive Bayes dengan R #2

Hai sobat Exsight, kembali lagi pada segmen artikel tutorial. Nah untuk tutorial ini, kita akan membahas terkait bagaimana cara kerja algoritma Naive Bayes menggunakan software R. Kalau sobat Exsight masih bingung terkait apa itu Naive Bayes, bisa dilihat pada artikel sebelumnya dengan judul Algoritma Naive Bayes dalam Machine Learning #1.

Studi Kasus

Studi kasus yang akan kita gunakan dalam hal ini menggunakan data sampel terkait Lung Cancer (Kanker Paru-Paru) 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.

bayes

Data terdiri atas 16 variabel yaitu:

VariabelKeterangan VariabelSkala Data
GenderM = Male
F = Female
Kategorik
AgeNumerik
Smoking1 = No
2 = Yes
Kategorik
Yellow Finger1 = No
2 = Yes
Kategorik
Anxiety1 = No
2 = Yes
Kategorik
Peer Pressure1 = No
2 = Yes
Kategorik
Chronic Disease1 = No
2 = Yes
Kategorik
Fatigue1 = No
2 = Yes
Kategorik
Allergy1 = No
2 = Yes
Kategorik
Wheezing1 = No
2 = Yes
Kategorik
Alcohol1 = No
2 = Yes
Kategorik
Coughing1 = No
2 = Yes
Kategorik
Shortness of Breath1 = No
2 = Yes
Kategorik
Swallowing Difficulty1 = No
2 = Yes
Kategorik
Chest Pain1 = No
2 = Yes
Kategorik
Lung Cancer1 = No
2 = Yes
Kategorik
Tabel 1. Data

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

Tahapan R Studio Naive Bayes

Load Library

Tahapan paling awal sebelum running syntax di software R yaitu melakukan load library R. Adapun library yang diperlukan untuk analisis jalur yaitu e1071 dan caret. Adapun syntax R yang digunakan adalah sebagai berikut.

library(e1071)
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=",")

Pre-Processing

Data yang telah kita load selanjutnya kita split menjadi data training testing 80/20. Artinya dari data yang ada, 80% dari data kita jadikan sebagai data training dan 20% data kita jadikan data testing.

##Membuat data training dan data testing (training 80, testing 20)
n_train <- round(nrow(data) * 0.8)
idx_train <- sample(seq_len(n_train))

data_train <- data[idx_train, ]
data_test <- data[-idx_train, ]

#Menyimpan data hasil training dan testing dalam format csv
write.csv(data_train,"training.csv")
write.csv(data_test,"testing.csv")

#Membuka file hasil training dan testing
data_train=read.csv(file.choose(),header=TRUE,sep=",")
data_test=read.csv(file.choose(),header=TRUE,sep=",")

Selanjutnya mengacu pada Tabel 1. variabel dengan skala data “kategorik” baik pada data training dan data testing, kita pastikan tipe data menjadi “factor” di R.

#Mengubah tipe data
##Data Train
data_train$GENDER=as.factor(data_train$GENDER)
data_train$SMOKING=as.factor(data_train$SMOKING)
data_train$YELLOW_FINGERS=as.factor(data_train$YELLOW_FINGERS)
data_train$ANXIETY=as.factor(data_train$ANXIETY)
data_train$PEER_PRESSURE=as.factor(data_train$PEER_PRESSURE)
data_train$CHRONIC.DISEASE=as.factor(data_train$CHRONIC.DISEASE)
data_train$FATIGUE=as.factor(data_train$FATIGUE)
data_train$ALLERGY=as.factor(data_train$FATIGUE)
data_train$WHEEZING=as.factor(data_train$WHEEZING)
data_train$ALCOHOL.CONSUMING=as.factor(data_train$ALCOHOL.CONSUMING)
data_train$COUGHING=as.factor(data_train$COUGHING)
data_train$SHORTNESS.OF.BREATH=as.factor(data_train$SHORTNESS.OF.BREATH)
data_train$SWALLOWING.DIFFICULTY=as.factor(data_train$SWALLOWING.DIFFICULTY)
data_train$CHEST.PAIN=as.factor(data_train$CHEST.PAIN)
data_train$LUNG_CANCER=as.factor(data_train$LUNG_CANCER)

##Data Test
data_test$GENDER=as.factor(data_test$GENDER)
data_test$SMOKING=as.factor(data_test$SMOKING)
data_test$YELLOW_FINGERS=as.factor(data_test$YELLOW_FINGERS)
data_test$ANXIETY=as.factor(data_test$ANXIETY)
data_test$PEER_PRESSURE=as.factor(data_test$PEER_PRESSURE)
data_test$CHRONIC.DISEASE=as.factor(data_test$CHRONIC.DISEASE)
data_test$FATIGUE=as.factor(data_test$FATIGUE)
data_test$ALLERGY=as.factor(data_test$FATIGUE)
data_test$WHEEZING=as.factor(data_test$WHEEZING)
data_test$ALCOHOL.CONSUMING=as.factor(data_test$ALCOHOL.CONSUMING)
data_test$COUGHING=as.factor(data_test$COUGHING)
data_test$SHORTNESS.OF.BREATH=as.factor(data_test$SHORTNESS.OF.BREATH)
data_test$SWALLOWING.DIFFICULTY=as.factor(data_test$SWALLOWING.DIFFICULTY)
data_test$CHEST.PAIN=as.factor(data_test$CHEST.PAIN)
data_test$LUNG_CANCER=as.factor(data_test$LUNG_CANCER)
bayes
Gambar 1. Struktur Data Training dan Data Testing

Berikutnya, kita perhatikan kembali data training dan testing, kita hilangkan kolom yang tidak perlu, dalam hal ini kolom pertama (x) yang hanya menunjukkan urutan observasi.

#Removing Kolom "Nomor urut di awal data train & test"
data_train=data_train[,-1]
data_test=data_test[,-1]
bayes
Gambar 2. Data Training, Before dan After Removing Kolom Urutan Observasi

Pemodelan

Setelah melakukan Pre-Processing, tahapan berikutnya melakukan pemodelan Naive Bayes untuk data training dengan syntax sebagai berikut.

model<-naiveBayes(LUNG_CANCER~.,data=data_train)
model
bayes
Gambar 3. Hasil Pemodelan Naive Bayes pada data Training

Gambar 3. menunjukkan hasil pemodelan Naive Bayes pada data Training yaitu berupa Priori Probabilities dan Conditional Probabilities pada setiap variabel.

Selanjutnya, melakukan prediksi pada data Testing, dalam hal ini kita menentukan nilai probabilitas untuk pengkategorian “NO” dan “YES” pada data Lung Cancer, selengkapnya dapat dilihat pada Gambar 4.

# Generating the probabilities in prediction
ypred<-predict(model, newdata = data_test, type="raw")
ypred
bayes
Gambar 4. Nilai Probabilitas Prediksi pada Data Testing

Berdasarkan Gambar 4, apabila probabilitas di kategori “YES” lebih tinggi dibandingkan kategori “NO”, artinya hasil prediksi pada data Testing masuk ke kategori “YES”. Selengkapnya untuk melihatkan hasil prediksi Naive Bayes pengkategorian kelas pada data Testing dapat dilihat pada Gambar 5. sebagai berikut.

# Generating the class in prediction
pred<-predict(model,newdata=data_test)
plot(pred)
bayes
Gambar 5. Hasil Prediksi Naive Bayes Pengkategorian Kelas pada Data Testing

Langkah terkahir yaitu menentukan Confusion Matrix, dengan syntax sebagai berikut.

# Confusion Matrix
caret::confusionMatrix(pred,reference=data_test$LUNG_CANCER)
bayes
Gambar 6. Confusion Matrix

Berdasarkan Gambar 6. diketahui bahwa dengan menggunakan algoritma Naive Bayes , hasil klasifikasi terkait data Lung Cancer memiliki accuracy yang sangat baik yaitu sebesar 0,9516 , lalu sensitivity sebesar 0,8000 , dan specificity sebesar 0,9808.

Dalam hal ini:
* Accuracy menunjukkan sejauh mana model Naive Bayes mampu mengklasifikasikan data dengan benar secara keseluruhan. Accuracy menghitung jumlah prediksi yang benar (true positives dan true negatives) dibagi oleh jumlah total data.

*Sensitivity menunjukkan sejauh mana model Naive Bayes mampu mengidentifikasi jumlah prediksi yang benar positif (true positive) dalam dataset..

*Specificity menunjukkan sejauh mana model Naive Bayes mampu mengidentifikasi jumlah prediksi yang benar negatif (true negative) dalam dataset.

Referensi

Taheri, S., & Mammadov, M. (2013). Learning The Naïve Bayes Classifier with Optimization Models, International Journal of Applied Mathematics and Computer Science, 23(4).

Pamungkas, K., Aridinanti, L., & Wibowo, W. (2022). Analisis Sentimen Pelaporan Masyarakat di Situs Media Centre Surabaya dengan Naive Bayes Classifier. Jurnal Teknik ITS, Vol.11, No. 2.

Sampai disini dulu penjelasan terkait Tutorial Algoritma Naive Bayes dengan Software R. Jika 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.

Tutorial Analisis Jalur (Path Analysis) Part 2

Halo halo sobat Exsight, kembali lagi pada segmen artikel tutorial. Nah untuk tutorial ini, kita akan membahas terkait bagaimana cara melakukan analisis jalur (Path Analysis) menggunakan software R. Kalau sobat Exsight masih bingung terkait apa itu Path Analysis, bisa dilihat pada artikel sebelumnya dengan judul Analisis Jalur (Path Analysis) Part 1.

Yuk yuk simak tutorial kali ini dengan seksama yaa!

Studi Kasus Analisis Jalur

Studi kasus yang akan kita gunakan dalam hal ini menggunakan data sampel terkait Data Kinerja Guru yang didapatkan dari situs www.spssindonesia.com.
* Tidak terdapat missing value pada data.
* Data terdiri atas 115 observasi,

analisis jalur

Data terdiri atas 4 variabel yaitu:
* X1 = Variabel Pengaruh Gaya Kepemimpinan
* X2 = Variabel Lingkungan Kerja
* Z = Variabel Motivasi
* Y = Variabel Kinerja Guru

Dalam hal ini, X merupakan variabel independen (eksogen), Y merupakan variabel terikat (endogen), dan Z merupakan variabel antarmediasi (intervening)

analisis jalur
Gambar 1. Data untuk Analisis Jalur

Sebelum melakukan analisis jalur, perlu kita ketahui hubungan secara teoritis antara variabel Pengaruh Gaya Kepemimpinan, variabel Lingkungan Kerja, variabel Motivasi, variabel kinerja guru, dimana dapat digambarkan melalui kerangka teori sebagai berikut.

analisis jalur
Gambar 2. Kerangka Teori Studi Kasus

Setelah mengetahui kerangka teori, kita dapat menentukan koefisien jalur dengan menggunakan bantuan software R.

Tahapan R Studio

Load Library

Tahapan paling awal sebelum running syntax di software R yaitu melakukan load library R. Adapun library yang diperlukan untuk analisis jalur yaitu lm.beta. Syntax R yang digunakan yaitu:

library(lm.beta)

Load Data

Kemudian melakukan input data ke R . Data yang diinput diberi nama sebagai datapath. Perlu diperhatikan untuk jenis file data yang diinput ke R diusahakan dalam format CSV, hal ini dengan tujuan untuk mempermudah pengguna. Syntax yang digunakan adalah sebagai berikut.

datapath<-read.csv(file.choose(),header=TRUE,sep=",")

Pemodelan

Analisis jalur merupakan pengembangan dari analisis regresi, di mana biasanya pada analisis regresi hanya terdiri dari dua jenis variabel, yaitu variabel independen dan variabel dependen. Sedangkan pada analisis jalur terdapat variabel antarmediasi (intervening), yaitu variabel dependen yang memiliki kondisi dapat pula menjadi variabel independen. Hal ini menyebabkan terbentuk suatu jalur di mana terdapat hubungan langsung dan hubungan tidak langsung antar variabel.

Berdasarkan data studi kasus yang kita gunakan, maka untuk analisis jalur kali ini terdapat dua jenis pemodelan yaitu sebagai berikut.

model_1=lm(formula =Z~X1+X2, data=datapath)
summary(model_1)

model_2=lm(formula =Y~X1+X2+Z, data=datapath)
summary(model_2)
  • Model 1 merupakan pemodelan di mana variabel X1 dan X2 sebagai variabel independen dan variabel Z sebagai variabel dependen.
  • Model 2 merupakan pemodelan di mana variabel X1, X2, dan Z sebagai variabel independen dan variabel Y sebagai variabel dependen.
analisis alur
Gambar 3. Output R Model Regresi 1
analisis jalur
Gambar 4. Output R Model Regresi 2

Berdasarkan hasil Output R pada Gambar 3. dan Gambar 4. kita perhatikan nilai Pr(>|t|) atau P-Value nya, hal ini dengan tujuan untuk melihat signifikansi dari masing-masing variabel terhadap model.

Koefisien Jalur

Tahapan selanjutnya kita menentukan nilai koefisien jalur (Path Coefficient). Syntax R yang digunakan yaitu:

lm.beta(model_1)
lm.beta(model_2)

Sehingga didapatkan hasil output R untuk koefisien jalur yaitu sebagai berikut.

analisis jalur
Gambar 5. Output R Koefisien Jalur

Interpretasi Hasil Output

Berdasarkan hasil output R pada Gambar 3, Gambar 4, dan Gambar 5,, kita bisa membuat tabel ringkasan sebagai berikut.

analisis jalur
Gambar 6. Hasil Ringkasan Output Analisis Jalur

Apabila kita perhatikan pada Gambar 6. variabel-variabel yang memiliki hubungan signifikan ditandai dengan P-Value yang bernilai lebih kecil dari alfa = 0,05. Dalam hal ini terdapat variabel Gaya Kepemimpinan (X1) yang tidak memiliki hubungan signifikan terhadap variabel Kinerja Guru. Namun di sisi lain variabel Gaya Kepemimpinan (X1) memiliki hubungan signifikan terhadap variabel Motivasi (Z).

Sedangkan sisanya, variabel-variabel lainnya memiliki hubungan yang signifikan.

Berdasarkan Gambar 6, berikutnya kita bisa gambarkan diagram analisis jalur beserta nilai-nilai koefisien jalur.

analisis jalur
Gambar 7. Diagram Analisis Jalur

Berdasarkan Gambar 7. maka dapat dituliskan besar pengaruh langsung, pengaruh tidak langsung, dan pengaruh total pada tiap variabel.

a.    Pengaruh Langsung (Direct Effect)

  • Pengaruh variabel Gaya Kepemimpinan (X1) terhadap Kinerja Guru (Y)
    X1 → Y = 0,1086562
  • Pengaruh variabel Lingkungan Kerja (X2) terhadap Kinerja Guru (Y)
    X2 → Y = 0,1562405

b. Pengaruh Tidak Langsung (Indirect Effect)

  • Pengaruh variabel Gaya Kepemimpinan (X1) terhadap Kinerja Guru (Y) melalui variabel Motivasi (Z)
    X1 → Z → Y = (0,3617900) (0,6288500) = 0,2275116
  • Pengaruh variabel Lingkungan Kerja (X2) terhadap Kinerja Guru (Y) melalui variabel Motivasi (Z)
    X2 → Z → Y = (0,3925087) (0,6288500) = 0,2468291

c.    Pengaruh Total (Total Effect)

  • Pengaruh variabel Gaya Kepemimpinan (X1) terhadap Kinerja Guru (Y)
    0,1086562 + 0,2275116 = 0,3361678
  • Pengaruh variabel Lingkungan Kerja (X2) terhadap Kinerja Guru (Y)
    0,1562405 + 0,2468291 = 0,4030696

Selanjutnya dapat kita tuliskan untuk persamaan akhir pada analisis jalur yaitu berdasarkan pengaruh total (Total Effect)

Y=0,3361678X_{1}+0,4030696X_{2}

Berdasarkan persamaan akhir pada analisis jalur dapat diinterpretasikan bahwa setiap kenaikan variabel Gaya Kepemimpinan (X1) sebesar 1 nilai ketika variabel Lingkungan Kerja (X2) konstan, maka akan meningkatkan Kinerja Guru (Y) sebesar 0,3361678.

Begitu pula, jika terdapat kenaikan variabel Lingkungan Kerja (X2) sebesar 1 nilai ketika variabel Gaya Kepemimpinan (X2) konstan, maka akan meningkatkan Kinerja Guru (Y) sebesar 0,4030696.

Sebagai catatan, pada penjelasan terkait Gambar 6. kita ketahui bahwa variabel Gaya Kepemimpinan (X1) tidak memiliki hubungan langsung terhadap Kinerja Guru (Y), maka dari itu persamaan akhir yang terbentuk menunjukkan bahwa hubungan antara variabel Gaya Kepemimpinan terhadap Kinerja Guru (Y) berdasarkan hubungan tidak langsung melalui variabel Motivasi (Z)

Referensi

Hair, J. F., Black, W. C., Babin, B. J., Anderson, R. E., & Tatham, R. L. (2010). Multivariate Data Analysis (7th ed.). Prentice Hall.

Hoyyi, A. (2013). Path Analysis Modeling Effect of Principal Leadership and Incentives for Teacher Performance. Prosiding Seminar Nasional Statistika Universitas Diponegoro.

Handayani, D., Pamungkasari, E., & Sulaeman, E. (2015). Application of Path Analysis on Incidence of Anemia in Female Adolescents. Jurnal Gizi Pangan Institut Pertanian Bogor

www.spssindonesia.com

Sampai disini dulu penjelasan terkait Tutorial Analisis Jalur (Path Analysis) dengan Software R. Jika 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.

Klik Daftar Isi Disini