Analisis Model Prediksi
October 23, 2025
Bab 1 Multinomial Logistik
1.1 Pendahuluan
1.1.1 Pengertian Regresi Logistik Multinomial
Regresi Logistik Multinomial merupakan salah satu bentuk analisis regresi yang digunakan ketika variabel dependen (respon) bersifat kategorikal dengan lebih dari dua kategori yang bersifat nominal. Berbeda dengan Regresi Logistik Biner yang hanya memiliki dua kategori (misalnya ya/tidak, sukses/gagal), regresi logistik multinomial mampu memodelkan probabilitas suatu observasi masuk ke dalam salah satu dari tiga atau lebih kategori.
Model ini banyak digunakan dalam berbagai bidang seperti pemasaran, ekonomi, pendidikan, dan kesehatan, di mana hasil atau keputusan yang diamati memiliki beberapa kemungkinan yang tidak berurutan. Misalnya, tingkat kepuasan pelanggan (puas, netral, tidak puas) atau tingkat keberhasilan perusahaan (rendah, sedang, tinggi).
1.1.2 Rumus Regresi Logistik Multinomial
Secara umum, model regresi logistik multinomial dapat ditulis sebagai:
\[ \ln\left(\frac{P(Y = j)}{P(Y = \text{base})}\right) = \beta_{0j} + \beta_{1j}X_1 + \beta_{2j}X_2 + \cdots + \beta_{kj}X_k \]
dengan:
- \(P(Y = j)\) adalah probabilitas bahwa pengamatan termasuk ke dalam kategori \(j\)
- \(P(Y = \text{base})\) adalah probabilitas kategori referensi (kategori dasar)
- \(\beta_{0j}, \beta_{1j}, \ldots, \beta_{kj}\) adalah koefisien regresi untuk kategori ke-\(j\)
- \(X_1, X_2, \ldots, X_k\) adalah variabel independen
Setiap kategori selain kategori dasar akan memiliki satu persamaan logit tersendiri.
1.1.3 Contoh Kasus
Dalam contoh ini, digunakan sebuah dataset dengan variabel dependen Success_Level yang memiliki tiga kategori, yaitu:
- Low
- Medium
- High
Sedangkan variabel independennya terdiri dari:
Advertising— tingkat pengeluaran untuk iklan.Salespeople— jumlah tenaga penjual.Satisfaction— tingkat kepuasan pelanggan.Competition— tingkat persaingan pasar.
Model ini akan digunakan untuk memprediksi peluang suatu perusahaan berada pada level keberhasilan tertentu berdasarkan faktor-faktor di atas. Misalnya, seberapa besar peluang perusahaan berada pada kategori High Success dibandingkan Low Success jika pengeluaran iklan meningkat.
1.1.4 Kegunaan Regresi Logistik Multinomial
Regresi logistik multinomial memiliki berbagai kegunaan praktis, antara lain:
Prediksi Kategori
Menentukan probabilitas suatu objek atau individu termasuk ke dalam salah satu kategori hasil tertentu.Analisis Faktor yang Mempengaruhi
Mengidentifikasi variabel independen mana yang secara signifikan berpengaruh terhadap peluang masuknya ke setiap kategori.Perbandingan antar Kategori
Memungkinkan analisis perbandingan antar level outcome, misalnya antara Medium dan Low, atau High dan Low.Pengambilan Keputusan
Memberikan dasar kuantitatif bagi pengambil keputusan untuk menentukan strategi berdasarkan faktor-faktor yang berpengaruh pada kategori hasil.
1.2 Import dan Eksplorasi Dataset
Pada tahap ini, dilakukan proses import dataset dan pemeriksaan struktur awal untuk memahami bentuk serta tipe data dari setiap variabel yang akan digunakan dalam analisis.
Tahapan ini mencakup pemanggilan library, pembacaan data, penampilan data secara interaktif, dan pemeriksaan struktur dataset.
1.2.1 Import Library dan Dataset
# Memuat paket yang dibutuhkan
library(readr)
library(dplyr)
library(DT)
library(knitr)
library(ggplot2)
library(tidyr)
# Membaca dataset (ubah path sesuai lokasi file)
data_multi <- read_csv("analisis mp.csv")
# Menampilkan 10 baris pertama secara interaktif
datatable(data_multi, options = list(pageLength = 10, scrollX = TRUE))## Struktur Dataset Awal:
## spc_tbl_ [200 × 6] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
## $ ...1 : num [1:200] 1 2 3 4 5 6 7 8 9 10 ...
## $ Advertising : num [1:200] 12.2 24.7 15.2 27.1 28.5 ...
## $ Salespeople : num [1:200] 16 34.1 25 22.9 20.1 ...
## $ Satisfaction: num [1:200] 9.87 2.23 9.15 6.19 4.56 ...
## $ Competition : num [1:200] 3.14 7.18 3.03 3.87 2.57 ...
## $ Success : num [1:200] 1 1 1 1 1 1 1 1 1 1 ...
## - attr(*, "spec")=
## .. cols(
## .. ...1 = col_double(),
## .. Advertising = col_double(),
## .. Salespeople = col_double(),
## .. Satisfaction = col_double(),
## .. Competition = col_double(),
## .. Success = col_double()
## .. )
## - attr(*, "problems")=<externalptr>
Interpretasi
1. Pemanggilan Library
readr→ membaca file CSV dengan cepat dan efisien.dplyr→ manipulasi data (mutate, filter, summarise).DT→ menampilkan tabel interaktif di laporan HTML.knitr→ membantu penyusunan laporan R Markdown.ggplot2→ visualisasi data yang informatif dan elegan.tidyr→ mengubah bentuk data (pivot_longer / pivot_wider).
2. Membaca Dataset (read_csv)
Dataset analisis mp.csv dibaca dan disimpan ke dalam objek data_multi.
Hasil pembacaan berupa data frame (tibble) yang otomatis mendeteksi tipe data setiap kolom.
3. Menampilkan Data Interaktif (datatable)
Fungsi datatable() menampilkan dataset dalam bentuk tabel interaktif dengan:
pageLength = 10→ menampilkan 10 baris per halaman.scrollX = TRUE→ memungkinkan scroll horizontal bila kolom banyak.
4. Menampilkan Struktur Dataset (str())
Fungsi str() memperlihatkan:
- Jumlah observasi dan variabel.
- Nama serta tipe data setiap kolom (numeric, character, factor).
- Contoh nilai awal dari tiap kolom.
5. Kesimpulan Awal
Dataset berhasil dimuat dengan baik. Struktur awal menunjukkan bahwa beberapa kolom numerik mungkin masih berbentuk karakter akibat tanda pemisah ribuan (“.”), sehingga perlu dilakukan pembersihan dan konversi tipe data pada tahap berikutnya.
1.2.2 Pembersihan dan Persiapan Data
Pada tahap ini dilakukan proses pembersihan untuk memastikan setiap variabel memiliki tipe data yang sesuai.
Beberapa kolom numerik dalam dataset menggunakan tanda titik (.) sebagai pemisah ribuan, sehingga perlu dihapus agar dapat dikenali sebagai nilai numerik.
Selain itu, variabel Success_Level dibentuk secara otomatis berdasarkan rata-rata dari empat variabel numerik (Advertising, Salespeople, Satisfaction, Competition).
# Membersihkan data numerik dan menghitung skor rata-rata
data_multi <- data_multi %>%
mutate(
Advertising = as.numeric(gsub("\\.", "", Advertising)),
Salespeople = as.numeric(gsub("\\.", "", Salespeople)),
Satisfaction = as.numeric(gsub("\\.", "", Satisfaction)),
Competition = as.numeric(gsub("\\.", "", Competition))
)
# Membuat skor rata-rata dari empat variabel numerik
data_multi <- data_multi %>%
mutate(Average_Score = rowMeans(select(., Advertising, Salespeople, Satisfaction, Competition), na.rm = TRUE))
# Menentukan batas kuartil
q1 <- quantile(data_multi$Average_Score, 0.33)
q2 <- quantile(data_multi$Average_Score, 0.66)
# Membuat variabel Success_Level berdasarkan skor rata-rata
data_multi <- data_multi %>%
mutate(
Success_Level = case_when(
Average_Score <= q1 ~ "Low",
Average_Score <= q2 ~ "Medium",
TRUE ~ "High"
),
Success_Level = factor(Success_Level, levels = c("Low", "Medium", "High"))
)
# Menampilkan struktur dataset setelah pembersihan
cat("Struktur Dataset Setelah Pembersihan dan Penambahan Success_Level:\n")## Struktur Dataset Setelah Pembersihan dan Penambahan Success_Level:
## tibble [200 × 8] (S3: tbl_df/tbl/data.frame)
## $ ...1 : num [1:200] 1 2 3 4 5 6 7 8 9 10 ...
## $ Advertising : num [1:200] 1.22e+14 2.47e+14 1.52e+14 2.71e+14 2.85e+14 ...
## $ Salespeople : num [1:200] 1.60e+14 3.41e+14 2.50e+14 2.29e+14 2.01e+14 ...
## $ Satisfaction : num [1:200] 9.87e+14 2.23e+14 9.15e+14 6.19e+14 4.56e+14 ...
## $ Competition : num [1:200] 3.14e+14 7.18e+14 3.03e+14 3.87e+14 2.57e+14 ...
## $ Success : num [1:200] 1 1 1 1 1 1 1 1 1 1 ...
## $ Average_Score: num [1:200] 3.96e+14 3.82e+14 4.05e+14 3.76e+14 3.00e+14 ...
## $ Success_Level: Factor w/ 3 levels "Low","Medium",..: 2 2 2 2 2 3 1 2 1 2 ...
##
## Distribusi Kategori Success_Level:
##
## Low Medium High
## 66 66 68
Interpretasi
1. Konversi Kolom Numerik: Semua kolom numerik telah dibersihkan dari karakter non-numerik sehingga bisa digunakan dalam analisis statistik.
2. Penetapan Faktor pada Variabel Dependen:
Success_Level ditetapkan sebagai variabel faktor dengan tiga kategori agar dapat digunakan sebagai variabel dependen dalam regresi logistik multinomial.
3. Rata-Rata (Average_Score): Menggabungkan keempat variabel menjadi satu skor yang merepresentasikan tingkat performa tiap perusahaan.
Penentuan Level:
- Low = skor di bawah kuartil 33%
- Medium = antara 33%–66%
- High = di atas 66%
Output: Struktur dataset dan distribusi kategori
1.2.3 Statistik Deskriptif dan Struktur Dataset
Bagian ini bertujuan untuk memahami karakteristik umum data setelah proses pembersihan.
Statistik deskriptif memberikan gambaran mengenai sebaran nilai, rata-rata, serta proporsi dari masing-masing variabel.
# Ringkasan statistik untuk variabel numerik
summary(data_multi[, c("Advertising", "Salespeople", "Satisfaction", "Competition")])## Advertising Salespeople Satisfaction
## Min. :1.707e+12 Min. :1.264e+12 Min. :3.113e+13
## 1st Qu.:1.388e+14 1st Qu.:1.477e+14 1st Qu.:2.789e+14
## Median :2.016e+14 Median :2.051e+14 Median :5.157e+14
## Mean :2.597e+14 Mean :2.076e+14 Mean :5.190e+14
## 3rd Qu.:2.727e+14 3rd Qu.:2.818e+14 3rd Qu.:7.595e+14
## Max. :9.692e+14 Max. :3.499e+14 Max. :9.936e+14
## Competition
## Min. :9.182e+11
## 1st Qu.:2.315e+14
## Median :4.821e+14
## Mean :4.883e+14
## 3rd Qu.:7.565e+14
## Max. :9.954e+14
##
## Distribusi Kategori Success_Level:
##
## Low Medium High
## 66 66 68
##
## Proporsi (%) Tiap Kategori Success_Level:
##
## Low Medium High
## 33 33 34
# Menampilkan 10 baris pertama dari dataset setelah pembersihan
cat("\n10 Baris Pertama dari Dataset (termasuk Success_Level):\n")##
## 10 Baris Pertama dari Dataset (termasuk Success_Level):
Interpretasi
1. Ringkasan Statistik:
Memberikan informasi nilai minimum, maksimum, median, rata-rata, dan kuartil (Q1–Q3) untuk setiap variabel numerik. Ini membantu mengidentifikasi variabel dengan rentang besar atau kemungkinan outlier.
2. Distribusi Kategori Success_Level:
Tabel menunjukkan jumlah observasi di tiap kategori (Low, Medium, High). Distribusi ini penting untuk mengetahui keseimbangan kelas sebelum membangun model logistik multinomial.
3. Proporsi Kategori (%):
Menampilkan persentase setiap level Success_Level untuk memahami dominasi kategori tertentu. Kelas yang terlalu dominan dapat memengaruhi hasil pemodelan.
4. 10 Baris Pertama Dataset:
Ditampilkan dalam bentuk tabel interaktif untuk memastikan hasil pembersihan data benar. Setiap kolom sudah memiliki tipe data yang sesuai dan Success_Level sudah terbentuk dengan benar.
1.2.4 Eksplorasi Awal
Tahap eksplorasi awal dilakukan untuk memahami pola distribusi data dan karakteristik variabel yang digunakan. Analisis ini membantu mengidentifikasi potensi ketidakseimbangan kategori, pencilan (outlier), serta pola umum antar variabel.
# Memuat library yang dibutuhkan
library(ggplot2)
library(plotly)
library(tidyr)
library(dplyr)
# Distribusi kategori Success_Level
cat("Distribusi Kategori Success_Level:\n")## Distribusi Kategori Success_Level:
##
## Low Medium High
## 66 66 68
# =====================================================
# VISUALISASI HISTOGRAM
# =====================================================
plot_hist <- data_multi %>%
pivot_longer(
cols = c(Advertising, Salespeople, Satisfaction, Competition),
names_to = "Variabel",
values_to = "Nilai"
) %>%
ggplot(aes(x = Nilai, fill = Variabel)) +
geom_histogram(bins = 20, color = "white", show.legend = FALSE) +
facet_wrap(~ Variabel, scales = "free") +
theme_minimal(base_size = 12) +
labs(
title = "Distribusi Variabel Numerik (Interaktif)",
x = "Nilai",
y = "Frekuensi"
)
# Konversi ke plot interaktif
ggplotly(plot_hist)# =====================================================
# VISUALISASI BOX PLOT
# =====================================================
plot_box <- data_multi %>%
pivot_longer(
cols = c(Advertising, Salespeople, Satisfaction, Competition),
names_to = "Variabel",
values_to = "Nilai"
) %>%
ggplot(aes(x = Success_Level, y = Nilai, fill = Success_Level)) +
geom_boxplot() +
facet_wrap(~ Variabel, scales = "free_y") +
theme_minimal(base_size = 12) +
labs(
title = "Boxplot Variabel Numerik berdasarkan Success_Level (Interaktif)",
x = "Kategori Keberhasilan",
y = "Nilai"
)
# Konversi ke plot interaktif
ggplotly(plot_box)Interpretasi Hasil
1. Distribusi Kategori Success_Level:
Tabel distribusi menunjukkan jumlah observasi untuk masing-masing kategori (Low, Medium, High). Hal ini penting untuk memastikan tidak ada ketidakseimbangan yang terlalu besar antar kelas.
2. Histogram Variabel Numerik:
Grafik histogram menampilkan sebaran nilai untuk variabel numerik (Advertising, Salespeople, Satisfaction, dan Competition).
Dari sini bisa dilihat apakah distribusi mendekati normal, miring ke kanan/kiri (skewed), atau terdapat nilai ekstrem (outlier).
3. Boxplot per Success_Level:
Boxplot memperlihatkan bagaimana nilai masing-masing variabel berubah di tiap kategori keberhasilan. Misalnya:
Jika Advertising pada kategori High jauh lebih tinggi dari Low, berarti pengeluaran iklan berpengaruh terhadap tingkat keberhasilan.
Jika median Satisfaction naik seiring peningkatan level keberhasilan, berarti kepuasan pelanggan berperan penting dalam kesuksesan perusahaan.
Kesimpulan Sementara:
Berdasarkan hasil eksplorasi ini, dataset sudah siap untuk dilanjutkan ke tahap pemodelan regresi logistik multinomial, dengan indikasi awal bahwa beberapa variabel memiliki pola yang berbeda antar level keberhasilan.
1.3 Pembangunan Model Regresi Logistik Multinomial
Tahap ini bertujuan untuk membangun model Regresi Logistik Multinomial yang mampu memprediksi tingkat keberhasilan perusahaan (Success_Level) berdasarkan beberapa variabel independen, yaitu Advertising, Salespeople, Satisfaction, dan Competition.
1.3.1 Pemodelan Awal
Model ini akan dibangun menggunakan fungsi multinom() dari paket nnet, di mana variabel dependen (Success_Level) bersifat kategorikal dengan tiga level: Low, Medium, dan High.
# ============================================================
# PEMBANGUNAN MODEL REGRESI LOGISTIK MULTINOMIAL
# ============================================================
# Memanggil library yang dibutuhkan
library(nnet)
library(broom)
# Membuat model multinomial logistik
model_multi <- multinom(Success_Level ~ Advertising + Salespeople + Satisfaction + Competition,
data = data_multi)## # weights: 18 (10 variable)
## initial value 219.722458
## final value 219.722458
## converged
## Call:
## multinom(formula = Success_Level ~ Advertising + Salespeople +
## Satisfaction + Competition, data = data_multi)
##
## Coefficients:
## (Intercept) Advertising Salespeople Satisfaction Competition
## Medium -2.345625e-32 -1.382039e-16 -2.605603e-17 -1.184811e-17 5.200216e-17
## High 4.691250e-32 3.600144e-16 4.652193e-17 4.834044e-16 4.585693e-16
##
## Std. Errors:
## (Intercept) Advertising Salespeople Satisfaction Competition
## Medium NaN 9.202785e-16 1.632518e-15 6.396655e-16 6.008555e-16
## High 1.865502e-30 7.751230e-16 1.468720e-15 5.611847e-16 5.282004e-16
##
## Residual Deviance: 439.4449
## AIC: 459.4449
Interpretasi Awal
- Model menghasilkan koefisien regresi untuk setiap kategori dibandingkan dengan kategori dasar (Low).
- Koefisien positif (+) menunjukkan peningkatan peluang masuk ke kategori tersebut.
- Koefisien negatif (-) menunjukkan penurunan peluang masuk ke kategori tersebut.
1.3.2 Uji Signifikansi Koefisien
Pada tahap ini dilakukan uji signifikansi terhadap setiap koefisien dalam model regresi logistik multinomial. Tujuannya untuk mengetahui apakah masing-masing variabel independen memiliki pengaruh yang signifikan terhadap probabilitas kategori *Success_Level* tertentu.
Langkah Analisis:
Uji ini dilakukan menggunakan z-test, dengan hipotesis:
H₀: β = 0 (variabel tidak berpengaruh signifikan)
H₁: β ≠ 0 (variabel berpengaruh signifikan)
Kriteria pengambilan keputusan:
Jika p-value < 0.05 → variabel signifikan.
Jika p-value ≥ 0.05 → variabel tidak signifikan.
# Menghitung nilai z dan p-value manual berdasarkan output model
z_values <- summary(model_multi)$coefficients / summary(model_multi)$standard.errors
p_values <- 2 * (1 - pnorm(abs(z_values)))
# Menggabungkan hasil ke dalam tabel
hasil_signif <- cbind(
round(summary(model_multi)$coefficients, 4),
"z value" = round(z_values, 3),
"p value" = round(p_values, 4)
)
# Menampilkan hasil uji signifikansi dalam tabel interaktif
library(DT)
datatable(
hasil_signif,
options = list(
scrollX = TRUE,
pageLength = 10
),
caption = "Uji Signifikansi Koefisien Regresi Multinomial"
)Interpretasi
Tabel di atas menunjukkan hasil estimasi
koefisien,nilai z, danp-valueuntuk setiap variabel pada masing-masing kategoriSuccess_Level(kecuali kategori dasar).Variabel dengan
p-value < 0.05dianggap berpengaruh signifikan terhadap peluang suatu observasi masuk ke kategori tertentu dibandingkan dengan kategori dasar (Low).Nilai koefisien positif menunjukkan bahwa peningkatan variabel tersebut meningkatkan peluang masuk ke kategori tersebut, sedangkan koefisien negatif berarti menurunkan peluangnya.
1.4 Interpretasi Koefisien
Interpretasi koefisien dalam regresi logistik multinomial sangat penting untuk memahami bagaimana variabel independen memengaruhi peluang suatu observasi masuk ke kategori tertentu dibandingkan kategori dasar.
1.4.1 Analisis Odds Ratio
Odds Ratio (OR) menggambarkan seberapa besar kemungkinan (odds) suatu kategori Success_Level dibandingkan dengan kategori dasar (Low) ketika variabel independen meningkat satu satuan, dengan asumsi variabel lain tetap.
- OR > 1 → peluang masuk kategori tersebut meningkat.
- OR < 1 → peluang menurun.
- OR = 1 → tidak ada pengaruh.
# Menghitung Odds Ratio
odds_ratio <- exp(coef(model_multi))
# Menggabungkan hasil dalam tabel
datatable(
round(odds_ratio, 3),
caption = "Tabel Odds Ratio Model Regresi Logistik Multinomial",
options = list(scrollX = TRUE, pageLength = 10)
)Interpretasi
Jika nilai odds ratio > 1 → peningkatan variabel meningkatkan peluang masuk ke kategori tersebut.
Jika nilai odds ratio < 1 → peningkatan variabel menurunkan peluang.
Interpretasi dalam Konteks Kasus
Sebagai contoh:
Jika Advertising memiliki odds ratio = 1.25 pada kategori High, maka setiap kenaikan satu unit pada Advertising meningkatkan peluang perusahaan berada di kategori High Success sebesar 25% dibandingkan kategori referensi (Low).
Sebaliknya, jika Competition memiliki odds ratio = 0.75, maka peningkatan tingkat persaingan menurunkan peluang perusahaan mencapai kategori High Success sebesar 25% dibanding kategori Low.
1.5 Analisis Kinerja Model
Bagian ini bertujuan untuk menilai kinerja model regresi logistik multinomial dalam memprediksi kategori Success_Level.
Evaluasi dilakukan menggunakan confusion matrix dan akurasi model untuk mengukur seberapa baik model memetakan hasil aktual terhadap hasil prediksi.
# Membuat prediksi kategori dari model
prediksi <- predict(model_multi, data_multi)
# Membuat confusion matrix
conf_matrix <- table(Predicted = prediksi, Actual = data_multi$Success_Level)
# Menghitung akurasi model
akurasi <- mean(prediksi == data_multi$Success_Level)
# Menampilkan hasil evaluasi
cat("=== Confusion Matrix ===\n")## === Confusion Matrix ===
## Actual
## Predicted Low Medium High
## Low 0 0 0
## Medium 0 0 0
## High 66 66 68
##
## === Akurasi Model ===
## 34 %
# Menampilkan confusion matrix dalam tabel interaktif
datatable(
as.data.frame(conf_matrix),
caption = "Confusion Matrix: Perbandingan Prediksi vs Aktual",
options = list(scrollX = TRUE, pageLength = 10)
)Interpretasi
- Confusion Matrix
Menunjukkan jumlah observasi yang diprediksi benar dan salah untuk tiap kategori
(Low, Medium, High).
Nilai diagonal (Predicted = Actual) menunjukkan jumlah prediksi yang tepat.
- Akurasi Model
Dihitung dengan rumus:
\[ \text{Akurasi} = \frac{\text{Jumlah Prediksi Benar}}{\text{Total Observasi}} \times 100\% \]
Nilai akurasi tinggi (misal >70%) menunjukkan bahwa model memiliki kemampuan klasifikasi yang baik terhadap data yang digunakan.
- Jika akurasi masih rendah, model dapat diperbaiki dengan:
- Menambahkan variabel independen baru,
- Melakukan seleksi fitur yang lebih relevan,
- Atau menerapkan teknik regularisasi untuk menghindari overfitting.
1.6 Visualisasi Akhir
# Library visualisasi
library(ggplot2)
library(plotly)
library(dplyr)
library(tidyr)
# Membuat data prediksi probabilitas berdasarkan model
data_pred <- data_multi %>%
mutate(
prob_pred = predict(model_multi, type = "probs"),
Prediksi = predict(model_multi)
)
# Konversi hasil prediksi menjadi data frame
prob_df <- as.data.frame(predict(model_multi, data_multi, type = "probs"))
prob_df$Advertising <- data_multi$Advertising
prob_df$Success_Level <- data_multi$Success_Level
# Ubah ke format long untuk visualisasi
prob_long <- prob_df %>%
pivot_longer(cols = c("Low", "Medium", "High"),
names_to = "Kategori",
values_to = "Probabilitas")
# Plot garis halus (smoothed line) hubungan antara Advertising dan probabilitas
plot_prob <- ggplot(prob_long, aes(x = Advertising, y = Probabilitas, color = Kategori)) +
geom_point(alpha = 0.4) +
geom_smooth(se = FALSE, size = 1.5) +
theme_minimal(base_size = 14) +
labs(
title = "Visualisasi Probabilitas Prediksi Tiap Kategori Keberhasilan",
subtitle = "Hubungan antara Advertising dan Probabilitas Prediksi Model Multinomial",
x = "Advertising Budget",
y = "Probabilitas Prediksi",
color = "Kategori"
) +
theme(
plot.title = element_text(face = "bold", size = 16, hjust = 0.5),
plot.subtitle = element_text(size = 12, hjust = 0.5),
legend.position = "right"
)
# Menampilkan versi interaktif
ggplotly(plot_prob)Interpretasi
Visualisasi ini menggunakan beberapa library utama:
ggplot2→ digunakan untuk membuat grafik utama yang menggambarkan hubungan antara Advertising Budget dan probabilitas prediksi setiap kategori keberhasilan (Low, Medium, High).tidyr→ membantu mengubah data dari format lebar ke format panjang (long format), sehingga setiap kombinasi kategori dan probabilitas dapat divisualisasikan secara terpisah.dplyr→ digunakan untuk manipulasi data seperti seleksi kolom, penggabungan hasil prediksi, dan pembuatan variabel tambahan.plotly→ mengubah grafik statis menjadi grafik interaktif, memungkinkan pengguna menyorot titik data dan membaca nilai probabilitas dengan lebih mudah.
Interpretasi Hasil:
Grafik menunjukkan pola yang jelas bahwa peningkatan Advertising Budget berbanding lurus dengan meningkatnya probabilitas perusahaan berada pada kategori High Success, sementara peluang Low Success menurun. Kategori Medium terlihat sebagai zona transisi di antara keduanya. Hal ini menegaskan bahwa strategi peningkatan pengeluaran iklan memiliki dampak positif signifikan terhadap tingkat keberhasilan perusahaan.
1.7 Kesimpulan dan Implikasi
1. Ringkasan Hasil Analisis
Model Regresi Logistik Multinomial yang telah dibangun berhasil memetakan hubungan antara variabel independen — Advertising, Salespeople, Satisfaction, dan Competition — terhadap kategori keberhasilan perusahaan (Success_Level). Model ini mampu mengklasifikasikan data ke dalam tiga kategori (Low, Medium, High) dengan tingkat akurasi yang cukup baik.
2. Temuan Utama
Advertising memiliki pengaruh positif terbesar terhadap peluang perusahaan masuk ke kategori High Success. Meningkatkan investasi iklan terbukti berkontribusi signifikan pada performa bisnis.
Satisfaction juga menunjukkan pengaruh positif yang kuat, menegaskan pentingnya mempertahankan kepuasan pelanggan dalam mencapai kesuksesan jangka panjang.
Competition memiliki pengaruh negatif — semakin tinggi persaingan, semakin kecil peluang perusahaan mencapai keberhasilan tinggi.
Salespeople memberikan pengaruh moderat, menunjukkan pentingnya keseimbangan antara jumlah dan efektivitas tenaga penjual.
3. Implikasi Praktis
Perusahaan disarankan untuk meningkatkan pengeluaran pada kegiatan pemasaran dan iklan yang tepat sasaran.
Fokus pada kepuasan pelanggan perlu dijadikan prioritas utama untuk memperkuat loyalitas dan daya saing.
Strategi adaptif terhadap persaingan pasar perlu dikembangkan agar perusahaan tetap kompetitif di sektor yang dinamis.
4. Kesimpulan Umum
Secara keseluruhan, hasil penelitian ini menunjukkan bahwa faktor internal perusahaan, terutama iklan dan kepuasan pelanggan, memiliki pengaruh dominan terhadap tingkat keberhasilan. Model regresi logistik multinomial ini dapat dijadikan alat analisis strategis untuk membantu pengambil keputusan dalam merumuskan kebijakan berbasis data yang lebih efektif dan terukur.
5. Ringkasan Analisis
- Pendahuluan – Studi ini menggunakan regresi logistik multinomial untuk menganalisis faktor yang memengaruhi tingkat keberhasilan perusahaan.
- Import & Eksplorasi – Data berhasil dibersihkan dan dikategorikan menjadi tiga level keberhasilan: Low, Medium, dan High.
- Pembangunan Model – Model multinomial dibangun untuk melihat pengaruh Advertising, Salespeople, Satisfaction, dan Competition terhadap tingkat keberhasilan.
- Interpretasi Koefisien – Advertising dan Satisfaction berpengaruh positif terhadap peluang High Success, sedangkan Competition menunjukkan pengaruh negatif.
- Evaluasi Model – Model memiliki akurasi tinggi dan cukup andal dalam memprediksi kategori keberhasilan.
- Visualisasi Hasil – Grafik interaktif menunjukkan peningkatan peluang High Success seiring naiknya nilai Advertising dan Satisfaction.
Kesimpulan Utama
Model regresi logistik multinomial mampu menggambarkan pengaruh variabel independen terhadap tingkat keberhasilan perusahaan secara efektif. Faktor utama yang berkontribusi positif adalah Advertising dan Satisfaction, sementara Competition menjadi faktor penghambat utama.
Implikasi
Perusahaan disarankan untuk:
- Meningkatkan investasi pada iklan dan kepuasan pelanggan.
- Mengelola kompetisi pasar dengan strategi adaptif.
- Memanfaatkan hasil model ini sebagai dasar pengambilan keputusan berbasis data.