Analisis diskriminan adalah salah satu metode statistika yang masuk ke dalam analisis multivariat yang bertujuan untuk mengelompokkan suatu pengamatan ke dalam suatu kelompok berdasarkan sekumpulan variabel yang mempengaruhinya (Johnson & Wichern, 2007). Pengelompokan dilakukan dengan membantuk sebuah fungsi diskriminan. Fungsi diskrimininan merupakan fungsi yang terdiri atas kombinasi liniear berbagai variabel prediktor. Pada nantinya akan terbentuk fungsi diskrimininan sebanyak jumlah kelas atau kategori dikurangi satu yang dapat memisahkan data. Bentuk umum dari fungsi diskriminan:
\[
\hat{D} = b_0 + b_1 X_1 + b_2 X_2 + \dots + b_k X_k
\] Keterangan:
- \(\hat{D}\) = Skor diskriminan
- \(k\) = Banyaknya variabel prediktor
-
\(b_0\) = Intersep atau koefisien
persamaan fungsi diskriminan
- \(b_k\) = Bobot diskriminan untuk peubah
prediktor ke-\(i\), di mana \(i = 1, 2, \dots, p\)
- \(X_k\) = Variabel prediktor ke-\(i\), di mana \(i
= 1, 2, \dots, p\) dan \(k = 1, 2,
\dots, n\)
Regresi Logistik adalah suatu metode analisis statistika untuk mendeskripsikan hubungan antara variabel terikat yang memiliki dua kategori atau lebih dengan satu atau lebih peubah bebas berskala kategori atau kontinu. Metode ini sangat berguna dalam analisis prediktif dan pemodelan di berbagai bidang seperti ilmu sosial, kedokteran, ekonomi, dan ilmu data.
Dalam regresi logistik, variabel dependen (juga dikenal sebagai variabel respons atau variabel target) adalah variabel biner yang mewakili dua kemungkinan hasil atau kategori. Misalnya, variabel dependen dapat mewakili “sukses” atau “gagal”, “hidup” atau “mati”, atau “ya” atau “tidak”. Tujuan dari regresi logistik adalah untuk memahami dan memodelkan probabilitas atau peluang kejadian satu kategori dibandingkan dengan kategori yang lain, berdasarkan variabel independen yang ada.
Multivariate normality (Mardia MVN) adalah uji untuk memeriksa apakah data mengikuti distribusi normal multivariat, yaitu data dari beberapa variabel yang secara bersama-sama memiliki sebaran normal. Uji ini penting dalam analisis diskriminan karena banyak metode statistik multivariat mengasumsikan normalitas data agar hasil estimasi valid dan tidak bias. Salah satu metode populer untuk menguji hal ini adalah Mardia’s Test, yang mengevaluasi skewness dan kurtosis multivariat.
Uji homogenitas matriks ragam-peragam (Uji Bartlett) bertujuan untuk menguji apakah semua kelompok dalam analisis memiliki matriks kovarians yang sama. Asumsi ini penting dalam analisis diskriminan karena jika kovarians antar kelompok tidak homogen, maka fungsi diskriminan bisa menjadi tidak akurat. Uji Bartlett memberikan dasar untuk memutuskan apakah pendekatan linear diskriminan (LDA) tepat atau sebaiknya menggunakan pendekatan non-linear seperti QDA (Quadratic Discriminant Analysis).
Uji vektor nilai rata-rata kedua kelompok (Wilks’ Lambda) digunakan untuk menguji apakah terdapat perbedaan signifikan antara rata-rata multivariat dua atau lebih kelompok. Wilks’ Lambda mengukur proporsi varians total dalam data yang tidak dapat dijelaskan oleh perbedaan antar kelompok. Semakin kecil nilai Wilks’ Lambda, semakin besar perbedaan antara kelompok, dan semakin kuat bukti bahwa kelompok tersebut memiliki karakteristik yang berbeda secara statistik.
Pemeriksaan multikolinieritas dilakukan untuk melihat adanya korelasi atau hubungan antara dua variabel bebas. Pengujian Multikolinieritas bisa menggunakan nilai variance inflation factor (VIF). Asumsi multikolinieritas terpenuhi apabila nilai VIF < 10.
Pengujian regresi logistik secara serentak dilakukan untuk mengetahui apakah model telah signifikan.
Uji parsial parameter model digunakan untuk mengetahui pengaruh masing-masing variabel independen terhadap variabel dependen.
Pada analisis dikriminan diperlukan beberapa library yang dibutuhkan sehingga harus install packages dan mengaktifkan library seperti yang telah tertera.
# 2. Load libraries
library(MVN)
library(biotools)
library(candisc)
library(MASS)
library(caret)
library(dplyr)
library(FactoMineR)
library(factoextra)
library(psych)
library(candisc)
Data yang digunakan berasal dari Kaggle berjudul “Bankruptcy Italian Companies 2023” merupakan kumpulan data yang berasal dari Italian Companies pada tahun 2023 dengan jumlah 6.819 data. Dataset ini memiliki 96 kolom (atribut) secara keseluruhan, termasuk satu kolom target bernama Bankrupt? yang memiliki nilai biner (1 untuk bangkrut, 0 untuk tidak bangkrut). Atribut lainnya terdiri dari 95 fitur numerik yang merupakan indikator dan rasio keuangan yang digunakan dalam analisis kinerja perusahaan.
# 3. Baca data
library(readxl)
bankruptcy_italian_companies_2023 <- read_excel("bankruptcy_italian_companies_2023.xlsx")
head(bankruptcy_italian_companies_2023)
# 4. Hapus kolom non-numerik ('Company')
data_numeric <- bankruptcy_italian_companies_2023[, -1]
# 5. Ubah karakter ke numerik
data_numeric <- as.data.frame(lapply(data_numeric, function(x) as.numeric(as.character(x))))
# 6. Hapus kolom dengan NA & SD = 0
data_clean <- data_numeric[, colSums(is.na(data_numeric)) == 0]
data_clean <- data_clean[, sapply(data_clean, sd) != 0]
# 7. Simpan target 'Bankrupt'
data_target <- data_clean$Bankrupt
# 8. Buang kolom target dari PCA input
data_pca_input <- data_clean[, !colnames(data_clean) %in% "Bankrupt"]
kolom non-numerik yaitu ‘Company’ dihapus dari dataset bankruptcy_italian_companies_2023 untuk mendapatkan data_numeric yang hanya berisi data numerik.
Selanjutnya, seluruh data diubah menjadi bertipe numerik dengan mengonversi setiap elemen ke bentuk as.numeric. Setelah itu, kolom-kolom yang memiliki nilai NA (kosong) dan kolom dengan standar deviasi nol (yaitu kolom yang tidak memiliki variasi) dihapus sehingga hanya kolom yang layak analisis yang tersisa dalam data_clean.
Kemudian, kolom target yaitu Bankrupt disimpan secara terpisah ke dalam objek data_target agar bisa digunakan nanti sebagai label. Terakhir, kolom Bankrupt dihapus dari dataset data_clean untuk membentuk data_pca_input, yaitu data yang akan digunakan sebagai input dalam analisis PCA tanpa menyertakan target kelas.
# Tambahkan konstanta kecil untuk menghindari log(0)
epsilon <- 1e-6
# Transformasi log
data_log_transformed <- log(data_pca_input + epsilon)
# Tangani kemungkinan nilai tak hingga (jika ada nilai negatif kecil)
data_log_transformed[!is.finite(as.matrix(data_log_transformed))] <- NA
# Hapus kolom/observasi dengan NA hasil transformasi
data_log_transformed <- data_log_transformed[, colSums(is.na(data_log_transformed)) == 0]
data_log_transformed <- na.omit(data_log_transformed)
#Standarisasi
data_scaled <- scale(data_log_transformed)
Dilakukan transformasi logaritmik pada data PCA input untuk menstabilkan varians dan mendekatkan distribusi data ke normalitas. Setelah transformasi log, kode ini juga menangani nilai tak hingga (infinite) atau tidak valid yang mungkin muncul (log angka sangat kecil atau negatif), dengan menggantinya menjadi NA. Nilai NA tersebut kemudian dibersihkan dengan menghapus kolom yang mengandung nilai NA, serta membuang baris dengan fungsi na.omit. Data yang telah melalui transformasi log distandarisasi (standardized) menggunakan fungsi scale(), yaitu mengubah data agar memiliki rata-rata 0 dan standar deviasi 1.
Melakukan Principal Component Analysis (PCA) pada dataset untuk reduksi dimensi namun tidak menghilangkan tidak menghilangkan informasi penting.
library(FactoMineR)
pca_result <- PCA(data_scaled,
scale.unit = TRUE,
graph = FALSE,
ncp=10) #vs head(scores)
#Visualisasi
library(factoextra)
# membuat scree plot
fviz_eig(pca_result,
addlabels = TRUE,
ncp = 15,
barfill = "skyblue",
barcolor = "darkblue",
linecolor = "red")
Berdasarkan scree plot di atas, diambil 10 principal components (PC) karena secara kumulatif kesepuluh komponen utama tersebut telah mampu menjelaskan sebagian besar variansi dalam data. Jika dijumlahkan, 10 PC pertama mencakup sekitar 60.5% cumulative variance dari keseluruhan informasi yang ada di data asli.
library(FactoMineR)
pca_result <- PCA(data_scaled,
scale.unit = TRUE,
graph = FALSE,
ncp=10)
# menampilkan ringkasan hasil pca
eig_values <- pca_result$eig # vs print(cumvar)
pca_result$svd$V # vs pc$vectors
#pca_result$ind['coord'] # vs head(scores)
PC1 (13,3%) –> Profitabilitas
Variabel dengan
nilai loading terbesar:
● Variabel ke-43 = Net profit before
tax/Paid-in capital: loading ≈ 0.234
● Variabel ke-42 = Operating
profit/Paid-in capital: loading ≈ 0.217
● Variabel ke-22 =
Operating Profit Growth Rate: loading ≈ 0.218
● Variabel ke-23 =
After-tax Net Profit Growth Rate: loading ≈ 0.233
● Variabel ke-19
= Cash Flow Per Share: loading ≈ 0.239
PC2 (7,2%) –> Likuiditas & Efisiensi Aset
Variabel dengan loading tinggi:
● Variabel ke-91 = Net Income
to Total Assets: loading ≈ 0.317
● Variabel ke-90 =
Liability-Assets Flag: loading ≈ 0.219
● Variabel ke-79 = Net Worth
Turnover Rate (times): loading ≈ 0.220
● Variabel ke-66 = Quick
Assets/Current Liability: loading ≈ 0.319
PC3 (5%) –> Efisiensi Keuangan Bersih
Variabel dengan loading dominan:
● Variabel ke-13 = After-tax net
Interest Rate: loading ≈ -0.171
● Variabel ke-8 = After-tax net
Interest Rate: loading ≈ -0.177
● Variabel ke-36 = Cash Flow Per
Share: loading ≈ -0.211
PC4 (4.7%) –> Struktur Modal & Laba Operasi
Variabel dominan:
● Variabel ke-4 = Operating Gross Margin:
loading ≈ 0.176
● Variabel ke-94 = Equity to Liability: loading ≈
0.190
● Variabel ke-65 = Long-term fund suitability ratio (A):
loading ≈ -0.009
● Variabel ke-83 = Quick Asset Turnover Rate:
loading ≈ 0.267
PC5 (4.2%) –> Beban Bunga & Nilai Saham
Variabel dominan:
● Variabel ke-6 = Interest-bearing debt interest
rate: loading ≈ 0.459
● Variabel ke-7 = Tax rate (A): loading ≈
0.485
● Variabel ke-8 = Net Value Per Share (B): loading ≈ 0.479
● Variabel ke-10 = Net Value Per Share (C): loading ≈ 0.484
PC6 (3.2%) –> Efisiensi Modal & Pertumbuhan
Aset
Variabel dominan:
● Variabel ke-32 = Net Worth
Turnover Rate : loading ≈ 0.311
● Variabel ke-30 = Total Asset
Growth Rate : loading ≈ 0.258)
● Variabel ke-13 = Cash Flow per
Share : loading ≈ 0.263)
PC7 (3%) –> Profitabilitas Saham
Variabel
dominan:
● Variabel ke-20 = Revenue Per Share : loading ≈ 5.66e-03
● Variabel ke-29 = Per Share Net profit before tax : loading ≈
8.26e-03)
PC8 (2.9%) –> Kesehatan Keuangan
Variabel
dominan:
● Variabel ke-93 = Liability-Assets Flag : loading ≈ 0.308)
● Variabel ke-89 = Net Income to Equity : loading ≈ 0.307)
PC9 (2.8%) –> Leverage & Pertumbuhan Laba
Variabel dominan:
● Variabel ke-87 = DFL (Degree of Financial
Leverage) : loading ≈ 0.154)
● Variabel ke-24 = Growth of Gross
Profit : loading ≈ 0.0829)
PC10 (2.2%) –> Posisi Ekonomi Makro
Variabel
dominan:
● Total Assets to GNP Price (No. 82, Loading: 0.248)
● Net Income to Equity (No. 89, Loading: 0.154)
data_reduced <- as.data.frame(pca_result$ind$coord[, 1:10])
data_reduced$Bankrupt <- data_target
Membentuk dataset baru bernama data_reduced yang berisi hasil reduksi dimensi menggunakan 10 komponen utama dari analisis PCA.
# Mahalanobis distance pada hasil PCA
mahal <- mahalanobis(data_reduced[, 1:10],
colMeans(data_reduced[, 1:10]),
cov(data_reduced[, 1:10]))
# Tentukan cutoff (misalnya alpha = 0.0001 untuk outlier ekstrim)
cutoff <- qchisq(0.9999, df = 10)
# Identifikasi indeks outlier
outlier_index <- which(mahal > cutoff)
# Buang outlier
data_reduced_no_outlier <- data_reduced[-outlier_index, ]
data_target_no_outlier <- data_reduced_no_outlier$Bankrupt
data_reduced_no_outlier$Bankrupt <- NULL
# Tambahkan kembali target ke data PCA yang sudah dibersihkan dari outlier
data_reduced_no_outlier$Bankrupt <- as.factor(data_target_no_outlier)
str(data_reduced_no_outlier)
Mendeteksi dan menghapus outlier dari data hasil reduksi PCA menggunakan jarak Mahalanobis. Observasi yang memiliki jarak Mahalanobis melebihi cutoff dianggap sebagai outlier dan dihapus dari dataset.
mengevaluasi normalitas multivariat pada data hasil PCA yang telah dibersihkan dari outlier. Pertama, fungsi mvn() dari paket MVN digunakan dengan metode uji Mardia, untuk menguji apakah data pada 10 komponen utama mengikuti distribusi normal multivariat. Hasil uji ditampilkan melalui print(mardia_result).
library(MVN)
mardia_result <- mvn(data_reduced_no_outlier[, 1:10], mvnTest = "mardia", alpha = 0.05)
print(mardia_result)
Hasil uji normalitas multivariat menggunakan metode Mardia menunjukkan bahwa data tidak memenuhi asumsi normalitas multivariat, karena nilai skewness (922338.48) dan kurtosis (6642.47) sangat tinggi, dengan p-value = 0, yang berarti signifikan dan menolak hipotesis nol (bahwa data berdistribusi normal). Selain itu, uji normalitas univariat menggunakan metode Anderson-Darling untuk masing-masing 10 principal components (Dim.1–Dim.10) juga menunjukkan bahwa semuanya tidak normal (p-value < 0.001 dan hasil “NO” untuk semua dimensi). Dengan demikian, baik secara multivariat maupun univariat, data tidak berdistribusi normal
# Q-Q plot terhadap distribusi chi-square
qqplot(qchisq(ppoints(nrow(data_reduced_no_outlier)), df = 10),
md, main = "Q-Q Plot Mahalanobis vs Chi-Square",
xlab = "Theoretical Quantiles", ylab = "Mahalanobis Distance")
abline(0, 1, col = "red")
Q-Q plot Mahalanobis vs Chi-Square pada gambar menunjukkan bahwa sebagian besar titik menyimpang dari garis diagonal merah, terutama di bagian kanan atas. Ini menandakan bahwa distribusi jarak Mahalanobis tidak mengikuti distribusi chi-square seperti yang diharapkan untuk data yang berdistribusi normal multivariat.
sebelumnya telah dilakukan proses identifikasi dan penghapusan outlier menggunakan jarak Mahalanobis dengan cutoff ketat (alpha = 0.0001). Namun, meskipun outlier telah dibuang, pola penyimpangan masih terlihat jelas. Hal ini menunjukkan bahwa data tetap tidak normal secara multivariat, yang juga konsisten dengan hasil uji Mardia yang menghasilkan p-value nol dan hasil “NO” untuk asumsi normalitas.
Uji ini digunakan untuk menguji asumsi homogenitas ragam peragam, atau lebih spesifiknya, untuk menilai apakah korelasi antar variabel signifikan sehingga data layak untuk analisis lebih lanjut. Jika nilai p dari uji ini kecil (biasanya < 0.05), maka hipotesis nol (bahwa matriks korelasi adalah matriks identitas, artinya tidak ada korelasi antar variabel) ditolak. Artinya, data memiliki korelasi yang cukup untuk dilakukan analisis lebih lanjut.
#UJI ASUMSI HOMOGENITAS RAGAM PERAGAM
uji_bart <- function(x){
method <- "Bartlett's test of sphericity"
data.name <- deparse(substitute(x))
x <- subset(x, complete.cases(x))
n <- nrow(x)
p <- ncol(x)
chisq <- (1 - n + (2 * p + 5) / 6) * log(det(cor(x)))
df <- p * (p - 1) / 2
p.value <- pchisq(chisq, df, lower.tail = FALSE)
names(chisq) <- "Chi-squared"
names(df) <- "df"
return(structure(list(statistic = chisq, parameter = df, p.value = p.value,
method = method, data.name = data.name), class = "htest"))
}
uji_bart(data_reduced_no_outlier[, 1:10])
Hasil menunjukkan Nilai p yang sangat kecil ini jauh di bawah ambang signifikansi 0.05, yang berarti hipotesis nol ditolak atau dengan kata lain terdapat perbedaan korelasi ragam-peragam antar kategori bankruptcy.
manova_model <- manova(as.matrix(data_reduced_no_outlier[, 1:10]) ~ Bankrupt, data = data_reduced_no_outlier)
summary(manova_model, test = "Wilks")
Hipotesis : Ho : $𝜇_1 =𝜇_2 $(tidak terdapat perbedaan rata-rata indeks pembangunan manusia kategori tinggi dan rendah) H1 : μ1≠μ2 (terdapat perbedaan rata-rata indeks pembangunan manusia kategori tinggi dan rendah) Berdasarkan Uji Wilks lambda dapat diketahui p-value 2.2e-16 < 0,05, maka tolak Ho. Dapat disimpulkan bahwa terdapat perbedaan rata-rata (nilai variabel prediktor) antar kategori bankruptcy.
cc <- candisc(manova_model)
cc
Hasil Canonical Discriminant Analysis menunjukkan bahwa nilai Canonical R-squared sebesar 0.10902, yang berarti kombinasi linier dari variabel yang digunakan dalam penelitian dapat menjelaskan sebesar 10.90% variasi antara kelompok (perusahaan bangkrut vs tidak bangkrut). Sisanya, yaitu 89.09%, dijelaskan oleh variabel lain di luar model ini. Uji signifikansi menunjukkan bahwa hubungan kanonik ini signifikan (p < 2.2e-16), sehingga dapat disimpulkan bahwa model secara statistik mampu membedakan antar kelompok berdasarkan variabel prediktor yang digunakan.
membagi data yang telah direduksi (hasil PCA tanpa outlier) menjadi dua bagian: 70% data latih (training data) dan 30% data uji (testing data). Dengan menggunakan set.seed(555), pembagian dilakukan secara acak namun dapat direproduksi.
set.seed(555)
ind <- sample(2, nrow(data_reduced_no_outlier), replace = TRUE, prob = c(0.7, 0.3))
ind
train_data <- data_reduced_no_outlier[ind == 1, ]
summary(train_data)
test_data <- data_reduced_no_outlier[ind == 2, ]
View(test_data)
lda_model <- lda(Bankrupt ~ ., data = train_data)
lda_model
summary(lda_model)
Berdasarkan output tersebut, dapat dibentuk fungsi diskriminan sebagai
berikut:
\[
Y=-0.24783058X1+0.46350082X2+1.64381039X3+1.38395647X4+0.61950317X5−0.03397322X6+0.53748570X7-0.14237134X8-0.05241772X9+
1.21090834X10
\] Di mana berdasarkan hasil PCA didapat:
Variabel X1 adalah
Profitabilitas
Variabel X2 adalah Likuiditas & Efisiensi Aset
Variabel X3 adalah Efisiensi Keuangan Bersih
Variabel X4
adalah Struktur Modal & Laba Operasi
Variabel X5 adalah Beban
Bunga & Nilai Saham
Variabel X6 adalah Efisiensi Modal &
Pertumbuhan Aset
Variabel X7 adalah Profitabilitas Saham
Variabel X8 adalah Kesehatan Keuangan
Variabel X9 adalah Leverage
& Pertumbuhan Laba
Variabel X10 adalah Posisi Ekonomi Makro
Profitabilitas (Koefisien: -0.24783058)
Koefisien negatif
menunjukkan bahwa semakin tinggi profitabilitas suatu perusahaan,
semakin kecil kecenderungan perusahaan tersebut masuk ke dalam kelompok
yang menjadi perusahaan bangkrut. Artinya, semakin besar laba dan
pertumbuhan laba serta arus kas, semakin rendah kemungkinan perusahaan
tergolong dalam kelompok resiko terkena bangkrut.
Likuiditas & Efisiensi Aset (Koefisien: 0.46350082)
Koefisien positif dan cukup besar menunjukkan bahwa perusahaan dengan
likuiditas tinggi dan efisiensi aset yang baik justru cenderung masuk ke
kelompok berisiko. Ini bisa berarti bahwa meskipun perusahaan terlihat
mampu membayar kewajiban jangka pendek dan menggunakan asetnya dengan
efisien, hal itu belum tentu cukup untuk menghindari masalah keuangan.
Bisa jadi efisiensi tersebut hanya terlihat baik di permukaan, tapi ada
masalah lain yang lebih besar di dalam.
Efisiensi Keuangan Bersih (Koefisien: 1.64381039)
Koefisien
positif menunjukkan bahwa semakin tinggi efisiensi keuangan bersih
perusahaan yakni kemampuan perusahaan menghasilkan keuntungan setelah
memperhitungkan seluruh pendapatan dan pengeluaran—semakin besar pula
kemungkinan perusahaan tergolong bangkrut. Ini mengindikasikan bahwa
efisiensi keuangan bersih yang tinggi dalam konteks ini justru
berkorelasi positif dengan risiko kebangkrutan. Kemungkinan besar hal
ini terjadi karena efisiensi tersebut dicapai melalui pemangkasan biaya
secara agresif, penundaan investasi penting, atau strategi keuangan
berisiko lainnya yang dapat melemahkan kesehatan jangka panjang
perusahaan.
Struktur Modal & Laba Operasi (Koefisien: 1.38395647)
Koefisien positif menunjukkan bahwa semakin tinggi struktur modal atau
laba operasi perusahaan, semakin besar kecenderungan perusahaan untuk
tergolong dalam kelompok bangkrut. Hal ini bisa disebabkan oleh
ketergantungan pada pembiayaan berbasis utang (struktur modal tinggi)
yang meningkatkan beban bunga dan risiko keuangan, atau oleh laba
operasi yang tinggi namun tidak stabil. Ketidakstabilan tersebut dapat
memperburuk posisi keuangan dalam jangka panjang dan meningkatkan risiko
kebangkrutan, meskipun tampaknya menguntungkan dalam jangka pendek.
Beban Bunga & Nilai Saham(Koefisien: 0.61950317)
Koefisien positif menunjukkan bahwa semakin tinggi beban bunga atau
nilai saham perusahaan, semakin besar kemungkinan perusahaan tergolong
bangkrut. Beban bunga yang tinggi mencerminkan tekanan keuangan dari
utang, sementara nilai saham yang tinggi namun tidak ditopang oleh
kinerja keuangan yang sehat dapat menandakan overvaluasi dan risiko
koreksi pasar. Kombinasi keduanya dapat memperbesar risiko kebangkrutan.
Efisiensi Modal & Pertumbuhan Aset(Koefisien: −0.03397322)
Koefisien negatif menunjukkan bahwa semakin efisien penggunaan
modal dan semakin tinggi pertumbuhan aset, semakin kecil kemungkinan
perusahaan mengalami kebangkrutan. Ini mengindikasikan bahwa
optimalisasi aset dan modal mendorong kinerja keuangan yang sehat, serta
meningkatkan ketahanan perusahaan terhadap risiko kebangkrutan.
Profitabilitas Saham (Koefisien: 0.53748570)
Koefisien
positif menunjukkan bahwa semakin tinggi profitabilitas saham yang
disertai fluktuasi pendapatan, semakin besar kemungkinan perusahaan
mengalami kebangkrutan. Ini mencerminkan bahwa meskipun profitabilitas
tampak tinggi, ketidakstabilan atau variasi minor dalam pendapatan dapat
menciptakan ketidakpastian arus kas dan meningkatkan risiko keuangan
jangka panjang.
Kesehatan Keuangan(Koefisien: -0.14237134)
Koefisien negatif
menunjukkan bahwa semakin baik kesehatan keuangan perusahaan, semakin
kecil kemungkinan perusahaan mengalami kebangkrutan. Sebaliknya, kondisi
keuangan yang lemah meningkatkan risiko kegagalan usaha. Hal ini
mencerminkan bahwa manajemen keuangan yang sehat berperan penting dalam
menjaga stabilitas dan kelangsungan hidup perusahaan.
Leverage & Pertumbuhan Laba(Koefisien: -0.05241772)
Koefisien negatif menunjukkan bahwa penggunaan leverage yang disertai
dengan pertumbuhan laba justru menurunkan kemungkinan perusahaan
mengalami kebangkrutan. Artinya, jika utang dimanfaatkan secara
produktif untuk mendorong pertumbuhan laba, maka risiko kebangkrutan
dapat ditekan. Hal ini mencerminkan bahwa strategi pembiayaan dengan
leverage yang terukur dan menghasilkan laba berkelanjutan dapat
memperkuat ketahanan finansial perusahaan.
Posisi Ekonomi Makro(Koefisien: 1.21090834)
Koefisien
positif menunjukkan bahwa perubahan pada faktor ekonomi makro
berkorelasi positif dengan kemungkinan kebangkrutan. Artinya, ketika
kondisi ekonomi makro memburuk—seperti inflasi tinggi, suku bunga naik,
atau perlambatan pertumbuhan ekonomi—risiko kebangkrutan perusahaan
meningkat. Ini menegaskan bahwa ketidakpastian dan tekanan ekonomi
eksternal dapat berdampak signifikan terhadap keberlangsungan bisnis.
Secara keseluruhan, model ini menunjukkan bahwa risiko kebangkrutan perusahaan dipengaruhi oleh kombinasi faktor internal dan eksternal yang kompleks. Meskipun profitabilitas dan kesehatan keuangan yang baik dapat menurunkan risiko kebangkrutan, faktor seperti efisiensi keuangan bersih yang tinggi, struktur modal berat, beban bunga besar, serta kondisi ekonomi makro yang kurang mendukung justru meningkatkan risiko tersebut. Oleh karena itu, perusahaan perlu mengelola struktur modal dan beban utangnya secara hati-hati, menjaga stabilitas operasional, serta selalu memantau kondisi ekonomi eksternal agar dapat mempertahankan kelangsungan usaha dan mengurangi peluang gagal bayar. Pendekatan manajemen risiko yang komprehensif dan berimbang antara efisiensi internal dan kewaspadaan terhadap kondisi makro sangat penting untuk menjaga stabilitas dan daya tahan perusahaan.
Dari total prediksi, model berhasil mengklasifikasikan 1.910 kasus
non-bangkrut dan 16 kasus bangkrut dengan benar. Namun, terdapat
kesalahan klasifikasi sebanyak 43 kasus non-bangkrut diprediksi sebagai
bangkrut (false positive), dan 21 kasus bangkrut diprediksi sebagai
non-bangkrut (false negative). Akurasi model dihitung sebagai rasio
jumlah prediksi yang benar terhadap total seluruh prediksi, yaitu
sekitar 96.78%, yang menunjukkan performa klasifikasi yang sangat baik
secara umum
# 26. Hitung dan tampilkan Akurasi, Sensitivitas, dan Spesifisitas (Test)
TP <- conf_test["1", "1"]
TN <- conf_test["0", "0"]
FP <- conf_test["1", "0"]
FN <- conf_test["0", "1"]
accuracy_lda <- (TP + TN) / sum(conf_test)
sensitivitas_lda <- TP / (TP + FN)
spesifisitas_lda <- TN / (TN + FP)
sensitivitas_lda
spesifisitas_lda
cat("Akurasi LDA:", round(accuracy_lda, 4), "\n")
cat("Sensitivitas:", round(sensitivitas_lda, 4), "\n")
cat("Spesifisitas:", round(spesifisitas_lda, 4), "\n")
Hasil menunjukkan bahwa model Linear Discriminant Analysis (LDA)
memiliki nilai sensitivitas sebesar 0.2719 dan spesifisitas sebesar
0.9891. Artinya, model ini mampu mengidentifikasi sekitar 27% dari
perusahaan yang benar-benar bangkrut secara benar, dan mampu mengenali
sekitar 99% dari perusahaan yang tidak bangkrut dengan tepat.
Nilai AUC (Test) sebesar 0.933 menunjukkan bahwa model LDA Anda juga
cukup baik dalam memprediksi status kebangkrutan pada data testing yang
belum pernah dilihat model sebelumnya.
#Memeriksa Asumsi multikolinieritas
model_vif <- lm(as.numeric(Y) ~ ., data = data_logistik)
vif(model_vif)
Berdasarkan hasil output diperoleh nilai VIF Dim 1 hingga Dim 10 adalah <5 sehingga tidak terjadi multikolinieritas.
membagi data menjadi dua bagian: 70% data latih (training data) dan 30%
data uji (testing data).
# 6. Fit model regresi logistik
model_train <- glm(Bankrupt ~ ., data = train_data, family = binomial())
summary(model_train)
\[ Y=-4.96610-0.73488X1+0.12515X2+0.01854X3+0.35097X4+0.00336X5+0.38328X6+0.97929X7-0.12326X8-0.68913X9-1.65664X10 \]
Intercept (Konstanta : -4.96610)
Intercept sebesar −4.96610
dalam model regresi logistik ini menunjukkan bahwa ketika seluruh
variabel independen (X1 hingga X10) berada pada nilai nol, maka log-odds
atau kecenderungan dasar perusahaan untuk mengalami kebangkrutan sangat
rendah. Dengan kata lain, model mengasumsikan bahwa dalam keadaan netral
(saat seluruh indikator risiko berada di titik nol), perusahaan secara
umum tidak berada dalam posisi yang rentan terhadap kebangkrutan. Namun,
nilai ini hanya menjadi titik awal, karena setiap variabel lain dalam
model akan menambah atau mengurangi risiko tersebut tergantung pada arah
dan besarnya koefisiennya.
Profitabilitas (Koefisien: -0.73488)
Koefisien negatif
menunjukkan bahwa semakin tinggi profitabilitas perusahaan, semakin
kecil kemungkinan perusahaan mengalami kebangkrutan. Profitabilitas yang
baik mencerminkan kemampuan perusahaan menghasilkan laba yang cukup
untuk menutupi biaya dan kewajiban, sehingga memperkuat posisi keuangan
dan mengurangi risiko gagal bayar.
Likuiditas & Efisiensi Aset (Koefisien: 0.12515)
Koefisien positif menandakan bahwa peningkatan likuiditas dan efisiensi
aset sedikit meningkatkan kemungkinan kebangkrutan. Hal ini mungkin
mengindikasikan bahwa perusahaan dengan likuiditas tinggi namun
efisiensi aset yang kurang optimal berpotensi menghadapi risiko
likuiditas jangka panjang atau pengelolaan aset yang kurang efektif.
Efisiensi Keuangan Bersih (Koefisien: 0.01854)
Koefisien
positif kecil ini menunjukkan bahwa efisiensi keuangan bersih memiliki
pengaruh ringan namun positif terhadap risiko kebangkrutan. Artinya,
efisiensi keuangan yang tampak baik belum tentu menjamin kestabilan
keuangan perusahaan secara keseluruhan.
Struktur Modal & Laba Operasi (Koefisien: 0.35097)
Koefisien positif mengindikasikan bahwa semakin besar struktur modal dan
laba operasi, risiko kebangkrutan cenderung meningkat. Hal ini bisa
terjadi jika perusahaan menggunakan utang yang berlebihan atau laba
operasi yang fluktuatif, sehingga meningkatkan tekanan keuangan
Beban Bunga & Nilai Saham (Koefisien: 0.00336)
Koefisien
positif sangat kecil ini menunjukkan bahwa beban bunga dan nilai saham
memberikan dampak minimal namun tetap positif terhadap risiko
kebangkrutan. Beban bunga yang tinggi dapat menekan arus kas, sementara
nilai saham yang tinggi tidak selalu mencerminkan kondisi fundamental
perusahaan.
Efisiensi Modal & Pertumbuhan Aset (Koefisien: 0.38328)
Koefisien positif ini menunjukkan bahwa efisiensi modal dan pertumbuhan
aset yang lebih tinggi berhubungan dengan peningkatan risiko
kebangkrutan. Mungkin perusahaan menggunakan modal secara agresif yang
meningkatkan risiko keuangan jangka pendek.
Profitabilitas Saham (Koefisien: 0.97929)
Koefisien positif
cukup besar ini menunjukkan bahwa profitabilitas saham yang tinggi
justru berkorelasi dengan risiko kebangkrutan yang lebih besar,
kemungkinan karena fluktuasi harga saham yang tajam atau ketidakstabilan
pasar yang mempengaruhi kondisi keuangan perusahaan.
Kesehatan Keuangan (Koefisien: -0.12326)
Koefisien negatif
ini menandakan bahwa kesehatan keuangan yang baik menurunkan risiko
kebangkrutan. Kondisi keuangan yang sehat memperkuat posisi perusahaan
dalam menghadapi tekanan bisnis dan risiko eksternal.
Leverage & Pertumbuhan Laba (Koefisien: -0.68913)
Koefisien negatif menunjukkan bahwa penggunaan leverage yang disertai
dengan pertumbuhan laba menurunkan kemungkinan kebangkrutan. Hal ini
mencerminkan strategi pembiayaan yang produktif dan pertumbuhan laba
yang berkelanjutan meningkatkan daya tahan perusahaan.
Posisi Ekonomi Makro (Koefisien: -1.65664)
Koefisien negatif
signifikan ini menunjukkan bahwa kondisi ekonomi makro yang mendukung
secara signifikan mengurangi risiko kebangkrutan perusahaan. Faktor
eksternal seperti inflasi rendah, suku bunga stabil, dan pertumbuhan
ekonomi positif membantu perusahaan bertahan dalam jangka panjang.
Model regresi logistik ini mengimplikasikan bahwa risiko kebangkrutan perusahaan dipengaruhi oleh kombinasi faktor internal dan eksternal, dengan pengaruh terbesar berasal dari profitabilitas saham dan kondisi ekonomi makro. Faktor-faktor seperti profitabilitas, kesehatan keuangan, dan leverage disertai pertumbuhan laba berperan menurunkan risiko kebangkrutan, sementara struktur modal, efisiensi modal, dan fluktuasi saham cenderung meningkatkan risiko. Intercept yang negatif menunjukkan bahwa secara umum, tanpa tekanan dari variabel-variabel tersebut, risiko kebangkrutan berada pada tingkat yang rendah. Maka, perusahaan perlu menjaga stabilitas keuangan internal sambil mengantisipasi dinamika ekonomi eksternal untuk meminimalkan kemungkinan bangkrut.
Berdasarkan hasil output RStudio diperoleh G2 sebesar 440.87999798
dengan nilai chi square tabel sebesar 16.91898. Dikarenakan nilai G2
lebih besar dibandingkan dengan nilai chi square maka dapat diputuskan
bahwa H0 ditolak. Sehingga dapat disimpulkan bahwa model signifikan atau
minimal terdapat satu variabel yang berpengaruh terhadap terjadinya
kebangrutan pada perusahaan.
Rsq<-1-(900.64/1341.52)
R square dihitung dengan membagi nilai Residual deviance dan Null
deviance. Berdasarkan hasil output RStudio diperoleh nilai R square
adalah 0.32864. Dari Nilai R square dapat diketahui bahwa variabel
independen (Dim1-Dim10) dapat menjelaskan 32.86% potensi kebangrutan
suatu perusahaan.
Profitabilitas (OR: 0.4796)
Jika profitabilitas meningkat 1
satuan, maka kecenderungan perusahaan mengalami kebangkrutan menurun
menjadi 0.480 kali lipat. Artinya, semakin tinggi profitabilitas,
semakin kecil kemungkinan perusahaan bangkrut karena keuntungan yang
stabil memberikan bantalan keuangan yang kuat.
Likuiditas & Efisiensi Aset (OR: 1.1333)
Jika likuiditas
dan efisiensi aset meningkat 1 satuan, maka kecenderungan perusahaan
mengalami kebangkrutan meningkat 1.133 kali lipat. Mengindikasikan bahwa
meskipun efisiensi aset dan likuiditas meningkat, jika tidak disertai
pengelolaan yang sehat, bisa memperbesar risiko.
Efisiensi Keuangan Bersih (OR: 1.0187)
Jika efisiensi
keuangan bersih meningkat 1 satuan, maka kecenderungan perusahaan
mengalami kebangkrutan meningkat 1.018 kali lipat. Kenaikan ini relatif
kecil, menandakan bahwa faktor ini memiliki pengaruh yang minim, namun
tetap perlu diawasi sebagai bagian dari pengelolaan biaya dan pendapatan
bersih.
Struktur Modal & Laba Operasi (OR: 1.4204)
Jika struktur
modal dan laba operasi meningkat 1 satuan, maka kecenderungan perusahaan
mengalami kebangkrutan meningkat 1.420 kali lipat. Ini mencerminkan
bahwa perusahaan dengan struktur modal yang kompleks atau laba operasi
yang tidak stabil cenderung lebih berisiko mengalami tekanan finansial.
Beban Bunga & Nilai Saham (OR: 1.0034)
Jika beban bunga
dan nilai saham meningkat 1 satuan, maka kecenderungan perusahaan
mengalami kebangkrutan meningkat 1.003 kali lipat. Efek ini sangat
kecil, namun tetap menunjukkan bahwa peningkatan beban bunga bisa
menambah tekanan likuiditas.
Efisiensi Modal & Pertumbuhan Aset (OR: 1.4671)
Jika
efisiensi modal dan pertumbuhan aset meningkat 1 satuan, maka
kecenderungan perusahaan mengalami kebangkrutan meningkat 1.467 kali
lipat. Hal ini bisa terjadi jika ekspansi aset dilakukan terlalu agresif
tanpa memperhitungkan risiko keuangan yang menyertainya.
Profitabilitas Saham (OR: 2.6626)
Jika profitabilitas saham
meningkat 1 satuan, maka kecenderungan perusahaan mengalami kebangkrutan
meningkat 2.662 kali lipat. Ini mengindikasikan bahwa fluktuasi laba per
saham yang tinggi bisa menjadi tanda ketidakstabilan kinerja jangka
pendek yang berdampak buruk bagi kelangsungan usaha.
Kesehatan Keuangan (OR: 0.8840)
Jika kesehatan keuangan
meningkat 1 satuan, maka kecenderungan perusahaan mengalami kebangkrutan
menurun sebesar 0.884 kali lipat. Ini berarti kondisi internal keuangan
yang baik tetap menjadi faktor pelindung terhadap risiko kebangkrutan.
Leverage & Pertumbuhan Laba (OR: 0.5020)
Jika leverage
dan pertumbuhan laba meningkat 1 satuan, maka kecenderungan perusahaan
mengalami kebangkrutan menurun sebesar 0.502 kali lipat. Penggunaan
utang yang produktif dan diiringi dengan pertumbuhan laba menjadi
strategi yang mendukung kelangsungan bisnis.
Posisi Ekonomi Makro (OR: 0.1908)
Jika kondisi ekonomi makro
membaik 1 satuan, maka kecenderungan perusahaan mengalami kebangkrutan
menurun sebesar 0.190 kali lipat. Ini menunjukkan bahwa stabilitas
ekonomi eksternal merupakan penentu penting dalam menjaga kelangsungan
hidup perusahaan di tengah ketidakpastian pasar.
Dari total prediksi, model berhasil mengklasifikasikan 1.916 kasus
non-bangkrut dan 15 kasus bangkrut dengan benar. Namun, terdapat
kesalahan klasifikasi sebanyak 50 kasus non-bangkrut diprediksi sebagai
bangkrut (false positive), dan 9 kasus bangkrut diprediksi sebagai
non-bangkrut (false negative). Akurasi model dihitung sebagai rasio
jumlah prediksi yang benar terhadap total seluruh prediksi, yaitu
sekitar 96.7%, yang menunjukkan performa klasifikasi yang sangat baik
secara umum
Gambar tersebut menunjukkan bahwa model Regresi Logistik memiliki nilai
sensitivitas sebesar 0.2414 dan spesifisitas sebesar 0.996. Artinya,
model ini hanya mampu mendeteksi sekitar 24% dari perusahaan yang
benar-benar bangkrut, namun sangat akurat dalam mengenali perusahaan
yang tidak bangkrut, yaitu sebesar 99,6%. Dengan kata lain, model ini
lebih kuat dalam meminimalkan kesalahan klasifikasi terhadap perusahaan
yang sehat, tetapi masih lemah dalam menangkap kasus bangkrut.
Nilai AUC (Test) sebesar 0.929 menunjukkan bahwa model Regresi Logistik
juga cukup baik dalam memprediksi status kebangkrutan pada data testing
yang belum pernah dilihat model sebelumnya.
Pada analisis diskriminan, interpretasi hasil model didasarkan pada nilai koefisien diskriminan yang menunjukkan seberapa besar kontribusi masing-masing variabel dalam membedakan antara perusahaan yang bangkrut dan tidak bangkrut. Misalnya, variabel Efisiensi Keuangan Bersih dengan koefisien positif besar menunjukkan bahwa semakin efisien keuangan bersih suatu perusahaan, semakin kuat kecenderungan perusahaan untuk tidak tergolong bangkrut. Sebaliknya, variabel seperti Struktur Modal & Laba Operasi dengan koefisien positif justru mengindikasikan bahwa kondisi tersebut meningkatkan kemungkinan perusahaan masuk dalam kelompok bangkrut. Hasil model diskriminan lebih menitikberatkan pada kemampuan klasifikasi dan peran relatif antar variabel dalam memisahkan kelompok.
Sedangkan pada regresi logistik, interpretasi hasil model tidak hanya melihat arah hubungan (positif atau negatif), tetapi juga besar pengaruh probabilistik melalui nilai Odds Ratio (OR). Sebagai contoh, Profitabilitas Saham dengan OR 2.66 berarti bahwa setiap peningkatan 1 satuan skor pada variabel ini akan meningkatkan kecenderungan perusahaan untuk bangkrut sebesar 2.66 kali lipat, yang mengindikasikan risiko fluktuasi pendapatan. Sebaliknya, Posisi Ekonomi Makro dengan OR 0.19 menunjukkan bahwa kondisi ekonomi eksternal yang baik dapat menurunkan risiko kebangkrutan secara signifikan. Hasil regresi logistik memberikan pemahaman yang lebih konkret terhadap besarnya risiko (odds) dan sangat berguna dalam konteks pengambilan keputusan berbasis probabilitas.