Penerapan data mining untuk pola pencarian asosiasi barang dalam meningkatkan penjualan produk menggunakan Algoritma Apriori : studi kasus : toko kosmetik ``ALWENA``.

(1)

Penerapan Data Mining untuk Pola Pencarian Asosiasi Barang

dalam Meningkatkan Penjualan Produk Menggunakan Algoritma

Apriori

(Studi Kasus : Toko Kosmetik “ALWENA”)

ABSTRAK

Banyaknya persaingan dibidang penjualan produk kosmetik dan meningkatnya

kemajuan dibidang teknologi informasi menjadi sangat berpengaruh bagi

kemajuan sebuah toko kosmetik. Banyaknya transaksi penjualan setiap hari, data

penjualan semakin lama menumpuk dan hanya dijadikan arsip penjualan toko.

Data yang menumpuk tersebut sebenarnya dapat diolah agar menghasilkan suatu

informasi yang dapat digunakan untuk meningkatkan penjualan produk. Pada

tugas akhir ini akan dibuat sebuah sistem untuk mengimplementasikan algoritma

apriori dengan teknik association rule mining untuk menganalisa data transaksi

penjualan to

ko kosmetik “ALWENA”.

Association rule mining adalah teknik data

mining untuk menemukan aturan suatu kombinasi item. Tahap pertama dalam

perhitungan algoritma Apriori untuk menemukan association rules yaitu

menuliskan data transaksi, dimana data yang diproses merupakan data transaksi

penjualan selama 3 tahun yaitu tahun 2013, 2014, dan 2015. Dilanjutkan dengan

membuat tabel 1 itemset untuk melakukan perhitungan jumlah transaksi pada

masing-masing barang. Kemudian membuat kombinasi 2 itemset pada setiap

barang dan frekuensi masing-masing kombinasi dihitung sesuai dengan data pada

tabel. Setelah itu menganalisa tabel pada kombinasi 2 itemset. Langkah berikutnya

dengan membuat kombinasi 3 itemset yang sesuai dengan susunan kombinasi

yang baru. Ditentukan nilai minimum support sebesar 1.9, nilai minimum

confidence sebesar 0,7 kemudian jumlah pola 5 dan disorting berdasarkan nilai

confidencenya. Didapatkan pola asosiasi yang berbeda tiap tahunnya dengan nilai

support, confidence dan support x confidence yang berbeda pula. Dari pola

asosiasi yang didapat pertahun kemudian diujikan langsung kepada costumer

selama 10 hari dengan data transaksi pada tanggal 2 Januari 2016 sampai dengan

11 Januari 2016 disimpulkan bahwa kesamaan pembelian barang oleh customer

dengan hasil pola asosiasi oleh sistem paling besar adalah pada Tahun 2014 yaitu

sebesar 50%.


(2)

Application of Data Mining for Pattern Search Goods Association

in Increasing Product Sales Using Apriori Algorithm

(Case Study : Cosmetics Store " ALWENA " )

ABSTRACT

The amount of competition in the sale of cosmetic products and the increasing

advances in the field of information technology to be very influential for the

progress of a cosmetics store. The number of sales transactions every day, the

longer the sales data accumulates and is only used as an archive store sales. The

actual data that accumulate can be processed to produce an information that can

be used to increase product sales. In this final project will be made a priori

systems to implement algorithms with association rule mining techniques to

analyze transaction data store sales of cosmetics " ALWENA ". Association rule

mining is a data mining techniques to discover the rules of a combination of items

. The first stage in the calculation of Apriori algorithm to discover association

rules that write transaction data, where the data is processed in a sales transaction

data for 3 years is 2013, 2014, and 2015. Followed by creating a table 1 itemset to

perform calculation of the number of transactions on each item. Then make a

combination of two itemsets at each item and the frequency of each combination

is calculated in accordance with the data in the table. After analyzing the tables on

the combination of two itemsets. The next step to create a combination of 3

itemset accordance with the composition of the new combination. Specified

minimum support value of 1,9, the minimum confidence value of 0,7 and then the

number 5 and disorting patterns based on the value confidencenya. Obtained a

different pattern each year association with the value of the support, confidence

and support x confidence is different. From the pattern of association obtained a

year later tested directly to the customer for 10 days with transaction data on 2

January 2016 until 11 January 2016 concluded that the similarity of purchase by

the customer with the results of the pattern of association by the system is greatest

in the year 2014 in the amount of 50 % .


(3)

i

Penerapan Data Mining untuk Pola Pencarian Asosiasi Barang

dalam Meningkatkan Penjualan Produk Menggunakan Algoritma

Apriori

(Studi Kasus : Toko Kosmetik “ALWENA”)

SKRIPSI

Diajukan Untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Komputer

Program Studi Teknik Informatika

Disusun Oleh :

Pristian Putik Alwena

115314086

PROGRAM STUDI TEKNIK INFORMATIKA

JURUSAN TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA


(4)

ii

Application of Data Mining for Pattern Search Goods Association

in Increasing Product Sales Using Apriori Algorithm

(Case Study : Cosmetics Store " ALWENA " )

A Final Project

Presented as Partial Fulfillment of The Requirements

To Obtain Sarjana Komputer Degree

In Informatics Engineering Study Program

By:

Pristian Putik Alwena

115314086

INFORMATICS ENGINEERING STUDY PROGRAM

DEPARTMENT OF INFORMATICS ENGINEERING

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2015


(5)

(6)

(7)

v

HALAMAN PERSEMBAHAN

Tugas akhir ini saya persembahkan untuk:

Allah SWT

Orang tua tercinta atas doa, semangat, dan dukungan yang selalu diberikan

Dimas Dewa Wicaksono tersayang yang selalu setia menemani dan mendukung

dalam penyelesaian TA

Romo Poldo yang telah membantu dalam penyelesaian TA

Audris Evan Utomo yang telah menluangkan waktu untuk konsultasi mengenai

penelitian ini


(8)

(9)

(10)

viii

Penerapan Data Mining untuk Pola Pencarian Asosiasi Barang

dalam Meningkatkan Penjualan Produk Menggunakan Algoritma

Apriori

(Studi Kasus : Toko Kosmetik “ALWENA”)

ABSTRAK

Banyaknya persaingan dibidang penjualan produk kosmetik dan meningkatnya

kemajuan dibidang teknologi informasi menjadi sangat berpengaruh bagi

kemajuan sebuah toko kosmetik. Banyaknya transaksi penjualan setiap hari, data

penjualan semakin lama menumpuk dan hanya dijadikan arsip penjualan toko.

Data yang menumpuk tersebut sebenarnya dapat diolah agar menghasilkan suatu

informasi yang dapat digunakan untuk meningkatkan penjualan produk. Pada

tugas akhir ini akan dibuat sebuah sistem untuk mengimplementasikan algoritma

apriori dengan teknik association rule mining untuk menganalisa data transaksi

penjualan toko kosmetik “ALWENA”.

Association rule mining adalah teknik data

mining untuk menemukan aturan suatu kombinasi item. Tahap pertama dalam

perhitungan algoritma Apriori untuk menemukan association rules yaitu

menuliskan data transaksi, dimana data yang diproses merupakan data transaksi

penjualan selama 3 tahun yaitu tahun 2013, 2014, dan 2015. Dilanjutkan dengan

membuat tabel 1 itemset untuk melakukan perhitungan jumlah transaksi pada

masing-masing barang. Kemudian membuat kombinasi 2 itemset pada setiap

barang dan frekuensi masing-masing kombinasi dihitung sesuai dengan data pada

tabel. Setelah itu menganalisa tabel pada kombinasi 2 itemset. Langkah berikutnya

dengan membuat kombinasi 3 itemset yang sesuai dengan susunan kombinasi

yang baru. Ditentukan nilai minimum support sebesar 1.9, nilai minimum

confidence sebesar 0,7 kemudian jumlah pola 5 dan disorting berdasarkan nilai

confidencenya. Didapatkan pola asosiasi yang berbeda tiap tahunnya dengan nilai

support, confidence dan support x confidence yang berbeda pula. Dari pola

asosiasi yang didapat pertahun kemudian diujikan langsung kepada costumer

selama 10 hari dengan data transaksi pada tanggal 2 Januari 2016 sampai dengan

11 Januari 2016 disimpulkan bahwa kesamaan pembelian barang oleh customer

dengan hasil pola asosiasi oleh sistem paling besar adalah pada Tahun 2014 yaitu

sebesar 50%.


(11)

ix

Application of Data Mining for Pattern Search Goods Association

in Increasing Product Sales Using Apriori Algorithm

(Case Study : Cosmetics Store " ALWENA " )

ABSTRACT

The amount of competition in the sale of cosmetic products and the increasing

advances in the field of information technology to be very influential for the

progress of a cosmetics store. The number of sales transactions every day, the

longer the sales data accumulates and is only used as an archive store sales. The

actual data that accumulate can be processed to produce an information that can

be used to increase product sales. In this final project will be made a priori

systems to implement algorithms with association rule mining techniques to

analyze transaction data store sales of cosmetics " ALWENA ". Association rule

mining is a data mining techniques to discover the rules of a combination of items

. The first stage in the calculation of Apriori algorithm to discover association

rules that write transaction data, where the data is processed in a sales transaction

data for 3 years is 2013, 2014, and 2015. Followed by creating a table 1 itemset to

perform calculation of the number of transactions on each item. Then make a

combination of two itemsets at each item and the frequency of each combination

is calculated in accordance with the data in the table. After analyzing the tables on

the combination of two itemsets. The next step to create a combination of 3

itemset accordance with the composition of the new combination. Specified

minimum support value of 1,9, the minimum confidence value of 0,7 and then the

number 5 and disorting patterns based on the value confidencenya. Obtained a

different pattern each year association with the value of the support, confidence

and support x confidence is different. From the pattern of association obtained a

year later tested directly to the customer for 10 days with transaction data on 2

January 2016 until 11 January 2016 concluded that the similarity of purchase by

the customer with the results of the pattern of association by the system is greatest

in the year 2014 in the amount of 50 % .


(12)

x

KATA PENGANTAR

Puji dan syukur penulis panjatkan atas kehadirat Tuhan Yang Maha Esa atas

berkat, rahmat serta kasih-Nya sehingga penulis dapat menyelesaikan skripsi yang

berjudul

Penerapan Data Mining untuk Pola Pencarian Asosiasi Barang

dalam Meningkatkan Penjualan Produk Menggunakan Algoritma Apriori

(Studi Kasus : Toko Kosmetik “ALWENA”)”

.

Penulisan skripsi ini bertujuan untuk memenuhi syarat untuk memperoleh

gelar sarjana komputer program studi S1 jurusan Teknik Informatika Universitas

Sanata Dharma. Penulis menyadarai bahwa skripsi ini masih jauh dari kata

sempurna, oleh sebab itu penulis mengharapkan kritik dan saran yang bersifat

membangun dari semua pihak demi kesempurnaan skripsi ini.

Skripsi ini tidak lepas dari peran penting berbagai pihak, sehingga pada

kesempatan ini penulis dengan segala kerendahan hati serta rasa hormat

mengucapkan terimakasih yang sebesar-besarnya kepada semua pihakyang telah

memberikan dukungan baik secara langsung maupun tidak langsung kepada

penulis dalam penyusunan skripsi ini hingga selesai. Pada proses penulisan tugas

akhir ini saya ucapkan terima kasih kepada:

1.

Allah SWT selaku pembimbing iman dalam hidup yang selalu

memberi solusi diatas segala solusi.

2.

Ibu Sri Hartati Wijono, S.Si., M.Kom. selaku pembimbing yang

memberikan pengarahan serta solusi dalam pengerjaan skripsi ini

hingga selesai.


(13)

xi

3.

Kedua Orangtua, Bapak Adi Sunaryo dan Ibu Welli Istiana yang selalu

rela berkorban, mendoakan, menyayangi dan memberikan motivasi

kepada penulis.

4.

Dimas Dewa Wicaksono yang selalu setia menemani, mendukung dan

membantu dikala susah dan senang saat pengerjaan skripsi ini.

5.

Romo Poldo Andreas Situmorang dan Audris Evan Utomo yang

senantiasa tulus meluangkan waktunya untuk konsultasi mengenai

penelitian ini.

6.

Seluruh civitas akademika Teknik Informatika angkatan 2011,

terutama anggota C++ yang telah berjuang bersama dan saling

memberi semangat dan inspirasi.

7.

Semua pihak, baik langsung maupun tidak langsung yang telah

membantu dalam proses penyelesaian skripsi.

Penulis menyadari masih banyak kekurangan dalam penyusunan skripsi

ini, namun penulis tetap berharap skripsi ini bermanfaat bagi pengembangan ilmu

pengetahuan.

Yogyakarta, 29 Februari 2016

Penulis


(14)

xii

DAFTAR ISI

HALAMAN JUDUL ... i

HALAMAN JUDUL ... ii

HALAMAN PERSETUJUAN SKRIPSI ... iii

HALAMAN PENGESAHAN SKRIPSI...iv

HALAMAN PERSEMBAHAN...v

PERNYATAAN KEASLIAN KARYA ... vi

LEMBAR PERNYATAAN PERSETUJUAN ... vii

ABSTRAK...viii

ABSTRACT ... ix

KATA PENGANTAR ... x

DAFTAR ISI ... xii

BAB I ... 1

PENDAHULUAN ... 1

I.1 Latar Belakang ... 1

I.2 Rumusan Masalah ... 3

I.3 Tujuan ... 3

I.4 Manfaat Penelitian ... 3

I.5 Batasan Masalah ... 4

I.6 Metodologi Penelitian ... 4

I.7 Sistematika Penulisan ... 5

BAB II ... 7

LANDASAN TEORI ... 7

II.1 Data Mining ... 7


(15)

xiii

BAB III ... 12

PERANCANGAN SISTEM ... 12

III.1 Analisis Sistem ... 12

III.2 Gambaran Umum Sistem ... 12

III.3 Diagram Use Case ... 13

Gambar III.1 Diagram Use Case ... 13

Tabel III.1 Deskripsi Use Case ... 13

III.4 Blok Diagram ... 14

Gambar III.2 Diagram Blok ... 14

III.5 Penerapan Algoritma Apriori ... 15

III.5.1 Preproses ... 15

Tabel III.2 Data Transaksi Barang Kosmetik Bulan Juni ... 15

III.5.2 Menghitung Kandidat 1 itemset ... 17

Tabel III.3 Kandidat 1 itemset ... 17

III.5.3 Menghitung nilai minimum support dan menghitung Kandidat 2 itemset ... 18

Tabel III.4 Kandidat 2 itemset ... 19

Tabel III.5 Kandidat 3 itemset ... 25

Tabel III.6 Hasil Asosiasi... 28

Tabel III.7 Rule ... 29

III.6 Desain Interface ... 30

Gambar III.3 Input Data Transaksi ... 30

Gambar III.4 Hasil Proses Asosiasi ... 31

III.7 Analisis Pengujian ... 31

BAB IV ... 32

IMPLEMENTASI SISTEM ... 32

IV.1 Implementasi Antar Muka (User Interface) ... 32


(16)

xiv

Gambar IV.1 Halaman utama ... 33

IV.1.2 Halaman Input Data ... 33

Gambar IV.2 Halaman Input Data ... 34

Gambar IV.3 Halaman Pilih File Anda ... 34

Gambar IV.4 Input Data Transaksi ... 35

Gambar IV.5 Tabel Representasi Biner ... 36

Gambar IV.6 Tabel Hasil Akhir Pola Asosiasi ... 36

Gambar IV.7 File Data Pembelian.txt ... 37

Gambar IV.8 Halaman Pola Asosiasi Barang Toko Kosmetik “ALWENA” ... 37

IV.2 Program Pola Asosiasi Barang Toko Kosmetik“ALWENA” ... 38

BAB V ... 42

ANALISIS HASIL DAN PEMBAHASAN ... 42

V.1 Hasil Percobaan ... 42

BAB VI ... 55

KESIMPULAN DAN SARAN ... 57

VI.1 Kesimpulan ... 57

VI.2 Saran ... 57

DAFTAR PUSTAKA ... 59

LAMPIRAN I ... 60

LAMPIRAN II ... 69

LAMPIRAN III ... 79

LAMPIRAN IV ... 88

LAMPIRAN V ... 89

LAMPIRAN VI ... 89


(17)

1

BAB I

PENDAHULUAN

I.1

Latar Belakang

Banyaknya persaingan dalam dunia bisnis khususnya dibidang penjualan

produk kosmetik dan meningkatnya kemajuan dibidang teknologi informasi

menjadi sangat berpengaruh bagi kemajuan sebuah toko sehingga menuntut para

pelaku toko untuk terus meningkatkan penjualan produk toko tersebut.

Dengan adanya proses penjualan setiap hari, data penjualan semakin lama

semakin banyak dan hanya disimpan sebagai arsip atau laporan penjualan toko

saja. Hal ini terjadi

pada toko kosmetik ”ALWENA” yang saat ini pemanfaatan

datanya belum maksimal, sehingga data penjualan tersebut tidak dimanfaatkan

secara optimal serta belum ada sistem yang dapat membantu dan metode yang

dapat digunakan untuk meningkatkan penjualan produk.

Manager

toko

mengharapkan

adanya

teknologi

yang

mampu

menghasilkan suatu informasi untuk menentukan paket penjualan kosmetik untuk

meningkatkan penjualan produk kosmetik dalam memberikan diskon dalam

penjualan produk. Yang nantinya dengan adanya teknologi tersebut kemudian

dapat membantu toko dalam mengambil keputusan dalam menentukan paket

produk yang akan dijual untuk peningkatan hasil penjualan produk di toko

tersebut.

Salah satu cara untuk membantu toko kosmetik tersebut maka dilakukan

pemanfaatan data penjualan pada toko kosmetik (data mining).

Pada dasarnya


(18)

2

data mining berhubungan dengan analisa data dan penggunaan teknik-teknik

perangkat lunak untuk mencari pola dan keteraturan dalam himpunan data yang

sifatnya tersembunyi. Data mining adalah proses yang menggunakan teknik

statistik, matematika, kecerdasan buatan, dan machine learning untuk

mengekstrasi dan mengidentifikasi informasi yang bermanfaat dan pengetahuan

yang terkait dari berbagai database besar[1]. Data mining dapat membantu toko

untuk menganalisa pola dari data-data penjualan yang tersimpan dalam basis data

toko dan mengolah isi dari data transaksi penjualan tersebut menjadi sebuah

pengetahuan yang baru (knowledge) mengenai pola asosiasi penjualan suatu

barang dengan barang lain. Hal ini merupakan pengetahuan yang bermanfaat bagi

pemilik toko dalam membantu penjualan produk di toko tersebut.

Salah satu penerapan data mining dalam analisa pemasaran adalah untuk

analisa keranjang belanja (Market Basket Analysis) pada suatu pasar. Pada tugas

akhir ini akan dilakukan penelitian keranjang belanja menggunakan teknik

Association Rules dimana sering disebut juga dengan Market Basket Analysis

karena kegunaannya dalam pembuatan model perilaku pembelian barang oleh

konsumen dan dalam menganalisis perilaku konsumen. Algoritma yang

digunakan yaitu algoritma Apriori yang diaplikasikan pada sebuah sistem

pencarian pola asosiasi barang. Hasil penelitian diharapkan dapat memberikan

pengetahuan bagi pemilik toko kosmetik untuk peningkatan penjualan produk.


(19)

3

I.2

Rumusan Masalah

Berdasarkan latar belakang diatas maka rumusan masalah yang dapat

diambil yaitu:

1.

Bagaimana menerapkan algoritma apriori untuk menemukan

keterkaitan atau pola asosiasi produk pada transaksi penjualan di

toko kosmetik “ALWENA”?

I.3

Tujuan

Tujuan dari penelitian ini yaitu:

1.

Mengolah data transaksi penjualan kosmetik menggunakan

algoritma Apriori.

2.

Mengetahui

pola

asosiasi

penjualan

produk

kosmetik

menggunakan algoritma Apriori.

I.4

Manfaat Penelitian

Dengan adanya tujuan dari penelitian diatas, maka diharapkan dapat

bermanfaat bagi semua pihak. Manfaat dari penelitian ini yaitu :

1.

Membantu toko mengetahui pola asosiasi produk pada transaksi

penjualan.

2.

Toko mampu menentukan paket produk yang akan dijual dalam

pemberian diskon.

3.

Sebagai solusi bagi Toko

Kosmetik “ALWENA”

membantu

menentukan paket produk yang akan dijual dalam pemberian

diskon.


(20)

4

I.5

Batasan Masalah

Adapun batasan masalahnya yaitu:

1.

Data yang diambil yaitu data penjualan produk kosmetik per

transaksi.

2.

Data yang akan dikumpulkan yaitu data transaksi penjualan

kosmetik di Toko Kosmetik Alwena selama 3 tahun yaitu tahun

2013, 2014, dan 2015 per transaksi per hari.

3.

Data akan dikelompokkan terlebih dahulu secara manual.

4.

Data yang akan diproses berbentuk spreadsheet dengan tipe (*.xls)

5.

Proses pencarian pola asosiasi dibatasi untuk kombinasi 2 barang

yaitu asosiasi A=>B dan kombinasi 3 barang yaitu asosiasi

AB=>C.

I.6

Metodologi Penelitian

Metode Penelitian yang akan dipakai dalam penelitian ini yaitu :

1.

Studi Pustaka : yaitu dengan mencari-cari referensi yang

mendukung dengan judul penelitian untuk memahami penerapan

data mining untuk keperluan bisnis.

2.

Studi lapangan : yaitu dengan datang langsung ke toko kosmetik

”A

LWENA

” untuk mendap

atkan data transaksi penjualan, sebagai

bahan data penelitian yang akan diolah. Data yang digunakan

adalah yaitu data Toko Kosmetik Alwena selama 3 tahun yaitu

tahun 2013, 2014, dan 2015 per transaksi per hari dari berbagai

jenis produk kosmetik yang terjual.


(21)

5

3.

Proses Data Mining menggunakan algoritma apriori.

I.7

Sistematika Penulisan

Untuk memberikan gambaran dan kerangka yang jelas pada gambaran tiap

bab dalam penelitian ini. Maka diperlukan sistematika penulisan. Berikut ini

gambaran sistematika penulisan dalam masing-masing bab :

BAB I Pendahuluan

Bab ini berisi tentang latar belakang, rumusan masalah, tujuan penelitian,

manfaat penelitian, batasan masalah, dan sistematika penulisan laporan

dari penelitian yang dilakukan.

BAB II Landasan Teori

Bab ini menjelaskan tentang landasan teori yang berhubungan dengan

penelitian yang akan dilakukan untuk memecahkan masalah yang akan

diteliti.

BAB III Analisa dan Perancangan Sistem

Bab ini menjelaskan tentang tahap-tahap penyelesaiaan masalah

menggunakan algoritma apriori serta rancangan sistem yang akan dibuat.

BAB IV Implementasi Sistem

Bab ini berisi tentang implementasi sistem dari apa yang telah disusun

atau dirancang pada bab sebelumnya.

BAB V Analisa Hasil

Bab ini menjelaskan tentang analisa dan hasil dari implementasi sistem

yaitu hasil dari keluaran sistem.


(22)

6

BAB VI Kesimpulan dan Saran

Bab ini berisi tentang kesimpulan dari hasil akhir pola asosiasi dan sara

n tentang pengembangan dalam sistem.


(23)

7

BAB II

LANDASAN TEORI

Berdasarkan judul Tugas

Akhir “Penerapan Data Mining untuk Pola

Pencarian Asosiasi Barang dalam Meningkatkan Penjualan Produk Toko

Kosmetik “ALWENA”

Menggunakan Algoritma Apriori” maka dalam bab

landasan teori akan berisi :

II.1 Data Mining

Data Mining adalah suatu istilah yang digunakan untuk menguraikan

penemuan pengetahuan di dalam database. Data mining adalah proses yang

menggunakan teknik statistik, matematika, kecerdasan buatan dan machine

learning untuk mengekstraksi dan mengidentifikasi nformasi yang bermanfaat dan

pengetahuan yang terakit dari berbagai database besar[1].

II.2 Algoritma Apriori

Algoritma apriori termasuk jenis aturan asosiasi pada data mining. Aturan

yang menyatakan asosiasi antara beberapa atribut sering disebut affinity analysis

atau market basket analysis. Analisis asosiasi atau association rule mining adalah

teknik data mining untuk menemukan aturan suatu kombinasi item. Salah satu

tahap analisis asosiasi yang menarik perhatian banyak peneliti untuk

menghasilkan algoritma yang efisien adalah analisis pola frekuensi tinggi

(frequent pattern mining). Penting tidaknya suatu asosiasi dapat diketahui dengan

dua tolak ukur , yaitu : support dan confidence. Support (nilai penunjang) adalah


(24)

8

persentase kombinasi item tersebut dalam database, sedangkan confidence (nilai

kepastian) adalah kuatnya hubungan antar-item dalam aturan asosiasi[1].

Beberapa istilah yang digunakan dalam algoritma apriori antara lain:

a. Support (dukungan): probabilitas pelanggan membeli beberapa produk secara

bersamaan dari seluruh transaksi. Support

untuk aturan “X

Y” adalah

probabilitas atribut atau kumpulan atribut X dan Y yang terjadi bersamaan.

b. Confidence (tingkat kepercayaan): probabilitas kejadian beberapa produk dibeli

bersamaan dimana salah satu produk sudah pasti dibeli.

Contoh: jika ada n transaksi dimana X dibeli, dan ada m transaksi dimana X dan Y

dibeli bersamaan, maka confidence dari aturan if X then Y adalah m/n.

c. Minimum support: parameter yang digunakan sebagai batasan frekuensi

kejadian atau support count yang harus dipenuhi suatu kelompok data untuk dapat

dijadikan aturan. Dimana nilai minimum support count diperoleh dari[2]:

jumlah item barang dari seluruh transaksi x 100%

jumlah total transaksi

d. Minimum confidence: parameter yang mendefinisikan minimum level dari

confidence yang harus dipenuhi oleh aturan yang berkualitas.

e Itemset: kelompok produk

f. Kandidat itemset (Ck): itemset-itemset yang akan dihitung support count-nya.

g. Frequent itemset (Fk): itemset yang sering terjadi, atau itemset-itemset yang

sudah melewati batas minimum support yang telah ditentukan.


(25)

9

II.2.1 Analisis Pola Frekuensi Tinggi dengan Algoritma Apriori

Tahap ini mencari kombinasi item yang memenuhi syarat minimum dari

nilai support dalam basis data. Nilai support sebuah item diperoleh dengan

menggunakan rumus berikut[3]:

Sementara, nilai support dari 2 item diperoleh dengan menggunakan rumus :

Frequent itemset menunjukkan itemset yang memiliki frekuensi kemunculan

lebih dari nilai minimum yang ditentukan ( ). Misalkan ( ) = 2, maka semua

itemsets yang frekuensi kemunculannya lebih dari atau sama dengan 2 kali disebut

frequent. Himpunan dari frequent k-itemset dilambangkan dengan Fk.

II.2.2. Pembentukan Aturan Asosiasi

Setelah semua pola frekuensi tinggi ditemukan, barulah dicari aturan

asosiasi yang memenuhi syarat minimum untuk confidence dengan menghitung

confidence aturan asosiatif A_ B.

Nilai confidence dari aturan A_ B diperoleh dengan rumus berikut:

Untuk menentukan aturan asosiasi yang akan dipilih maka harus diurutkan

berdasarkan Support× Confidence. Aturan diambil sebanyak n aturan yang

memiliki hasil terbesar.


(26)

10

Proses utama yang dilakukan dalam algoritma Apriori untuk mendapat

frequent itemset yaitu[4]:

1.

Join (penggabungan)

Proses ini dilakukan dengan cara pengkombinasian item dengan item yang

lainnya hingga tidak dapat terbentuk kombinasi lagi.

2.

Prune (pemangkasan)

Proses pemangkasan yaitu hasil dari item yang telah dikombinasikan

kemudian dipangkas dengan menggunakan minimum support yang telah

ditentukan oleh user.

Tahapan Perhitungan algoritma Apriori :

1.

Tahapan pertama dalam perhitungan algoritma Apriori untuk menemukan

association rules yaitu menuliskan data transaksi yang terjadi dalam periode

tertentu.

2.

Tahapan berikutnya adalah membuat tabel 1 itemset untuk melakukan

perhitungan jumlah transaksi pada masing-masing barang.

3.

Langkah berikutnya adalah membuat kombinasi 2 itemset pada setiap barang

dan frekuensi masing-masing kombinasi dihitung sesuai dengan data pada

tabel.

4.

Tahapan selanjutnya adalah menganalisa tabel pada kombinasi 2 itemset,

terdapat beberapa baris yang diberi warna kuning, warna kuning tersebut

adalah itemset yang memenuhi batas minimum dari jumlah frekuensi yang

telah ditentukan.

5.

Langkah berikutnya adalah dengan membuat 3 itemset yang sesuai dengan

susunan kombinasi yang baru.


(27)

11

6.

Misalkan ditetapkan nilai confidence minimal adalah 60% maka terlebih

dahulu kita menyeleksi jumlah minimal confidence.

Tabel final association rule menjelaskan tentang support dan confidence

dari masing-masing kombinasi 2 itemsets dan 3 itemsets. Hasil perhitungan

support pada tabel final association rule didapatkan dari jumlah produk dengan

kombinasi produk A dan B dibagi dengan total produk A. Sedangkan confidence

didapatkan dari jumlah produk kombinasi A dan B dibagi dengan total transaksi

yang ada.


(28)

12

BAB III

PERANCANGAN SISTEM

III.1 Analisis Sistem

Toko

Kosmetik “ALWENA” merupakan salah satu usaha pertokoan yang

bergerak dibidang penjualan produk kosmetik. Dalam melakukan proses

penjualan

Toko Kosmetik “ALWENA”

memiliki arsip penjualan yang berupa

nota penjualan yang berisi beberapa penjualan dalam sekali transaksi. Dalam era

kemajuan teknologi informasi,

Toko Kosmetik “ALWENA”

menginginkan

penjualan beberapa produk kosmetik dengan sistem paket dalam pemberian

diskon. Dari arsip nota penjualan tersebut dapat dijadikan perhitungan untuk

menentukan dan menghasilkan suatu informasi tentang pola asosiasi penjualan

barang yang dapat membantu toko dalam meningkatkan penjualan.

III.2 Gambaran Umum Sistem

Gambaran umum sistem yang akan dibuat yaitu:

1.

Sistem dapat memasukkan data transaksi barang

2.

Menentukan pola asosiasi barang, serta melihat hasil proses

asosiasi barang.

Adapun user yang terlibat dalam sistem ini yaitu Admin. Admin dapat

memasukkan data transaksi barang, melakukan proses pola asosiasi barang

dengan metode data mining, dan melihat hasil proses pola asosiasi barang.


(29)

13

III.3 Diagram Use Case

Admin

Gambar III.1 Diagram Use Case

Tabel III.1 Deskripsi Use Case

Nama Use Case

Deskripsi

Memasukkan data transaksi barang

Use case ini menggambarkan proses

dimana admin dapat memasukkan data

transaksi barang yang akan diolah.

Melakukan proses asosiasi barang

Use case ini menggambarkan proses

dimana admin dapat melakukan proses

asosiasi barang dengan memasukkan

nilai min.count dan min.confidence

kemudian memrosesnya.

Melihat hasil proses asosiasi barang

Use case ini menggambarkan proses

dimana admin dapat melihat hasil

proses asosiasi barang yang telah

diproses sebelumnya.

Memasukkan data transaksi barang

Melakukan proses pola asosiasi barang

Melihat hasil proses pola asosiasi barang


(30)

14

III.4 Blok Diagram

Gambar III.2 Diagram Blok

Menghitung kandidat 3 itemset, menentukan nilai minimum

confidence, dan rule yang didapat (Tabel III.5, III.6, III.7) Menghitung kandidat

1 itemset (Tabel III.3)

Menghitung nilai minimum support dan

menghitung kandidat 2 itemset (Tabel III.4) Mulai

Preproses

Data Transaksi Barang Kosmetik

(Tabel III.2)

Membuat Representasi Biner

Analisis Pengujian


(31)

15

III.5 Penerapan Algoritma Apriori

Berikut merupakan contoh penerapan algoritma Apriori dengan 20 data

transaksi penjualan kosmetik bulan Juni di Toko Kosmetik

“ALWENA” dengan

ketentuan untuk nilai minimum support 16% dan nilai minimum confidence adalah

70%.[2]

III.5.1 Preproses

Pada tahap ini merupakan tahap awal perhitungan yaitu dengan

menyiapkan data transaksi penjualan, pada tabel III.2 terdapat 20 data transaksi

penjualan kosmetik pada bulan Juni. Dimana pada setiap transaksi terdapat

berbagai jenis barang.

Tabel III.2 Data Transaksi Barang Kosmetik Bulan Juni

Transaksi

Transaksi Barang

1

Hand Body Citra, Cat Rambut Miranda, Kapas Modis, Pensil Alis Viva,

Parfum Axe, Deodoran Rexona

2

Cat Rambut Miranda,Shampo Pantene, Parfum Axe, Deodoran Rexona

3

Ponds Age Miracle,Cologne Sariayu, Eyeshadow Inez, EyeLiner MAC,

Lem Bulu Mata Eye Putty

4

Eyeshadow Inez, Acne Face Powder, Kuas X-pert, Scoot X-pert,

Hairspray Mayon

5

Eyeshadow Inez,Deodoran Rexona, Cologne Sariayu, Lem Bulu Mata

Eye Putty, Pensil Alis Viva, Kuas X-pert

6

Cat Rambut Miranda, Acne Face Powder, EyeLiner MAC, Lem Bulu

Mata Eye Putty

7

Inez Face Powder, Kapas Modis, Kuas X-pert, Hand Body Citra, Scoot

X-pert, Hairspray Mayon,


(32)

16

Powder, Eyeshadow LTPRO

9

Scoot X-pert, Pensil Alis Viva, Hairspray Mayon, Eyeshadow LTPRO,

Acne Face Powder

10

EyeLiner MAC, Lem Bulu Mata Eye Putty, Pensil Alis Viva, Kuas

X-pert,Hairspray Mayon

11

Hand Body Citra, Cat Rambut Miranda, Acne Face Powder, Kapas

Modis, Pensil Alis Viva

12

Shampo Pantene, Eyeshadow Inez, Cologne Sariayu, Kuas X-pert

13

Hand Body Citra, Scoot X-pert, Hairspray Mayon, Eyeliner MAC,

Eyeshadow Inez

14

Acne Face Powder, Ponds Age Miracle, Eyeshadow LTPRO, Lem bulu

mata Eye Putty

15

Hand Body Citra, Shampo Pantene, Parfum Axe, Cologne Sariayu,

Pensil Alis Viva, Scoot X-pert

16

Deodoran Rexona, Inez Face Powder, Acne Face Powder, Parfum Axe

17

EyeLiner MAC, Hand Body Citra, Inez Face Powder, Kapas Modis,

Kuas X-pert

18

Cat Rambut Miranda, Lem bulu mata EyePutty, Pensil Alis Viva,

Eyeshadow LTPRO

19

Hairspray mayon, Eyeliner MAC, Ponds Age Miracle, Kuas X-Pert,

Parfum Axe


(33)

17

III.5.2 Menghitung Kandidat 1 itemset

Setelah menyiapkan data, selanjutnya yaitu membuat tabel uuntuk

melakukan perhitungan jumlah transaksi pada masing-masing barang dengan

memisahkan masing-masing item barang dimana setiap item barang dipisahkan

dengan kolom dan menghitung jumlah item barang pada setiap transaksi, apabila

pada setiap transaksi terdapat 1 item barang yang dibeli maka dihitung 1 dan jika

pada setiap transaksi tidak ada barang yang dibeli maka dihitung 0. Perhitungan

seperti pada tabel III.3.

Tabel III.3 Kandidat 1 itemset

Tra

ns

Han

dBo

dyC

itra

Cat

Ra

mb

utM

iran

da

Sha

mp

oPa

nten

e

Parf

um

Axe

Deo

dor

anR

exo

na

Pon

dsA

ge

Mir

acle

Co

log

ne

Sar

iay

u

Eye

sha

dow

Inez

Ac

ne

Fa

ce

Po

wd

er

Ku

as

X-pe

rt

Ine

zFa

ceP

ow

der

Ka

pas

M

odi

s

Sc

oot

X-per

t

Pe

nsi

lAl

is

Vi

va

Hai

rspr

ay

Ma

yon

Ey

esh

ad

ow

LT

PR

O

Ey

eli

ner

M

A

C

Lem

Bulu

mata

Eye

Putt

y

1

1 1 0 1 1 0 0 0 0 0 0 1 0 1 0 0 0 0

2

0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0

3

0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 1 1

4

0 0 0 0 0 0 0 1 1 1 0 0 1 0 1 0 0 0

5

0 0 0 0 1 0 1 1 0 0 0 0 0 0 0 0 0 1

6

0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1

7

1 0 0 0 0 0 0 0 0 1 1 1 0 0 0 1 0 0

8

0 1 1 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0

9

0 0 0 0 0 0 0 0 1 0 0 0 1 1 1 1 0 0

10

0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 1 1

11

1 1 0 0 0 0 0 0 1 0 0 1 0 1 0 0 0 0

12

0 0 1 0 0 0 1 1 0 1 0 0 0 0 0 0 0 0

13

1 0 0 0 0 0 0 1 0 0 0 0 1 0 1 0 1 0

14

0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 1

15

1 0 1 1 0 0 1 0 0 0 0 0 1 1 0 0 0 0

16

0 0 0 1 1 0 0 0 1 0 1 0 0 0 0 0 0 0

17

1 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0


(34)

18

19

0 0 0 1 0 1 0 0 0 1 0 0 0 0 1 0 1 0

20

0 0 0 1 1 1 0 0 0 0 1 0 0 0 0 0 0 0

Jml

6 6 4 6 5 5 4 5 6 6 5 4 4 6 5 5 6 6

III.5.3 Menghitung nilai minimum support dan menghitung

kandidat 2 itemset

Menentukan nilai minimum support ( ). Ditetapkan bahwa nilai minimum

support ( ) = 3, maka semua itemset yang frekuensi kemunculannya sama dengan

atau lebih dari 3 kali disebut frequent. Dilihat dari tabel III.3, dari jumlah

perhitungan kandidat 1 itemset yang didapat bahwa semua memenuhi karena

jumlah semua itemset frekuensi kemunculannya atau jumlah transaksinya adalah

lebih dari 3 kali yaitu pada tabel berjumlah 4, 5, dan 6.


(35)

19

Kemudian dari jumlah frekuensi kemunculan atau jumlah transaksi barang

yang didapat dari tabel III.3, maka dilanjutkan dengan perhitungan kandidat 2

itemset. Pada tahap ini pada setiap barang dan frekuensi masing-masing

kombinasi dihitung sesuai dengan data pada tabel. Perhitungan masih sama

dengan kandidat 1 itemset yaitu dari kombinasi 2 itemset barang dihitung

jumlahnya sesuai dengan data transaksi tabel III.2. apabila dalam satu transaksi

terdapat 2 kombinasi itemset yang dibeli maka dihitung 1 dan apabila dalam satu

transaksi tidak terdapat 2 kombinasi itemset yang dibeli maka dihitung 0.

Perhitungan seperti pada tabel III.4.

Tabel III.4 Kandidat 2 itemset

a.

C2- 2itemset

b. L2- 2itemset

Hand Body Citra-Kapas Modis 4

Hand Body Citra-Pensil Alis Viva 3 Cat Rambut Miranda-Pensil Alis

Viva 3

Parfum Axe-Deodoran Rexona 4

Cologne Sariayu-Eyeshadow Inez 3

Kuas X-pert-Hairspray Mayon 3

Kuas X-pert-Eyeliner MAC 3

Scoot X-pert-Hairspray Mayon 4 Hairspray Mayon-Eyeliner MAC 3 Eyeliner MAC-Lem bulumata

EyePutty 3

Itemset Count

Hand Body Citra-Cat Rambut Miranda 2

Hand Body Citra-Shampo Pantene 2

Hand Body Citra-Parfum Axe 2

Hand Body Citra-Deodoran Rexona 1 Hand Body Citra-Ponds Age Miracle 0


(36)

20

Hand Body Citra-Cologne Sariayu 1

Hand Body Citra-Eyeshadow Inez 1

Hand Body Citra-Acne Face Powder 1

Hand Body Citra-Kuas X-pert 2

Hand Body Citra-Inez Face Powder 2

Hand Body Citra-Kapas Modis 4

Hand Body Citra-Scoot X-pert 2

Hand Body Citra-Pensil Alis Viva 3 Hand Body Citra-Hairspray Mayon 2 Hand Body Citra-Eyeshadow LTPRO 0

Hand Body Citra-Eyeliner MAC 2

Hand Body Citra-Lem bulumata EyePutty 0 Cat Rambut Miranda-Shampo Pantene 2

Cat Rambut Miranda-Parfum Axe 2

Cat Rambut Miranda-Deodoran Rexona 2 Cat Rambut Miranda-Ponds Age Miracle 1 Cat Rambut Miranda-Cologne Sariayu 0 Cat Rambut Miranda-Eyeshadow Inez 0 Cat Rambut Miranda-Acne Face Powder 2

Cat Rambut Miranda-Kuas X-pert 0

Cat Rambut Miranda-Inez Face Powder 1

Cat Rambut Miranda-Kapas Modis 2

Cat Rambut Miranda-Scoot X-pert 0 Cat Rambut Miranda-Pensil Alis Viva 3 Cat Rambut Miranda-Hairspray Mayon 0 Cat Rambut Miranda-Eyeshadow LTPRO 2 Cat Rambut Miranda-Eyeliner MAC 1 Cat Rambut Miranda-Lem bulumata

EyePutty 2

Shampo Pantene-Parfum Axe 2

Shampo Pantene-Deodoran Rexona 1

Shampo Pantene-Ponds Age Miracle 1

Shampo Pantene-Cologne Sariayu 2


(37)

21

Shampo Pantene-Acne Face Powder 0

Shampo Pantene-Kuas X-pert 1

Shampo Pantene-Inez Face Powder 1

Shampo Pantene-Kapas Modis 0

Shampo Pantene-Scoot X-pert 1

Shampo Pantene-Pensil Alis Viva 1

Shampo Pantene-Hairspray Mayon 0

Shampo Pantene-Eyeshadow LTPRO 1

Shampo Pantene-Eyeliner MAC 0

Shampo Pantene-Lem bulumata EyePutty 0

Parfum Axe-Deodoran Rexona 4

Parfum Axe-Ponds Age Miracle 2

Parfum Axe-Cologne Sariayu 1

Parfum Axe-Eyeshadow Inez 0

Parfum Axe-Acne Face Powder 1

Parfum Axe-Kuas X-pert 1

Parfum Axe-Inez Face Powder 2

Parfum Axe-Kapas Modis 1

Parfum Axe-Scoot X-pert 1

Parfum Axe-Pensil Alis Viva 2

Parfum Axe-Hairspray Mayon 1

Parfum Axe-Eyeshadow LTPRO 0

Parfum Axe-Eyeliner MAC 1

Parfum Axe-Lem bulumata EyePut 0

Deodoran Rexona-Ponds Age Miracle 1 Deodoran Rexona-Cologne Sariayu 1

Deodoran Rexona-Eyeshadow Inez 1

Deodoran Rexona-Acne Face Powder 1

Deodoran Rexona-Kuas X-pert 1

Deodoran Rexona-Inez Face Powder 2

Deodoran Rexona-Kapas Modis 1

Deodoran Rexona-Scoot X-pert 0

Deodoran Rexona-Pensil Alis Viva 2 Deodoran Rexona-Hairspray Mayon 0


(38)

22

Deodoran Rexona-Eyeshadow LTPRO 0

Deodoran Rexona-Eyeliner MAC 0

Deodoran Rexona-Lem bulumata EyePutty 1 Ponds Age Miracle-Cologne Sariayu 1 Ponds Age Miracle-Eyeshadow Inez 1 Ponds Age Miracle-Acne Face Powder 1

Ponds Age Miracle-Kuas X-pert 1

Ponds Age Miracle-Inez Face Powder 2

Ponds Age Miracle-Kapas Modis 0

Ponds Age Miracle-Scoot X-pert 0

Ponds Age Miracle-Pensil Alis Viva 0 Ponds Age Miracle-Hairspray Mayon 1 Ponds Age Miracle-Eyeshadow LTPRO 2

Ponds Age Miracle-Eyeliner MAC 2

Ponds Age Miracle-Lem bulumata

EyePutty 2

Cologne Sariayu-Eyeshadow Inez 3

Cologne Sariayu-Acne Face Powder 0

Cologne Sariayu-Kuas X-pert 2

Cologne Sariayu-Inez Face Powder 0

Cologne Sariayu-Kapas Modis 0

Cologne Sariayu-Scoot X-pert 1

Cologne Sariayu-Pensil Alis Viva 2 Cologne Sariayu-Hairspray Mayon 0 Cologne Sariayu-Eyeshadow LTPRO 0

Cologne Sariayu-Eyeliner MAC 1

Cologne Sariayu-Lem bulumata EyePutty 2 Eyeshadow Inez-Acne Face Powder 1

Eyeshadow Inez-Kuas X-pert 2

Eyeshadow Inez-Inez Face Powder 0

Eyeshadow Inez-Kapas Modis 0

Eyeshadow Inez-Scoot X-pert 2

Eyeshadow Inez-Pensil Alis Viva 1


(39)

23

Eyeshadow Inez-Eyeshadow LTPRO 0

Eyeshadow Inez-Eyeliner MAC 2

Eyeshadow Inez-Lem bulumata EyePutty 2

Acne Face Powder-Kuas X-pert 1

Acne Face Powder-Inez Face Powder 1

Acne Face Powder-Kapas Modis 1

Acne Face Powder-Scoot X-pert 2

Acne Face Powder-Pensil Alis Viva 2 Acne Face Powder-Hairspray Mayon 2 Acne Face Powder-Eyeshadow LTPRO 2

Acne Face Powder-Eyeliner MAC 1

Acne Face Powder-Lem bulumata

EyePutty 2

Kuas X-pert-Inez Face Powder 2

Kuas X-pert-Kapas Modis 2

Kuas X-pert-Scoot X-pert 2

Kuas X-pert-Pensil Alis Viva 2

Kuas X-pert-Hairspray Mayon 3

Kuas X-pert-Eyeshadow LTPRO 0

Kuas X-pert-Eyeliner MAC 3

Kuas X-pert-Lem bulumata EyePutty 2

Inez Face Powder-Kapas Modis 2

Inez Face Powder-Scoot X-pert 1

Inez Face Powder-Pensil Alis Viva 0 Inez Face Powder-Hairspray Mayon 1 Inez Face Powder-Eyeshadow LTPRO 1

Inez Face Powder-Eyeliner MAC 1

Inez Face Powder-Lem bulumata EyePutty 0

Kapas Modis-Scoot X-pert 1

Kapas Modis-Pensil Alis Viva 2

Kapas Modis-Hairspray Mayon 1

Kapas Modis-Eyeshadow LTPRO 0

Kapas Modis-Eyeliner MAC 1


(40)

24

Dari hasil kombinasi 2 itemset tersebut terdapat bagian berwarna kuning

merupakan kombinasi yang memenuhi dari nilai minimum support yang telah

ditentukan yaitu 3, jadi yang frekuensi kemunculannya atau jumlah transaksi dari

kombinasi 2 itemset tersebut yang jumlahnya lebih dari atau sama dengan 3

adalah yang dipakai untuk digabungkan menjadi calon 3 itemset. Perhitungan

masih sama dengan kandidat 1 itemset dan 2 itemset yaitu dari kombinasi 3

itemset barang dihitung jumlahnya sesuai dengan data transaksi Tabel III.2.

apabila dalam satu transaksi terdapat 3 kombinasi itemset yang dibeli maka

dihitung 1 dan apabila dalam satu transaksi tidak terdapat 3 kombinasi itemset

yang dibeli maka dihitung 0. Perhitungan seperti pada tabel III.5.

Scoot X-pert-Pensil Alis Viva 2

Scoot X-pert-Hairspray Mayon 4

Scoot X-pert-Eyeshadow LTPRO 1

Scoot X-pert-Eyeliner MAC 1

Scoot X-pert-Lem bulumata EyePutty 0 Pensil Alis Viva-Hairspray Mayon 2 Pensil Alis Viva-Eyeshadow LTPRO 2

Pensil Alis Viva-Eyeliner MAC 1

Pensil Alis Viva-Lem bulumata EyePutty 2 Hairspray Mayon-Eyeshadow LTPRO 1

Hairspray Mayon-Eyeliner MAC 3

Hairspray Mayon-Lem bulumata EyePutty 1

Eyeshadow LTPRO-Eyeliner MAC 0

Eyeshadow LTPRO-Lem bulumata

EyePutty 2


(41)

25

Tabel III.5 Kandidat 3 itemset

a.

C3-3itemset

b. L3-3itemset

Hand Body Citra-Kapas Modis-Scoot X-pert 1 Hand Body Citra-Kapas Modis-Pensil Alis Viva 2 Hand Body Citra-Kapas Modis-Cat Rambut

Miranda 2

Hand Body Citra-Kapas Modis-Parfum Axe 1 Hand Body Citra-Kapas Modis-Deodoran

Rexona 1

Hand Body Citra-Kapas Modis-Cologne Sariayu 0 Hand Body Citra-Kapas Modis-Eyeshadow Inez 0 Hand Body Citra-Kapas Modis-Kuas X-pert 2 Hand Body Citra-Kapas Modis-Hairspray

Mayon 1

Hand Body Citra-Kapas Modis-Eyeliner MAC 1 Hand Body Citra-Kapas Modis-Lem bulumata

EyePutty 0

Kapas Modis-Scoot X-pert-Pensil Alis Viva 0 Kapas Modis-Scoot X-pert-Cat Rambut

Miranda 0

Kapas Modis-Scoot X-pert-Parfum Axe 0 Kapas Modis-Scoot X-pert-Deodoran Rexona 0 Kapas Modis-Scoot X-pert-Cologne Sariayu 0 Kapas Modis-Scoot X-pert-Eyeshadow Inez 0 Kapas Modis-Scoot X-pert-Kuas X-pert 1 Kapas Modis-Scoot X-pert-Hairspray Mayon 1 Kapas Modis-Scoot X-pert-Eyeliner MAC 0 Kapas Modis-Scoot X-pert-Lem bulumata

EyePutty 0

Scoot X-pert-Pensil Alis Viva-Cat Rambut

Miranda 0

Scoot X-pert-Pensil Alis Viva-Parfum Axe 1 Scoot X-pert-Pensil Alis Viva-Deodoran 0


(42)

26

Rexona

Scoot X-pert-Pensil Alis Viva-Cologne Sariayu 1 Scoot X-pert-Pensil Alis Viva-Eyeshadow Inez 0 Scoot X-pert-Pensil Alis Viva-Kuas X-pert 0 Scoot X-pert-Pensil Alis Viva-Hairspray Mayon 1 Scoot X-pert-Pensil Alis Viva-Eyeliner MAC 0 Scoot X-pert-Pensil Alis Viva-Lem bulumata

EyePutty 0

Pensil Alis Viva-Cat Rambut Miranda-Parfum

Axe 1

Pensil Alis Viva-Cat Rambut

Miranda-Deodoran Rexona 1

Pensil Alis Viva-Cat Rambut Miranda-Cologne

Sariayu 0

Pensil Alis Viva-Cat Rambut

Miranda-Eyeshadow Inez 0

Pensil Alis Viva-Cat Rambut Miranda-Kuas

X-pert 0

Pensil Alis Viva-Cat Rambut

Miranda-Hairspray Mayon 0

Pensil Alis Viva-Cat Rambut Miranda-Eyeliner

MAC 0

Pensil Alis Viva-Cat Rambut Miranda-Lem

bulumata EyePutty 1

Cat Rambut Miranda-Parfum Axe-Deodoran

Rexona 2

Cat Rambut Miranda-Parfum Axe-Cologne

Sariayu 0

Cat Rambut Miranda-Parfum Axe-Eyeshadow

Inez 0

Cat Rambut Miranda-Parfum Axe-Kuas X-pert 0 Cat Rambut Miranda-Parfum Axe-Hairspray

Mayon 0


(43)

27

MAC

Cat Rambut Miranda-Parfum Axe-Lem

bulumata EyePutty 0

Parfum Axe-Deodoran Rexona-Cologne Sariayu 0 Parfum Axe-Deodoran Rexona-Eyeshadow Inez 0 Parfum Axe-Deodoran Rexona-Kuas X-pert 0 Parfum Axe-Deodoran Rexona-Hairspray

Mayon 0

Parfum Axe-Deodoran Rexona-Eyeliner MAC 0 Parfum Axe-Deodoran Rexona-Lem bulumata

EyePutty 0

Deodoran Rexona-Cologne Sariayu-Eyeshadow

Inez 1

Deodoran Rexona-Cologne Sariayu-Kuas

X-pert 1

Deodoran Rexona-Cologne Sariayu-Hairspray

Mayon 0

Deodoran Rexona-Cologne Sariayu-Eyeliner

MAC 0

Deodoran Rexona-Cologne Sariayu-Lem

bulumata EyePutty 1

Cologne Sariayu-Eyeshadow Inez-Kuas X-pert 2 Cologne Sariayu-Eyeshadow Inez-Hairspray

Mayon 0

Cologne Sariayu-Eyeshadow Inez-Eyeliner

MAC 1

Cologne Sariayu-Eyeshadow Inez-Lem

bulumata EyePutty 2

Eyeshadow Inez-Kuas X-pert-Hairspray Mayon 1 Eyeshadow Inez-Kuas X-pert-Eyeliner MAC 0 Eyeshadow Inez-Kuas X-pert-Lem bulumata

EyePutty 1

Kuas X-pert-Hairspray Mayon-Eyeliner MAC 2 Kuas X-pert-Hairspray Mayon-Lem bulumata 1


(44)

28

EyePutty

Hairspray Mayon-Eyeliner MAC-Lem bulumata

EyePutty 1

Dari tabel 3 itemset tidak didapat kombinasi karena tidak ada yang

memenuhi jumlah nilai >= ( ) yaitu 3. Maka hasil asosiasi yang diperoleh adalah

dari tabel III.4 Kandidat 2 itemset.

Dibawah ini merupakan hasil asosiasi yang didapat dengan nilai minimal

confidence yang ditentukan adalah 60%.

Tabel III.6 Hasil Asosiasi

RULE

Support Count

Confidence

Jika membeli Hand Body Citra maka membeli Kapas Modis 4/20 0.2 4/6 67% Jika membeli Hand Body Citra maka membeli Pensil Alis Viva 3/20 0.15 3/6 50% Jika membeli Cat Rambut Miranda maka membeli Pensil Alis

Viva 3/20 0.15 3/6 50%

Jika membeli Parfum Axe maka membeli Deodoran rexona 3/20 0.15 3/6 50%

Jika membeli Cologne Sariayu maka membeli Eyeshadow Inez 4/20 0.2 4/4 100% Jika membeli Kuas X-pert maka membeli Hairspray Mayon 3/20 0.15 3/7 43%

Jika membeli Kuas X-pert maka membeli Eyeliner MAC 3/20 0.15 3/7 43%

Jika membeli Scoot X-pert maka membeli Hairspray Mayon 4/20 0.2 4/5 80% Jika membeli Hairspray Mayon maka membeli Eyeliner MAC 3/20 0.15 3/6 50% Jika membeli Eyeliner MAC maka membeli Lem bulumata


(45)

29

Dari perhitungan tabel III.6 hasil asosiasi diatas dengan dengan nilai

minimal confidence yang ditentukan adalah 60% maka rule yang didapat untuk

transaksi penjualan kosmetik bulan Juni adalah bagian yang berwarna kuning

karena menunjukan nilai confidencenya lebih dari 60% seperti dibawah ini.

Tabel III.7 Rule

Count

Support

Confidence

Jika membeli Hand Body Citra maka membeli Kapas Modis 4/20 0.2 4/6 67% Jika membeli Cologne Sariayu maka membeli Eyeshadow Inez 4/20 0.2 4/4 100% Jika membeli Scoot X-pert maka membeli Hairspray Mayon 4/20 0.2 4/5 80%


(46)

30

III.6 Desain Interface

Berikut merupakan rancangan yang akan dibuat sebagai Sistem pola

asosiasi barang Toko Kosmetik “ALWENA”.

Gambar III.3 Input Data Transaksi

Pola Asosiasi Barang TOKO KOSMETIK “ALWENA”

Data Transaksi

Transaksi

Nama Barang

Min Support Min Confidence Jumlah Pola Sorting

Tabel Representasi Biner

Transaksi

Item

Input Data


(47)

31

Gambar III.4 Hasil Proses Asosiasi

III.7 Analisis Pengujian

Data transaksi penjualan kosmetik akan diujikan langsung kepada

customer toko untuk membuktikan bahwa hasil rule dari pola asosiasi barang

yang telah diproses menggunakan sistem mendapatkan hasil yang sama dengan

paket kosmetik yang dibeli oleh customer.

Pola Asosiasi Barang TOKO KOSMETIK “ALWENA”

Pola Asosiasi


(48)

32

BAB IV

IMPLEMENTASI SISTEM

Setelah melakukan tahap analisis dan perancangan sistem, maka tahap

selanjutnya adalah mengimplementasikan hasil perancangan tersebut ke dalam

sebuah sistem untuk menentukan pola penjualan asosiasi antar barang. Sistem

dapat memasukkan data transaksi barang dari file spreadsheet yang kemudian

setelah data dimasukkan selanjutnya sistem dapat melakukan proses data mining

dari data transaksi barang dengan menentukan nilai min support, min confidence,

jumlah pola dan pilihan sorting yang akan ditampilkan dimana terdapat dua

pilihan yaitu berdasarkan nilai support dan confidence namun sebelumnya data

yang berbentuk teks diubah terlebih dahulu ke dalam data biner setelah itu data

baru akan diproses. Kemudian akan terbentuk hasil pola penjualan antar barang

yang tersimpan juga dalam bentuk file data pembelian berupa teks.

IV.1 Implementasi Antar Muka (User Interface)

IV.1.1 Halaman Utama

Dibawah ini merupakan form utama yang ditampilkan oleh sistem ketika

user mulai menjalankan sistem ini. Pada tampilan form utama terdapat tombol

untuk memasukkan atau input data dimana dalam input data, tabel data transaksi

terdapat kolom transaksi dan nama barang, kolom untuk menentukan nilai min

support, min confidence, jumlah pola yang akan ditampilkan untuk hasil akhir

pola asosiasi, pilihan sorting yang akan ditampilkan pada hasil akhir pola asosiasi

dimana terdapat dua pilihan yaitu berdasarkan support dan confidence, proses


(49)

33

serta reset data (berwarna merah), tabel representasi biner, dan hasil akhir tabel

pola asosiasi dimana menampilkan tabel akhir yang didapat dari proses asosiasi

yaitu pola asosiasi yang didapat, nilai support, nilai confidence, dan nilai support

x nilai confidence

Gambar IV.1 Halaman utama

IV.1.2 Halaman Input Data

Dibawah ini merupakan halaman untuk memasukkan data penjualan

barang, untuk memasukkan data terlebih dahulu klik tombol input data


(50)

34

Gambar IV.2 Halaman Input Data

Kemudian setelah klik tombol input data maka akan masuk kedalam

halaman pilih file anda seperti pada gambar dibawah ini. Pada halaman pilih file

anda, user diminta untuk memilih file yang akan dimasukkan pada direktori

penyimpanan data. Data yang akan dimasukkan kedalam sistem berbentuk

spreadsheet, sebagai contoh adalah data tahun 2015


(51)

35

Setelah data tahun 2015 dipilih dan berhasil dimasukkan maka data secara

otomatis akan tampil pada tabel yang telah disediakan. Tampilan halaman setelah

data berhasil dimasukkan kedalam sistem seperti pada gambar dibawah ini.

Gambar IV.4 Input Data Transaksi

Dari data penjualan barang yang berhasil dimasukkan, selanjutnya user

diminta untuk menentukan nilai min support count yaitu ditentukan 1.9, yang

mana nilai min support count diperoleh dari jumlah item barang dari seluruh

transaksi dibagi dengan jumlah total transaksi yaitu 598/300 x 100% = 1,99 dan

nilai minimum confidence yang ditentukan 0,7 jumlah pola yang akan ditampilkan

untuk hasil akhir pola asosiasi yaitu ditentukan 5, pilihan sorting yang akan

ditampilkan pada hasil akhir pola asosiasi dimana terdapat dua pilihan yaitu

berdasarkan support dan confidence yaitu ditentukan berdasarkan confidence.

Setelah itu baru data diproses menggunakan algoritma apriori dan data yang

tadinya berbentuk teks akan diubah terlebih dahulu ke dalam data biner, dalam

tabel representasi biner terdapat dimensi data : 280 x 138 yang artinya 280 untuk

jumlah total transaksi dan 138 untuk jumlah item barang seperti contoh pada

gambar IV.5


(52)

36

Gambar IV.5 Tabel Representasi Biner

Kemudian hasil pengolahan data penjualan menggunakan algoritma

apriori tersebut akan menghasilkan hasil akhir pola asosiasi barang seperti pada

gambar IV.6


(53)

37

Selain itu hasil akhir dari pola asosiasi barang juga tersimpan dalam file

data pembelian.txt seperti pada gambar IV.7

Gambar IV.7 File Data Pembelian.txt

Gambar IV.8 Halaman Pola Asosiasi Barang Toko Kosmetik


(54)

38

IV.2 Program Pola Asosiasi Barang Toko Kosmetik

“ALWENA”

Dibawah ini merupakan implementasi kondisi awal tabel data transaksi

barang, tabel representasi biner, dan tabel awal pola asosiasi

Dibawah ini merupakan implementasi untuk input data dimana nantinya

akan masuk kedalam halaman pilih file anda. Pada halaman pilih file anda, user

diminta untuk memilih file yang akan dimasukkan pada direktori penyimpanan

data. Data yang akan dimasukkan kedalam sistem berbentuk spreadsheet.


(55)

39

Dibawah ini merupakan implementasi untuk mengambil setiap item

transaksi untuk dimasukkan ke dalam cell tabel representasi biner.

Dibawah ini merupakan implementasi untuk membuat header kolom tabel

representasi

biner.

Dimana

terdapat

method

headerRepBinerTemp=headerRepBinerTemp(~cellfun('isempty',headerRepBinerTemp));

yang

berfungsi

untuk

menghapus

cell

yang

kosong

dan

method

[headerRepBinerTemp,~,~]=unique(headerRepBinerTemp);

yang berfungsi apabila

terdapat nama barang yang sama dalam transaksi maka nama barang tersebut

dijadikan satu item


(56)

40

Dibawah ini merupakan implementasi untuk menentukan nilai representasi

biner transaksi pembelian dari transaksi dan nama barang

Dibawah ini merupakan implementasi untuk menghitung kandidat 1

itemset

Dibawah ini merupakan implementasi untuk mengeliminasi jumlah item

yang lebih atau sama dengan dari nilai min support yang ditentukan


(57)

41

Dibawah ini merupakan implementasi untuk menghitung kandidat 2

itemset kemudian dilanjutkan dengan menghitung kandidat 3 itemset dan setelah

itu dilanjutkan dengan implementasi untuk menentukan nilai minimum confidence

dan rulenya.


(58)

42

BAB V

ANALISIS HASIL DAN PEMBAHASAN

V.1 Hasil Percobaan

Pada bab ini akan dibahas mengenai hasil dari implementasi sistem pola

pencarian asosiasi barang, dimana dari hasil jumlah transaksi barang diujikan

langsung kepada customer toko untuk membuktikan bahwa hasil rule dari pola

asosiasi barang yang telah diproses menggunakan sistem mendapatkan hasil yang

sama dengan paket kosmetik yang dibeli oleh customer. Pada percobaan ini

penulis melakukan ujicoba sistem dengan menggunakan data transaksi kosmetik

selama 3 tahun yang telah dibagi per tahun. Dimana data yang terkumpul dari data

tahun 2013,2014, dan 2015.

Pada percobaan ini penulis melakukan ujicoba pada sistem dengan

menggunakan data transaksi penjualan Toko Kosmetik “ALWENA” pa

da Tahun

2013, 2014 dan 2015.

Dari hasil implementasi sistem dengan data transaksi penjualan Toko

K

osmetik “ALWENA” pada Tahun 2013

yang dimasukkan dengan ditentukan

nilai minimum support countnya yaitu 1,9 yang mana nilai support count

diperoleh dari jumlah item barang dari seluruh transaksi dibagi dengan jumlah

total transaksi yaitu 598/300 x 100% = 1,99 dan minimum support count yaitu 0,6,

untuk nilai minimum confidence yang ditentukan 0,7 karena berdasarkan

percobaan pada [5] ditentukan minimum support antara 0,1 sampai dengan 5 dan

dari percobaan tersebut dapat dilihat bahwa hasil yang signifikan terdapat pada


(59)

43

berdasarkan nilai confidence tertinggi maka diperoleh pola pencarian asosiasi

barang seperti pada gambar V.1.1

Gambar V.1.1 Percobaan Tahun 2013

Dari perolehan pola diatas dapat diperoleh bahwa pola asosiasi pada tahun

2013 adalah :

Tabel V.1.1 Pola Asosiasi Tahun 2013

Minimum

support

Pola Asosiasi

Support

Confidence

Support x

Confidence

1.9

Jika Cat Rambut Bigen dibeli

maka Alas Bedak Sariayu juga

akan dibeli.

Jika Body Lotion Wardah dibeli

maka Shampo Gostreet juga

akan dibeli.

Jika Sabun Lifebouy dibeli

maka Bedak Latulipe juga akan

dibeli.

Jika Blushon Caring dibeli maka

Milk Cleanser Wardah juga

0.66667 %

0.66667 %

1%

100 %

100 %

75%

0.0066667

0.0066667


(60)

44

Dari hasil implementasi sistem dengan data transaksi penjualan Toko

Ko

smetik “ALWENA” pada Tahun 2014

yang dimasukkan dengan ditentukan

nilai minimum support countnya yaitu 1,9 yang mana nilai support count

diperoleh dari jumlah item barang dari seluruh transaksi dibagi dengan jumlah

total transaksi yaitu 598/300 x 100% = 1,99 dan minimum support count yaitu 0,6,

untuk nilai minimum confidence yang ditentukan 0,7 karena berdasarkan

percobaan pada [5] ditentukan minimum support antara 0,1 sampai dengan 5 dan

dari percobaan tersebut dapat dilihat bahwa hasil yang signifikan terdapat pada

minimum support antara 0,1 sampai dengan 2 dengan jumlah pola 5 dan disorting

akan dibeli.

Jika Cat Rambut Matrix dibeli

maka Bulu Mata juga akan

dibeli.

1%

1%

75%

75%

0.0075

0.0075

0.6

Jika Cat Rambut Miranda dibeli

maka Kutek juga akan dibeli.

Jika Eyeliner Maybeline dibeli

maka Hair Tonic Rudy juga

akan dibeli.

Jika Eyeliner Maybeline dibeli

maka HoneyDew juga akan

dibeli.

Jika Eyeliner Maybeline dibeli

maka Kapas Modis juga akan

dibeli.

Jika Eyeliner Maybeline dibeli

maka Pensil Alis Viva juga akan

dibeli.

0.33333%

0.33333%

0.33333%

0.33333%

0.33333%

100%

100%

100%

100%

100%

0.0033333

0.0033333

0.0033333

0.0033333


(61)

45

berdasarkan nilai confidence maka diperoleh pola pencarian asosiasi barang

seperti pada gambar V.1.2

Gambar V.1.2 Percobaan Tahun 2014

Dari perolehan pola diatas dapat diperoleh bahwa barang yang paling

banyak dibeli pada tahun 2014 adalah :

Tabel V.1.2 Pola Asosiasi Tahun 2014

Minimum

Support

Pola Asosiasi

Support

Confidence

Support x

Confidence

1.9

Jika Foundation Latulipe

dibeli maka Puff Bedak

X-pert juga akan dibeli.

Jika Scot X-pert dibeli

maka Bedak Latulipe juga

akan dibeli.

Jika Cat Rambut Feves

dibeli

maka

Bedak

Wardah juga akan dibeli.

0.66667 %

0.66667 %

0.66667 %

100 %

100 %

100 %

0.0066667

0.0066667


(62)

46

Dari hasil implementasi sistem dengan data transaksi penjualan Toko

Kosmetik “ALWENA” pada Tahun 2013 yang dimasukkan dengan ditentukan

nilai minimum support countnya yaitu 1,9 yang mana nilai support count

diperoleh dari jumlah item barang dari seluruh transaksi dibagi dengan jumlah

total transaksi yaitu 598/300 x 100% = 1,99 dan minimum support count yaitu 0,6,

untuk nilai minimum confidence yang ditentukan 0,7 karena berdasarkan

percobaan pada [5] ditentukan minimum support antara 0,1 sampai dengan 5 dan

dari percobaan tersebut dapat dilihat bahwa hasil yang signifikan terdapat pada

minimum support antara 0,1 sampai dengan 2 dengan jumlah pola 5 dan disorting

Jika

BlushOn

Caring

dibeli maka Cat Rambut

Henna juga akan dibeli.

Jika BlushOn Inez dibeli

maka Bulu Mata juga

akan dibeli.

0.66667 %

1.3333 %

100 %

80 %

0.0066667

0.010667

0.6

Jika Pensil Alis Viva

dibeli maka Bedak Inez

juga akan dibeli.

Jika Eyeliner Maybeline

dibeli

maka

Bedak

Wardah juga akan dibeli.

Jika Eyeliner Maybeline

dibeli maka Blushon Inez

juga akan dibeli.

Jika Eyeliner Maybeline

dibeli maka Bulu Mata

juga akan dibeli.

Jika Eyeliner Maybeline

dibeli maka Cat Rambut

Top Lady juga akan

dibeli.

0.33333%

0.33333%

0.33333%

0.33333%

0.33333%

100%

100%

100%

100%

100%

0.0033333

0.0033333

0.0033333

0.0033333

0.0033333


(63)

47

berdasarkan nilai confidence maka diperoleh pola pencarian asosiasi barang

seperti pada gambar V.1.3

Gambar V.1.3 Percobaan Tahun 2015

Dari perolehan pola diatas dapat diperoleh bahwa pola asosiasi pada tahun

2015 adalah :

Tabel V.1.3 Pola Asosiasi Tahun 2015

Minimum

Support

Pola Asosiasi

Support

Confidence

Support x

Confidence

1.9

Jika Kutek dibeli maka

Bulu Mata juga akan dibeli

Jika Kutek dibeli maka

Kapas Sariayu juga akan

dibeli.

Jika Puff Bedak X-pert

dibeli maka Aqua Gloss

X-pert juga akan dibeli.

Jika Bedak Pigeon dibeli

0.71429 %

0.71429 %

0.71429 %

100 %

100 %

100 %

0.0071429

0.0071429


(64)

48

Kemudian dari pola yang diperoleh per tahunnya penulis mengujikan

langsung hasil dari sistem pola asosiasi barang kepada customer toko untuk

membuktikan bahwa hasil rule dari pola asosiasi barang yang telah diproses

menggunakan sistem mendapatkan hasil yang sama dengan paket kosmetik yang

dibeli oleh customer, sehingga akan didapat hasil akhir pola kesamaan oleh sistem

dengan costumer per tahunnya.

maka Lem Bulu Mata Eye

Putti juga akan dibeli.

Jika BlushOn MAC dibeli

maka Bedak Latulipe juga

akan dibeli

1.4286 %

1.0714 %

80 %

75 %

0.011429

0.0080357

0.6

Jika Cat Rambut Henna

dibeli

maka

Bedak

Latulipe juga akan dibeli.

Jika Cat Rambut Henna

dibeli maka Bulu Mata

juga akan dibeli.

Jika Cat Rambut Henna

dibeli maka Cat Rambut

Feves juga akan dibeli.

Jika Cat Rambut Henna

dibeli

maka

Hairspray

Mayon juga akan dibeli.

Jika Cat Rambut Henna

dibeli maka Kapas Modis

juga akan dibeli.

0.35714%

0.35714%

0.35714%

0.35714%

0.35714%

100%

100%

100%

100%

100%

0.0035714

0.0035714

0.0035714

0.0035714


(1)

99

% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');

end

function edJmlPola_Callback(hObject, eventdata, handles) % hObject handle to edJmlPola (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

% Hints: get(hObject,'String') returns contents of edJmlPola as text

% str2double(get(hObject,'String')) returns contents of edJmlPola as a double

% --- Executes during object creation, after setting all properties.

function edJmlPola_CreateFcn(hObject, eventdata, handles) % hObject handle to edJmlPola (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');

end

function edSortFlag_Callback(hObject, eventdata, handles) % hObject handle to edSortFlag (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

% Hints: get(hObject,'String') returns contents of edSortFlag as text

% str2double(get(hObject,'String')) returns contents of edSortFlag as a double

% --- Executes during object creation, after setting all properties.

function edSortFlag_CreateFcn(hObject, eventdata, handles) % hObject handle to edSortFlag (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');

end

% --- Executes on selection change in popSorting.


(2)

100

% hObject handle to popSorting (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

% Hints: contents = cellstr(get(hObject,'String')) returns popSorting contents as cell array % contents{get(hObject,'Value')} returns selected item from popSorting

% --- Executes during object creation, after setting all properties.

function popSorting_CreateFcn(hObject, eventdata, handles)

% hObject handle to popSorting (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called

% Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER.

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');

end

polaAsosiasi.m

function [tblPolasCell,pola,frekuensiItem] = polaAsosiasi(transaksi, minSup, minConf, nPola, sorting, label, namaFile)

%

% This function performs Association Analysis (Apriori Algorithm): Given a set of transactions, % find rules that will predict the occurrence of an item based on the occurrences of other % items in the transaction

%

% Rules are of the form A-> B (e.g., {milk, diaper} - > {Coke}), where % support = minSup (minimum support threshold)

% confidence = minConf (minimum confidence threshold) %

% Support is the fraction of transactions that contain both A and B: % Support(A,B) = P(A,B)

%

% Confidence is the fraction of transactions where items in B appear in transactions that contain A:

% Confidence(A,B) = P(B|A) %

%

% INPUT:

% transactions: M x N matrix of binary transactions, where each row % represents one transaction and each column represents % one attribute/item

% minSup: scalar value that represents the minimum % threshold for support for each rule % minConf: scalar value that represents the minimum % threshold for confidence of each rule % nRules: scalar value indicating the number of rules % the user wants to find

% sortFlag: binary value indicating if the rules should be % sorted by support level or confidence level


(3)

101

% 1: sort by rule support level % 2: sort by rule confidence level

% labels: optional parameter that provides labels for % each attribute (columns of transactions), % by default attributes are represented % with increasing numerical values 1:N % fname: optional file name where rules are saved %

% OUTPUT:

% Rules: 2 x 1 cell array, where the first cell (Rules{1}{:})

% contains the itemsets in the left side of the rule and second % cell (Rules{2}{:}) contains the itemsets

% in the right side of the rule (e.g., if % the first rule is {1, 2} -> 3,

% Rules{1}{1} = [1,2], Rules{2}{1} = [3]) % FreqItemsets: A cell array of frequent itemsets of size 1, 2, % etc., with itemset support >= minSup, % where FreqItemSets{1} represents itemsets % of size 1, FreqItemSets{2} itemsets of % size 2, etc.

% fname.txt: The code creates a text file and stores all the % rules in the form left_side -> right_side. %

% Number of transactions in the dataset M = size(transaksi,1);

% Number of attributes in the dataset N = size(transaksi,2);

if nargin < 7

namaFile = 'default';

end

if nargin < 6

label = cellfun(@(x){num2str(x)}, num2cell(1:N));

end

if nargin < 5 sorting = 1;

end

if nargin < 4 nPola = 100;

end

if nargin < 3 minConf = 0.5;

end

if nargin < 2 minSup = 0.5;

end

if nargin == 0

error('No input arguments were supplied. At least one is expected.');


(4)

102

% Preallocate memory for Rules and FreqItemsets maxSize = 10^2;

pola = cell(2,1); pola{1} = cell(nPola,1); pola{2} = cell(nPola,1); frekuensiItem = cell(maxSize); polaConf = zeros(nPola,1); polaSup = zeros(nPola,1); ct = 1;

% Find frequent item sets of size one (list of all items with minSup) T = [];

for i = 1:N

% S = sum(transactions(:,i))/M; S = sum(transaksi(:,i));

if S >= minSup T = [T; i]; end

end

%Find frequent item sets of size >=2 and from those identify rules with minConf

for langkahPerhitungan = 2:N

% If there aren't at least two items with minSup terminate U = unique(T);

if isempty(U) || size(U,1) == 1 pola{1}(ct:end) = []; pola{2}(ct:end) = [];

frekuensiItem(langkahPerhitungan-1:end) = []; break

end

% Generate all combinations of items that are in frequent itemset kombinasi = nchoosek(U',langkahPerhitungan);

TOld = T; T = [];

for j = 1:size(kombinasi,1) if ct > nPola

break; else

% Apriori rule: if any subset of items are not in frequent itemset do not

% consider the superset (e.g., if {A, B} does not have minSup do not consider {A,B,*}) if sum(ismember(nchoosek(kombinasi(j,:),langkahPerhitungan-1),TOld,'rows')) - langkahPerhitungan+1>0

% Calculate the support for the new itemset

S = mean((sum(transaksi(:,kombinasi(j,:)),2)-langkahPerhitungan)>=0); % if S >= minSup

T = [T; kombinasi(j,:)];

% Generate potential rules and check for minConf for kedalaman = 1:langkahPerhitungan-1


(5)

103

for r = 1:size(R,1)

if ct > nPola break; else

% Calculate the confidence of the rule

cTemp = S/mean((sum(transaksi(:,R(r,:)),2)-kedalaman)==0); if cTemp > minConf

% Store the rules that have minSup and minConf pola{1}{ct} = R(r,:);

pola{2}{ct} = setdiff(kombinasi(j,:),R(r,:)); polaConf(ct) = cTemp;

polaSup(ct) = S; ct = ct+1; end

end

end

end

% end end

end

end

% Store the freqent itemsets

frekuensiItem{langkahPerhitungan} = T;

end

% Get rid of unnecessary rows due to preallocation (helps with speed) frekuensiItem(langkahPerhitungan-1:end) = [];

polaConf = polaConf(1:ct-1); polaSup = polaSup(1:ct-1);

% Sort the rules in descending order based on the confidence or support level

switch sorting

case 1 % Sort by Support level [V idx] = sort(polaSup,'descend'); case 2 % Sort by Confidence level [V idx] = sort(polaConf,'descend');

end

polaConf = polaConf(idx); polaSup = polaSup(idx);

for i = 1:2

temp = pola{i,1}; temp = temp(idx); pola{i,1} = temp;

end

% Save the rule in a text file and print them on display fid = fopen([namaFile '.txt'], 'w');

fprintf(fid, '%s (%s, %s, %s) \n', 'Pola Asosiasi', 'Support', 'Confidence', 'Support x Confidence');

tblPolasCell=cell(1,6);


(6)

104

for i = 1:size(pola{1},1) s1 = '';

s2 = '';

for j = 1:size(pola{1}{i},2) if j == size(pola{1}{i},2) s1 = [s1 label{pola{1}{i}(j)}]; else

s1 = [s1 label{pola{1}{i}(j)} ',']; end

end

for k = 1:size(pola{2}{i},2) if k == size(pola{2}{i},2) s2 = [s2 label{pola{2}{i}(k)}]; else

s2 = [s2 label{pola{2}{i}(k)} ',']; end

end

s3 = num2str(polaSup(i)*100); s4 = num2str(polaConf(i)*100); s5 = num2str(polaSup(i)*polaConf(i));

fprintf(fid, 'Jika %s dibeli, maka %s akan dibeli (%s%%, %s%%, %s%%)\n', s1, s2, s3, s4, s5);

% tblRulesCell{i,1}={s1, ' ==> ', s2, strcat(s3,' %'), strcat(s4,' %'), s5}; tblPolasCell{i,1}=(s1);

tblPolasCell{i,2}=(' ==> '); tblPolasCell{i,3}=(s2);

tblPolasCell{i,4}=(strcat(s3,' %')); tblPolasCell{i,5}=(strcat(s4,' %')); tblPolasCell{i,6}=(s5);

end

fclose(fid);