TL;DR
Skripsi data mining adalah penelitian yang pakai algoritma buat nemu pola dari data, lalu polanya dipakai buat jawab satu pertanyaan penelitian. Ide topik yang aman itu yang datasetnya udah bisa kamu unduh sebelum proposal disetujui, misalnya dari BPS, data.go.id, Kaggle, atau UCI Machine Learning Repository. Lima keluarga metode yang paling sering dipakai mahasiswa: klasifikasi, clustering, aturan asosiasi, prediksi deret waktu, dan text mining.
Topik skripsi data mining yang bagus itu topik yang datanya udah kamu pegang sebelum proposal disetujui.
Banyak mahasiswa mandek bukan gara-gara metodenya susah. Mandeknya di bab 3, waktu sadar dataset yang dibayangin ternyata ga ada wujudnya, atau harus nunggu izin dari perusahaan yang ga bakal balas email.
Di bawah ini ada 20 ide topik. Tiap ide udah dipasangin metode dan sumber dataset yang beneran bisa kamu unduh hari ini, plus contoh kasus dengan angka dari dataset latihan Ngulik Data.
Skripsi data mining adalah penelitian yang pakai algoritma buat nemu pola dari data dalam jumlah besar, lalu polanya dipakai buat jawab satu pertanyaan penelitian. Bentuknya bisa klasifikasi, clustering, aturan asosiasi, prediksi deret waktu, atau text mining. Yang dinilai penguji bukan cuma akurasi model, tapi juga alasan kamu milih metode itu.
Kerangka kerja yang paling sering dipakai di bab 3 namanya CRISP-DM. Isinya enam tahap: pahami masalah bisnis, pahami data, siapin data, bikin model, evaluasi, lalu pakai hasilnya.
Tahap paling makan waktu bukan bikin model. Nyiapin data biasanya yang paling lama, apalagi kalau datanya berantakan. Kalau kamu belum kenal istilah kualitas data, baca dulu glossary data quality.
Pilih dari data ke pertanyaan, bukan sebaliknya. Cari dulu dataset publik yang jumlah barisnya cukup dan kolomnya lengkap, baru rumusin pertanyaan penelitian yang bisa dijawab pakai kolom yang ada. Cara ini motong risiko terbesar skripsi data mining, yaitu judul udah disetujui tapi datanya ga pernah ketemu.
Dua puluh ide di bawah dikelompokin per keluarga metode. Tiap baris nyantumin sumber dataset yang aksesnya terbuka, jadi kamu bisa cek ketersediaannya sebelum ngajuin judul.
| No | Ide topik | Sumber dataset |
|---|---|---|
| 1 | Prediksi kelulusan tepat waktu mahasiswa pakai Decision Tree vs Random Forest | Data akademik kampus sendiri (minta ke bagian akademik, anonimkan NIM) |
| 2 | Klasifikasi kelayakan pengajuan kredit UMKM pakai Naive Bayes | UCI Machine Learning Repository, dataset Statlog German Credit |
| 3 | Deteksi penyakit diabetes dari data pemeriksaan dasar pakai KNN | UCI Pima Indians Diabetes |
| 4 | Klasifikasi status gizi balita berdasarkan data posyandu | Data posyandu kelurahan atau publikasi Kemenkes |
| 5 | Prediksi karyawan resign pakai Logistic Regression dan SVM | Kaggle, dataset HR Analytics Employee Attrition |
| No | Ide topik | Sumber dataset |
|---|---|---|
| 6 | Segmentasi pelanggan toko ritel pakai K-Means dan analisis RFM | Transaksi POS toko lokal, atau UCI Online Retail |
| 7 | Pengelompokan kabupaten di Indonesia berdasarkan indikator kemiskinan | BPS, tabel dinamis kemiskinan per kabupaten |
| 8 | Klaster kecamatan rawan banjir dari data curah hujan dan tutupan lahan | data.go.id dan BMKG |
| 9 | Segmentasi mahasiswa berdasarkan pola aktivitas di LMS kampus | Log Moodle kampus sendiri |
Kalau istilah segmentasi masih abu-abu buat kamu, cek dulu penjelasan segmentation biar bab 2 kamu ga cuma nyalin definisi buku.
| No | Ide topik | Sumber dataset |
|---|---|---|
| 10 | Analisis keranjang belanja minimarket pakai algoritma Apriori | Struk transaksi minimarket, minimal 3 bulan |
| 11 | Perbandingan Apriori dan FP-Growth pada data transaksi apotek | Data penjualan apotek lokal |
| 12 | Rekomendasi mata kuliah pilihan dari pola pengambilan KRS | Data KRS kampus sendiri |
| No | Ide topik | Sumber dataset |
|---|---|---|
| 13 | Peramalan penjualan bulanan UMKM pakai ARIMA | Catatan penjualan UMKM mitra, 24 bulan ke belakang |
| 14 | Prediksi harga cabai merah di pasar tradisional | Pusat Informasi Harga Pangan Strategis (PIHPS) |
| 15 | Peramalan jumlah penumpang kereta api pakai Holt-Winters | BPS, statistik transportasi |
| 16 | Prediksi konsumsi listrik rumah tangga pakai LSTM | UCI Individual Household Electric Power Consumption |
| No | Ide topik | Sumber dataset |
|---|---|---|
| 17 | Analisis sentimen ulasan aplikasi dompet digital di Google Play | Scraping ulasan Google Play pakai library google-play-scraper |
| 18 | Klasifikasi topik keluhan warga di kanal pengaduan daerah | Kanal LAPOR daerah masing-masing |
| 19 | Deteksi berita hoaks berbahasa Indonesia pakai TF-IDF dan SVM | Dataset hoaks Mafindo dan arsip cek fakta |
| 20 | Pengelompokan abstrak skripsi pakai LDA buat memetakan tema penelitian | Repositori skripsi kampus sendiri |
Dataset aman itu yang lisensinya jelas, sumbernya bisa disitasi, dan datanya ga memuat identitas pribadi. Empat sumber yang paling sering lolos sidang: BPS buat data statistik resmi, data.go.id buat data pemerintah, Kaggle buat dataset latihan, dan UCI Machine Learning Repository buat dataset benchmark yang udah banyak dirujuk jurnal.
Kalau kamu ambil data dari perusahaan atau kampus, hapus dulu kolom identitas. Nama, NIK, nomor HP, alamat lengkap. Ganti NIM jadi kode urut.
Satu hal yang sering kelewat: catat tanggal unduh datasetnya. Data BPS bisa berubah kalau ada revisi, dan penguji suka nanya versi mana yang kamu pakai.
Aku pakai dataset latihan toko_berkah dari Ngulik Data buat nunjukin alur ide nomor 6. Isinya 4.812 transaksi dari 1.240 pelanggan selama 12 bulan.
Langkahnya: hitung tiga angka per pelanggan (recency, frequency, monetary), lalu kelompokin pakai K-Means.
import pandas as pd
from sklearn.preprocessing import StandardScaler
from sklearn.cluster import KMeans
df = pd.read_csv("toko_berkah_transaksi.csv", parse_dates=["tanggal"])
akhir = df["tanggal"].max()
rfm = df.groupby("id_pelanggan").agg(
recency=("tanggal", lambda s: (akhir - s.max()).days),
frequency=("id_transaksi", "nunique"),
monetary=("total", "sum"),
)
X = StandardScaler().fit_transform(rfm)
rfm["segmen"] = KMeans(n_clusters=4, n_init=10, random_state=42).fit_predict(X)
print(rfm.groupby("segmen").agg(
jumlah=("recency", "size"),
rata_belanja=("monetary", "mean"),
).round(0))
Hasilnya empat segmen. Yang menarik ada di segmen paling kecil: 96 pelanggan, atau 7,7 persen dari total, nyumbang Rp 214 juta dari total omzet Rp 683 juta. Artinya kurang dari 8 persen pelanggan bawa 31 persen pendapatan.
Angka kayak gini yang bikin bab 4 kamu ada isinya. Bukan cuma tabel akurasi, tapi temuan yang bisa dipakai pemilik toko.
Buat milih jumlah klaster, jangan asal 4. Pakai metode elbow atau silhouette score. Penjelasan resminya ada di dokumentasi clustering scikit-learn.
Ga ada angka baku dari kampus, tapi patokan yang umum dipakai dosen pembimbing itu minimal 500 sampai 1.000 baris buat klasifikasi dan clustering. Buat deret waktu, yang penting panjang periodenya, minimal 24 titik bulanan biar pola musimannya kelihatan. Kalau datamu cuma 100 baris, hasil modelnya bakal goyang tiap kali kamu ganti pembagian data latih dan uji.
Boleh pakai apa aja asal bisa kamu pertanggungjawabkan. Python dan R paling fleksibel. RapidMiner dan Orange enak buat yang belum kuat coding, karena alurnya tinggal seret dan lepas. Bahkan Excel masih kepakai buat tahap persiapan data. Yang dinilai penguji itu ketepatan metode dan kejelasan alurnya, bukan merek tool-nya.
Bedanya tipis dan sering tumpang tindih. Data mining fokusnya nemu pola yang bisa dijelaskan dari data yang udah ada, misalnya aturan asosiasi atau segmentasi. Machine learning fokusnya bikin model yang akurat buat prediksi data baru. Banyak kampus di Indonesia pakai kedua istilah ini secara bergantian, jadi ikutin aja istilah yang dipakai program studimu.
Boleh, dan banyak skripsi lolos pakai itu. Syaratnya dua: sitasi sumbernya lengkap termasuk nama pengunggah dan tanggal akses, dan kamu kasih nilai tambah di analisisnya. Kalau kamu cuma ngulang notebook yang udah ada di Kaggle, penguji bakal nemu. Tambahin perbandingan algoritma atau kaitan sama konteks Indonesia biar ada kontribusinya.
Biasa terjadi dan ada solusinya. Anonimkan semua identitas, ganti nama perusahaan jadi "Perusahaan X", dan lampirkan surat izin penelitian di bagian lampiran. Sebagian kampus juga ngizinin kamu cuma nampilin ringkasan statistik tanpa data mentah. Konfirmasi ke pembimbing sejak awal, jangan nunggu bab 4 selesai baru nanya.
Tiga hal yang paling nentuin lancar atau nggaknya skripsi data mining kamu: dataset udah di tangan sebelum judul disetujui, metrik evaluasi ditulis di proposal, dan minimal ada dua algoritma buat dibandingin.
Kalau Python kamu masih goyang, mulai dari roadmap belajar Python untuk data analyst. Buat olah array dan operasi angka yang jadi dasar semua library data mining, lanjut ke NumPy dasar untuk analis data.
Punya ide topik yang belum ada di daftar ini? Tulis di kolom komentar, siapa tau kepakai sama yang lagi nyari judul juga.
Mau praktek langsung? Mulai latihan SQL gratis
Latihan interaktif, langsung di browser.
Kolom datetime nyimpen tanggal, jam, hari, semuanya nempel jadi satu. Accessor .dt di pandas ngeluarin tiap bagian jadi kolom sendiri buat dianalisa.
Nama toko ketik campur huruf besar-kecil, spasi nyasar di ujung, atau kode produk nempel jadi satu. Accessor .str di pandas ngerapiin semua itu tanpa loop.
Model machine learning cuma ngerti angka, bukan teks kayak merah atau biru. get_dummies ngubah kolom kategori jadi kolom 0/1 dalam satu baris kode.