BAB IV HASIL DAN PEMBAHASAN
A. Pengumpulan Data Sumber data utama yang digunakan dalam penelitian ini berasal dari data transaksi 3 bulan terakhir yaitu bulan Maret, April, Mei tahun 2012 di swalayan XYZ kota Gorontalo, tepatnya pada departemen supermarket. Data tersebut nantinya akan diolah untuk mendapatkan pengetahuan berupa pola asosiasi pembelian item oleh konsumen yang bisa digunakan sebagai strategi bisnis. Selain itu penulis juga mengumpulkan data berupa informasi mengenai kegunaan data transaksi, bagaimana sistem pengaturan layout item dan tanggapan dari pihak manajer swalayan terhadap Market Basket Analysis.
B. Penyeleksian Data Pada data transaksi penjualan selama 3 bulan terdapat beraneka ragam kategori item yang dibeli oleh konsumen. Dalam penelitian ini, penulis mengambil 20 kategori item sebagai bahan penelitian. Sehingga pada tahap penyeleksian data ini akan mengambil data transaksi yang mengandung kategori item yang sudah ditentukan oleh penulis dan transaksi yang tidak mengandung kategori item yang diteliti akan dibuang. Adapun 20 kategori item yang akan diteliti antara lain :
24
25
1. SABUN MANDI
11. SUSU DEWASA
2. KOPI INSTANT
12. GULA PASIR
3. MIE INSTANT
13. MINYAK GORENG
4. KACANG
14. TISSUE
5. MINYAK WANGI
15. BISKUIT KEMASAN
6. HANDBODY
16. MARGARIN
7. PASTA GIGI
17. PAMPERS
8. SHAMPO
18. ANTI NYAMUK
9. DETERJENT
19. PEMBALUT
10. TELUR
20. PELEMBUT PAKAIAN
Contoh data transaksi penjualan swalayan XYZ yang terdapat pada struk : PANTENE SHP NOURSIHED 12X5ML 1 BDD 5,250 = 5,250 SEDAAP MIE KARI AYAM 72 GR 2 PCS 1,500 = 3,000 PLASTIK PARCEL MOTIF 1 PCS 850 = 850 ----------Total = 9,100 Tunai = 10,000 ----------Kembali = 900 Total Qty = 4 No.Struk: 69621 Pada data diatas terdapat 2 item yang masuk dalam kategori item yang sudah ditentukan , yaitu Pantene Shp Noursihed 12x5ml masuk dalam kategori shampoo dan Sedaap Mie Kari Ayam 72 Gr masuk dalam kategori mie instant. Sehingga transaksi ini disimpan untuk diproses ke tahap selanjutnya.
26
C. Preprocessing / Cleaning Data transaksi penjualan terdapat banyak atribut, atribut-atribut tersebut tidak semua diperlukan dalam proses minning, maka dari itu perlu dilakukan pembersihan / cleaning yang bertujuan memilih atribut data yang menjadi fokus penelitian dan menghapus atribut yang tidak dipakai. Beberapa atribut yang terdapat pada transaksi penjualan diantaranya : 21-05-2012 15:32 (waktu transaksi) Aj4 (kode kasir) PANTENE SHP NOURSIHED 12X5ML Dll (nama item yang dibeli) 1 BDD 5,250 = 5,250 ( Jumlah quantity dan harga ) Total =
9,100 ( Total harga)
Tunai =
10,000 ( Uang pembayaran)
Kembali =
900 (Sisa uang pembayaran)
Total Qty= 4 (Jumlah keseluruhan item yang dibeli) No. Struk: 69621 (No struk penjualan) Atribut yang nanti akan dipakai dalam penelitian hanya nama item yang dibeli sehingga bentuk data transaksi akan menjadi seperti yang terlihat dibawah ini : - PANTENE SHP NOURSIHED 12X5ML - SEDAAP MIE KARI AYAM 72 GR - PLASTIK PARCEL MOTIF Setelah itu item-item tersebut akan dimasukkan ke dalam masing-masing kelompok kategori item yang sesuai. Apabila terdapat 2 atau lebih merk / jenis item yang termasuk 1 kategori maka akan dihitung 1 kategori. Pada data diatas, pantene shp nourished termasuk kategori item shampo ,sedaap mie kari ayam termasuk kategori mie instant sedangkan plastic parcel motif bukan termasuk dalam kategori item yang diteliti sehingga item tersebut akan dihapus yang
27
selanjutnya akan diproses ke tahap selanjutnya. hasil dari pemasukan item ke dalam kategori item yang sudah ditentukan adalah sebagai berikut : - SHAMPOO - MIE INSTANT
D.
Transformasi Data Tahap transformasi data perlu dilakukan, karena dalam proses minning secara
komputerisasi diperlukan bentuk data yang bisa diintegrasikan dengan aplikasi yang akan digunakan, pada aplikasi ini data yang bisa diintegrasikan adalah data yang berekstensi .txt sehingga data akan disimpan dalam bentuk notepad. Proses transformasinya adalah nama kategori item diubah menjadi angka sesuai dengan no. kategori item seperti yang sudah dijelaskan diatas. Sehingga proses transformasinya adalah Shampoo 8, dan Mie Instant 3.
E. Data Minning Pada tahap ini, FP-Tree dibuat untuk digunakan bersamaan dengan algoritma FP-Growth untuk menentukan frequent itemsets, Penulis mengambil contoh data sebanyak 10 transaksi pada tanggal 1 bulan Mei tahun 2012 seperti terlihat pada tabel 4.1. Penulis memberikan batasan nilai minimum support 0.2 atau sama dengan 20 %. Karena data transaksi berjumlah 10 maka 20% dari 10 adalah 2 dan confidence 0.75 atau sama dengan 75%, Dalam membangun FP-Tree diperlukan dua kali penelusuran database .
28
Tabel 4.1 Tabel Contoh 10 data transaksi tanggal 1 bulan mei 2012 yang sudah ditransformasi. ID Transaksi ( TID )
Item
1
{15,8}
2
{1,7,8}
3
{8,7,15,1}
4
{15,20}
5
{18,11}
6
{9,1}
7
{5,6}
8
{3,7,9,5}
9
{15,6,19,1,5,8}
10
{15,11,3,1}
Penelusuran database yang pertama digunakan untuk menghitung nilai support masing-masing item dan memilih item yang memenuhi nilai minimum support. Hasil dari proses penelusuran database
yang pertama adalah
diketahuinya jumlah frekuensi kemunculan tiap item yang ada didalam database dan mengurutkannya berdasarkan jumlah frekuensi kemunculan terbesar. Hasilnya dapat dilihat pada tabel 4.2. Dari hasil tersebut diperoleh Itemset yang memiliki frekuensi di atas minimum support count ≥ 0,2 yaitu 15,1,8,7,5,11,3,6 dan 9 yang kemudian diberi nama Frequent List seperti terlihat pada tabel 4.3 kesembilan item ini akan berpengaruh saat pembuatan FP-Tree. Sementara item 18,19 dan 20 dibuang karena tidak memenuhi minimum support.
29
Tabel 4.2 Tabel Frekuensi Kemunculan Item. Item
Frekuensi
1
5
15
5
8
4
5
3
7
3
3
2
6
2
9
2
11
2
18
1
19
1
20
1
Tabel 4.3 Tabel Frequent List. ID Transaksi ( TID )
Item
1
5
15
5
8
4
5
3
7
3
3
2
6
2
9
2
11
2
30
Setelah diperoleh Frequent List, urutkan
Itemset
pada tiap transaksi
berdasarkan frekuensi paling tinggi. Kemudian membuat tree berurut berdasarkan transaksi ID nya, seperti yang terdapat dalam tabel 4.4 Tabel 4.4 Tabel transaksi yang sudah diurutkan itemnya berdasarkan frequent list. ID Transaksi ( TID )
Item
1
{15,8}
2
{1,8,7}
3
{1,15,8,7}
4
{15}
5
{11}
6
{1,9}
7
{5,6}
8
{5,7,3,9}
9
{1,15,8,5,6}
10
{1,15,3,11}
Setelah item disusun ulang berdasarkan F-list, dilakukan penelusuran database yang kedua yaitu membaca tiap transaksi diawali dengan membaca TID 1 untuk membuat FP-Tree. TID 1 {15,8} akan membuat simpul 15 dan 8 sehingga terbentuk lintasan {}→15→8 dengan support count awal bernilai satu.
15 : 1
{Root} 15
8: 1
8
Gambar 4.2 Hasil pembentukan FP-Tree setelah pembacaan TID 1.
31
Setelah pembacaan TID 1, maka selanjutnya membaca TID 2 yaitu {1,8,7} sehingga membentuk lintasan {}→1→8→7 dengan support count awal bernilai satu juga. Walaupun 8 ada pada TID 1, tapi karena prefix transaksinya tidak sama dengan lintasan sebelumnya, maka TID 2 ini tidak dipadatkan ke lintasan TID 1. {Root} 1:1 1
15 : 1 8: 1
7:1
8:1
15 8
7
8
Gambar 4.3 Hasil pembentukan FP-Tree setelah pembacaan TID 2. Setelah pembacaan TID 2, maka selanjutnya membaca TID 3 yaitu {1,15,8,7} sehingga membentuk lintasan {}→1→15→8→7. Karena memiliki prefix yang sama dengan lintasan TID 2 yaitu item 1, maka lintasan TID 3 bisa dipadatkan pada lintasan TID 2. Setelah itu tambahkan support count item 1 menjadi dua karena telah dilewati sebanyak dua kali, sedangkan 15, 8 dan 7 masing-masing bernilai support count satu.
{Root} 1:2
8:1
1
15 : 1
7:1
8
7
15
8: 1
8:1
15:1 8
15
7:1 8
7
Gambar 4.4 Hasil pembentukan FP-Tree setelah pembacaan TID 3.
32
Setelah pembacaan TID 3, maka selanjutnya membaca TID 4 yaitu {15} sehingga membentuk lintasan {}→15. Karena memiliki prefix yang sama dengan lintasan TID 1 yaitu item 15, maka lintasan TID 4 bisa dipadatkan pada lintasan TID 1. Setelah itu tambahkan support count item 15 menjadi dua karena telah dilewati sebanyak dua kali.
{Root} 1:2
8:1
1
15 : 2
7:1
8
7
15
8: 1
8:1
15:1 15
8
7:1 8
7
Gambar 4.5 Hasil pembentukan FP-Tree setelah pembacaan TID 4. Setelah pembacaan TID 4, maka selanjutnya membaca TID 5 yaitu {11} sehingga membentuk lintasan {}→11. Karena prefix transaksinya tidak sama dengan lintasan sebelumnya, maka TID 5 dibuat lintasan baru. 11 : 1
{Root}
11
1:2
8:1
1
15 : 2
7:1
8
7
15
8: 1
8:1
15:1 8
15
7:1 8
7
Gambar 4.6 Hasil pembentukan FP-Tree setelah pembacaan TID 5.
33
Setelah pembacaan TID 5, maka selanjutnya membaca TID 6 yaitu {1,9} sehingga membentuk lintasan {}→1→9. Karena memiliki prefix yang sama dengan lintasan TID 2 yaitu item 1, maka lintasan TID 6 bisa dipadatkan pada lintasan TID 2. Setelah itu tambahkan support count item 1 menjadi tiga karena telah dilewati sebanyak tiga kali. 11 : 1
{Root}
11
9:1 1:3
9
1
15 : 2
8:1
15
8: 1
15:1 15
8
7:1
8
8:1
7
8 7
7:1
Gambar 4.7 Hasil pembentukan FP-Tree setelah pembacaan TID 6. Setelah pembacaan TID 6, maka selanjutnya membaca TID 7 yaitu {5,6} sehingga membentuk lintasan {}→5→6. Karena prefix transaksinya tidak sama dengan lintasan sebelumnya, maka TID 7 dibuat lintasan baru. 11 : 1
{Root}
11 15 : 2
1:3
5
8
8:1
15
7:1
8
8:1
15:1 6:1
9
1
5:1 15
8: 1
9:1
7
8
6 7
7:1
Gambar 4.8 Hasil pembentukan FP-Tree setelah pembacaan TID 7.
34
Setelah pembacaan TID 7, maka selanjutnya membaca TID 8 yaitu {5,7,3,9} sehingga membentuk lintasan {}→5→7→3→9. Karena memiliki prefix yang sama dengan lintasan TID 7 yaitu item 5, maka lintasan TID 8 bisa dipadatkan pada lintasan TID 7. Setelah itu tambahkan support count item 5 menjadi dua karena telah dilewati sebanyak dua kali. 11 : 1
{Root}
11 15 : 2
1:3
5
8
6
8:1
15
7:1
7:1
8
8:1
15:1 6:1
9
1
5:2 15
8: 1
9:1
7
8
7 7 3:1
7:1
3 9:1
9
Gambar 4.9 Hasil pembentukan FP-Tree setelah pembacaan TID 8. Setelah pembacaan TID 8, maka selanjutnya membaca TID 9 yaitu {1,15,8,5,6} sehingga membentuk lintasan {}→1→15→8→5→6. Karena memiliki prefix yang sama dengan lintasan TID 1 yaitu item 1 maka lintasan TID 9 bisa dipadatkan pada lintasan TID 1. Setelah itu tambahkan juga support count pada tiap item yang dilintasi, sehingga support count item 1 menjadi empat, item 15 menjadi dua dan item 8 menjadi dua.
35
11 : 1
{Root}
11 15 : 2
1:4
5
8
6
8:1
15
7:1
7:1
8
8:2
15:2 6:1
9
1
5:2 15
8: 1
9:1
7
8
5:1
7 7:1 3:1
7
3 9:1
5
6:1 6
9
Gambar 4.10 Hasil pembentukan FP-Tree setelah pembacaan TID 9.
Setelah pembacaan TID 9, maka selanjutnya membaca TID 10 yaitu {1,15,3,11} sehingga membentuk lintasan {}→1→15→3→11. Karena memiliki prefix yang sama dengan lintasan TID 1, yaitu item 1 maka lintasan TID 10 bisa dipadatkan pada lintasan TID 1. Setelah itu tambahkan support count pada tiap item yang dilintasi, sehingga support count item 1 menjadi lima dan item 15 menjadi tiga.
36
11 : 1
{Root}
11 5:2
15 : 2 15
8: 1 8
1:5
9:1
1
9
6:1
8
7:1 7
6
7:1
8:1
5 15:3
8:2 15
3:1 3
8
5:1 5
3:1
6:1
3 7:1
9:1 9
7
11:1
6
7 11
Gambar 4.11 Hasil pembentukan FP-Tree setelah pembacaan TID 10. Setelah pembuatan FP-Tree selesai, algoritma FP-Growth mencari semua subsets yang memungkinkan dengan cara membangkitkan conditional FP-Tree dan mencari frequent itemset, dengan menerapkan metode Divide and Conquer sesuai urutan Frequent List dari yang paling kecil jumlah kemunculannya.
1.
Kondisi FP-Tree untuk item 11 Langkah awal, ekstrak semua lintasan yang berakhiran 11. Selain path 11
diberi nilai 0, hal ini dilakukan agar dapat mengetahui informasi berapa kali item yang lain dibeli bersamaan dengan item 11 dan bisa mengetahui frequent itemsets mana yang memenuhi syarat minimum support. Untuk lebih jelasnya, dapat dilihat pada gambar 4.12 dibawah ini.
37
{Root}
1:0
1
11:1
{Root}
1:1
1
11 15:1
15:0
15
15 3:0
3:1
3
3 11:1
Frequent Itemset
11
11
Gambar 4.12 Kondisi FP-Tree untuk item 11. (sumber: : 32) Setelah itu, naikkan satuChandrawati,Evi. persatu path 112009 sampai ke root dan nilai path 11 dimasukan ke setiap path yang dilintasi sampai ke root. Pada kasus ini, item 1,15,3 nilai kemunculan bersamaan dengan item 11 hanya 1 kali sehingga item 1,15,3 dibuang. Karena item 11 hanya berdiri sendiri, maka subsets yang terbentuk hanya dari item 11 itu sendiri.
2.
Kondisi FP-Tree untuk item 9 Langkah awal, ekstrak semua lintasan yang berakhiran 9. Selain path 9 diberi
nilai 0, hal ini dilakukan agar dapat mengetahui informasi berapa kali item yang lain dibeli bersamaan dengan item 9 dan bisa mengetahui frequent itemsets mana yang memenuhi syarat minimum support. Untuk lebih jelasnya, dapat dilihat pada gambar 4.13 di bawah ini.
38
{Root}
5:0
5
1:0
5
1 9:1
7:0
7 3:0
{Root}
5:1
1:1
1
7:1
7
9 3:1
3
3
9:1 Frequent Itemset
9
9
Gambar 4.13 Kondisi FP-Tree untuk item 9. (sumber: Chandrawati,Evi. 2009 : 32) Setelah itu, naikkan satu persatu path 9 sampai ke root dan nilai path 9 dimasukan ke setiap path yang dilintasi sampai ke root. Pada kasus ini, item 1,5,7,3 nilai kemunculan bersamaan dengan item 9 hanya 1 kali, sehingga item 1,5,7,3
dibuang. Karena item 9 hanya berdiri sendiri, maka subsets yang
terbentuk hanya dari item 9 itu sendiri.
3.
Kondisi FP-Tree untuk item 6 Langkah awal, ekstrak semua lintasan yang berakhiran 6. Selain path 6 diberi
nilai 0, hal ini dilakukan agar dapat mengetahui informasi berapa kali item yang lain dibeli bersamaan dengan item 6 dan bisa mengetahui frequent itemsets mana yang memenuhi syarat minimum support.. Untuk lebih jelasnya, dapat dilihat pada gambar 4.14 di bawah ini.
39
{Root}
1:0
1
5:0
5
1 6:1
15:0
15
{Root}
1:1
5:1
5
15:1
6
15
8:0
8:1
8
8
5:0
5:1
5
5
6:1 Frequent Itemset
5,6 6
6
Gambar 4.14 Kondisi Fp-Tree untuk item 6. (sumber: Chandrawati,Evi. 2009 : 32) Setelah itu, naikkan satu persatu path 6 sampai ke root dan nilai path 6 dimasukan ke setiap path yang dilintasi sampai ke root. Pada kasus ini, item 1,15,8 nilai kemunculan bersamaan dengan item 6 hanya 1 kali sehingga item 1,5,7,3 dibuang. sedangkan item 5 nilai kemunculannya 2 maka subsets yang terbentuk adalah {6} dan {6,5}.
4.
Kondisi FP-Tree untuk item 3 Langkah awal, ekstrak semua lintasan yang berakhiran 3. Selain path 3 diberi
nilai 0, hal ini dilakukan agar dapat mengetahui informasi berapa kali item yang lain dibeli bersamaan dengan item 3 dan bisa mengetahui frequent itemsets mana yang memenuhi syarat minimum support. Untuk lebih jelasnya, dapat dilihat pada gambar 4.15 di bawah ini.
40
{Root}
5:0
5
1:0
{Root}
5:1
1
5
15:0
7:0
1:1
1
15:1
7:1
7
15
3:1
3:1
7
15
3
3
Frequent Itemset
3
Gambar 4.15 Kondisi Fp-Tree untuk Item 3. (sumber: Chandrawati,Evi. 2009 : 32) Setelah itu, naikkan satu persatu path 3 sampai ke root dan nilai path 3 dimasukan ke setiap path yang dilintasi sampai ke root. Pada kasus ini, item 1,5,7,15 nilai kemunculan bersamaan dengan item 3 hanya 1 kali, sehingga item 1,5,7,15
dibuang. Karena item 3 hanya berdiri sendiri, maka subsets yang
terbentuk hanya dari item 3 itu sendiri.
5.
Kondisi FP-Tree untuk item 7 Langkah awal, ekstrak semua lintasan yang berakhiran 7. Selain path 7 diberi
nilai 0, hal ini dilakukan agar dapat mengetahui informasi berapa kali item yang lain dibeli bersamaan dengan item 7 dan bisa mengetahui frequent itemsets mana yang memenuhi syarat minimum support. Untuk lebih jelasnya, dapat dilihat pada gambar 4.16 di bawah ini.
41
{Root}
{Root} 1:0
1:1
1:0
1
1
15:0
8:0
8
5:0
7:1
1:1
1
15
5 7
8:1
8 8:0
1 5 5:1
15:1
15
8:1
8
8
7:1
7:1
7
7
Frequent Itemset
7 8,7 1,8,7 1,7
Gambar 4.16 Kondisi FP-Tree untuk item 7. (sumber: Chandrawati,Evi. 2009 : 32) Setelah itu, naikkan satu persatu path 7 sampai ke root dan nilai path 7 dimasukan ke setiap path yang dilintasi sampai ke root. Pada kasus ini, item 5,15 nilai kemunculan bersamaan dengan item 7 hanya 1 kali sehingga item 5,15 dibuang. sedangkan item 1 dan 8 nilai kemunculannya 2 maka subsets yang terbentuk adalah {7},{8,7},{1,8,7},{1,7}.
6.
Kondisi FP-Tree untuk item 5 Langkah awal, ekstrak semua lintasan yang berakhiran 5. Selain path 5 diberi
nilai 0, hal ini dilakukan agar dapat mengetahui informasi berapa kali item yang lain dibeli bersamaan dengan item 5 dan bisa mengetahui frequent itemsets mana yang memenuhi syarat minimum support. Untuk lebih jelasnya, dapat dilihat pada gambar 4.17 di bawah ini.
42
{Root}
5:2
5
1:0
5:2
{Root}
1
1
15:0
15
1:1 15:1
15
3:0
8
3:1
8
5:1
5 Frequent Itemset
5
Gambar 4.17 Kondisi FP-Tree untuk item 5. (sumber: Chandrawati,Evi. : 32)ke root dan nilai path 5 Setelah itu, naikkan satu persatu path 52009 sampai dimasukan ke setiap path yang dilintasi sampai ke root. Pada kasus ini, item 1,15,8 nilai kemunculan bersamaan dengan item 5 hanya 1 kali, sehingga item 1,15,8 dibuang. Karena item 5 hanya berdiri sendiri, maka subsets yang terbentuk hanya dari item 5 itu sendiri.
7.
Kondisi FP-Tree untuk item 8 Langkah awal, ekstrak semua lintasan yang berakhiran 8. Selain path 8 diberi
nilai 0, hal ini dilakukan agar dapat mengetahui informasi berapa kali item yang lain dibeli bersamaan dengan item 8 dan bisa mengetahui frequent itemsets mana yang memenuhi syarat minimum support. Untuk lebih jelasnya, dapat dilihat pada gambar 4.18 di bawah ini.
43
15:0
{Root} 15
1:0
5:1
1
15
15:0
8:1
8
{Root}
1:3
1
15
15
8:1
8:1
8
15:2
8 8:1
8
Frequent Itemset
1,8 1,15,8 15,8 8
Gambar 4.18 Kondisi Fp-Tree untuk item 8. : 32) ke root dan nilai path 8 Setelah itu,(sumber: naikkan Chandrawati,Evi. satu persatu path2009 8 sampai dimasukan ke setiap path yang dilintasi sampai ke root. Pada kasus ini, item 1 nilai kemunculannya 2 dan item 15 nilai kemunculannya 3 maka subsets yang terbentuk adalah {8},{15,8},{1,15,8},{1,8}.
8.
Kondisi FP-Tree untuk item 15 Langkah awal, ekstrak semua lintasan yang berakhiran 15. Selain path 15
diberi nilai 0, hal ini dilakukan agar dapat mengetahui informasi berapa kali item yang lain dibeli bersamaan dengan item 15 dan bisa mengetahui frequent itemsets mana yang memenuhi syarat minimum support. Untuk lebih jelasnya, dapat dilihat pada gambar 4.19 di bawah ini.
44
5:2
{Root}
{Root} 15
1:3
1:0
1
1 15:3
15
Frequent Itemset
1,15 15
Gambar 4.19 Kondisi FP-Tree untuk item 15. (sumber: Chandrawati,Evi. 2009 : 32) Setelah itu, naikkan satu persatu path 18 sampai ke root dan nilai path 15 dimasukan ke setiap path yang dilintasi sampai ke root. Pada kasus ini, item 1 nilai kemunculannya 3 dan maka subsets yang terbentuk adalah {15},{1,15}.
9.
Kondisi FP-Tree untuk item 1 Pada kasus ini, lintasan yang berakhiran item 1 merupakan lintasan tunggal
yang bersiri sendiri dan memiliki nilai frekuensi 5 sehingga frequent itemsets-nya hanya {1} Untuk lebih jelasnya, dapat dilihat pada gambar 4.20 di bawah ini.
{Root}
{Root}
1:5
1 Frequent Itemset
1
Gambar 4.20 Kondisi FP-Tree untuk item 1. (sumber: Chandrawati,Evi. 2009 : 32)
45
setelah memeriksa kondisi FP-Tree,
didapat 17 Frequent itemsets yang
hasilnya di rangkum dalam tabel berikut ini Tabel 4.5 Tabel hasil Frequent Itemsets. Item Suffix
Frequent itemsets
(sumber: Chandrawati,Evi. 2009 : 32) 11
{11}
9
{9}
6
{5,6}, {6}
3
{3}
7
{8,7}, {1,8,7}, {1,7}, {7}
5
{5}
8
{1,8}, {15,8}, {1,15,8}, {8}
15
{1,15}, {15}
1
{1}
Dari 17 Frequent itemsets tersebut, tidak semua dihitung. Karena dalam menghasilkan Association Rule, minimal Frequent itemsets yang dihitung terdapat 2 item dimana jika membeli item A maka akan membeli item B. Sehingga yang layak dihitung confidence-nya adalah 8 subsets, diantaranya : {5,6}, {8,7}, {1,8,7}, {1,7}, {1,8}, {15,8}, {1,15,8}, {1,15}.
Setelah mendapatkan
frequent itemsets yang akan dihitung, selanjutnya
adalah membuat rule dengan menghitung confidence-nya. Hanya pola yang nilai confidence-nya ≥ 0.75 yang akan diambil. Rumus menghitung confidence dapat dilihat pada rumus 3 Bab II. Karena perhitungannya sangat banyak, maka penulis mengambil contoh dari frequent itemsets {1,8,7} untuk dicari kombinasinya dan dihitung nilai confidence-nya seperti terlihat pada gambar 4.21.
46
1
8
7
1,8 1,7 8,7
1,8,7 Gambar 4.21 Proses pencarian kombinasi untuk frequent itemsets {1,8,7} (Sumber : Borgelt, 2003:2). Dari proses pencarian kombinasi untuk frequent itemsets {1,8,7}, didapat 12 pola, dan perhitungan confidence-nya sebagai berikut : 1 → 8 = 3/5 = 0.6 8 → 1 = 3/4 = 0.75 1 → 7 = 2/5 = 0.4 7 → 1 = 2/3 = 0.67 8 → 7 = 2/4 = 0.5 7 → 8 = 2/3 = 0.67 7^8 → 1 = 2/2 = 1 1 → 7^8 = 2/5 = 0.4 8 → 7^1 = 2/4 = 0.5 7^1 → 8 = 2/2 = 1 7 → 8^1 = 2/3 = 0.67 8^1 → 7 = 2/3 = 0.67
21
Dari perhitungan confidence terhadap pola diatas maka Association Rule yang memenuhi syarat confidence ≥ 0.75 adalah : 1) 8 → 1 (jika konsumen membeli shampo maka membeli sabun mandi dengan nilai confidence
0.75)
2) 7^8 → 1 (jika konsumen membeli pasta gigi dan shampo maka membeli sabun mandi dengan nilai confidence 1.0) 3) 7^1 → 8 (jika konsumen membeli sabun mandi dan pasta gigi maka membeli shampoo dengan nilai confidence 1.0) Hasil dari perhitungan possible subsets yang lain adalah : 4) 6 → 5 (jika konsumen membeli handbody maka membeli minyak wangi dengan nilai confidence
1.0)
5) 8 →15 (jika konsumen membeli shampo maka membeli biskuit kemasan dengan nilai confidence
0.75)
10. Perancangan Proses Model dari sistem, akan disajikan dalam bentuk flowchart system. Model tersebut akan menunjukkan kepada user, bagaimana nantinya sistem aplikasi yang dirancang bekerja secara fisik. Bentuk flowchart dari sistem aplikasi Market Basket Analysis dapat dilihat pada gambar 4.21.
11. Perancangan Aplikasi Perancangan aplikasi Market Basket Analysis menggunakan algoritma FPGrowth dapat dilihat pada gambar di bawah ini :
22
23
MULAI
TENTUKAN KATEGORI ITEM SESUAI DENGAN DATA YANG DITELITI
BENTUK DATA KATEGORI ITEM
INPUT NILAI MINIMUM SUPPORT DAN CONFIDENCE
BENTUK FREQUENT ITEMSETS DAN ASSOCIATION RULE
ASSOCIATION RULE DIHASILKAN
SELESAI
Gambar 4.22 Flowchart sistem aplikasi Market Basket Analysis. . (sumber: Chandrawati,Evi. 2009 : 32) a. Rancangan Form Utama Market Basket Analysis Application
MARKET BASKET ANALYSIS DENGAN ALGORITMA FP-GROWTH ASSOCIATION RULE
PETUNJUK
TENTANG KELUAR
Gambar 4.23 Rancangan Form Utama. . (sumber: Chandrawati,Evi. 2009 : 32)
24
b. Rancangan Form Association Rule Association Rule ASSOCIATION RULE Input File
TABEL DATABASE UNTUK KRITERIA PRODUK
Output File File Nilai minimum support Nilai minimum confidence File BUKA HASIL
PROSES
KEMBALI
Gambar 4.24 Rancangan Form Association Rule. (sumber: Chandrawati,Evi. 2009 : 32) c. Rancangan Form petunjuk. Petunjuk PETUNJUK xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
CONTOH DATABASE
Gambar 4.25 Rancangan Form Petunjuk. (sumber: Chandrawati,Evi. 2009 : 32)
KEMBALI
25
d. Rancangan Form Tentang Tentang
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
KEMBALI
Gambar 4.26 Rancangan Form Tentang. (sumber: Chandrawati,Evi. 2009 : 32) 12. Implementasi Implementasi Market Basket Analysis dengan menerapkan algoritma FPGrowth untuk menemukan pola pembelian item oleh konsumen, diaplikasikan kedalam bahasa pemograman java menggunakan IDE Netbeans 7. Adapun tampilan dari aplikasi Market Basket Analysis dengan menerapkan algoritma FPGrowth adalah sebagai berikut :
26
a. Tampilan Form Utama
Gambar 4.27 Form Utama Market Basket Analysis. (sumber: Chandrawati,Evi. 2009 : 32)
b. Tampilan Form Petunjuk
Gambar 4.28 Form Petunjuk.
(sumber: Chandrawati,Evi. 2009 : 32)
27
c. Tampilan Form Tentang
Gambar 4.29 Form Tentang. (sumber: Chandrawati,Evi. 2009 :Rule 32) d. Tampilan Form Association
Gambar 4.30 Form Association Rule yang sudah diinput data dan ditentukan outputnya beserta nilai parameter support dan confidence.
Pada tahap ini, diperlukan file data transaksi yang sudah disiapkan dengan menekan tombol input file, pada kasus ini penulis menginput data transaksi yang sama dengan contoh data yang telah dihitung secara manual menggunakan
28
algoritma FP-Growth di atas. Bentuk data transaksinya bisa dilihat pada gambar 4.31 yang sudah disimpan di notepad.
Gambar 4.31 Bentuk data transaksi yang disimpan di notepad. Langkah selanjutnya, tentukan lokasi direktori penyimpanan hasil generate rule dengan menekan tombol output file, setelah itu isi nilai parameter support dan confidence pada textbox yang sudah disediakan di aplikasi. Nilai support adalah nilai frekuensi kemunculan pola item dalam seluruh transaksi yang ditentukan antara 0.0 (nilai persentase terkecil dari jumlah kemunculan pola item) sampai 1.0 (nilai persentase terbesar dari jumlah kemunculan pola item). Nilai confidence adalah nilai yang menghitung nilai kepercayaan dari pola item yang sudah memenuhi syarat nilai support yang ditentukan antara 0.0 (nilai persentase terkecil dari kepercayaan sebuah pola item) sampai 1.0 (nilai presentae terbesar dari kepercayaan sebuah pola item). Pada kasus ini, penulis menginput nilai minimum support
dan confidence
sama dengan nilai yang dipakai dalam
perhitungan manual di atas. Dalam aplikasi ini, pengguna bisa langsung membuka hasil dari proses pencarian pola dengan memberi tanda centang ( ) pada checkbox buka hasil.
29
Pada bagian kanan aplikasi terdapat tabel data kategori item yang berisi nama beserta kode untuk tiap kategori yang bisa dimanipulasi sesuai kebutuhan. Sebelum pola ditampilkan, sistem aplikasi akan mengkonversi kategori item yang masih berupa angka menjadi nama kriteria sesuai dengan ketentuan yang terdapat di dalam database kategori item. Hasil dari pencarian pola menggunakan aplikasi dengan contoh kasus yang sama pada perhitungan manual diatas, dapat dilihat pada gambar 4.32.
Gambar 4.32 Hasil proses pencarian pola / generate rule secara otomatis menggunakan Aplikasi market basket analysis. Pada hasil di atas, dapat dibuktikan bahwa pola yang dihasilkan dari perhitungan menggunakan aplikasi, memiliki hasil pola yang sama dengan perhitungan manual.
13. Pengujian Black Box Pengujian selanjutnya dilakukan untuk memastikan bahwa suatu event atau masukan akan menjalankan proses yang tepat dan menghasilkan output yang sesuai dengan desain. Untuk pengujian black box akan diuji oleh Ibu Hj.
30
Megawati Syahbuddin selaku manajer swalayan XYZ dan yang menjadi objek pada pengujian blackbox adalah form Association Rule. Tabel 4.6 Hasil pengujian Black Box.
Input/Event
Proses
Output
Hasil Pengujian
Penekanan Tombol Input
Melaksanakan proses input data transaksi
Data
Sesuai
transaksi diinput
Penekanan
Penyimpanan
Tombol Output
Menentukan tempat penyimpanan hasil generate rule
Input nilai min.
Menginput nilai minimum support
Nilai
support
Sesuai
ditentukan Sesuai
minimum support terinput
Input nilai min. confidence
Menginput nilai minimum confidence
Nilai
Sesuai
minimum confidence terinput
Tekan tombol proses Centang checkbox buka hasil
Generate rule dari data transaksi yang diinput
Rule
Membuka hasil dari proses generate rule
Hasil dibuka
Sesuai
dihasilkan Sesuai
31
F. Interpretation dan Evaluation Hasil keseluruhan dari proses generate rules menggunakan aplikasi Market Basket Analysis terhadap data transaksi selama 3 bulan terakhir yaitu bulan Maret, April, Mei sebanyak 4078 record dengan memberikan batasan nilai minimum support = 0.01 (1%) dan confidence = 0.5 (50%) dapat dilihat pada gambar 4.33.
Gambar 4.33 Hasil proses pencarian pola secara otomatis menggunakan aplikasi Market Basket Analysis pada data transaksi 3 bulan terakhir. Hasil di atas menunjukkan bahwa pola jika membeli telur ayam ras maka membeli mie instant dengan nilai support = 3.14% dan nilai confidence = 72. 73% dari 4078 data transaksi yang merupakan pola dengan nilai support dan confidence tertinggi.
G. Tanggapan Pihak Manajer Swalayan XYZ Terhadap Market Basket Analysis Untuk mengetahui tanggapan dari pihak manajer swalayan XYZ terhadap Market Basket Analysis pada data transaksi penjualan barang harian, penulis mengajukan beberapa pertanyaan kepada Ibu Hj. Megawati Syahbuddin selaku
32
manajer swalayan XYZ . Adapun pertanyaan yang penulis ajukan kepada beliau beserta jawabannya, adalah : 1.
Digunakan sebagai apa laporan transaksi penjualan ? “ Laporan transaksi penjualan sangat membantu perusahaan untuk mengetahui segala aktifitas kegiatan perusahaan dalam bentuk pelaporan keuangan, pelaporan ketersediaan stok barang, hutang maupun piutang perusahaan dan hal-hal lain yang berhubungan dengan peningkatan / penurunan penjualan, keadaan konsumen, keadaan barang yang cepat laku maupun tidak ”.
2.
Selama ini bagaimana sistem panataan item pada supermarket ? “ Biasanya item-item diatur sesuai dengan jenis dan kelompok barang yang memiliki kegunaan yang hampir sama, misalya bahan- bahan untuk digunakan di dapur diatur berdekatan, misalnya : rempah-rempah, supermi, bahan makanan kaleng, susu, minyak goring, bumbu-bumbu dapur, bahan kue dan barang lainnya yang masih sejenis diatur / dikelompokkan secara bersama-sama “.
3.
Selama ini langkah apa yang anda tempuh unuk meningkatkan penjualan ? “ Hanya mengandalkan pada iklan, baik pada media elektronik maupun cetak “.
4.
Apakah anda mengenal Market Basket Analisys sebelumnya ? “Belum”.
5.
Tanggapan anda setelah saya jelaskan mengenai Market Basket Analysis ?
33
“Sangat bagus untuk diterapkan pada toko ritel karena berguna untuk membantu perusahaan dalam melihat produk-produk mana yang sering dibeli oleh konsumen, dimana kita dapat melihat adanya item lain yang mengikuti penjualan dari produk-produk fast moving sehingga dapat membantu perusahaan dalam mengorder atau memesan barang secara bijaksana, dimana barang-barang yang lancar (fast moving) dapat diorder lebih dibanding barang-barang yang slow moving, sehingga penumpukan stok dapat dihindari”. Berdasarkan tanggapan dari pihak manajer swalayan XYZ diatas, bahwa Market Basket Analysis terhadap data transaksi penjualan barang harian dapat memberikan manfaat pengetahuan berupa kebiasaan konsumen dalam berbelanja yang selama ini belum diketahui sebelumnya, dan cocok diterapkan di perusahaan ritel selain itu tidak menutup kemungkinan untuk menerapkan pada data transaksi penjualan jenis produk lainnya. Sehingga dari pihak swalayan dapat memaksimalkan sumber daya yang tersedia. 1.
Hasil Analisis Hasil pemafaatan data transaksi 3 bulan terakhir yang tersimpan banyak
melalui Market Basket Analysis di swalayan XYZ, menghasilkan pengetahuan tentang pola pembelian konsumen yang selama ini jarang diketahui, penulis berasumsi bahwa hasil tersebut dapat dimanfaatkan untuk membantu membuat strategi bisnis, diantaranya : a
Menyusun layout yang baik didasarkan pada pola pembelian item yang memiliki nilai confidence tinggi. Sebagai contoh (telur ayam ras, dan mie
34
instant). Letak kedua item tersebut bisa diatur berdekatan sehingga memudahkan konsumen dalam membeli kedua item tersebut dan dapat meningkatkan penjualan keduanya. b
Dengan memberikan paket diskon terhadap pola pembelian item yang memiliki nilai confidence tinggi namun memiliki nilai support yang kecil. Hal ini berguna untuk menarik minat konsumen yang sering membeli itemitem yang terdapat pada pola tersebut agar lebih bertambah.
c
Hasil pola yang didapat juga bisa digunakan dalam membantu swalayan untuk membantu dalam menetukan keputusan persediaan. Sebagai contoh pola yang dipakai adalah (telur ayam ras, dan mie instant). Dari data tersebut, dapat diambil kesimpulan seandainya konsumen biasa membeli telur ayam ras dan mie instant secara bersamaan, maka swalayan setidaknya harus menjaga ketersediaan stok kedua item tersebut agar tetap sama.
d
Dengan melihat pola yang dihasilkan, seperti pola telur ayam dan mie instant. Pihak swalayan dapat memberikan promosi ketika konsumen membeli telur ayam maka ditawarkan mie instant. Hal ini diharapkan bisa meningkatkan pendapatan swalayan. Penataan item pada swalayan XYZ pada saat ini dapat dilihat pada gambar 4.34. Adapun asumsi dari penulis untuk memanfaatkan pola yang dihasilkan yaitu dengan merubah penataan item saat ini, yang diharapkan mampu meningkatkan nilai penjualan. Perubahan tersebut meliputi letak tissue basah di pindahkan ke rak yang berisi tissue dan kapas kecantikan, kemudian bekas rak tissue basah diisi vitsin. Bekas tempat vitsin diisi oleh telur ayam namun tidak memindahkan posisi asal telur, hanya
35
menambahkan pada rak tersebut dengan item telur ayam. Saran selanjutnya adalah dengan memindahkan item dot bayi ke rak yang berisi bedak bayi, shampoo bayi, dan baby oil kemudian bekas rak dot bayi diisi dengan parfum namum tidak memindahkan posisi awal parfum, hanya menambahkan pada rak tersebut dengan item parfum. Seperti terlihat pada gambar 4.35.
36
Gambar 4.34 Penataan item di Swalayan XYZ saat ini.
37
Gambar 4.35 Saran perubahan untuk penataan item.
38