Sistem Market Basket Untuk Menentukan Tata Letak Produk Pada Suatu Swalayan Menggunakan Algoritma K-Means Clustering

(1)

MENGGUNAKAN ALGORITMA

K-MEANS CLUSTERING

SKRIPSI

STEFFI ANDINA SEBAYANG

071402041

PROGRAM STUDI TEKNOLOGI INFORMASI

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

2012


(2)

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Teknologi Informasi

STEFFI ANDINA SEBAYANG 071402041

PROGRAM STUDI TEKNOLOGI INFORMASI

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN 2012


(3)

PERSETUJUAN

Judul : SISTEM MARKET BASKET UNTUK

MENENTUKAN TATA LETAK PRODUK PADA

SUATU SWALAYAN MENGGUNAKAN

ALGORITMA K-MEANS CLUSTERING

Kategori : SKRIPSI

Nama : STEFFI ANDINA SEBAYANG

Nomor Induk Mahasiswa : 071402041

Program Studi : SARJANA (S1) TEKNOLOGI INFORMASI Departemen : TEKNOLOGI INFORMASI

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI

INFORMASI (Fasilkom-TI) UNIVERSITAS SUMATERA UTARA

Diluluskan di Medan, Juni 2012

Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Dra. Elly Rosmaini, M.Si DR. Erna Budhiarti Nababan, M.IT

NIP. 19600520 198503 2002 NIP. -

Diketahui/Disetujui oleh

Program Studi S1 Teknologi Informasi Ketua,


(4)

PERNYATAAN

SISTEM MARKET BASKET UNTUK MENENTUKAN TATA LETAK PRODUK PADA SUATU SWALAYAN MENGGUNAKAN ALGORITMA

K-MEANS CLUSTERING

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, Juni 2012

Steffi Andina Sebayang 071402041


(5)

PENGHARGAAN

Alhamdulilah, puji dan syukur penulis panjatkan kehadirat Allah SWT, serta shalawat dan salam kepada junjungan kita nabi Muhammad SAW, karena atas berkah, rahmat dan hidayahnya penulis dapat menyelesaikan penyusunan skripsi ini. Ucapan terima kasih yang tidak terhingga kepada Allah SWT yang selalu membimbing dan mengajarkan saya akan pentingnya kesabaran dan tanggung jawab selama penyusunan skripsi ini.

Dalam penulisan skripsi ini penulis banyak mendapatkan bantuan serta dorongan dari pihak lain. Dalam kesempatan ini dengan segala kerendahan hati, penulis mengucapkan terima kasih kepada:

1. Kedua orang tua penulis, yaitu Ayahanda alm. Ir. Rasimin Sebayang yang saya yakin beliau bersama Allah selalu memberikan doa dan dukungannya dimanapun beliau berada serta Ibunda saya Hj. Isyah Sembiring yang terus menerus mengasihi, membimbing dan terus mendukung penulis di dalam doa beliau sehingga dapat menyelesaikan skripsi ini. Serta kepada semua abang-abang saya Titon Faisal Sebayang, SE, Topaz Halim Roy Candra Sebayang, ST, MT, Tri Endi Sebayang yang telah memberikan dukungan moril maupun materi kepada penulis selama ini, dan seluruh keluarga besar atas perhatiannya dan dukungannya kepada penulis.

2. Ketua program studi Teknologi Informasi, Bapak Prof. Opim Sitompul, M.Sc dan Sekteraris Program Studi Teknologi Informasi Bapak Drs. Sawaluddin, M.IT, Dekan dan Pembantu Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara, semua dosen pada Program Studi Teknologi Informasi dan pegawai Teknologi Informasi Ibu Delima Harahap, Ibu Bamelia, Kak Maya Sofia, S.Kom, Kak Naumi Syah, Amd, Kak Wardah Chairani, SE dan Bang Faisal.

3. Ibu Dr. Erna Budhiarti Nababan, M.IT dan Ibu Dra. Elly Rosmaini, M.Si selaku dosen pembimbing penulis yang telah meluangkan waktu, tenaga dan pikiran untuk menyelesaikan skripsi ini.

4. Ibu Dian Rachmawati, S.Si, M.Kom dan Bapak Deddy Arisandi, ST, M.Kom selaku dosen pembanding yang telah banyak mamberikan petunjuk, saran dan kritik dalam menyelesaikan skripsi ini.

5. Teman-teman mahasiswa Teknologi Informasi stambuk 2007 Boy Utomo Manalu, Anandia Zelvina, Nurul Dwi Rahma Putri, Khairunnisa, Agnes Margareta, Ita Deniska, Polin Pardede, Musyafa Hutagalung dan Bambang


(6)

Dalam penyusunan skripsi ini penulis menyadari bahwa masih banyak kekurangan, untuk itu penulis mengharapkan saran dan kritik yang bersifat membangun dari semua pihak demi kesempurnaan skripsi ini.

Akhir kata penulis mengharapkan semoga skripsi ini dapat bermanfaat dan membantu semua pihak yang memerlukannya.


(7)

ABSTRAK

Penentuan tata letak produk pada swalayan merupakan hal penting yang harus diperhatikan oleh pihak manajemen swalayan. Market basket analysis adalah salah satu teknik data mining yang dapat menemukan pola yang berupa produk-produk yang sering dibeli bersamaan dalam sebuah transaksi. Pada skripsi ini akan dijelaskan bagaimana market basket analysis dengan menggunakan algoritma k-means clustering berdasarkan kebiasaan konsumen berbelanja untuk menghasilkan suatu model tata letak produk. Penelitian ini menggunakan data yang diperoleh dari struk-struk belanja pada swalayan. Algoritma k-means clustering digunakan untuk mempartisi data ke dalam cluster sehingga data yang memiliki karakteristik yang sama dikelompokkan ke dalam satu cluster yang sama dan data yang mempunyai karakteristik yang berbeda dikelompokkan ke dalam kelompok lain. Hasil dari penelitian ini menghasilkan sebuah model tata letak produk yang dapat digunakan oleh pihak manajemen swalayan.


(8)

SYSTEM MARKET BASKET TO DETERMINE THE LAYOUT OF THE PRODUCT IN A SUPERMARKET USING K-MEANS CLUSTERING

ALGORITHM

ABSTRACT

Determination of the products on supermarket layout is an important thing that must be considered by the management department. Market Basket Analysis is one technique on Data Mining that is used to discover patterns of the products often purchased together in a transaction. In this research we applied market basket analysis with k-means clustering algorithm based on consumer shopping habits to produce a model of the product layout. Data on the research were taken from structural groceries on supermarket receipts. K-means clustering algorithm is used to partition the data into clusters so that the data that has same characteristics are grouped into the same cluster and the data that has different characteristics are grouped into other groups. Result of this research produce a model of a product layout that can be used by the management department.


(9)

DAFTAR ISI

Halaman

Persetujuan ii

Pernyataan iii

Penghargaan iv

Abstrak vi

Abstract vii

Daftar Isi viii

Daftar Tabel x

Daftar Gambar xi

BAB 1 Pendahuluan

1.1Latar Belakang 1

1.2 Rumusan Masalah 3

1.3 Batasan Masalah 3

1.4 Tujuan Penelitian 4

1.5 Manfaat Penelitian 4

1.6 Metode Penelitian 4

1.7 Sistematika Penulisan 5

BAB 2 Landasan Teori

2.1. Defenisi Swalayan 7

2.2. Data Mining : Knowledge Discovery Databases (KDD) 7 2.2.1 Tahapan Data Mining 9 2.2.2 Pengelompokan Data Mining 11

2.3. Clustering 14

2.4 Algoritma K-Means 19

2.5 Market Basket Analysis 21

BAB 3 Analisis Dan Perancangan Sistem

3.1. Data yang Digunakan 24

3.2. Praproses Data 24

3.2.1 Penentuan Kelompok Jenis Produk 24

3.2.2 Penentuan Record 27

3.2.3 Penentuan Kelompok Berdasarkan Record 27

3.3. Cleaning Data 29

3.4. Uji Coba Dengan Algoritma K-Means Clsutering 31

3.5. Perancangan Antarmuka Sistem 40

3.5.1 Perancangan Flowchart Sistem 40 3.5.2 Perancangan Tampilan Sistem 42 BAB 4 Implementasi Dan Pengujian Sistem


(10)

4.2.2 Hasil Mean Clustering 51

4.3. Hasil Clustering 81

BAB 5 Kesimpulan Dan Saran

5.1. Kesimpulan 84

5.2. Saran 84

Daftar Pustaka 86


(11)

DAFTAR TABEL

Halaman

Tabel 3.1 Dataset Penjualan Produk 27

Tabel 3.2 Dataset Penjualan Produk Dengan 7 Atribut 29

Tabel 3.3 Dataset yang Telah Dicleaning 31

Tabel 3.4 Pemberian Nama Cluster Pada Masing-Masing Data 32 Tabel 3.5 Hasil Centroid Awal Masing-Masing Cluster 34 Tabel 3.6 Hasil Penghitungan Jarak Setiap Data Masing-Masing Cluster 36 Tabel 3.7 Anggota Data Awal Masing-Masing Cluster 37


(12)

DAFTAR GAMBAR

Halaman

Gambar 2.1 Kajian Umum Data Mining 8

Gambar 2.2 Proses KDD 10

Gambar 3.1 Contoh Struk Belanjaan 25

Gambar 3.2 Flowchart Sistem 41

Gambar 3.3 Rancangan Tampilan Form Upload Data 42 Gambar 3.4 Rancangan Tampilan Cleaning Data dan Pemberian Nama Cluster 43 Gambar 3.5 Rancangan Tampilan Hasil Iterasi N 44

Gambar 3.6 Rancangan Tampilan Hasil Akhir 46

Gambar 4.1 Dataset Penjualan Produk 50

Gambar 4.2 Upload Data Struk 50

Gambar 4.3 Cleaning Data dan Pemberian Nama Cluster 53

Gambar 4.4 Iterasi 1 60

Gambar 4.5 Iterasi 2 66

Gambar 4.6 Iterasi 3 72


(13)

ABSTRAK

Penentuan tata letak produk pada swalayan merupakan hal penting yang harus diperhatikan oleh pihak manajemen swalayan. Market basket analysis adalah salah satu teknik data mining yang dapat menemukan pola yang berupa produk-produk yang sering dibeli bersamaan dalam sebuah transaksi. Pada skripsi ini akan dijelaskan bagaimana market basket analysis dengan menggunakan algoritma k-means clustering berdasarkan kebiasaan konsumen berbelanja untuk menghasilkan suatu model tata letak produk. Penelitian ini menggunakan data yang diperoleh dari struk-struk belanja pada swalayan. Algoritma k-means clustering digunakan untuk mempartisi data ke dalam cluster sehingga data yang memiliki karakteristik yang sama dikelompokkan ke dalam satu cluster yang sama dan data yang mempunyai karakteristik yang berbeda dikelompokkan ke dalam kelompok lain. Hasil dari penelitian ini menghasilkan sebuah model tata letak produk yang dapat digunakan oleh pihak manajemen swalayan.


(14)

SYSTEM MARKET BASKET TO DETERMINE THE LAYOUT OF THE PRODUCT IN A SUPERMARKET USING K-MEANS CLUSTERING

ALGORITHM

ABSTRACT

Determination of the products on supermarket layout is an important thing that must be considered by the management department. Market Basket Analysis is one technique on Data Mining that is used to discover patterns of the products often purchased together in a transaction. In this research we applied market basket analysis with k-means clustering algorithm based on consumer shopping habits to produce a model of the product layout. Data on the research were taken from structural groceries on supermarket receipts. K-means clustering algorithm is used to partition the data into clusters so that the data that has same characteristics are grouped into the same cluster and the data that has different characteristics are grouped into other groups. Result of this research produce a model of a product layout that can be used by the management department.


(15)

BAB I

PENDAHULUAN

1.1Latar Belakang

Banyak perusahaan baik besar maupun kecil yang dapat mengumpulkan data transaksi dengan cepat serta menghasilkan data yang sangat besar. Pertumbuhan data yang begitu pesat menciptakan suatu kondisi “rich of data, but poor of information” karena data yang dihasilkan tidak dimanfaatkan dengan maksimal dan hanya akan tertimbun sia-sia.

Swalayan termasuk suatu perusahaan yang setiap harinya memiliki banyak data mulai dari data pembelian, data penjualan maupun data transaksi. Pada umumnya swalayan hanya memanfaatkan data tersebut sebatas untuk pembuat laporan saja. Data transaksi penjualan yang terkumpul dan tersimpan dapat memberikan pengetahuan yang bermanfaat bagi manajemen perusahaan dalam melakukan usaha-usaha yang terkait dengan peningkatan penjualan misalnya dalam hal menentukan strategi pemasaran dan untuk mendukung keputusan bagi perusahaan tersebut.

Konsumen yang berbelanja di swalayan biasanya memiliki alasan mengapa mereka memilih berbelanja di swalayan daripada di pasar tradisional. Karena swalayan dapat memberikan apa yang mereka inginkan seperti kenyamanan, kebersihan, kecepatan dan kerapian produk. Banyak konsumen yang mengeluhkan tentang kerapian produk pada swalayan, dimana tata letak produknya tidak strategis dan tepat, sehingga membuat konsumen sulit untuk mendapatkan produk-produk yang mereka butuhkan, juga akan menghabiskan waktu yang cukup lama hanya untuk menemukan produk-produk tersebut. Tata


(16)

dibuat sebuah model sistem yang dapat menentukan pola tata letak produk pada swalayan.

Market basket analysis adalah salah satu cara yang digunakan untuk menganalisis data penjualan dari suatu perusahaan. Proses ini menganalisis buying habits konsumen dengan menemukan asosiasi antar item-item yang berbeda yang diletakkan konsumen dalam shopping basket. Hasil yang telah didapatkan ini nantinya dapat dimanfaatkan oleh perusahaan retail seperti toko atau swalayan untuk mengembangkan strategi pemasaran dengan melihat item-item mana saja yang sering dibeli secara bersamaan oleh konsumen (Han & Kamber. 2006).

Market basket dapat menemukan pola yang berupa produk-produk yang sering dibeli bersamaan atau cenderung muncul bersama dalam sebuah transaksi. Perusahaan lalu dapat meggunakan pola ini untuk menempatkan produk yang sering dibeli bersamaan ke dalam sebuah area yang berdekatan. Penerapan teknik market basket analysis pada perancangan tata letak produk di swalayan sudah dilakukan oleh beberapa peneliti, antara lain metode aturan asosiasi (Widianti & Soetisna, 2003), Wijoyo (2011) menggunakan algoritma Apriori untuk membuat sistem penunjang keputusan penempatan produk di pasar swalayan. Sementara itu aplikasi K-Means diterapkan dalam pengelompokan mahasiswa berdasarkan nilai body mass index (BMI) & ukuran kerangka (Rismawan & Kusumadewi, 2008). Algoritma K-Means juga telah digunakan untuk pengelompokan data ekspresi gen (Widyastono, 2008). Dalam hal lain Andayani (2007) menerapkan algoritma K-Means untuk pembentukan cluster dalam database knowledge discovery. K-Means juga digunakan untuk pengelompokan dokumen yang digabungkan dengan Singuler Value Decomposition (Umran & Abidin, 2009).

Dari beberapa teknik clustering yang paling sederhana dan umum dikenal adalah clustering K-Means (Santosa, 2007). K-Means merupakan salah satu metode data clustering non hirarki yang mempartisi data ke dalam cluster sehingga data yang memiliki karakteristik yang sama dikelompokkan ke dalam


(17)

satu cluster yang sama dan data yang mempunyai karakteristik yang berbeda dikelompokkan ke dalam kelompok lain (Agusta, 2007).

Berdasarkan uraian diatas, penulis berkeinginan untuk membuat sebuah model dalam menentukan tata letak produk pada suatu swalayan dengan menggunakan algoritma K-Means Clustering.

1.2Rumusan Masalah

Manajemen sering mengalami kesulitan untuk mengelompokkan produk-produk yang ada pada swalayan. Untuk mengatasi hal tersebut diperlukan sebuah model yang dapat membantu manajemen menentukan tata letak produk pada swalayan tersebut untuk memudahkan konsumen dalam mencari produk yang mereka butuhkan.

1.3Batasan Masalah

Agar pembahasan tidak menyimpang dari ruang lingkup pembahasan, maka perlu dibuat suatu batasan masalah sebagai berikut:

1. Data yang dianalisis adalah data transaksi penjualan produk yang diperoleh dari swalayan dari bulan oktober 2011 sampai januari 2012. 2. Algoritma yang digunakan adalah algortima K-Means Clustering. 3. Perancangan program menggunakan bahasa pemrograman PHP.


(18)

1.4Tujuan Penelitian

Tujuan penelitian ini adalah:

1. Membuat sebuah model untuk menentukan tata letak produk pada swalayan.

2. Menerapkan K-Means Clustering untuk memudahkan dalam menentukan tata letak produk pada swalayan.

1.5Manfaat Penelitian

Didapatkan sebuah model tata letak produk pada swalayan yang dapat digunakan oleh pihak manajemen untuk meningkatkan penjualan produk-produk pada swalayan tersebut.

1.6Metodologi Penelitian

Metodologi penelitian yang digunakan dalam pembuatan skripsi ini adalah:

1. Studi Literatur

Studi literatur yang digunakan dalam penulisan skripsi ini adalah mengumpulkan bahan referensi mengenai Sistem Market Basket Analysis dengan menggunakan Algoritma K-Means Clustering dari berbagai buku, jurnal, artikel dan beberapa referensi lainnya.

2. Analisa Permasalahan

Pada tahap ini akan dilakukan analisis dengan teknik market basket pada data transaksi penjualan yaitu struk belanja.

3. Pengumpulan Data

Pada tahap ini data yang dikumpulkan berupa data transaksi penjulan produk pada swalayan.


(19)

4. Preposessing Data dan Outliers

Mempersiapkan data yang akan ditambang dan menemukan outliers dari data yang ditambang.

5. Perancangan Sistem

Pada tahap ini dilakukan perancangan antarmuka. Proses perancangan dilakukan berdasarkan hasil analisis studi literatur yang telah didapatkan. 6. Implementasi Sistem

Pada tahap ini dilakukan proses implementasi pengkodean program dalam aplikasi komputer menggunakan bahasa pemrograman yang telah dipilih yang sesuai dengan analisis dan perancangan yang sudah dilakukan. 7. Pengujian

Pada tahap ini dilakukan proses pengujian dan percobaan terhadap sistem sesuai dengan kebutuhan yang ditentukan sebelumnya serta memastikan program yang dibuat berjalan seperti yang diharapkan.

8.Dokumentasi dan Penyusunan Laporan

Pada tahap ini dilakukan pembuatan dokumentasi sistem, lengkap dengan analisis yang diperoleh dan dokumentasi hasil analisis dan implementasi dari algoritma K-Means Clustering.

1.7Sistematika Penulisan

Adapun langkah-langkah dalam menyelesaikan penelitian ini adalah sebagai berikut:

BAB 1 : PENDAHULUAN

Bab ini akan menjelaskan mengenai latar belakang pemilihan judul skripsi “Sistem Market Basket Untuk Menentukan Tata Letak Produk Pada Suatu Swalayan Menggunakan Algoritma K-Means Clustering”, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metodologi penelitian, dan sistematika penulisan.


(20)

BAB 2 : LANDASAN TEORI

Bab ini membahas mengenai teori-teori yang berkaitan dengan perancangan model tata letak produk pada suatu swalayan.

BAB 3 : ANALISIS DAN PERANCANGAN SISTEM

Bab ini berisikan paparan analisis terhadap permasalahan dan penyelesaian persoalan terhadap sistem market basket dengan menggunakan K-Means Clustering.

BAB 4 : IMPLEMENTASI DAN PENGUJIAN SISTEM

Bab ini berisi implementasi perancangan sistem dari hasil analisis dan perancangan yang sudah dibuat, serta menguji sistem untuk menemukan kelebihan dan kekurangan pada sistem yang dibuat.

BAB 5 : KESIMPULAN DAN SARAN

Bab ini memuat kesimpulan dari keseluruhan uraian bab-bab sebelumnya dan saran-saran yang diharapkan dapat bermanfaat dalam pengembangan selanjutnya.


(21)

BAB II

LANDASAN TEORI

2.1 Defenisi Swalayan

Swalayan adalah sebuah toko yang menjual segala kebutuhan sehari-hari. Barang-barang yang dijual di swalayan biasanya adalah Barang-barang-Barang-barang kebutuhan sehari-hari. Seperti bahan makanan, minuman dan barang kebutuhan seperti tissue dan sebagainya.

Biasanya setelah berbelanja di swalayan, konsumen akan menerima struk belanjaan dari pihak swalayan. Struk belanja digunakan oleh swalayan untuk diberikan kepada konsumen seberapa banyak produk yang dibeli serta jumlah harga produk per unitnya serta total dari keseluruhannya. Struk belanja ini juga merupakan bukti transaksi konsumen kepada swalayan terhadap produk-produk apa saja yang telah dibeli.

2.2. Data Mining : Knowledge Discovery Databases (KDD)

Data mining adalah serangkaian proses untuk menggali nilai tambah dari suatu kumpulan data berupa pengetahuan yang selama ini tidak diketahui secara manual (Moertini, 2002). Secara umum data mining memiliki beberapa kajian. Seperti yang dapat dilihat pada Gambar 2.1, data mining merupakan pusat dari beberapa kajian. Diantaranya adalah estimasi, seleksi variabel, clustering, visualisasi, market basket analysis dan klasifikasi. Semua kajian tersebut termasuk ke dalam data mining.


(22)

Gambar 2.1 Kajian Umum Data Mining (Sumber : Santosa 2007)

Data mining merupakan bidang dari beberapa bidang keilmuan yang menyatukan teknik dari pembelajaran mesin, pengenalan pola, statistik, database dan visualisasi untuk penanganan permasalahan pengambilan informasi dari database yang besar (Larose, 2005). Data mining adalah analisis otomatis dari data yang berjumlah besar atau kompleks dengan tujuan untuk menemukan pola atau kecendrungan yang penting yang biasanya tidak disadari keberadaannya (Moertini, 2002). Hal-hal penting yang terkait dengan data mining adalah (Luthfi & Kusrini, 2009):

1. Data mining merupakan suatu proses otomatis terhadap data yang sudah ada. 2. Data yang akan diproses berupa data yang sangat besar.

3. Tujuan data mining adalah mendapatkan hubungan atau pola yang mungkin memberikan indikasi yang bermanfaat.

Hubungan yang dicari dalam data mining dapat berupa hubungan antara dua atau lebih objek dalam satu dimensi yang sama. Misalnya dalam dimensi produk dapat melihat keterkaitan pembelian suatu produk dengan produk yang lain. Selain itu, hubungan juga dapat dilihat antara dua atau lebih atribut dan dua atau lebih objek

Estimasi Klasifikasi Clustering Visualisasi Seleksi Variabel Market Basket Analysis Data Mining


(23)

(Ponniah, 2001). Masalah-masalah yang sesuai untuk diselesaikan dengan teknik data mining dapat dicirikan dengan (Piatetsky & Shapiro, 2006):

1. Memerlukan keputusan yang bersifat knowledge-based. 2. Mempunyai lingkungan yang berubah.

3. Metode yang ada sekarang bersifat sub-optimal. 4. Tersedia data yang bisa diakses, cukup dan relevan.

5. Memberikan keuntungan yang tinggi jika keputusan yang diambil tepat.

Kata mining mempunyai arti yaitu usaha untuk mendapatkan sedikit barang berharga dari sejumlah besar material dasar. Data mining memiliki akar yang panjang dari bidang ilmu seperti kecerdasan buatan (artificial intelegent), machine learning, statistik dan database. Beberapa metode yang sering disebut-sebut dalam literatur data mining antara lain clustering, classification, association rules mining, neural network, genetic algorithm dan lain-lain (Moertini, 2002).

Data mining sering digunakan untuk membangun model prediksi/inferensi yang bertujuan untuk memprediksi tren masa depan atau perilaku berdasarkan analisis data terstruktur. Dalam konteks ini, prediksi adalah pembangunan dan penggunaan model untuk menilai kelas dari contoh tanpa label, atau untuk menilai jangkauan nilai atau contoh yang cenderung memiliki nilai atribut. Klasifikasi dan regresi adalah dua bagian utama dari masalah prediksi, dimana klasifikasi digunakan untuk memprediksi nilai diskrit atau nominal sedangkan regresi digunakan untuk memprediksi nilai terus-menerus atau nilai yang ditentukan (Larose, 2005).

2.2.1. Tahapan Data Mining

Istilah data mining dan knowledge discovery in databases (KDD) sering kali digunakan secara bergantian untuk menjelaskan proses penggalian informasi tersembunyi dalam suatu basis data yang besar. Sebenarnya kedua istilah tersebut


(24)

Data yang ada, tidak dapat langsung diolah dengan menggunakan sistem data mining. Data tersebut harus dipersiapkan terlebih dahulu agar hasil yang diperoleh dapat lebih maksimal, dan waktu komputasinya lebih minimal. Proses persiapan data ini sendiri dapat mencapai 60 % dari keseluruhan proses dalam data mining. Proses KDD secara garis besar terdiri dari 5 tahapan yaitu data selection, pre-processing/cleaning, transformation, data mining dan interpretation/evaluation. Proses KDD digambarkan pada Gambar 2.2 berikut:

Gambar 2.2 Proses KDD

(Sumber : Fayyad 1996)

Berikut ini merupakan tahapan dari proses KDD (Fayyad, 1996):

1. Data Selection

Pemilihan (seleksi) data dari sekumpulan data operasional perlu dilakukan sebelum tahap penggalian informasi dalam KDD dimulai. Data hasil seleksi yang akan digunakan untuk proses data mining, disimpan dalam suatu berkas, terpisah dari basis data operasional.

2. Pre-processing/Cleaning


(25)

antara lain membuang duplikasi data, memeriksa data yang inkonsisten dan memperbaiki kesalahan pada data, seperti kesalahan cetak (tipografi). Juga dilakukan proses enrichment, yaitu proses “memperkaya” data yang sudah ada dengan data atau informasi lain yang relevan dan diperlukan untuk KDD, seperti data atau informasi eksternal.

3. Transformation

Coding adalah proses transformasi pada data yang telah dipilih, sehingga data tersebut sesuai untuk proses data mining. Proses coding dalam KDD merupakan proses kreatif dan sangat tergantung pada jenis atau pola informasi yang akan dicari dalam basis data.

4. Data Mining

Data mining adalah proses mencari pola atau informasi menarik dalam data terpilih dengan menggunakan teknik atau metode tertentu. Teknik, metode atau algoritma dalam data mining sangat bervariasi. Pemilihan metode atau algoritma yang tepat sangat bergantung pada tujuan dan proses KDD secara keseluruhan.

5. Interpretation/Evaluation

Pola informasi yang dihasilkan dari proses data mining perlu ditampilkan dalam bentuk yang mudah dimengerti oleh pihak yang berkepentingan. Tahap ini merupakan bagian dari proses KDD yang disebut interpretation. Tahap ini mencakup pemeriksaan apakah pola atau informasi yang ditemukan bertentangan dengan fakta atau hipotesis yang ada sebelumnya.

2.2.2 Pengelompokan Data Mining

Data mining dibagi menjadi beberapa kelompok berdasarkan tugas yang dapat dilakukan, yaitu (Larose, 2005):


(26)

1. Deskripsi

Terkadang penelitian analisis secara sederhana ingin mencoba mencari cara untuk menggambarkan pola dan kecenderungan yang terdapat dalam data. Sebagai contoh, petugas pengumpulan suara mungkin tidak dapat menemukan keterangan atau fakta bahwa siapa yang tidak cukup profesional akan sedikit didukung dalam pemilihan presiden. Deskripsi dari pola dan kecenderungan sering memberikan kemungkinan penjelasan untuk suatu pola atau kecenderungan.

2. Estimasi

Estimasi hampir sama dengan klasifikasi, kecuali variabel target estimasi lebih ke arah numerik daripada ke arah kategori. Model dibangun menggunakan record lengkap yang menyediakan nilai dari variabel target sebagai nilai prediksi. Selanjutnya, pada peninjauan berikutnya estimasi nilai dari variabel target dibuat berdasarkan nilai variabel prediksi. Sebagai contoh, akan dilakukan estimasi tekanan darah sistolik pada pasien rumah sakit berdasarkan umur pasien, jenis kelamin, indeks berat badan, dan level sodium darah. Hubungan antara tekanan darah sistolik dan nilai variabel prediksi dalam proses pembelajaran akan menghasilkan model estimasi. Model estimasi yang dihasilkan dapat digunakan untuk kasus baru lainnya.

3. Prediksi

Prediksi hampir sama dengan klasifikasi dan estimasi, kecuali bahwa dalam prediksi nilai dari hasil akan ada di masa datang. Contoh prediksi dalam bisnis dan penelitian adalah :

1. Prediksi harga beras dalam tiga bulan yang akan datang.

2. Prediksi presentase kenaikan kecelekaan lalu lintas tahun depan jika batas bawah kecepatan dinaikkan.

Beberapa metode dan teknik yang digunakan dalam klasifikasi dan estimasi dapat pula digunakan (untuk keadaan yang tepat) untuk prediksi.


(27)

4. Klasifikasi

Dalam klasifikasi, terdapat target variabel kategori. Sebagai contoh, penggolongan pendapatan dapat dipisahkan dalam tiga kategori, yaitu pendapatan tinggi, pendapatan sedang, dan pendapatan rendah.

Contoh lain klasifikasi dalam bisnis dan penelitian adalah :

1. Menentukan apakah suatu transaksi kartu kredit merupakan transaksi yang curang atau bukan.

2. Memperkirakan apakah suatu pengajuan hipotek oleh nasabah merupakan suatu kredit yang baik atau buruk.

3. Mendiagnosis penyakit seorang pasien untuk mendapatkan kategori penyakit apa.

5. Pengklusteran

Pengklusteran merupakan pengelompokan record, pengamatan, atau memperhatikan dan membentuk kelas objek-objek yang memiliki kemiripan. Cluster adalah kumpulan record yang memiliki kemiripan satu dengan yang lainnya dan memiliki ketidakmiripan dengan record-record dalam cluster lain.

Pengklusteran berbeda dengan klasifikasi yaitu tidak adanya variabel target dalam pengklusteran. Pengklusteran tidak mencoba untuk melakukan klasifikasi, mengestimasi, atau memprediksi nilai dari variabel target. Akan tetapi, algoritma pengklusteran mencoba untuk melakukan pembagian terhadap keseluruhan data menjadi kelompok-kelompok yang memiliki kemiripan (homogen), yang mana kemiripan record dalam satu kelompok akan bernilai maksimal, sedangkan kemiripan dengan record dalam kelompok lain akan bernilai minimal.


(28)

Contoh pengklusteran dalam bisnis dan penelitian adalah:

1. Melakukan pengklusteran terhadap ekspresi dari gen, untuk mendapatkan kemiripan perilaku dari gen dalam jumlah besar.

2. Mendapatkan kelompok-kelompok konsumen untuk target pemasaran dari suatu produk bagi perusahaan yang tidak memiliki dana pemasaran yang besar.

3. Untuk tujuan audit akuntansi, yaitu melakukan pemisahan terhadap perilaku finansial dalam baik dan mencurigakan.

6. Asosiasi

Tugas asosiasi dalam data mining adalah menemukan atribut yang muncul dalam satu waktu. Dalam dunia bisnis lebih umum disebut analisis keranjang belanja.

Contoh asosiasi dalam bisnis dan penelitian adalah :

1. Menemukan barang dalam supermarket yang dibeli secara bersamaan dan barang yang tidak pernah dibeli secara bersamaan.

2. Meneliti jumlah pelanggan dari perusahaan telekomunikasi seluler yang diharapkan untuk memberikan respons positif terhadap penawaran upgrade layanan yang diberikan.

2.3. Clustering

Clustering (pengelompokan data) mempertimbangkan sebuah pendekatan penting untuk mencari kesamaan dalam data dan menempatkan data yang sama ke dalam kelompok-kelompok. Clustering membagi kumpulan data ke dalam beberapa kelompok dimana kesamaan dalam sebuah kelompok adalah lebih besar daripada diantara kelompok-kelompok yang lain (Rui Xu & Donald 2009). Gagasan mengenai pengelompokan data, atau clustering, memiliki sifat yang sederhana dan dekat dengan cara berpikir manusia kapanpun kepada kita dipresentasikan jumlah data yang besar,


(29)

kita biasanya cenderung merangkumkan jumlah data yang besar ini ke dalam sejumlah kecil kelompok-kelompok atau kategori-kategori untuk memfasilitasi analisanya lebih lanjut. Selain dari itu, sebagian besar data yang dikumpulkan dalam banyak masalah terlihat memiliki beberapa sifat yang melekat yang mengalami pengelompokan-pengelompokan natural (Hammouda & Karray, 2003).

Namun demikian, penemuan pengelompokan-pengelompokan ini atau upaya untuk mengkategorikan data adalah bukan sebuah tugas yang sederhana bagi manusia kecuali data memiliki dimensionalitas rendah (dua atau tiga dimensi paling banyak). Inilah sebabnya mengapa beberapa metode dalam soft computing telah dikemukakan untuk menyelesaikan jenis masalah ini. Metode ini disebut “Metode-Metode Pengelompokan Data” (Hammouda & Karray, 2003).

Algoritma-algoritma clustering digunakan secara ekstensif tidak hanya untuk mengorganisasikan dan mengkategorikan data, akan tetapi juga sangat bermanfaat untuk kompresi data dan konstruksi model. Melalui pencarian kesamaan dalam data, seseorang dapat merepresentasikan data yang sama dengan lebih sedikit simbol. Dan juga, jika kita dapat menemukan kelompok-kelompok data, kita dapat membangun sebuah model masalah berdasarkan pengelompokan-pengelompokan ini (Dubes & Jain, 1988).

Clustering menunjuk pada pengelompokan record, observasi-observasi, atau kasus-kasus ke dalam kelas-kelas objek yang sama. Cluster adalah sekumpulan record yang sama dengan satu sama lain dan tidak sama dengan record dalam cluster lain. Clustering berbeda dari klasifikasi dimana tidak ada variabel target untuk clustering. Tugas clustering mencoba untuk tidak mengklasifikasikan, mengestimasi, atau memprediksi nilai variabel target (Larose, 2005). Bahkan, algoritma clustering berusaha mensegmentasikan seluruh kumpulan data ke dalam subkelompok-subkelompok atau cluster-cluster homogen secara relatif. Dimana kesamaan record dalam cluster dimaksimalkan dan kesamaan dengan record diluar cluster ini diminimalkan.


(30)

Clustering sering dilaksanakan sebagai langkah pendahuluan dalam proses pengumpulan data, dengan cluster-cluster yang dihasilkan digunakan sebagai input lebih lanjut ke dalam sebuah teknik yang berbeda, seperti neural network. Karena ukuran yang besar dari banyak database yang dipresentasikan saat ini, dapat membantu untuk menggunakan analisa clustering terlebih dahulu, untuk mengurangi ruang pencarian untuk algoritma-algoritma downstream. Aktivitas clustering pola khusus meliputi langkah-langkah berikut (Dubes & Jain, 1988) :

1. Representasi pola (secara opsional termasuk ekstraksi dan/atau seleksi sifat. 2. Defenisi ukuran kedekatan pola yang tepat untuk domain data.

3. Clustering pengelompokan. 4. Penarikan data (jika dibutuhkan). 5. Pengkajian output (jika dibutuhkan).

Representasi pola merujuk pada jumlah kelas, jumlah pola-pola yang ada, dan jumlah, tipe dan skala fitur yang tersedia untuk algoritma clustering. Beberapa informasi ini dapat tidak bisa dikontrol oleh praktisioner. Seleksi sifat (fitur) adalah proses pengidentifikasian subset fitur original yang paling efektif untuk digunakan dalam clustering. Ekstraksi fitur adalah penggunaan satu atau lebih transformasi dari sifat-sifat input untuk menghasilkan sifat-sifat baru yang lebih baik.

Pertimbangkan data himpunan X (dataset) yang terdiri dari point-point data (atau secara sinonim, objek-objek, hal-hal, kasus-kasus, pola, tuple, transaksi) x

i = (xi1,

…, xid) ϵ A dalam ruang atribut A, dimana i = 1, N, dan setiap komponen adalah sebuah atribut A kategori numerik atau nominal. Sasaran akhir dari clustering adalah untuk menentukan point-point pada sebuah sistem terbatas dari subset k, cluster. Biasanya subset tidak berpotongan (asumsi ini terkadang dilanggar), dan kesatuan mereka sama dengan dataset penuh dengan pengecualian yang memungkinkan outlier. C

i adalah sekelompok point data dalam dataset X, dimana X = Ci .. Ck .. Coutliers, Cj1 ..

C


(31)

Secara garis besar, terdapat beberapa metode clustering data. Pemilihan metode clustering bergantung pada tipe data dan tujuan clustering itu sendiri. Metode-metode beserta algortima yang termasuk didalamnya adalah sebagai berikut:

1. Partitioning Methdos

Metode yang membangun berbagai partisi dan kemudian mengevaluasi partisi tersebut dengan beberapa kriteria. Algoritma yang dipakai pada metode ini adalah K-Means, K-Medoid, PROCLUS, CLARA, CLARANS dan PAM.

2. Hierarchical Methods

Metode yang membuat suatu penguraian secara hierarchical dari himpunan data dengan menggunakan beberapa kriteria. Metode ini terdiri atas dua jenis, yaitu Agglomerative yang menggunakan strategi bottom-up dan Disisive yang menggunakan strategi top-down. Metode ini meliputi algoritma BIRCH, AGNES, DIANA, CURE dan CHAMELEON.

3. Density-Based Methods

Metode ini berdasarkan konektivitas dan fungsi densitas. Metode ini meliputi algoritma DBSCAN, OPTICS dan DENCLU.

4. Grid-Based Methods

Metode ini berdasarkan suatu struktur granularitas multi-level. Metode clustering ini meliputi algoritma STING, WaveCluster dan CLIQUE.

5. Model-Based Methods

Suatu model dihipotesakan untuk masing-masing cluster dan ide untuk mencari best fit dari model tersebut untuk masing-masing yang lain. Metode clustering ini meliputi pendekatan statistik, yaitu algoritma COBWEB dan jaringan syaraf tiruan SOM.


(32)

Partitioning Clustering

Partitioning Clustering merupakan salah satu metode data mining yang bersifat tanpa arahan (unsupervised). Konsep dasar dari partitioning clustering adalah membagi n jumlah cluster ke dalam k cluster. Metode ini merupakan metode pengelompokan yang bertujuan mengelompokkan objek sehingga jarak antara setiap objek ke pusat kelompok di dalam satu kelompok adalah minimum.

Metode Pengelompokan

Cluster adalah kumpulan data dimana jika objek data yang terletak didalam cluster harus memiliki kemiripan sedangkan yang tidak berada dalam suatu cluster tidak mempunyai kemiripan.

Jika ada n objek penelitian dengan p variabel maka sebelum dilakukan pengelompokan data atau objek terlebih dahulu menentukan ukuran kedekatan sifat antar data. Ukuran data yang bisa digunakan adalah jarak euclidius (euclidean distance), antara dua objek dari p dimensi pengamatan. Jika objek pertama yang diamati adalah = 1 , 2,…, dan = 1 , 2,…, maka rumus euclidean distance adalah sebagai berikut:

, = ( − )2

=1 (2.1)

dimana: d : distance x : 1, 2, 3,…, y : 1, 2, 3,…,

j : merepresentasikan nilai atribut p : dimensi data


(33)

2.4. Algoritma K-Means

K-Means (MacQueen, 1967) adalah salah satu dari algoritma unsupervised learning yang paling sederhana untuk menyelesaikan masalah clustering yang telah dikenal. Prosedur ini mengikuti cara sederhana dan mudah untuk mengklasifikasikan kumpulan data tertentu melalui jumlah cluster tertentu (menganggap k cluster) yang telah ditetapkan sebelumnya.

Gagasan utama adalah mendefinisikan centroid k, satu untuk setiap cluster. Centroid ini harus ditempatkan dengan cara yang cerdik karena lokasi yang berbeda menyebabkan hasil yang berbeda. Oleh karena itu, pilihan terbaik adalah menempatkan mereka sejauh mungkin dari satu dengan yang lain. Langkah berikutnya adalah mengambil setiap point yang termasuk pada kumpulan data tertentu dan menghubungkannya dengan centroid yang terdekat. Apabila tidak ada point yang menantikan, maka langkah pertama diselesaikan dan groupage secara dini dilakukan. Pada point ini kita perlu mengkalkulasi kembali centroid baru k dari cluster yang berasal dari langkah sebelumnya. Setelah kita memiliki centroid baru k ini, pengikatan baru harus dilakukan antara point-point kumpulan data yang sama dan centroid baru terdekat. Sebuah loop telah dihasilkan. Karena loop ini, maka kita dapat mengetahui bahwa centroid k mengubah lokasi mereka langkah demi langkah hingga tidak ada lagi perubahan yang dilakukan. Dengan kata lain, centroid tidak bergerak lagi. Akhirnya, algoritma ini membantu meminimalkan fungsi objektif, dalam hal ini sebuah fungsi kesalahan kuadrat.

Dari beberapa teknik clustering yang paling sederhana dan umum dikenal adalah clustering k-means (Santosa, 2007). K-Means merupakan salah satu metode data clustering non hirarki yang mempartisi data ke dalam cluster sehingga data yang memiliki karakteristik yang sama dikelompokkan ke dalam satu cluster yang sama dan data yang mempunyai karakteristik yang berbeda dikelompokkan ke dalam kelompok lain (Agusta, 2007). Adapun tujuan dari data clustering ini adalah untuk


(34)

umumnya berusaha meminimalisasikan variasi di dalam suatu cluster dan memaksimalkan variasi antar cluster.

Pada dasarnya penggunaan algoritma dalam melakukan proses clustering tergantung dari data yang ada dan konklusi yang ingin dicapai. Untuk itu digunakan algoritma K-Means yang didalamnya memuat aturan sebagai berikut:

1. Jumlah cluster perlu diinputkan.

2. Hanya memiliki atribut bertipe numerik.

Untuk tahap awal, algoritma k-means memilih secara acak k buah data sebagai centroid. Kemudian, jarak antara data dan centroid dihitung dengan menggunakan Euclidean Distance. Data ditempatkan dalam cluster yang terdekat, dihitung dari titik tengah cluster. Centroid baru akan ditentukan bila semua data telah ditempatkan dalam cluster terdekat. Proses penentuan centroid dan penempatan data dalam cluster diulangi sampai nilai centroid konvergen (centroid dari semua cluster tidak berubah lagi).

Algoritma K-Means pada dasarnya melakukan dua proses, yaitu proses pendeteksian lokasi pusat tiap cluster dan proses pencarian anggota dari tiap-tiap cluster. Cara kerja algoritma K-Means:

1. Tentukan k sebagai jumlah cluster yang ingin dibentuk.

2. Bangkitkan k centroid (titik pusat cluster) awal secara random. 3. Hitung jarak setiap data ke masing-masing centroid.

4. Setiap data memilih centroid yang terdekat.

5. Tentukan posisi centroid yang baru dengan cara menghitung nilai rata-rata dari data yang terletak pada centroid yang sama.

6. Kembali ke langkah 3 jika posisi centroid baru dengan centroid yang lama tidak sama.


(35)

2.5. Market Basket Analysis

Kehadiran teknologi informasi terutama basis data dalam suatu perusahaan sudah menjadi hal yang umum bahkan mungkin menjadi kebutuhan pokok perusahaan. Basis data tersebut mulanya hanya digunakan untuk menyimpan data transaksi penjualan yang dilakukan oleh perusahaan. Tetapi dengan berkembangnya perusahaan, basis data tersebut sebenarnya memiliki informasi yang dapat dimanfaatkan oleh pihak manajemen untuk dapat meningkatkan kinerja penjualan pada perusahaan.

Contoh-contoh dari pemanfaatan basis data misalnya aplikasi manajemen bisnis, pengawasan produksi dan analisa pemasaran dengan desain produksi. Untuk memperoleh pengetahuan dari basis data tersebut dapat memanfaatkan yaitu algoritma data mining. Pengertian data mining itu sendiri adalah analisis otomatis dari data yang berjumlah besar atau kompleks dengan tujuan untuk menemukan pola atau kecendrungan yang penting yang biasanya tidak disadari keberadaannya (Moertini, 2002). Data mining banyak diaplikasi di bidang-bidang usaha salah satunya diaplikasikan untuk bidang usaha retail yaitu analisis keranjang pasar atau Market Basket Analysis.

Market Basket Analysis adalah suatu analisis atas perilaku konsumen secara spesifik dari suatu golongan atau kelompok tertentu. Market basket juga merupakan salah satu cara yang digunakan pada transaksi penjualan untuk merancang strategi penjualan atau pemasaran yang efektif dengan memanfaatkan data transaksi penjualan yang telah tersedia di perusahaan (Budhi et al. 2006). Market basket dapat menemukan pola yang berupa produk-produk yang dibeli bersamaan atau cenderung muncul bersama dalam sebuah transaksi. Perusahaan lalu dapat menggunakan pola ini untuk menempatkan produk yang sering dibeli bersamaan ke dalam sebuah area yang berdekatan. Sumber data dari market basket analysis dapat bersumber dari transaksi kartu kredit, kupon diskon dan juga dapat dari struk belanjaan yang didapatkan oleh konsumen. Market basket analysis umumnya dimanfaatkan sebagai titik awal


(36)

Ide dasar dari market basket itu sendiri yaitu dari trolley ataupun keranjang belanja yang dibawa oleh konsumen untuk meletakkan belanjaan mereka ke dalam keranjang tersebut. Di dalam keranjang tersebut berisi berbagai macam produk yang menginformasikan tentang apa saja yang dibeli oleh konsumen.

Dari keranjang belanja tersebut atau trolley dapat memberikan informasi kepada pihak perusahaan (swalayan) berupa daftar lengkap pembelian yang dilakukan olek konsumen. Daftar lengkap pembelian ini memiliki sebuah bagian penting dari bisnis ritel seperti barang apa saja yang dibeli oleh konsumen, konsumen membeli serangkaian produk yang berbeda dengan quantity yang berbeda dan dalam kerangka waktu yang berbeda. Market basket analysis menggunakan informasi tentang apa saja yang dibeli oleh konsumen untuk menghasilkan sebuah pengetahuan untuk melakukan tindak lanjut terhadap strategi pemasaran yang telah dilakukan oleh perusahaan selama ni, apakah harus diadakan promosi untuk meningkatkan minat konsumen berbelanja di perusahaan tersebut ataupun untuk mengatur ulang tata letak produk pada perusahaan berdasarkan struk-struk belanjaan konsumen.

Kelebihan dari proses market basket analysis adalah sebagai berikut:

1. Hasilnya jelas dan mudah dimengerti sebab hanya merupakan suatu pola “jika -maka”. Misalnya : jika produk A dan B dibeli secara bersamaan, maka kemungkinan produk C turut dibeli.

2. Market basket analysis sangat berguna untuk undirected mining yaitu pencarian awal pola.

3. Market basket analysis dapat memproses transaksi tanpa harus kehilangan informasi sebab dapat memproses banyak variabel tanpa perlu dirangkum (summarization) terlebih dahulu.

4. Proses komputasi yang lebih muda daripada teknik yang kompleks seperti algoritma genetik & sistem syaraf, meskipun jumlah perhitungan akan meningkat pesat bersamaan dengan peningkatan jumlah transaksi dan jumlah items yang berbeda dalam analisis.


(37)

Adapun kekurangan dari proses market basket analysis adalah sebagai berikut:

1. Tingkat pertumbuhan proses secara eksponensial sebagai akibat pertumbuhan ukuran data.

2. Memilki keterbatasan untuk atribut data, misalnya hanya berdasarkan tipe produk.

3. Sulit untuk menemukan items yang akan diolah secara tepat, sebab frekuensi dari item tersebut harus diusahakan seimbang.


(38)

BAB III

ANALISIS DAN PERANCANGAN SISTEM

3.1 Data yang Digunakan

Pada penelitian ini data yang digunakan adalah dataset yang bertipe record, berupa data transaksi penjualan produk pada swalayan yang berbentuk struk belanjaan. Data awal yang didapat berupa data mentah sebanyak 1022 data atau 1022 struk belanjaan. Pada Gambar 3.1 dapat dilihat salah satu contoh dari struk belanjaan. Data mentah tersebut akan diubah kedalam bentuk record yang akan menjadi dataset sebanyak 1022 record. Dataset ini terdiri dari 7 atribut. Adapun atribut-atribut yang dimaksud yaitu nama produk, jumlah produk, harga produk, total harga, tunai dan kembalian. Seluruh atribut pada dataset selanjutnya akan diseleksi pada tahapan praproses data.

3.2 Praproses Data

Tahap praproses data merupakan tahap seleksi data yang bertujuan untuk mendapatkan data yang bersih dan siap untuk digunakan dalam penelitian. Tahapan yang dikerjakan adalah melakukan perubahan terhadap beberapa tipe data pada atribut dataset dengan tujuan untuk mempermudah pemahaman terhadap isi record dan juga melakukan seleksi dengan memperhatikan konsistensi data, missing value dan redundant data.

3.2.1 Penentuan Kelompok Jenis Produk

Seperti yang dapat dilihat pada Gambar 3.1, terdapat beberapa atribut yaitu nama produk, jumlah produk, harga produk, total harga, tunai dan kembalian. Dari semua atribut tersebut hanya beberapa yang akan digunakan dan dianggap cukup memenuhi


(39)

untuk dilakukannya penelitian. Adapun atribut tersebut yaitu nama produk dan jumlah produk.


(40)

Pada swalayan banyak sekali terdapat nama-nama produk ataupun merk-merk produk yang tidak bisa disebutkan satu-satu. Mulai dari jenis produk sampai kegunaan produk tersebut. Oleh karena itu penulis akan membuat pengelompokkan produk berdasarkan jenis-jenisnya. Adapun pengelompokkan produk sebagai berikut:

1. Makanan Ringan

Disini semua jenis makanan ringan seperti chitato, roti tawar, keripik dan lain-lain akan dikelompokkan ke dalam atribut makanan ringan.

2. Minuman

Semua jenis minuman mulai dari minuman botol,minuman kaleng, sirup dan juga termasuk semua jenis susu dikelompokkan ke dalam atribut minuman.

3. Buah-buahan

Atribut ini berisi semua jenis buah-buahan. 4. Perawatan

Yang termasuk pada atribut ini yaitu perawatan rambut seperti shampoo, conditioner, vitamin rambut dan lain-lain. Perawatan kulit seperti lotion, lulur, dan lain-lain. Perawatan mandi atau peralatan mandi seperti sabun, sikat gigi, pasta gigi dan lain-lain.

5. Bahan Dapur

Bahan dapur seperti semua jenis indomie. Bumbu-bumbu dapur seperti kecap, saos/sambal, merica, ajinamoto, minyak goreng, gula, garam dan lain-lain dikelompokkan ke dalam atribut bahan dapur.

6. Bahan Makanan

Semua jenis bahan makanan mulai dari sayur-sayuran, ayam, ikan, nugget dan juga sossis termasuk ke dalam atribut bahan makanan.

7. Perlengkapan

Jenis produk yang termasuk pada atribut ini seperti pewangi baju, pewangi lantai, sabun pencuci piring, pengharum ruangan, baygon dan lain-lain. 8. Obat-obatan

Segala jenis obat-obatan termasuk ke dalam atribut ini. 9. Rokok


(41)

3.2.2. Penentuan Record

Tahap selanjutnya adalah mengubah data mentah menjadi dataset yang berisikan semua kelompok jenis-jenis produk dalam bentuk record. Pada dataset ini nama kelompok produk diubah menjadi variabel sebagai berikut:

1. Makanan ringan diubah menjadi X1

2. Minuman diubah menjadi X2

3. Buah-buahan diubah menjadi X3

4. Perawatan diubah menjadi X4

5. Bahan dapur diubah menjadi X5

6. Bahan makanan diubah menjadi X6

7. Perlengkapan diubah menjadi X7

8. Obat-obatan diubah menjadi X8

9. Rokok diubah menjadi X9

3.2.3. Penentuan Kelompok Berdasarkan Record

Setelah diubah ke dalam bentuk variabel, semua data mentah struk belanjaan dimasukkan ke dalam jenis-jenis kelompok produk sesuai dengan kelompoknya, dapat dilihat pada Tabel 3.1 berikut:

Tabel 3.1 Dataset Penjualan Produk

No Struk Ke- X1 X2 X3 X4 X5 X6 X7 X8 X9

1 Struk 1 1 8 0 0 0 0 0 0 0

2 Struk 2 10 0 0 0 0 3 0 0 0

3 Struk 3 3 3 0 0 0 0 0 0 0

4 Struk 4 0 0 0 2 0 0 1 0 0

5 Struk 5 0 1 0 0 0 0 0 0 0

6 Struk 6 2 0 0 0 25 0 0 0 0

7 Struk 7 0 0 1 0 1 0 0 0 0


(42)

11 Struk 11 6 1 0 0 0 0 0 0 0

12 Struk 12 1 0 0 0 0 2 0 0 0

13 Struk 13 0 4 0 0 0 0 0 0 0

14 Struk 14 1 1 0 0 0 1 0 0 0

15 Struk 15 0 2 0 1 0 0 0 0 0

16 Struk 16 4 0 2 1 0 0 0 0 0

17 Struk 17 2 0 0 0 0 1 0 0 0

18 Struk 18 1 0 0 1 0 1 0 0 0

19 Struk 19 16 2 1 2 1 0 1 0 0

20 Struk 20 6 1 2 0 11 2 0 0 0

1022 Struk 1022 5 0 0 10 8 5 12 0 0

Didalam dataset ini data yang dimasukkan berupa berapa jumlah produk yang dibeli oleh konsumen didalam satu struk. Kemudian apabila didalam struk tersebut tidak terdapat atau tidak ada dibelinya produk yang tercantum pada dataset, maka jumlah produknya akan diisi dengan 0. Karena apabila data tersebut kosong, pada tahap pemrosesan akan mengalami eror atau kesalahan.

Dataset berjumlah 1022 record dengan 9 atribut, selanjutnya akan diseleksi untuk mendapatkan atribut-atribut yang berisi nilai yang relevan, tidak missing value dan tidak mengalami redundant data. Ketiga syarat tersebut merupakan syarat awal yang harus dilakukan dalam dalam data mining sehingga akan diperoleh dataset yang bersih untuk digunakan pada tahap mining data. Dikatakan missing value jika atribut-atribut dalam dataset tidak berisi nilai atau kosong, sementara itu data dikatakan redundant jika dalam satu dataset yang sama terdapat lebih dari satu record yang berisi nilai yang sama.

Berdasarkan Tabel 3.1, ada beberapa atribut yang harus dihilangkan karena atribut-atribut tersebut tidak berpengaruh terhadap hasil yang ingin dicapai. Atribut-atribut tersebut adalah X8 (obat-obatan) dan X9 (rokok), karena pada atribut ini jarang

sekali konsumen membelinya pada swalayan. Jadi atribut yang digunakan dalam penelitian ini adalah X1 (makanan ringan), X2 (minuman), X3 (buah-buahan), X4


(43)

(perawatan), X5 (bahan dapur), X6 (bahan makanan) dan X7 (perlengkapan) seperti

yang dapat dilihat pada Tabel 3.2 berikut:

Tabel 3.2 Dataset Penjualan Produk dengan 7 Atribut

No Struk Ke- X1 X2 X3 X4 X5 X6 X7

1 Struk 1 1 8 0 0 0 0 0

2 Struk 2 10 0 0 0 0 3 0

3 Struk 3 3 3 0 0 0 0 0

4 Struk 4 0 0 0 2 0 0 1

5 Struk 5 0 1 0 0 0 0 0

6 Struk 6 2 0 0 0 25 0 0

7 Struk 7 0 0 1 0 1 0 0

8 Struk 8 2 0 0 0 0 0 1

9 Struk 9 0 1 1 0 0 0 0

10 Struk 10 0 5 0 0 0 0 5

11 Struk 11 6 1 0 0 0 0 0

12 Struk 12 1 0 0 0 0 2 0

13 Struk 13 0 4 0 0 0 0 0

14 Struk 14 1 1 0 0 0 1 0

15 Struk 15 0 2 0 1 0 0 0

16 Struk 16 4 0 2 1 0 0 0

17 Struk 17 2 0 0 0 0 1 0

18 Struk 18 1 0 0 1 0 1 0

19 Struk 19 16 2 1 2 1 0 1

20 Struk 20 6 1 2 0 11 2 0

1022 Struk 1022 5 0 0 10 8 5 12

3.3. Cleaning Data

Tahap selanjutnya adalah melakukan cleaning data terhadap data yang memiliki missing value dan redundant data. Pada dataset penjualan produk ini tidak banyak terdapat data yang missing value dan redundant, jadi penulis melakukan pembersihan


(44)

1. Dataset yang memiliki jumlah produk diatas 40 item.

2. Pada dataset hanya terdapat satu produk saja yang dibeli.

Struk Ke X1 X2 X3 X4 X5 X6 X7

Struk 5 0 1 0 0 0 0 0

Struk 13 0 4 0 0 0 0 0

Struk 46 0 0 0 0 10 0 0

Struk 48 0 0 0 0 0 0 5

3. Pada dataset hanya terdapat dua produk saja yang dibeli.

Struk Ke- X1 X2 X3 X4 X5 X6 X7

Struk 35 4 0 0 0 0 0 2

Struk 38 0 0 0 7 2 0 0

Struk 67 0 0 0 0 1 0 4

Struk 81 0 2 1 0 0 0 0

4. Pada dataset hanya terdapat tiga produk saja yang dibeli.

Struk Ke- X1 X2 X3 X4 X5 X6 X7

Struk 447 0 0 1 0 0 4 1

Struk 458 5 2 0 0 0 0 1

Struk 467 1 0 0 3 0 0 1

Struk 483 0 2 0 2 0 2 0

Setelah dilakukannya tahapan cleaning data terhadap dataset, maka didapat hasil akhir sebanyak 280 record dengan 7 atribut dan mempunyai isi data yang relevan

Struk Ke- X1 X2 X3 X4 X5 X6 X7

Struk 33 1 0 0 0 320 0 0

Struk 148 247 109 0 0 0 0 0

Struk 446 7 103 0 0 20 0 1


(45)

Tabel 3.3 Dataset yang Telah Dicleaning

No Struk Ke- X1 X2 X3 X4 X5 X6 X7

1 Struk 19 16 2 1 2 1 0 1

2 Struk 20 6 1 2 0 11 2 0

3 Struk 25 6 3 0 0 4 1 0

4 Struk 26 0 2 0 0 4 1 7

5 Struk 29 8 14 2 0 18 12 6

6 Struk 32 0 4 0 1 6 0 2

7 Struk 34 1 0 1 0 0 5 1

8 Struk 36 7 4 0 2 1 0 0

9 Struk 39 0 0 1 6 0 1 10

10 Struk 41 3 2 0 2 0 1 1

11 Struk 43 0 2 0 0 6 2 1

12 Struk 47 1 3 0 2 0 1 1

13 Struk 50 1 0 2 0 1 1 0

14 Struk 55 10 15 2 3 8 3 3

15 Struk 56 2 16 0 6 2 0 13

16 Struk 58 0 6 2 0 2 2 1

17 Struk 60 1 0 1 0 15 0 3

18 Struk 61 9 3 0 1 1 0 4

19 Struk 62 0 3 0 3 9 2 1

20 Struk 63 11 1 0 1 2 1 0

280 Struk 1022 5 0 0 10 8 5 12

3.4. Uji Coba dengan Algoritma K-Means Clustering

K-Means adalah salah satu metode data clustering non hirarki yang berusaha mempartisi data yang ada ke dalam bentuk satu atau lebih cluster. Metode ini mempartisi data ke dalam cluster sehingga data yang memiliki karakteristik yang sama dikelompokkan ke dalam satu cluster yang sama dan data yang mempunyai karakteristik yang berbeda dikelompokkan ke dalam cluster yang lain.


(46)

Tahapan clustering dengan menggunakan K-Means dimulai dengan pembentukan cluster, pembagian cluster ini dipilih secara random, penulis membentuk 5 cluster karena penulis menganggap pembentukan cluster ini sudah memenuhi dalam pembagian jumlah anggota cluster.

Proses penghitungan centroid awal dimulai dengan pemberian nama awal cluster (dari cluster pertama sampai dengan cluster kelima) secara random pada data yang sudah dicleaning (data 1-280) seperti pada Tabel 3.4 berikut:

Tabel 3.4 Pemberian Nama Cluster Pada Masing-Masing Data

No Struk Ke- Cluster Ke- X1 X2 X3 X4 X5 X6 X7

1 Struk 19 C0 16 2 1 2 1 0 1

2 Struk 20 C1 6 1 2 0 11 2 0

3 Struk 25 C2 6 3 0 0 4 1 0

4 Struk 26 C3 0 2 0 0 4 1 7

5 Struk 29 C4 8 14 2 0 18 12 6

6 Struk 32 C0 0 4 0 1 6 0 2

7 Struk 34 C1 1 0 1 0 0 5 1

8 Struk 36 C2 7 4 0 2 1 0 0

9 Struk 39 C3 0 0 1 6 0 1 10

10 Struk 41 C4 3 2 0 2 0 1 1

11 Struk 43 C0 0 2 0 0 6 2 1

12 Struk 47 C1 1 3 0 2 0 1 1

13 Struk 50 C2 1 0 2 0 1 1 0

14 Struk 55 C3 10 15 2 3 8 3 3

15 Struk 56 C4 2 16 0 6 2 0 13

16 Struk 58 C0 0 6 2 0 2 2 1

17 Struk 60 C1 1 0 1 0 15 0 3

18 Struk 61 C2 9 3 0 1 1 0 4

19 Struk 62 C3 0 3 0 3 9 2 1

20 Struk 63 C4 11 1 0 1 2 1 0


(47)

Setelah pemberian nama cluster untuk masing-masing data, selanjutnya akan dilakukan penghitungan untuk mendapatkan nilai centroid awal. Penghitungan dilakukan dengan menghitung mean (rata-rata) pada masing-masing cluster dengan membagi jumlah data yang didapatkan untuk setiap clusternya. Adapun tujuan dari penghitungan centroid awal dengan menggunakan mean (rata-rata) agar setiap cluster memiliki anggota data pada iterasi pertama yaitu dengan rumus berikut:

� = 1� + 2� + 3� + …+ �

dimana:

: rata-rata dari setiap centroid n : jumlah data

Adapun penghitungan nilai centroid awal pada masing-masing cluster sebagai berikut:

1. Untuk nilai centroid awal pada cluster pertama (C0)

� � �0 =

19 + 32 + 43 +⋯+ 1014

56

� � �0 =

16 + 0 + 0 +⋯+ 1

56

� � �0 = 2,91

2. Untuk nilai centroid awal pada cluster kedua (C1)

� � �1 =

20 + 34 + 47 +⋯+ 1015

56

� � �1 =

6 + 1 + 1 +⋯+ 6


(48)

3. Untuk nilai centroid awal pada cluster ketiga (C2)

� � �2 = 25 + 36 + 50 +⋯+ 1016

56

� � �2 =

6 + 7 + 1 +⋯+ 0

56

� � �2 = 3,63

4. Untuk nilai centroid awal pada cluster keempat (C3)

� � �3 = 26 + 39 + 55 +⋯+ 1021

56

� � �3 =

0 + 0 + 10 +⋯+ 0

56

� � �3 = 2,84

5. Untuk nilai centroid awal pada cluster kelima (C4)

� � �4 =

29 + 41 + 56 +⋯+ 1022

56

� � �4 =

8 + 3 + 2 +⋯+ 5

56

� � �4 = 3,27

Adapun hasil dari centroid awal dari masing-masing cluster dapat dilihat pada Tabel 3.5 berikut:

Tabel 3.5 Hasil Centroid Awal Masing-Masing Cluster

X C0 C1 C2 C3 C4


(49)

X2 2,59 2,32 2,18 2,77 4,14

X3 0,88 0,77 0,68 0,64 0,75

X4 2,21 1,5 1,86 1,88 2,23

X5 5,2 4,86 4,68 5,36 5,3

X6 1,54 1,7 1,36 1,14 1,5

X7 2,29 2,14 2,18 2,21 2,43

Setelah penghitungan nilai centroid awal pada masing-masing cluster, tahap selanjutnya adalah melakukan penghitungan untuk menentukan jarak setiap data dengan centroid awal yang telah dibentuk dengan menggunakan rumus euclidiance distance. Hasil dari penghitungan jarak dengan rumus euclidiance distance ini akan berpengaruh pada penempatan setiap data ke cluster tertentu.

Penghitungan jarak data awal terhadap nilai centroid masing-masing cluster menggunakan rumus (2.1) yaitu:

1. Jarak antara struk pertama dengan centroid pertama (C0)

1,0 = (16−2,91)2+ (0−2,59)2+ (0−0,88)2+ …+ (1−2,29)2

1,0 = 13,91

2. Jarak antara struk pertama dengam centroid kedua (C1)

1,1 = (16−2,84)2+ (0−2,32)2+ (0−0,77)2+ …+ (1−2,14)2

1,1 = 13,88

3. Jarak antara struk pertama dengan centroid ketiga (C2)


(50)

4. Jarak antara struk pertama dengan centroid keempat (C3)

1,3 = (16−2,84)2+ (02,77)2+ (00,64)2+ + (12,21)2

1,3 = 13,99

5. Jarak antara struk pertama dengan centroid kelima (C4)

1,4 = (16−3,27)2+ (0−4,14)2+ (0−0,75)2+ …+ (1−2,43)2

1,4 = 13,77

Penghitungan jarak data awal dengan centroid masing-masing cluster pada 280 record selanjutnya akan disajikan dalam bentuk Tabel 3.6 berikut:

Tabel 3.6 Hasil Penghitungan Jarak Setiap Data Masing-Masing cluster

Struk Ke- C0 C1 C2 C3 C4

Struk 19 13,91 13,88 13,04 13,99 13,77

Struk 20 7,57 7,61 7,57 7,48 7,91

Struk 25 4,73 4,37 3,94 4,55 4,7

Struk 26 6,2 5,99 6,4 6,12 6,61

Struk 29 21,2 21,46 21,66 21,22 20,26

Struk 32 3,97 3,99 4,62 3,54 3,96

Struk 34 7,48 6,85 7,2 7,73 8,35

Struk 36 6,69 6,58 5,94 6,67 6.42

Struk 39 10,79 10,94 10,88 11,06 11,3

Struk 41 5,34 4,97 4,82 5,53 5,81

Struk 43 4,12 3,7 4,55 3,9 4,86

Struk 47 5,8 5,49 5,61 5,84 6,12

Struk 50 6,3 5,7 5,94 6,35 7,31

Struk 55 14,72 15,1 14,91 14,66 13,24


(51)

Struk 58 6,19 5,91 6,48 6,11 5,82

Struk 60 10.69 10,84 11,15 10,47 11,14

Struk 62 5,13 5,47 6,01 5,02 5,4

Struk 63 9,27 9,08 8,31 9,33 9,42

Struk 1022 13,66 14,17 13,93 14,01 13,86

Setelah melakukan penghitungan jarak data dengan masing-masing cluster, tahap selanjutnya adalah mengelompokkan jarak terkecil disetiap masing-masing cluster. Seperti pada Tabel 3.6, untuk data yang pertama atau struk pertama jarak yang terkecil yaitu 13,04 dan terletak pada (C2). Maka data pertama akan menjadi anggota

dari cluster kedua. Untuk lebih jelasnya anggota data awal untuk masing-masing cluster akan disajikan pada Tabel 3.7 berikut:

Tabel 3.7 Anggota Data Awal Masing-Masing Cluster

Struk C0 C1 C2 C3 C4

Struk 19 Struk 20 Struk 25 Struk 26 Struk 29 Struk 32 Struk 34 Struk 36 Struk 39 Struk 41 Struk 43 Struk 47 Struk 50 Struk 55 Struk 56 Struk 58 Struk 60


(52)

Struk 62 Struk 63

Struk 1022

Berdasarkan Tabel 3.7 diatas yang merupakan hasil iterasi pertama, jumlah anggota yang didapatkan oleh masing-masing cluster sebagai berikut:

1. Pada cluster pertama (C0) memiliki jumlah anggota 21 data struk, yaitu

struk 39, struk 88, struk 97, struk 110, struk 145, struk 162, struk 261, struk 338, struk 341, struk 385, struk 400, struk 414, struk 439, struk 453, struk 474, struk 681, struk 697, struk 841, struk 931, struk 937 dan struk 1022.

2. Pada cluster kedua (C1) memiliki jumlah anggota 87 data struk, yaitu struk

26, struk 34, struk 43, struk 47, struk 50, struk 65, struk 68, struk 80, struk 90, struk 99, struk 106, struk 115, struk 118, struk 119, struk 125, struk 133, struk 134, struk 143, struk 149, struk 150, struk 152, struk 170, struk 173, struk 177, struk 179, struk 182, struk 188, struk 190, struk 205, struk 218, struk 221, struk 225, struk 229, struk 236, struk 237, struk 239, struk 240, struk 264, struk 293, struk 307, struk 309, struk 318, struk 324, struk 351, struk 367, struk 373, struk 378, struk 383, struk 389, struk 404, struk 408, struk 422, struk 469, struk 481, struk 488, struk 504, struk 509, struk 511, struk 512, struk 514, struk 520, struk 536, struk 586, struk 669, struk 776, struk 784, struk 791, struk 811, struk 824, struk 834, struk 839, struk 844, struk 865, struk 874, struk 893, struk 910, struk 929, struk 930, struk 939, struk 943, struk 960, struk 969, struk 981, struk 987, struk 999, struk 1014 dan struk 1016.

3. Pada cluster ketiga (C2) memiliki jumlah anggota 80 data struk, yaitu struk

19, struk 25, struk 36, struk 41, struk 61, struk 63, struk 75, struk 78, struk 86, struk 89, struk 91, struk 100, struk 102, struk 108, struk 121, struk 135, struk 144, struk 155, struk 160, struk 164, struk 172, struk 192, struk 195,


(53)

struk 203, struk 215, struk 255, struk 265, struk 291, struk 292, struk 313, struk 326, struk 327, struk 362, struk 370, struk 372, struk 376, struk 393, struk 403, struk 424, struk 449, struk 455, struk 472, struk 515, struk 533, struk 546, struk 549, struk 553, struk 560, struk 573, struk 582, struk 602, struk 607, struk 608, struk 621, struk 624, struk 634, struk 642, struk 654, struk 660, struk 667, struk 675, struk 680, struk 695, struk 701, struk 727, struk 729, struk 748, struk 767, struk 782, struk 801, struk 807, struk 815, struk 819, struk 842, struk 855, struk 900, struk 903, struk 985, struk 989 dan struk 1015.

4. Pada cluster keempat (C3) memiliki jumlah anggota 40 data struk, yaitu

struk 20, struk 32, struk 60, struk 62, struk 79, struk 153, struk 167, struk 187, struk 198, struk 199, struk 204, struk 253, struk 306, struk 325, struk 378, struk 384, struk 391, struk 393, struk 409, struk 419, struk 433, struk 442, struk 487, struk 569, struk 571, struk 613, struk 614, struk 615, struk 661, struk 673, struk 729, struk 737, struk 765, struk 788, struk 808, struk 838, struk 857, struk 872, struk 921 dan struk 922.

5. Pada cluster kelima (C4) memiliki jumlah anggota 52 data struk, yaitu

struk 29, struk 55, struk 56, struk 58, struk 71, struk 84, struk 98, struk 138, struk 146, struk 154, struk 161, struk 166, struk 181, struk 216, struk 226, struk 312, struk 330, struk 333, struk 355, struk 356, struk 363, struk 365, struk 369, struk 379, struk 380, struk 392, struk 399, struk 406, struk 418, struk 420, struk 434, struk 443, struk 451, struk 452, struk 476, struk 477, struk 513, struk 651, struk 688, struk 711, struk 736, struk 837, struk 840, struk 843, struk 861, struk 910, struk 957, struk 958, struk 984, struk 1009, struk 1013 dan 1021.

Iterasi pada clustering ini akan berhenti, jika anggota data cluster pada iterasi sebelumnya sama dengan anggota data cluster pada iterasi selanjutnya. Untuk menemukan pada iterasi keberapa proses clustering ini akan berhenti, maka penulis


(54)

akan menghasilakn output berupa model tata letak produk berdasarkan cluster yang diperoleh. Pembahasan mengenai sistem akan dibahas lebih lanjut pada bab IV.

3.5. Perancangan Antarmuka Sistem

Pada perancangan antarmuka sistem ini akan dibahas bagaimana perancangan flowchart sistem dan perancangan tampilan sistem.

3.5.1 Perancangan Flowchart Sistem

Flowchart sistem dibuat untuk menggambarkan bagaimana proses alur keseluruhan sistem bekerja. Flowchart sistem dapat dilihat pada Gambar 3.2 berikut:


(55)

(56)

3.5.2 Perancangan Tampilan Sistem

Perancangan tampilan digunakan untuk menggambarkan aplikasi yang sebenarnya. Beberapa model tampilan implementasi dalam penelitian ini sebagai berikut:

1. Tampilan Form Upload Data

Pada tampilan upload data ini, terdapat beberapa form yang harus diisi terlebih dahulu yaitu jumlah kolom, posisi baris 1, posisi kolom 1, jumlah cluster, output dan upload file excel. Perancangan tampilan form upload data dapat dilihat pada Gambar 3.3 berikut:

Gambar 3.3 Rancangan Tampilan Form Upload Data

2. Tampilan Hasil Mean Clustering 1

Pada tampilan ini akan menampilkan hasil mean clustering yang pertama yaitu cleaning data dan pemberian nama cluster yang dapat dilihat pada Gambar 3.4 berikut:


(57)

Gambar 3.4 Rancangan Tampilan Cleaning Data dan Pemberian Nama Cluster 3. Tampilan Hasil Mean Clustering 2

Pada tampilan hasil mean clustering 2 ini akan menampilkan hitung centroid iterasi 1, hitung jarak data iterasi 1, hasil cluster pada iterasi 1 dan begitu seterusnya sampai iterasi ke n. Untuk lebih jelasnya dapat dilihat pada Gambar 3.5 berikut:


(58)

Gambar 3.5 Rancangan Tampilan Hasil Iterasi N 4. Tampilan Hasil Mean Clustering 3

Pada tampilan hasil mean clustering 3 yang dapat dilihat pada Gambar 3.6, akan menampilkan kesimpulan dari hasil clustering, merepresentasikan anggota dari masing-masing cluster yang sudah dikelompokkan dan kesimpulan akhir.


(59)

(60)

(61)

BAB IV

IMPLEMENTASI DAN PENGUJIAN SISTEM

4.1 Implementasi Sistem

Berikut ini merupakan perangkat keras dan perangkat lunak komputer yang dibutuhkan untuk mengimplementasikan penetuan model tata letak produk pada swalayan.

1. Hardware dan software untuk pembuatan aplikasi: a. Hardware:

1. Notebook Toshiba Satellite L645

2. Processor Intel (R) Core (TM) 13 CPU M 380 @ 2.53 GHz (4CPUs), ~ 2.56 GHz

3. Memory 2048 MB RAM 4. Hardisk 500 GB

b. Software:

1. Windows 7 Home Basic 2. Microsoft Office Excel 2003 3. Apache Server v.2.5.10

2. Hardware dan software minimal untuk menjalankan program a. Hardware:

1. Komputer PC Pentium IV 2. Memory 1 Gbytes

3. Hardisk 10 Gbytes 4. VGA 128 Mbytes

5. Mouse, Keyboard dan Monitor b. Software:


(62)

4.2 Pengujian Sistem

Pada tahap ini akan dijelaskan pengujian dari aplikasi sistem proses K-Means Clustering pada saat dijalankan. Sistem ini akan menghasilkan output berupa model tata letak produk pada suatu cluster berdasarkan metode Market Basket Analysis, yaitu berupa seringnya konsumen membeli suatu produk yang dapat dilihat dari struk-struk belanjaan yang didapat dari swalayan.

4.2.1 Upload Data Struk

Tahap awal dari sistem K-Means Clustering adalah upload data struk. Data yang akan diupload berupa dataset sebanyak 1022 record, dapat dilihat pada Gambar 4,1 berikut:


(63)

(64)

Gambar 4.1 Dataset Struk Penjualan

Tampilan upload data struk terdiri dari jumlah kolom, posisi baris 1, posisi kolom 1, jumlah cluster, output dan upload file yang dapat dilihat pada Gambar 4.2 berikut:


(65)

4.2.2 Hasil Mean Clustering

Setelah upload data struk, hasil yang diperoleh dapat dilihat pada tampilan hasil mean clustering.

1. Hasil Mean Clustering 1

Pada hasil mean clustering 1, proses yang dilakukan adalah cleaning data dan pemberian nama cluster. Sebelumnya penulis sudah memasukkan jumah cluster sebanyak 5 cluster, sehingga pemberian nama cluster dimulai dari C0, C1, C2, C3 dan C4. Hasil mean clustering 1 dapat dilihat


(66)

(67)

(68)

2. Hasil Mean Clustering 2

Hasil mean clustering 2 yaitu hasil iterasi pertama, yang terdiri dari hitung centroid iterasi 1, hitung jarak data iterasi 1 dan hasil cluster pada iterasi 1. Hasil mean clustering 2 dapat dilihat pada Gambar 4.4 berikut:


(69)

(70)

(71)

(72)

(73)

(74)

(75)

3. Hasil Mean Clustering 3

Hasil mean clustering 3 yaitu hasil iterasi kedua, yang terdiri dari hitung centroid iterasi 2, hitung jarak data iterasi 2 dan hasil cluster pada iterasi 2. Hasil mean clustering 3 dapat dilihat pada Gambar 4.5 berikut:


(76)

(77)

(78)

(79)

(80)

(81)

4. Hasil Mean Clustering 4

Hasil mean clustering 4 yaitu hasil iterasi ketiga, yang terdiri dari hitung centroid iterasi 3, hitung jarak data iterasi 3 dan hasil cluster pada iterasi 3. Hasil mean clustering 4 dapat dilihat pada Gambar 4.6 berikut:


(82)

(83)

(84)

(85)

(86)

Gambar 4.6 Iterasi 3 5. Hasil Mean Clustering 5

Hasil mean clustering 5 ini merupakan kesimpulan dari semua proses. Berdasarkan hasil yang diperoleh dari hasil mean clustering sebelumnya maka proses iterasi dihentikan. Karena pada iterasi ke 2 dan iterasi ke 3 posisi clusternya tidak berubah, maka proses iterasinya dapat dihentikan. Pada Gambar 4.7 dapat dilihat pada setiap cluster memiliki jumlah item yang berbeda-beda. Pada C0 memiliki jumlah item sebanyak 36, C1

memiliki jumlah item sebanyak 128, C2 memiliki jumlah item 51, C3


(87)

(88)

(89)

(90)

(91)

(92)

(93)

(94)

(95)

Gambar 4.7 Hasil Akhir 4.3 Hasil Clustering

Berdasarkan pengujian yang telah dilakukan, diperoleh model cluster yaitu sebanyak 5 model.

1. Model 1 (C0)

Pada model pertama ini (C0) memiliki jumlah item sebanyak 36 struk.

Masing-masing struk terdiri dari 7 atribut yang dimulai dari X1 sampai dengan X7. Pada X1 memiliki jumlah item 58, X2 memiliki jumlah item 60,

X3 memiliki jumlah item 19, X4 memiliki jumlah item 177, X5 memiliki

jumlah item 195, X6 memiliki jumlah item 46 dan X7 memilki jumlah item

166.

Berdasarkan jumlah item pada masing-masing atribut tersebut, dapat disimpulkan atribut yang diletakkan pada urutan pertama adalah atribut yang memiliki jumlah item terbanyak diantara atribut-atribut yang lain dan seterusnya berdasarkan jumlah item pada setiap atribut. Jadi pada model 1 (C0) atribut pada urutan pertama yaitu X5, X4, X7, X2, X1, X6 dan X3.

2. Model 2 (C1)

Pada model kedua ini (C1) memiliki jumlah item sebanyak 128 struk.

Masing-masing struk terdiri dari 7 atribut yang dimulai dari X1 sampai dengan X7. Pada X1 memiliki jumlah item 165, X2 memiliki jumlah item

213, X3 memiliki jumlah item 95, X4 memiliki jumlah item 119, X5

memiliki jumlah item 255, X6 memiliki jumlah item 204 dan X7 memilki

jumlah item 195.


(96)

seterusnya berdasarkan jumlah item pada setiap atribut. Jadi pada model 2 (C1) atribut pada urutan pertama yaitu X5, X2, X6, X7, X1, X4 dan X3.

3. Model 3 (C2)

Pada model ketiga ini (C2) memiliki jumlah item sebanyak 51 struk.

Masing-masing struk terdiri dari 7 atribut yang dimulai dari X1 sampai dengan X7. Pada X1 memiliki jumlah item 396, X2 memiliki jumlah struk

104, X3 memiliki jumlah item 32, X4 memiliki jumlah item 82, X5

memiliki jumlah item 108, X6 memiliki jumlah item 42 dan X7 memilki

jumlah item 93.

Berdasarkan jumlah item pada masing-masing atribut tersebut, dapat disimpulkan atribut yang diletakkan pada urutan pertama adalah atribut yang memiliki jumlah item terbanyak diantara atribut-atribut yang lain dan seterusnya berdasarkan jumlah item pada setiap atribut. Jadi pada model 3 (C2) atribut pada urutan pertama yaitu X1, X5, X2, X7, X4, X6 dan X3.

4. Model 4 (C3)

Pada model keempat ini (C3) memiliki jumlah item sebanyak 43 struk.

Masing-masing struk terdiri dari 7 atribut yang dimulai dari X1 sampai dengan X7. Pada X1 memiliki jumlah item 114, X2 memiliki jumlah item

96, X3 memiliki jumlah item 32, X4 memiliki jumlah item 102, X5

memiliki jumlah item 675, X6 memiliki jumlah item 66 dan X7 memilki

jumlah item 99.

Berdasarkan jumlah item pada masing-masing atribut tersebut, dapat disimpulkan atribut yang diletakkan pada urutan pertama adalah atribut yang memiliki jumlah item terbanyak diantara atribut-atribut yang lain dan seterusnya berdasarkan jumlah item pada setiap atribut. Jadi pada model 4 (C3) atribut pada urutan pertama yaitu X5, X1, X4, X7, X2, X6 dan X3.

5. Model Kelima (C4)

Pada model kelima ini (C4) memiliki jumlah item sebanyak 22 struk.

Masing-masing struk terdiri dari 7 atribut yang dimulai dari X1 sampai dengan X7. Pada X1 memiliki jumlah item 134, X2 memiliki jumlah item

311, X3 memiliki jumlah item 30, X4 memiliki jumlah item 62, X5

memiliki jumlah item 189, X6 memiliki jumlah item 47 dan X7 memilki


(1)

.white_content form{

border:1px solid #555;

border-radius: 45px 0 40px 0; }

.ajax_error{

border:1px solid red; display:none;

padding:5px;

background:#FFEBE8; color:#B60002;

} h1{

font-size:12px; padding:9px 5px; border:1px solid #ccc; background:#eee;

background: url(chrometheme/chromebg.gif) center center repeat-x; margin:0px;

}

td.header_top{

background:#eee;

border-top:1px solid #ccc; font-weight:bold;

padding:4px 8px; }

td.field{

border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2; font-weight:bold;

padding:4px 8px; font-size:13px; }

.rFloat{

float:right; padding:5px; }

.itemList li{

list-style-type:none; float:left;

}


(2)

border-bottom:1px solid #eee; clear:both;

padding:5px; }

.contents th{

text-align:left; }

table {

width:100%; }

table.title{

border-bottom:1px solid #ccc; font-weight:bold;

padding:7px 5px; }

table.list{

border-top:1px solid #eee; margin:0px;

padding:7px 5px; }

div.list{

border-top:1px solid #ccc; border-bottom:1px solid #ccc; margin-top:10px;

}

.list select{

padding:4px;

border:1px solid #8496BA; }

.list input{

padding:3px; }

.pop_gambar{

background:rgba(150, 0, 0, 0.5) none repeat scroll 0 0; padding:5px;

padding-left:10px; display: block; position: fixed; bottom:0%; left:0%;


(3)

font-size:70%; font-weight:bold; width:100%; z-index:1002; color:#FFFFFF; }

Style2.css

@charset "utf-8"; /* CSS Document */ table.tabView td.perc{

background-color:#eFF; text-align:center;

} iframe{

border:none; text-align:center; }

table.tabView td.telk{

background-color:#fcb; text-align:center; }

.header_top h2{ width:50%; margin-left:15px; color:#900;

padding-left: 15px; padding-bottom:3px;

border-bottom: 1px dashed #855; font-size:14px;

}

table.tabView td.isat{

background-color:#FF8; text-align:center;

}

table.tabView td.xl{

background-color:#AAF; text-align:center;

}

table.tabView td.up{

background-color:#3F3; text-align:center;

}


(4)

background-color:#F33; text-align:center;

}

table.tabView td.st{

background-color:#FF3; text-align:center;

}

table.tabView2 td.dist{

background-color:#FF6; text-align:center;

} select{

padding:4px; }

input{

padding:4px; }

td{

padding:5px; }

input:focus, select:hover, select:focus, input:hover{ border:#fee 1px solid;

box-shadow: 0 0 5px rgba(100, 0, 0, 0.6); }

button:hover,button:focus,a.button:hover{ border:#F55 0px solid;

box-shadow: 0 0 5px rgba(250, 5, 5, 0.6); text-decoration:none;

}

table.tabView2{

background-color: #E7E7E7; border-spacing: 0px;

color: #0B55C4; min-width: 80%; width:auto;

border: 1px solid #333333; margin:auto;

}

table.tabView{

background-color: #E7E7E7;


(5)

color: #0B55C4; min-width: 80%; width:auto;

border: 1px solid #FF6600; margin:auto;

}

table.tabView th{

background: none repeat scroll 0 0 #DDF; border-bottom: 1px solid #333333;

border-left: 1px solid #333333; color: #222222;

text-align:center; text-align: center;

font-size:12px; font-weight:bold; padding:4px; }

table.tabView th.scr{

background: none repeat scroll 0 0 #FF6633; border-bottom: 1px solid #FF3300;

border-left: 1px solid #FF3300; color: #FFFFFF;

text-align:center; text-align: center;

font-size:11px; padding:4px;

text-transform:uppercase; }

table.tabView td{

background: none repeat scroll 0 0 #FFFFFF; border: 1px solid #888888;

height: 20px; padding:4px; font-size:10px; color:#111; text-align:center; }

table.tabView2 th.scr{

background: none repeat scroll 0 0 #000; border-bottom: 1px solid #FFFFFF;

border-left: 1px solid #FFFFFF; color: #FFFFFF;

text-align:center; text-align: center;


(6)

font-size:10px; padding:4px;

text-transform:uppercase; }

table.tabView2 td{

background: none repeat scroll 0 0 #FFFFFF; border: 1px solid #888888;

height: 25px; padding:4px; font-size:10px; color:#111; text-align:center; }

table.tabView2 td.min{

background: none repeat scroll 0 0 #C30; }

table.tabView2 td.max{

background: none repeat scroll 0 0 #0F3; }

table.tabView td.week{

background: none repeat scroll 0 0 #AFCBE7; text-transform:uppercase;

}

table.tabView2 td.libur{

background: none repeat scroll 0 0 #F30; }

table.tabView2 td.week2{

background: none repeat scroll 0 0 #69F; text-transform:uppercase;

}

table.tabView td{

background: none repeat scroll 0 0 #FFFFFF; border: 1px solid #888888;

height: 25px; padding:4px; font-size:11px; color:#333;}