Dalam industri perbankan modern, kemampuan memahami karakteristik dan perilaku pelanggan menjadi kunci utama dalam meningkatkan loyalitas serta mengoptimalkan strategi pemasaran. Salah satu tantangan utama bagi Bank Thera adalah mengelompokkan nasabah berdasarkan kesamaan karakteristik, seperti usia, pendapatan, pengalaman kerja, atau tingkat penggunaan layanan agar strategi produk dan promosi dapat lebih tepat sasaran.
Metode clustering atau pengelompokan data merupakan salah satu teknik analisis data eksploratori yang digunakan untuk menemukan struktur alami dalam sekumpulan data tanpa menggunakan label kelas (Han, Kamber, & Pei, 2012). Salah satu algoritma yang paling populer karena sederhana, efisien, dan mudah diterapkan pada dataset berukuran besar adalah K-Means. Penerapan analisis clustering K-Means sangat relevan dalam segmentasi nasabah bank (bank customer segmentation).
Segmentasi nasabah menjadi salah satu strategi utama bagi Bank Thera untuk memperoleh pemahaman yang lebih komprehensif mengenai karakteristik serta kebutuhan setiap nasabah. Pihak Bank Thera dapat mengidentifikasi kelompok nasabah berdasarkan faktor-faktor, seperti demografi, pola transaksi, dan tingkat pendapatan sehingga strategi pemasaran dapat disusun secara lebih terarah dan efektif (Irawan dkk., 2025). Strategi ini berperan dalam optimalisasi alokasi sumber daya, memperkuat kepuasan dan loyalitas nasabah, serta meningkatkan daya saing bank di era transformasi digital.
Berdasarkan latar belakang, dapat dirumuskan permasalahan berikut.
Bagaimana penerapan metode K-Means clustering pada data nasabah Bank Thera?
Berapa jumlah klaster optimal yang dapat menggambarkan segmentasi nasabah Bank Thera secara efektif?
Bagaimana karakteristik masing-masing klaster nasabah berdasarkan variabel usia, pengalaman kerja, dan pendapatan?
Berdasarkan rumusan masalah, tujuan dari laporan praktikum ini adalah
Menerapkan metode K-Means clustering pada data nasabah Bank Thera untuk mengelompokkan nasabah berdasarkan karakteristik usia, pengalaman kerja, dan pendapatan.
Menentukan jumlah klaster optimal dengan menggunakan Metode Elbow.
Menganalisis dan menginterpretasikan profil tiap klaster sebagai dasar pengambilan keputusan Bank Thera.
Analisis multivariat merupakan metode statistika yang digunakan untuk menganalisis data yang memiliki lebih dari satu variabel terikat secara simultan. Tujuan utama dari analisis multivariat adalah untuk memahami hubungan antarvariabel serta mengidentifikasi pola atau struktur dalam data yang kompleks (Johnson & Wichern, 2007). Analisis multivariat banyak digunakan dalam penelitian ekonomi, pemasaran, dan perbankan untuk membantu pengambilan keputusan berbasis data.
Menurut Hair dkk. (2016), analisis multivariat memiliki berbagai metode, seperti analisis faktor, analisis diskriminan, analisis regresi berganda, dan analisis klaster. Penggunaan teknik bergantung pada tujuan penelitian dan jenis data yang digunakan. Analisis multivariat dapat membantu memahami perilaku nasabah, mengelompokkan nasabah berdasarkan karakteristik tertentu, serta menilai faktor-faktor yang memengaruhi keputusan nasabah dalam menggunakan layanan bank.
Analisis klaster atau pengelompokan merupakan salah satu teknik analisis multivariat yang digunakan untuk mengelompokkan objek ke dalam beberapa kelompok (klaster) berdasarkan kesamaan karakteristik di antara objek-objek tersebut (Han dkk., 2012). Tujuannya adalah agar objek dalam satu klaster memiliki kemiripan tinggi satu sama lain, sementara antarklaster memiliki perbedaan yang signifikan.
Metode K-Means merupakan salah satu algoritma clustering yang paling populer dan sederhana. Algoritma ini bekerja dengan cara membagi data ke dalam sejumlah k klaster yang telah ditentukan sebelumnya, lalu menghitung pusat klaster (centroid) berdasarkan rata-rata nilai dari anggota setiap klaster. Proses ini berlangsung secara iteratif hingga tidak ada lagi perubahan signifikan pada posisi centroid.
Dalam konteks perbankan, K-Means banyak diterapkan untuk segmentasi nasabah, di mana bank dapat mengelompokkan pelanggan berdasarkan variabel-variabel seperti usia, pendapatan, tingkat pendidikan, dan perilaku transaksi (Irawan dkk., 2025). Hasil pengelompokan ini dapat membantu bank, termasuk Bank Thera, dalam merancang strategi pemasaran yang lebih tepat sasaran, meningkatkan efisiensi operasional, serta mengidentifikasi peluang untuk memperkuat loyalitas nasabah di tengah persaingan industri perbankan yang semakin ketat.
> data <- read.csv("D:/KULIAH/SEMESTER 5/ANALISIS MULTIVARIAT/Bank_Personal_Loan_Modelling.csv", header = TRUE)
> data <- data[1:350, ]
> str(data)
'data.frame': 350 obs. of 14 variables:
$ ID : int 1 2 3 4 5 6 7 8 9 10 ...
$ Age : int 25 45 39 35 35 37 53 50 35 34 ...
$ Experience : int 1 19 15 9 8 13 27 24 10 9 ...
$ Income : int 49 34 11 100 45 29 72 22 81 180 ...
$ ZIPCode : int 91107 90089 94720 94112 91330 92121 91711 93943 90089 93023 ...
$ Family : int 4 3 1 1 4 4 2 1 3 1 ...
$ CCAvg : chr "Jan-60" "Jan-50" "Jan-00" "Feb-70" ...
$ Education : int 1 1 1 2 2 2 2 3 2 3 ...
$ Mortgage : int 0 0 0 0 0 155 0 0 104 0 ...
$ PersonalLoan : int 0 0 0 0 0 0 0 0 0 1 ...
$ SecuritiesAccount: int 1 1 0 0 0 0 0 0 0 0 ...
$ CDAccount : int 0 0 0 0 0 0 0 0 0 0 ...
$ Online : int 0 0 0 0 0 1 1 0 1 0 ...
$ CreditCard : int 0 0 0 0 1 0 0 1 0 0 ...
> data_km <- data[, c("Age", "Experience", "Income")]
> data_km <- na.omit(data_km)
> data_scaled <- scale(data_km)
> library(DT)
> datatable(
+ data_km,
+ options = list(
+ pageLength = 10,
+ lengthMenu = c(5, 10, 25, 50, 100)
+ ),
+ caption = 'Tabel Data Nasabah Sebelum Standarisasi'
+ )
> datatable(
+ data_scaled,
+ options = list(
+ pageLength = 10,
+ lengthMenu = c(5, 10, 25, 50, 100)
+ ),
+ caption = 'Tabel Data Nasabah Sesudah Standarisasi'
+ )
> set.seed(123)
> wcss <- numeric()
> for (k in 1:10) {
+ km <- kmeans(data_scaled, centers = k, nstart = 25)
+ wcss[k] <- km$tot.withinss
+ }
> plot(1:10, wcss, type = "b", pch = 19,
+ xlab = "Jumlah Cluster (k)",
+ ylab = "Within-Cluster Sum of Squares (WCSS)",
+ main = "Metode Elbow untuk Menentukan k Optimal")
> set.seed(123)
> kmeans_result <- kmeans(data_scaled, centers = 4, nstart = 25)
> data$Cluster <- as.factor(kmeans_result$cluster)
> hasil_cluster <- data.frame(Customer_ID = data$ID,
+ Age = data$Age,
+ Experience = data$Experience,
+ Income = data$Income,
+ Cluster = data$Cluster)
> library(DT)
> datatable(
+ hasil_cluster,
+ options = list(
+ pageLength = 10,
+ lengthMenu = c(5, 10, 25, 50, 100)
+ ),
+ caption = 'Tabel Hasil Analisis Klaster K-Means Nasabah Bank Thera'
+ )
> library(writexl)
> nama_file <- "D:/KULIAH/SEMESTER 5/ANALISIS MULTIVARIAT/Hasil_Klaster_Nasabah.xlsx"
> write_xlsx(hasil_cluster, path = nama_file)
> cluster_counts <- table(hasil_cluster$Cluster)
> tabel_frekuensi <- as.data.frame(cluster_counts)
> colnames(tabel_frekuensi) <- c("Klaster", "Banyak Anggota")
> library(knitr)
> knitr::kable(
+ tabel_frekuensi,
+ caption = "Tabel Banyak Anggota Nasabah per Klaster"
+ )
| Klaster | Banyak Anggota |
|---|---|
| 1 | 43 |
| 2 | 129 |
| 3 | 61 |
| 4 | 117 |
> cluster_mean <- aggregate(cbind(Age, Experience, Income) ~ Cluster, data = hasil_cluster, FUN = mean)
> tabel_rata2 <- as.data.frame(cluster_mean)
> colnames(tabel_rata2) <- c("Klaster", "Age", "Experience", "Income")
> library(knitr)
> knitr::kable(
+ tabel_rata2,
+ caption = "Tabel Rata-rata dari Variabel (Age, Experience, Income) untuk Setiap Klaster"
+ )
| Klaster | Age | Experience | Income |
|---|---|---|---|
| 1 | 33.55814 | 8.441861 | 136.09302 |
| 2 | 35.86047 | 10.651163 | 53.20155 |
| 3 | 54.88525 | 29.983607 | 129.47541 |
| 4 | 54.86325 | 29.350427 | 47.24786 |
> library(factoextra)
> fviz_cluster(kmeans_result, data = data_scaled,
+ geom = "point",
+ ellipse.type = "norm",
+ main = "Visualisasi K-Means Clustering Berdasarkan Age, Experience, Income")
> plot(1:10, wcss, type = "b", pch = 19,
+ xlab = "Jumlah Cluster (k)",
+ ylab = "Within-Cluster Sum of Squares (WCSS)",
+ main = "Metode Elbow untuk Menentukan k Optimal")
Berdasarkan plot Metode Elbow, dapat dilihat penurunan WCSS yang sangat tajam dari k=1 ke k=2. Penurunan signifikan masih berlanjut hingga k=3 dan k=4. Setelah k=4, kurva mulai terlihat melandai secara substansial. Penurunan WCSS dari k=5 dan seterusnya tidak lagi memberikan peningkatan kekompakan klaster yang berarti. Oleh karena itu, k=4 adalah jumlah klaster optimal yang direkomendasikan untuk dataset yang digunakan.
> library(factoextra)
> fviz_cluster(kmeans_result, data = data_scaled,
+ geom = "point",
+ ellipse.type = "norm",
+ main = "Visualisasi K-Means Clustering Berdasarkan Age, Experience, Income")
Analisis Klaster K-Means berhasil membagi 350 nasabah bank ke dalam empat segmen utama yang secara signifikan berbeda berdasarkan usia (age), pengalaman (experience), dan pendapatan (income). Klaster 1 memiliki 43 anggota, klaster 2 berjumlah 129 anggota, klaster 3 beranggotakan 61 orang, dan klaster 4 memiliki 117 anggota. Klaster 1 dan 2 mewakili segmen nasabah muda dengan rata-rata usia 33-35 tahun dan pengalaman 8-10 tahun. Berdasarkan pendapatan, klaster 1 adalah segmen dengan pendapatan tertinggi sehingga klaster ini ideal untuk diberikan penawaran produk pinjaman pribadi dan pengelolaan kekayaan. Klaster 2 merupakan segmen nasabah yang memiliki anggota terbanyak dengan rata-rata pendapatan yang cenderung rendah hingga sedang sehingga cocok diberikan penawaran produk tabungan, kartu kredit, atau pinjaman KPR pertama.
Klaster 3 dan 4 mewakili segmen nasabah lansia dengan rata-rata usia 50-60 tahun dan pengalaman 30-40 tahun. Berdasarkan pendapatan, klaster 3 memiliki pendapatan yang tinggi sehingga klaster ini mewakili nasabah mapan dengan stabilitas finansial dan kemungkinan besar menjadi target untuk produk perencanaan warisan atau pensiun premium, serta investasi jangka panjang. Sementara klaster 4 memiliki anggota dengan pendapatan yang rendah sehingga bank perlu menargetkan produk tabungan berisiko rendah dan program pensiun yang stabil bagi nasabah di klaster ini.
Analisis klaster K-Means terhadap nasabah Bank Thera berhasil mengidentifikasi empat segmen nasabah yang dikelompokkan berdasarkan usia, pengalaman, dan pendapatan. Klaster 1 dan klaster 3 mewakili segmen dengan pendapatan tinggi, sedangkan klaster 2 dan klaster 4 mewakili segmen dengan pendapatan rendah hingga sedang. Secara keseluruhan, Bank Thera harus menerapkan strategi diferensiasi produk yang jelas untuk memaksimalkan potensi nilai dari segmen berpendapatan tinggi dan memenuhi kebutuhan dasar finansial dari segmen berpendapatan lebih rendah.
Hair, J., Anderson, R., Black, B., & Babin, B. (2016). Multivariate Data Analysis. New Jersey: Pearson Education.
Han, J., Kamber, M., & Pei, J. (2012). Data mining: Concepts and techniques (3rd ed.). USA: Elsevier.
Johnson, R. A. & Wichern, D. W. (2007). Applied Multivariate Statistical Analysis. New Jersey: Pearson.
Irawan, D., Wijaya, G., & Warisaji, T. T. (2025). Penerapan Algoritma K-Means Clustering untuk Segmentasi Nasabah Bank. Jurnal Teknologi Informasi dan Rekayasa Komputer, 6(1), 47-53.