SlideShare a Scribd company logo
1 of 22
Download to read offline
Market Basket Analysis
konsep dan implementasi dengan Bahasa R
Muhammad Rifqi Ma’arif, M.Eng
Matakuliah Ilmu Data Industrial
Program Studi Teknik Industri
Fakultas Teknik & Teknologi Informasi
Universitas Jenderal Achmad Yani Yogyakarta
2020
Pengantar Market Basket Analysis
• Salah satu inovasi bisnis di bidang ritel dan supply chain adalah mencari
asosiasi atau hubungan antar produk dari data transaksi penjualan yang
bertujuan untuk:
• dipaketkan dan dijual bersamaan.
• memberikan rekomendasi produk kepada seseorang.
• menyusun rak display.
• menyusun halaman produk e-commerce.
• Semua hal ini bertujuan untuk meningkatkan penjualan sekaligus
memecahkan masalah inventory – karena produk yang tidak begitu laku
jika dipasangkan dengan tepat akan lebih menarik dan punya kemungkinan
besar dibeli dalam satu paket. Proses ini merupakan proses analisa yang
disebut dengan Market Basket Analysis (MBA).
Tujuan Market Basket Analysis
• Market Basket Analysis bertujuan untuk mencari
rekomendasi paket produk berdasarkan pola unik dari
data transaksi/pembelian pelanggan.
• Aplikasi MBA
• Optimaliasi strategi retail yang dapat meningkatkan
penjualan.
• Sebagai dasar prediksi kebutuhan barang di masa depan
untuk meningkatkan manajemen inventory pada proses
supply chain
• Inovasi pengembangan produk
• Supply chain risk analysis & management
• Dan lain sebagainya
Market Basket Analysis di R
• Penerapan Market Basket Analysis
(MBA) di R dapat menggunakan
algoritma apriori – yang
merupakan salah satu algoritma
terpopuler di area machine
learning - pada package arules.
• Arules sendiri adalah singkatan
dari association rules - kategori
machine learning. Untuk
menjalankan algoritma ini
diperlukan dibutukan dua data,
yaitu data produk dan data
transaksi.
#Menggunakan library arules
library(arules)
#Membaca transaksi dari file data_transaksi.txt
transaksi <- read.transactions(file="data_transaksi.txt",
format="single", sep="t", cols=c(1,2), skip=1)
#Menampilkan data transaksi dengan print dan inspect
inspect(transaksi)
#Menghasilkan model Market Basket Analysis
mba <- apriori(transaksi,parameter = list(supp = 0.1,
confidence = 0.5))
#Menampilkan paket produk
inspect(subset(mba, lift>1))
Market Basket Analysis di R
inspect(transaksi) inspect(subset(mba, lift>1))
Association Rule
• Association rule adalah representasi keterkaitan
antar entitas tertentu (e.g produk) yang memiliki
hubungan atau asosiasi kuat di dalam transaksi.
• Hubungan "kuat" disini akan dilihat berdasarkan
proporsi jumlah kemunculan kombinasi entitas dalam
keseluruhan data transaksi.
• Mari kita lihat contoh pada gambar disamping.
• Asd
• Asd
• Asd
• Asd
• Asd
• Asd
Algoritma Apriori
• Algoritma apriori adalah salah satu algoritma yang merupakan penerapan praktis dari Market
Basket Analysis (MBA). Algoritma ini digunakan untuk menganalisa banyaknya kombinasi produk
yang terjadi di dalam transaksi ritel, yang akan sulit dan lama jika dilakukan secara manual.
• Secara teknis, algoritma apriori akan mencari tingkat asosiasi antar item di dalam banyak
kombinasi kelompok data secara otomatis. Kombinasi ini juga bisa disusun dengan suatu aturan
(rule) asosiasi "Jika membeli ini produk A maka akan membeli produk B", sehingga algoritma ini
dikategorikan sebagai Association Rules di ranah machine learning.
• Dengan menemukan paket produk yang asosiasinya kuat, Anda sebagai seorang data scientist
dapat menyarankan kepada bisnis dapat melakukan berbagai action item seperti membuat paket
produk dengan penawaran khusus, mendekatkan produk-produk tersebut saling berdekatan
dalam satu rak, mengeluarkan rekomendasi produk di sistem e-commerce, mengurangi masalah
stok, dan lain-lain.
Algoritma Apriori di R
• Menampilkan kombinasi transaksi
#Membaca transaksi dari file data_transaksi.txt
transaksi <- read.transactions(file="data_transaksi.txt", format="single",
sep="t", cols=c(1,2), skip=1)
#Menampilkan jumlah kombinasi dari produk yang terdapat pada daftar transaksi yang ada
inspect(apriori(transaksi, parameter = list(support=.1, minlen=2, target='frequent itemsets')))
Item dan Trasaction
• item, itemset dan rules dihasilkan dari
transaksi atau transaction
• Transaction (transaksi) adalah.....
• Output disamping adalah tampilan dari
dataset yang berjumlah sepuluh transaksi,
dengan dua kolom yang terdiri dari:
• Kolom pertama adalah itemset yang berisi
item-item yang dibeli pada transaksi
tertentu.
• Kolom kedua berisi kode struk transaksi
yang menjadi penanda unik untuk tiap
transaksi.
Membaca Item & Transaction di R
• Dibaca sebagai dataframe
• Dibaca sebagai transaksi
transaksi_dataframe <-
read.csv("data_transaksi.txt", sep="t")
print(transaksi_dataframe)
read.transactions(file="data_transaksi.txt",
format="single", sep="t", cols=c(1,2), skip=1)
Membaca Item & Transaction di R
• Menampilkan daftar item transaksi
• Menampilkan top N items
transaksi <-
read.transactions(file="data_transaksi.txt",
format="single", sep="t", cols=c(1,2),
skip=1)
transaksi@itemInfo
library(arules)
transaksi <- read.transactions(file="data_transaksi.txt",
format="single", sep="t", cols=c(1,2), skip=1)
data_item <- itemFrequency(transaksi, type="absolute")
data_item <- sort(data_item, decreasing = TRUE)
data_item <- data_item[1:3]
data_item <- data.frame("Nama Produk"=names(data_item),
"Jumlah"=data_item, row.names=NULL)
Item, Itemset dan Rules
• Perhatikan output dari pengolahan algoritma apriori berikut
• Keterangan
• Item adalah produk tunggal yang terdapat dalam suatu transaksi.
Contoh: Pet Food, Sirup, Gula, dan Teh Celup.
• Itemset adalah kombinasi satu atau lebih item yang terdapat dalam satu transaksi.
Contoh: {Pet Food}, {Gula, Pet Food}, {Sirup}, dan lain-lain.
• Rule adalah pernyataan hubungan antar Itemset. Biasanya dapat diformulasikan menjadi
"Jika membeli itemset A, maka akan membeli itemset B".
Contoh: {Pet Food} => {Sirup}, {Pet Food, Teh Celup} => {Sirup}, dan lain-lain.
Itemset
• Tiap transaksi terdiri atas beberapa item atau itemset. Untuk melihat notasi itemset yang lebih
baik dan mudah dimengerti kita bisa menggunakan function inspect, yang tersedia di arules.
library(arules)
transaksi <- read.transactions
(file="data_transaksi.txt",
format="single",
sep="t",
cols=c(1,2),
skip=1)
inspect(transaksi)
Rules
• rule adalah formula yang
menyatakan kombinasi dari dua
itemset. Satu itemset ada di bagian
kiri rule (left hand side) dan satunya
di bagian kanan (right hand side)
dalam format berikut.
{itemset lhs} => {itemset rhs}
• Untuk menghasilkan rules, dapat
digunakan fungsi apriori yang
tersedia dalam arules.
apriori(transaksi)
Rules
• Melihat Rules dengan fungsi inspect
• Apa makna dari rule jika ingin kita aplikasikan?
• terlihat rule kedua yaitu {Pet Food} => {Sirup} cukup menarik Karena support 0.4
menunjukkan bahwa kombinasi ini terdapat di 40 persen populasi, sehingga:
• rekomendasikan kepada setiap pelanggan yang membeli Pet Food untuk membeli Sirup.
• rak display Pet Food dan Sirup bisa didekatkan.
• Pet Food dan Sirup dipaketkan bersama dan dijual dengan harga khusus.
library(arules)
transaksi <- read.transactions
(file="data_transaksi.txt",
format="single", sep="t",
cols=c(1,2), skip=1)
mba <- apriori(transaksi)
inspect(mba)
Filter RHS
• Dari hasil inspect objek mba yang bertipe association rules diketahui bahwa objek tersebut
mengandung banyak informasi termasuk itemset yang terdapat di left hand side dan right hand
side.
• Ini penting untuk bisnis, misalkan untuk inventory. Kita ingin menjawab, adakah item yang kurang laku
sebelumnya ada di dalam itemset dari rules yang dihasilkan oleh apriori? Jika ada, mungkin saya bisa paketkan
bersama sehingga kemungkinan besar terjual lebih banyak.
• Untuk melakukan ini kita akan melakukan filter atau subsetting dari rules. Banyak cara, salah satunya adalah
dengan menggunakan gabungan function inspect, subset dan operator %in% dengan contoh berikut.
Filter LHS
library(arules)
transaksi <- read.transactions(file="data_transaksi.txt", format="single",
sep="t", cols=c(1,2), skip=1)
mba <- apriori(transaksi)
inspect(subset(mba, lhs %in% "Gula"))
Filter RHS dan LHS
library(arules)
transaksi <- read.transactions(file="data_transaksi.txt", format="single",
sep="t", cols=c(1,2), skip=1)
mba <- apriori(transaksi)
inspect(subset(mba, lhs %in% "Pet Food" & rhs %in% "Sirup"))
Scoring & Evaluation
• Support (nilai penunjang) adalah presentase kombinasi item tersebut
dalam database. Support dari suatu itemset A adalah proporsi dari
kejadian semua item di himpunan A terbeli secara bersamaan.
• Confidence (nilai kepastian) adalah kuatnya hubungan antar-item
dalam aturan asosiasi. Confidence dari suatu itemset A dan B adalah
jumlah dari itemset A,B dari jumlah itemset yang mengandung A.
• Lift adalah sebuah angka ratio yang menunjukkan berapa banyak
kemungkinan menemukan sebuah atribut yang muncul bersamaan
dengan atribut lainnya dibandingkan dengan seluruh kejadian
adanya atribut yang terpenuhi. Lift menunjukkan adanya tingkat
kekuatan ruleatas kejadian acak dari antecedent dan consequent
berdasarkan pada supportnya masing-masing.
Menambahkan Support dan Confidence
library(arules)
transaksi <- read.transactions(
file="data_transaksi.txt",
format="single",
sep="t", cols=c(1,2),
skip=1)
apriori(transaksi,
parameter =
list(supp = 0.1,
confidence = 0.5))
Filter Berdasarkan LIFT
library(arules)
transaksi <- read.transactions(file="data_transaksi.txt", format="single",
sep="t", cols=c(1,2), skip=1)
mba <- apriori(transaksi,parameter = list(supp = 0.1, confidence = 0.5))
inspect(subset(mba, (lhs %in% "Teh Celup" | rhs %in% "Teh Celup") & lift>1))
Visualisasi Rule dengan Graph
library(arules)
library(arulesViz)
transaksi <- read.transactions(
file="data_transaksi.txt",
format="single", sep="t",
cols=c(1,2), skip=1)
mba <- apriori(transaksi,
parameter = list(supp = 0.1,
confidence = 0.5))
plot(subset(mba, lift>1.1),
method="graph")

More Related Content

What's hot

Akuntansi keuangan I "Persediaan : Masalah Penilaian Tambahan"
Akuntansi keuangan I "Persediaan : Masalah Penilaian Tambahan" Akuntansi keuangan I "Persediaan : Masalah Penilaian Tambahan"
Akuntansi keuangan I "Persediaan : Masalah Penilaian Tambahan" Amrul Rizal
 
Metodologi Penelitian Bisnis
Metodologi Penelitian BisnisMetodologi Penelitian Bisnis
Metodologi Penelitian BisnisZaldeeho Nei
 
analisa runtut waktu
analisa runtut waktu analisa runtut waktu
analisa runtut waktu ratu angriani
 
Kelompok 2 AR B - Analisis Tren.pdf
Kelompok 2 AR B - Analisis Tren.pdfKelompok 2 AR B - Analisis Tren.pdf
Kelompok 2 AR B - Analisis Tren.pdf20066ClaraFirli
 
Probabilitas konsepsi peluang
Probabilitas konsepsi peluangProbabilitas konsepsi peluang
Probabilitas konsepsi peluangIsna Aryanty
 
Hubungan industri dengan lingkungan
Hubungan industri dengan lingkunganHubungan industri dengan lingkungan
Hubungan industri dengan lingkunganRizal Fahmi
 
Sistem Informasi Manajemen
Sistem Informasi ManajemenSistem Informasi Manajemen
Sistem Informasi ManajemenAfdan Rojabi
 
Algoritma dan Struktur Data - Binary Search
Algoritma dan Struktur Data - Binary SearchAlgoritma dan Struktur Data - Binary Search
Algoritma dan Struktur Data - Binary SearchKuliahKita
 
economic manegerial
economic manegerialeconomic manegerial
economic manegerialnamakuguten
 
Analisis Break Even Point Lengkap
Analisis Break Even Point Lengkap  Analisis Break Even Point Lengkap
Analisis Break Even Point Lengkap zharah dhani
 
Bahan ajar statistik bisnis
Bahan ajar statistik bisnisBahan ajar statistik bisnis
Bahan ajar statistik bisnisNardiman SE.,MM
 
Kelompok sia 5 pengaplikasian dan implementasi sistem buku besar dan pelapor...
Kelompok sia 5  pengaplikasian dan implementasi sistem buku besar dan pelapor...Kelompok sia 5  pengaplikasian dan implementasi sistem buku besar dan pelapor...
Kelompok sia 5 pengaplikasian dan implementasi sistem buku besar dan pelapor...NuraifanSuntia2
 
Aps08 design process_modeling
Aps08 design process_modelingAps08 design process_modeling
Aps08 design process_modelingArif Rahman
 
Annisakhoerunnisya smt1 akuntansi1_bab 8
Annisakhoerunnisya smt1 akuntansi1_bab 8Annisakhoerunnisya smt1 akuntansi1_bab 8
Annisakhoerunnisya smt1 akuntansi1_bab 8Annisa Khoerunnisya
 
Algoritma Apriori
Algoritma AprioriAlgoritma Apriori
Algoritma Aprioridedidarwis
 
Soal matstat ngagel+jawabannya
Soal matstat ngagel+jawabannyaSoal matstat ngagel+jawabannya
Soal matstat ngagel+jawabannyaKana Outlier
 

What's hot (20)

Akuntansi keuangan I "Persediaan : Masalah Penilaian Tambahan"
Akuntansi keuangan I "Persediaan : Masalah Penilaian Tambahan" Akuntansi keuangan I "Persediaan : Masalah Penilaian Tambahan"
Akuntansi keuangan I "Persediaan : Masalah Penilaian Tambahan"
 
Metodologi Penelitian Bisnis
Metodologi Penelitian BisnisMetodologi Penelitian Bisnis
Metodologi Penelitian Bisnis
 
analisa runtut waktu
analisa runtut waktu analisa runtut waktu
analisa runtut waktu
 
Modul 5 invers matrik
Modul 5 invers matrikModul 5 invers matrik
Modul 5 invers matrik
 
Kelompok 2 AR B - Analisis Tren.pdf
Kelompok 2 AR B - Analisis Tren.pdfKelompok 2 AR B - Analisis Tren.pdf
Kelompok 2 AR B - Analisis Tren.pdf
 
Probabilitas konsepsi peluang
Probabilitas konsepsi peluangProbabilitas konsepsi peluang
Probabilitas konsepsi peluang
 
Hubungan industri dengan lingkungan
Hubungan industri dengan lingkunganHubungan industri dengan lingkungan
Hubungan industri dengan lingkungan
 
Sistem Informasi Manajemen
Sistem Informasi ManajemenSistem Informasi Manajemen
Sistem Informasi Manajemen
 
Algoritma dan Struktur Data - Binary Search
Algoritma dan Struktur Data - Binary SearchAlgoritma dan Struktur Data - Binary Search
Algoritma dan Struktur Data - Binary Search
 
economic manegerial
economic manegerialeconomic manegerial
economic manegerial
 
Analisis Break Even Point Lengkap
Analisis Break Even Point Lengkap  Analisis Break Even Point Lengkap
Analisis Break Even Point Lengkap
 
Bahan ajar statistik bisnis
Bahan ajar statistik bisnisBahan ajar statistik bisnis
Bahan ajar statistik bisnis
 
3.algoritma dasar
3.algoritma dasar3.algoritma dasar
3.algoritma dasar
 
Kelompok sia 5 pengaplikasian dan implementasi sistem buku besar dan pelapor...
Kelompok sia 5  pengaplikasian dan implementasi sistem buku besar dan pelapor...Kelompok sia 5  pengaplikasian dan implementasi sistem buku besar dan pelapor...
Kelompok sia 5 pengaplikasian dan implementasi sistem buku besar dan pelapor...
 
Aps08 design process_modeling
Aps08 design process_modelingAps08 design process_modeling
Aps08 design process_modeling
 
Menggambar teknik
Menggambar teknik Menggambar teknik
Menggambar teknik
 
Annisakhoerunnisya smt1 akuntansi1_bab 8
Annisakhoerunnisya smt1 akuntansi1_bab 8Annisakhoerunnisya smt1 akuntansi1_bab 8
Annisakhoerunnisya smt1 akuntansi1_bab 8
 
Algoritma Apriori
Algoritma AprioriAlgoritma Apriori
Algoritma Apriori
 
Probabilitas (Statistik Ekonomi II)
Probabilitas (Statistik Ekonomi II)Probabilitas (Statistik Ekonomi II)
Probabilitas (Statistik Ekonomi II)
 
Soal matstat ngagel+jawabannya
Soal matstat ngagel+jawabannyaSoal matstat ngagel+jawabannya
Soal matstat ngagel+jawabannya
 

Similar to Market Basket Analisis dengan R

ANALISIS KERANJANG BELANJA DENGAN ALGORITMA APRIORI PADA PERUSAHAAN RETAIL
ANALISIS KERANJANG BELANJA DENGAN ALGORITMA APRIORI PADA PERUSAHAAN RETAILANALISIS KERANJANG BELANJA DENGAN ALGORITMA APRIORI PADA PERUSAHAAN RETAIL
ANALISIS KERANJANG BELANJA DENGAN ALGORITMA APRIORI PADA PERUSAHAAN RETAILDwi Putra Asana
 
Kecerdasan bisnis- Sistem Penunjang Keputusan
Kecerdasan bisnis- Sistem Penunjang KeputusanKecerdasan bisnis- Sistem Penunjang Keputusan
Kecerdasan bisnis- Sistem Penunjang KeputusanDasufianti
 
SIM, Suryo Aji Saputro, Prof. Dr. Hapzi Ali, M.M, Sistem Manajemen Database, ...
SIM, Suryo Aji Saputro, Prof. Dr. Hapzi Ali, M.M, Sistem Manajemen Database, ...SIM, Suryo Aji Saputro, Prof. Dr. Hapzi Ali, M.M, Sistem Manajemen Database, ...
SIM, Suryo Aji Saputro, Prof. Dr. Hapzi Ali, M.M, Sistem Manajemen Database, ...Suryo Aji Saputro
 
DATAWAREHOSEpertemuan 1.pdf
DATAWAREHOSEpertemuan 1.pdfDATAWAREHOSEpertemuan 1.pdf
DATAWAREHOSEpertemuan 1.pdfZoeniardiPutra
 
Pertemuan 4 -_multi_dimensional_model_design_1
Pertemuan 4 -_multi_dimensional_model_design_1Pertemuan 4 -_multi_dimensional_model_design_1
Pertemuan 4 -_multi_dimensional_model_design_1Abrianto Nugraha
 
Ully data wearhouse
Ully data wearhouseUlly data wearhouse
Ully data wearhousearri adhy
 
Teknik Audit Berbantuan Komputer Dengan Ms.Excel (Dasar pemahaman)
Teknik Audit Berbantuan Komputer Dengan Ms.Excel (Dasar pemahaman)Teknik Audit Berbantuan Komputer Dengan Ms.Excel (Dasar pemahaman)
Teknik Audit Berbantuan Komputer Dengan Ms.Excel (Dasar pemahaman)gifariwk
 
DATAWAREHOSE.ppt
DATAWAREHOSE.pptDATAWAREHOSE.ppt
DATAWAREHOSE.pptAhnafGaming
 
DATAWAREHOSE.ppt
DATAWAREHOSE.pptDATAWAREHOSE.ppt
DATAWAREHOSE.pptDedek28
 
Konsumen Sebagai Co-Creation untuk Menentukan Strategi.pdf
Konsumen Sebagai Co-Creation untuk Menentukan Strategi.pdfKonsumen Sebagai Co-Creation untuk Menentukan Strategi.pdf
Konsumen Sebagai Co-Creation untuk Menentukan Strategi.pdfferisulianta.com
 
Informasi proses bisnis
Informasi proses bisnisInformasi proses bisnis
Informasi proses bisnisFrans Frans
 
Materi rsi 6 analisa bid bisnis
Materi rsi 6 analisa bid bisnisMateri rsi 6 analisa bid bisnis
Materi rsi 6 analisa bid bisnisdonasiilmu
 
Materi rsi 6 analisa bid bisnis
Materi rsi 6 analisa bid bisnisMateri rsi 6 analisa bid bisnis
Materi rsi 6 analisa bid bisnisdonasiilmu
 
Sim, aulia caesa veranza, sistem manajemen database, hapzi ali, universitas...
Sim, aulia caesa veranza, sistem   manajemen database, hapzi ali, universitas...Sim, aulia caesa veranza, sistem   manajemen database, hapzi ali, universitas...
Sim, aulia caesa veranza, sistem manajemen database, hapzi ali, universitas...auliacaesa
 
Sim, aulia caesa veranza, sistem manajemen database, hapzi ali, universitas m...
Sim, aulia caesa veranza, sistem manajemen database, hapzi ali, universitas m...Sim, aulia caesa veranza, sistem manajemen database, hapzi ali, universitas m...
Sim, aulia caesa veranza, sistem manajemen database, hapzi ali, universitas m...auliacaesaveranza
 
Karakteristik data warehouse
Karakteristik data warehouseKarakteristik data warehouse
Karakteristik data warehousesuleman ganteng
 

Similar to Market Basket Analisis dengan R (20)

Randy oktrima putra
Randy oktrima putraRandy oktrima putra
Randy oktrima putra
 
Kecerdasan bisnis
Kecerdasan bisnisKecerdasan bisnis
Kecerdasan bisnis
 
ANALISIS KERANJANG BELANJA DENGAN ALGORITMA APRIORI PADA PERUSAHAAN RETAIL
ANALISIS KERANJANG BELANJA DENGAN ALGORITMA APRIORI PADA PERUSAHAAN RETAILANALISIS KERANJANG BELANJA DENGAN ALGORITMA APRIORI PADA PERUSAHAAN RETAIL
ANALISIS KERANJANG BELANJA DENGAN ALGORITMA APRIORI PADA PERUSAHAAN RETAIL
 
DWO - Pertemuan 2 & 3
DWO - Pertemuan 2 & 3DWO - Pertemuan 2 & 3
DWO - Pertemuan 2 & 3
 
Kecerdasan bisnis- Sistem Penunjang Keputusan
Kecerdasan bisnis- Sistem Penunjang KeputusanKecerdasan bisnis- Sistem Penunjang Keputusan
Kecerdasan bisnis- Sistem Penunjang Keputusan
 
SIM, Suryo Aji Saputro, Prof. Dr. Hapzi Ali, M.M, Sistem Manajemen Database, ...
SIM, Suryo Aji Saputro, Prof. Dr. Hapzi Ali, M.M, Sistem Manajemen Database, ...SIM, Suryo Aji Saputro, Prof. Dr. Hapzi Ali, M.M, Sistem Manajemen Database, ...
SIM, Suryo Aji Saputro, Prof. Dr. Hapzi Ali, M.M, Sistem Manajemen Database, ...
 
DATAWAREHOSEpertemuan 1.pdf
DATAWAREHOSEpertemuan 1.pdfDATAWAREHOSEpertemuan 1.pdf
DATAWAREHOSEpertemuan 1.pdf
 
Pertemuan 4 -_multi_dimensional_model_design_1
Pertemuan 4 -_multi_dimensional_model_design_1Pertemuan 4 -_multi_dimensional_model_design_1
Pertemuan 4 -_multi_dimensional_model_design_1
 
Ully data wearhouse
Ully data wearhouseUlly data wearhouse
Ully data wearhouse
 
Teknik Audit Berbantuan Komputer Dengan Ms.Excel (Dasar pemahaman)
Teknik Audit Berbantuan Komputer Dengan Ms.Excel (Dasar pemahaman)Teknik Audit Berbantuan Komputer Dengan Ms.Excel (Dasar pemahaman)
Teknik Audit Berbantuan Komputer Dengan Ms.Excel (Dasar pemahaman)
 
DATAWAREHOSE.ppt
DATAWAREHOSE.pptDATAWAREHOSE.ppt
DATAWAREHOSE.ppt
 
DATAWAREHOSE.ppt
DATAWAREHOSE.pptDATAWAREHOSE.ppt
DATAWAREHOSE.ppt
 
DATAWAREHOSE.ppt
DATAWAREHOSE.pptDATAWAREHOSE.ppt
DATAWAREHOSE.ppt
 
Konsumen Sebagai Co-Creation untuk Menentukan Strategi.pdf
Konsumen Sebagai Co-Creation untuk Menentukan Strategi.pdfKonsumen Sebagai Co-Creation untuk Menentukan Strategi.pdf
Konsumen Sebagai Co-Creation untuk Menentukan Strategi.pdf
 
Informasi proses bisnis
Informasi proses bisnisInformasi proses bisnis
Informasi proses bisnis
 
Materi rsi 6 analisa bid bisnis
Materi rsi 6 analisa bid bisnisMateri rsi 6 analisa bid bisnis
Materi rsi 6 analisa bid bisnis
 
Materi rsi 6 analisa bid bisnis
Materi rsi 6 analisa bid bisnisMateri rsi 6 analisa bid bisnis
Materi rsi 6 analisa bid bisnis
 
Sim, aulia caesa veranza, sistem manajemen database, hapzi ali, universitas...
Sim, aulia caesa veranza, sistem   manajemen database, hapzi ali, universitas...Sim, aulia caesa veranza, sistem   manajemen database, hapzi ali, universitas...
Sim, aulia caesa veranza, sistem manajemen database, hapzi ali, universitas...
 
Sim, aulia caesa veranza, sistem manajemen database, hapzi ali, universitas m...
Sim, aulia caesa veranza, sistem manajemen database, hapzi ali, universitas m...Sim, aulia caesa veranza, sistem manajemen database, hapzi ali, universitas m...
Sim, aulia caesa veranza, sistem manajemen database, hapzi ali, universitas m...
 
Karakteristik data warehouse
Karakteristik data warehouseKarakteristik data warehouse
Karakteristik data warehouse
 

More from Muhammad Rifqi

Machine Learning dengan R
Machine Learning dengan RMachine Learning dengan R
Machine Learning dengan RMuhammad Rifqi
 
Visualisasi Data di R dengan ggplot2
Visualisasi Data di R dengan ggplot2Visualisasi Data di R dengan ggplot2
Visualisasi Data di R dengan ggplot2Muhammad Rifqi
 
Data Pribadi di Ruang Siber
Data Pribadi di Ruang SiberData Pribadi di Ruang Siber
Data Pribadi di Ruang SiberMuhammad Rifqi
 
Pengenalan Social Network ANalysis
Pengenalan Social Network ANalysisPengenalan Social Network ANalysis
Pengenalan Social Network ANalysisMuhammad Rifqi
 
Social Media Analytics
Social Media AnalyticsSocial Media Analytics
Social Media AnalyticsMuhammad Rifqi
 
Open source stak of big data techs open suse asia
Open source stak of big data techs   open suse asiaOpen source stak of big data techs   open suse asia
Open source stak of big data techs open suse asiaMuhammad Rifqi
 

More from Muhammad Rifqi (6)

Machine Learning dengan R
Machine Learning dengan RMachine Learning dengan R
Machine Learning dengan R
 
Visualisasi Data di R dengan ggplot2
Visualisasi Data di R dengan ggplot2Visualisasi Data di R dengan ggplot2
Visualisasi Data di R dengan ggplot2
 
Data Pribadi di Ruang Siber
Data Pribadi di Ruang SiberData Pribadi di Ruang Siber
Data Pribadi di Ruang Siber
 
Pengenalan Social Network ANalysis
Pengenalan Social Network ANalysisPengenalan Social Network ANalysis
Pengenalan Social Network ANalysis
 
Social Media Analytics
Social Media AnalyticsSocial Media Analytics
Social Media Analytics
 
Open source stak of big data techs open suse asia
Open source stak of big data techs   open suse asiaOpen source stak of big data techs   open suse asia
Open source stak of big data techs open suse asia
 

Recently uploaded

Jual Cytotec Di Sumba Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Di Sumba Ori 👙082122229359👙Pusat Peluntur Kandungan KonsultasiJual Cytotec Di Sumba Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Di Sumba Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasissupi412
 
Persyaratan Adminduk - Disdukcapil Kab. Kebumen
Persyaratan Adminduk - Disdukcapil Kab. KebumenPersyaratan Adminduk - Disdukcapil Kab. Kebumen
Persyaratan Adminduk - Disdukcapil Kab. KebumenPemdes Wonoyoso
 
5e6a9e119c2fedec04b90d50fcb7700901916.pdf
5e6a9e119c2fedec04b90d50fcb7700901916.pdf5e6a9e119c2fedec04b90d50fcb7700901916.pdf
5e6a9e119c2fedec04b90d50fcb7700901916.pdfFendryGustianVandell
 
Jual Cytotec Blora 👗082322223014👗Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Blora 👗082322223014👗Pusat Peluntur Kandungan KonsultasiJual Cytotec Blora 👗082322223014👗Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Blora 👗082322223014👗Pusat Peluntur Kandungan Konsultasissupi412
 
Jual Obat Cytotec Di Palembang 0823.2222.3014 Pusat Pelancar Haid Ampuh Berga...
Jual Obat Cytotec Di Palembang 0823.2222.3014 Pusat Pelancar Haid Ampuh Berga...Jual Obat Cytotec Di Palembang 0823.2222.3014 Pusat Pelancar Haid Ampuh Berga...
Jual Obat Cytotec Di Palembang 0823.2222.3014 Pusat Pelancar Haid Ampuh Berga...ssupi412
 
283649986-MATERI-RISIKO-DAN-TK-PENGEMBALIAN-ppt.ppt
283649986-MATERI-RISIKO-DAN-TK-PENGEMBALIAN-ppt.ppt283649986-MATERI-RISIKO-DAN-TK-PENGEMBALIAN-ppt.ppt
283649986-MATERI-RISIKO-DAN-TK-PENGEMBALIAN-ppt.pptmumtaza6
 
PPT usaha Air Minum masak untuk jualan- Umum fix.pptx
PPT usaha Air Minum masak untuk jualan- Umum fix.pptxPPT usaha Air Minum masak untuk jualan- Umum fix.pptx
PPT usaha Air Minum masak untuk jualan- Umum fix.pptxfirbadian97
 
Jual Cytotec Di Sinjai Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Di Sinjai Ori 👙082122229359👙Pusat Peluntur Kandungan KonsultasiJual Cytotec Di Sinjai Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Di Sinjai Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasissupi412
 
WA 0821-2636-0569, Sekolah Pra Nikah Janda Duda Di Semarang
WA 0821-2636-0569, Sekolah Pra Nikah Janda Duda Di SemarangWA 0821-2636-0569, Sekolah Pra Nikah Janda Duda Di Semarang
WA 0821-2636-0569, Sekolah Pra Nikah Janda Duda Di SemarangKelas Online Pra Nikah Nikah
 

Recently uploaded (11)

Jual Cytotec Di Sumba Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Di Sumba Ori 👙082122229359👙Pusat Peluntur Kandungan KonsultasiJual Cytotec Di Sumba Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Di Sumba Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
 
Persyaratan Adminduk - Disdukcapil Kab. Kebumen
Persyaratan Adminduk - Disdukcapil Kab. KebumenPersyaratan Adminduk - Disdukcapil Kab. Kebumen
Persyaratan Adminduk - Disdukcapil Kab. Kebumen
 
5e6a9e119c2fedec04b90d50fcb7700901916.pdf
5e6a9e119c2fedec04b90d50fcb7700901916.pdf5e6a9e119c2fedec04b90d50fcb7700901916.pdf
5e6a9e119c2fedec04b90d50fcb7700901916.pdf
 
Jual Cytotec Blora 👗082322223014👗Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Blora 👗082322223014👗Pusat Peluntur Kandungan KonsultasiJual Cytotec Blora 👗082322223014👗Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Blora 👗082322223014👗Pusat Peluntur Kandungan Konsultasi
 
Jual Obat Cytotec Di Palembang 0823.2222.3014 Pusat Pelancar Haid Ampuh Berga...
Jual Obat Cytotec Di Palembang 0823.2222.3014 Pusat Pelancar Haid Ampuh Berga...Jual Obat Cytotec Di Palembang 0823.2222.3014 Pusat Pelancar Haid Ampuh Berga...
Jual Obat Cytotec Di Palembang 0823.2222.3014 Pusat Pelancar Haid Ampuh Berga...
 
283649986-MATERI-RISIKO-DAN-TK-PENGEMBALIAN-ppt.ppt
283649986-MATERI-RISIKO-DAN-TK-PENGEMBALIAN-ppt.ppt283649986-MATERI-RISIKO-DAN-TK-PENGEMBALIAN-ppt.ppt
283649986-MATERI-RISIKO-DAN-TK-PENGEMBALIAN-ppt.ppt
 
PPT usaha Air Minum masak untuk jualan- Umum fix.pptx
PPT usaha Air Minum masak untuk jualan- Umum fix.pptxPPT usaha Air Minum masak untuk jualan- Umum fix.pptx
PPT usaha Air Minum masak untuk jualan- Umum fix.pptx
 
Jual Cytotec Di Sinjai Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Di Sinjai Ori 👙082122229359👙Pusat Peluntur Kandungan KonsultasiJual Cytotec Di Sinjai Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Di Sinjai Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
 
Obat Aborsi Medan 082223109953 Klinik Jual Obat Aborsi Di Medan
Obat Aborsi Medan 082223109953 Klinik Jual Obat Aborsi Di MedanObat Aborsi Medan 082223109953 Klinik Jual Obat Aborsi Di Medan
Obat Aborsi Medan 082223109953 Klinik Jual Obat Aborsi Di Medan
 
Obat Aborsi Bandung ( Ampuh ) 082223109953 Jual Cytotec Asli Obat Telat Bulan...
Obat Aborsi Bandung ( Ampuh ) 082223109953 Jual Cytotec Asli Obat Telat Bulan...Obat Aborsi Bandung ( Ampuh ) 082223109953 Jual Cytotec Asli Obat Telat Bulan...
Obat Aborsi Bandung ( Ampuh ) 082223109953 Jual Cytotec Asli Obat Telat Bulan...
 
WA 0821-2636-0569, Sekolah Pra Nikah Janda Duda Di Semarang
WA 0821-2636-0569, Sekolah Pra Nikah Janda Duda Di SemarangWA 0821-2636-0569, Sekolah Pra Nikah Janda Duda Di Semarang
WA 0821-2636-0569, Sekolah Pra Nikah Janda Duda Di Semarang
 

Market Basket Analisis dengan R

  • 1. Market Basket Analysis konsep dan implementasi dengan Bahasa R Muhammad Rifqi Ma’arif, M.Eng Matakuliah Ilmu Data Industrial Program Studi Teknik Industri Fakultas Teknik & Teknologi Informasi Universitas Jenderal Achmad Yani Yogyakarta 2020
  • 2. Pengantar Market Basket Analysis • Salah satu inovasi bisnis di bidang ritel dan supply chain adalah mencari asosiasi atau hubungan antar produk dari data transaksi penjualan yang bertujuan untuk: • dipaketkan dan dijual bersamaan. • memberikan rekomendasi produk kepada seseorang. • menyusun rak display. • menyusun halaman produk e-commerce. • Semua hal ini bertujuan untuk meningkatkan penjualan sekaligus memecahkan masalah inventory – karena produk yang tidak begitu laku jika dipasangkan dengan tepat akan lebih menarik dan punya kemungkinan besar dibeli dalam satu paket. Proses ini merupakan proses analisa yang disebut dengan Market Basket Analysis (MBA).
  • 3. Tujuan Market Basket Analysis • Market Basket Analysis bertujuan untuk mencari rekomendasi paket produk berdasarkan pola unik dari data transaksi/pembelian pelanggan. • Aplikasi MBA • Optimaliasi strategi retail yang dapat meningkatkan penjualan. • Sebagai dasar prediksi kebutuhan barang di masa depan untuk meningkatkan manajemen inventory pada proses supply chain • Inovasi pengembangan produk • Supply chain risk analysis & management • Dan lain sebagainya
  • 4. Market Basket Analysis di R • Penerapan Market Basket Analysis (MBA) di R dapat menggunakan algoritma apriori – yang merupakan salah satu algoritma terpopuler di area machine learning - pada package arules. • Arules sendiri adalah singkatan dari association rules - kategori machine learning. Untuk menjalankan algoritma ini diperlukan dibutukan dua data, yaitu data produk dan data transaksi. #Menggunakan library arules library(arules) #Membaca transaksi dari file data_transaksi.txt transaksi <- read.transactions(file="data_transaksi.txt", format="single", sep="t", cols=c(1,2), skip=1) #Menampilkan data transaksi dengan print dan inspect inspect(transaksi) #Menghasilkan model Market Basket Analysis mba <- apriori(transaksi,parameter = list(supp = 0.1, confidence = 0.5)) #Menampilkan paket produk inspect(subset(mba, lift>1))
  • 5. Market Basket Analysis di R inspect(transaksi) inspect(subset(mba, lift>1))
  • 6. Association Rule • Association rule adalah representasi keterkaitan antar entitas tertentu (e.g produk) yang memiliki hubungan atau asosiasi kuat di dalam transaksi. • Hubungan "kuat" disini akan dilihat berdasarkan proporsi jumlah kemunculan kombinasi entitas dalam keseluruhan data transaksi. • Mari kita lihat contoh pada gambar disamping. • Asd • Asd • Asd • Asd • Asd • Asd
  • 7. Algoritma Apriori • Algoritma apriori adalah salah satu algoritma yang merupakan penerapan praktis dari Market Basket Analysis (MBA). Algoritma ini digunakan untuk menganalisa banyaknya kombinasi produk yang terjadi di dalam transaksi ritel, yang akan sulit dan lama jika dilakukan secara manual. • Secara teknis, algoritma apriori akan mencari tingkat asosiasi antar item di dalam banyak kombinasi kelompok data secara otomatis. Kombinasi ini juga bisa disusun dengan suatu aturan (rule) asosiasi "Jika membeli ini produk A maka akan membeli produk B", sehingga algoritma ini dikategorikan sebagai Association Rules di ranah machine learning. • Dengan menemukan paket produk yang asosiasinya kuat, Anda sebagai seorang data scientist dapat menyarankan kepada bisnis dapat melakukan berbagai action item seperti membuat paket produk dengan penawaran khusus, mendekatkan produk-produk tersebut saling berdekatan dalam satu rak, mengeluarkan rekomendasi produk di sistem e-commerce, mengurangi masalah stok, dan lain-lain.
  • 8. Algoritma Apriori di R • Menampilkan kombinasi transaksi #Membaca transaksi dari file data_transaksi.txt transaksi <- read.transactions(file="data_transaksi.txt", format="single", sep="t", cols=c(1,2), skip=1) #Menampilkan jumlah kombinasi dari produk yang terdapat pada daftar transaksi yang ada inspect(apriori(transaksi, parameter = list(support=.1, minlen=2, target='frequent itemsets')))
  • 9. Item dan Trasaction • item, itemset dan rules dihasilkan dari transaksi atau transaction • Transaction (transaksi) adalah..... • Output disamping adalah tampilan dari dataset yang berjumlah sepuluh transaksi, dengan dua kolom yang terdiri dari: • Kolom pertama adalah itemset yang berisi item-item yang dibeli pada transaksi tertentu. • Kolom kedua berisi kode struk transaksi yang menjadi penanda unik untuk tiap transaksi.
  • 10. Membaca Item & Transaction di R • Dibaca sebagai dataframe • Dibaca sebagai transaksi transaksi_dataframe <- read.csv("data_transaksi.txt", sep="t") print(transaksi_dataframe) read.transactions(file="data_transaksi.txt", format="single", sep="t", cols=c(1,2), skip=1)
  • 11. Membaca Item & Transaction di R • Menampilkan daftar item transaksi • Menampilkan top N items transaksi <- read.transactions(file="data_transaksi.txt", format="single", sep="t", cols=c(1,2), skip=1) transaksi@itemInfo library(arules) transaksi <- read.transactions(file="data_transaksi.txt", format="single", sep="t", cols=c(1,2), skip=1) data_item <- itemFrequency(transaksi, type="absolute") data_item <- sort(data_item, decreasing = TRUE) data_item <- data_item[1:3] data_item <- data.frame("Nama Produk"=names(data_item), "Jumlah"=data_item, row.names=NULL)
  • 12. Item, Itemset dan Rules • Perhatikan output dari pengolahan algoritma apriori berikut • Keterangan • Item adalah produk tunggal yang terdapat dalam suatu transaksi. Contoh: Pet Food, Sirup, Gula, dan Teh Celup. • Itemset adalah kombinasi satu atau lebih item yang terdapat dalam satu transaksi. Contoh: {Pet Food}, {Gula, Pet Food}, {Sirup}, dan lain-lain. • Rule adalah pernyataan hubungan antar Itemset. Biasanya dapat diformulasikan menjadi "Jika membeli itemset A, maka akan membeli itemset B". Contoh: {Pet Food} => {Sirup}, {Pet Food, Teh Celup} => {Sirup}, dan lain-lain.
  • 13. Itemset • Tiap transaksi terdiri atas beberapa item atau itemset. Untuk melihat notasi itemset yang lebih baik dan mudah dimengerti kita bisa menggunakan function inspect, yang tersedia di arules. library(arules) transaksi <- read.transactions (file="data_transaksi.txt", format="single", sep="t", cols=c(1,2), skip=1) inspect(transaksi)
  • 14. Rules • rule adalah formula yang menyatakan kombinasi dari dua itemset. Satu itemset ada di bagian kiri rule (left hand side) dan satunya di bagian kanan (right hand side) dalam format berikut. {itemset lhs} => {itemset rhs} • Untuk menghasilkan rules, dapat digunakan fungsi apriori yang tersedia dalam arules. apriori(transaksi)
  • 15. Rules • Melihat Rules dengan fungsi inspect • Apa makna dari rule jika ingin kita aplikasikan? • terlihat rule kedua yaitu {Pet Food} => {Sirup} cukup menarik Karena support 0.4 menunjukkan bahwa kombinasi ini terdapat di 40 persen populasi, sehingga: • rekomendasikan kepada setiap pelanggan yang membeli Pet Food untuk membeli Sirup. • rak display Pet Food dan Sirup bisa didekatkan. • Pet Food dan Sirup dipaketkan bersama dan dijual dengan harga khusus. library(arules) transaksi <- read.transactions (file="data_transaksi.txt", format="single", sep="t", cols=c(1,2), skip=1) mba <- apriori(transaksi) inspect(mba)
  • 16. Filter RHS • Dari hasil inspect objek mba yang bertipe association rules diketahui bahwa objek tersebut mengandung banyak informasi termasuk itemset yang terdapat di left hand side dan right hand side. • Ini penting untuk bisnis, misalkan untuk inventory. Kita ingin menjawab, adakah item yang kurang laku sebelumnya ada di dalam itemset dari rules yang dihasilkan oleh apriori? Jika ada, mungkin saya bisa paketkan bersama sehingga kemungkinan besar terjual lebih banyak. • Untuk melakukan ini kita akan melakukan filter atau subsetting dari rules. Banyak cara, salah satunya adalah dengan menggunakan gabungan function inspect, subset dan operator %in% dengan contoh berikut.
  • 17. Filter LHS library(arules) transaksi <- read.transactions(file="data_transaksi.txt", format="single", sep="t", cols=c(1,2), skip=1) mba <- apriori(transaksi) inspect(subset(mba, lhs %in% "Gula"))
  • 18. Filter RHS dan LHS library(arules) transaksi <- read.transactions(file="data_transaksi.txt", format="single", sep="t", cols=c(1,2), skip=1) mba <- apriori(transaksi) inspect(subset(mba, lhs %in% "Pet Food" & rhs %in% "Sirup"))
  • 19. Scoring & Evaluation • Support (nilai penunjang) adalah presentase kombinasi item tersebut dalam database. Support dari suatu itemset A adalah proporsi dari kejadian semua item di himpunan A terbeli secara bersamaan. • Confidence (nilai kepastian) adalah kuatnya hubungan antar-item dalam aturan asosiasi. Confidence dari suatu itemset A dan B adalah jumlah dari itemset A,B dari jumlah itemset yang mengandung A. • Lift adalah sebuah angka ratio yang menunjukkan berapa banyak kemungkinan menemukan sebuah atribut yang muncul bersamaan dengan atribut lainnya dibandingkan dengan seluruh kejadian adanya atribut yang terpenuhi. Lift menunjukkan adanya tingkat kekuatan ruleatas kejadian acak dari antecedent dan consequent berdasarkan pada supportnya masing-masing.
  • 20. Menambahkan Support dan Confidence library(arules) transaksi <- read.transactions( file="data_transaksi.txt", format="single", sep="t", cols=c(1,2), skip=1) apriori(transaksi, parameter = list(supp = 0.1, confidence = 0.5))
  • 21. Filter Berdasarkan LIFT library(arules) transaksi <- read.transactions(file="data_transaksi.txt", format="single", sep="t", cols=c(1,2), skip=1) mba <- apriori(transaksi,parameter = list(supp = 0.1, confidence = 0.5)) inspect(subset(mba, (lhs %in% "Teh Celup" | rhs %in% "Teh Celup") & lift>1))
  • 22. Visualisasi Rule dengan Graph library(arules) library(arulesViz) transaksi <- read.transactions( file="data_transaksi.txt", format="single", sep="t", cols=c(1,2), skip=1) mba <- apriori(transaksi, parameter = list(supp = 0.1, confidence = 0.5)) plot(subset(mba, lift>1.1), method="graph")