Artikel ini membahas analisis probabilitas pembelian berdasarkan elastisitas harga untuk setiap segmen pasar yang dihasilkan dari segmentasi pasar sebelumnya menggunakan machine learning. Dataset transaksi dari minimarket digunakan untuk membuat model regresi logistik yang memprediksi probabilitas pembelian berdasarkan rata-rata harga lima merek cokelat. Grafik elastisitas harga menunjukkan penurunan probabilitas pembelian dengan kenaikan harga
Memahami Organisasi dan Desain Organisasi-Organisasi Publik (Bagian 3)
ANALISA PROBABILITAS PEMBELIAN TERHADAP ELSTISITAS HARGA DENGAN PYTHON MACHINE LEARNING
1. ANALISA PROBABILITAS PEMBELIAN PADA SEGMENT PASAR
TERHADAP ELASTISITAS HARGA
Oleh : Rahmat Taufiq Sigit
Pada artikel ini akan dibahas kelanjutan dari machine learning segmentasi pasar yang telah dibahas
di artikel sebelumnya. Pada artikel ini dibahas tentang analisa probabilitas pembelian (purchase
probability) dari setiap segment pasar.
Dataset yang digunakan pada artikel ini adalah artikel dari transaksi yang terjadi pada sebuah
minimarket. Dataset yang digunakan saat ini telah melalui proses data wragling, proses persiapan
data tidak dibahas lagi.
Pada artikel ini juga, hanya membahas transaksi dari satu produk yaitu produk coklat bar, dengan
beberapa merek yang dijual di minimarket tersebut.
Berikut pembahasan langkah-langkah dalam melakukan analisa elastisitas harga sebagai berikut:
1. ANALISA DATASET
Variable Data type Range Description
ID numerical Integer Shows a unique identificator of a customer.
Day numerical Integer Day when the customer has visited the store
Incidence categorical {0,1} Purchase Incidence
0 The customer has not purchased an item from the category of interest
1 The customer has purchased an item from the category of interest
Brand categorical {0,1,2,3,4,5} Shows which brand the customer has purchased
0 No brand was purchased
1,2,3,4,5 Brand ID
Quantity numerical integer Number of items bought by the customer from the product category of interest
Last_Inc_Brand categorical {0,1,2,3,4,5} Shows which brand the customer has purchased on their previous store visit
0 No brand was purchased
1,2,3,4,5 Brand ID
Last_Inc_Quantity numerical integer
Number of items bought by the customer from the product category of interest during
their previous store visit
Price_1 numerical real Price of an item from Brand 1 on a particular day
Price_2 numerical real Price of an item from Brand 2 on a particular day
Price_3 numerical real Price of an item from Brand 3 on a particular day
Price_4 numerical real Price of an item from Brand 4 on a particular day
Price_5 numerical real Price of an item from Brand 5 on a particular day
Promotion_1 categorical {0,1} Indicator whether Brand 1 was on promotion or not on a particular day
0 There is no promotion
1 There is promotion
Promotion_2 categorical {0,1} Indicator of whether Brand 2 was on promotion or not on a particular day
0 There is no promotion
1 There is promotion
Promotion_3 categorical {0,1} Indicator of whether Brand 3 was on promotion or not on a particular day
0 There is no promotion
1 There is promotion
Promotion_4 categorical {0,1} Indicator of whether Brand 4 was on promotion or not on a particular day
0 There is no promotion
1 There is promotion
Promotion_5 categorical {0,1} Indicator of whether Brand 5 was on promotion or not on a particular day
0 There is no promotion
1 There is promotion
Sex categorical {0,1}
Biological sex (gender) of a customer. In this dataset there are only 2 different
options.
0 male
1 female
Marital status categorical {0,1} Marital status of a customer.
0 single
1 non-single (divorced / separated / married / widowed)
Age numerical Integer
The age of the customer in years, calculated as current year minus the year of birth of
the customer at the time of creation of the dataset
18 Min value (the lowest age observed in the dataset)
75 Max value (the highest age observed in the dataset)
Education categorical {0,1,2,3} Level of education of the customer
0 other / unknown
1 high school
2 university
3 graduate school
Income numerical real Self-reported annual income in US dollars of the customer.
38247 Min value (the lowest income observed in the dataset)
309364 Max value (the highest income observed in the dataset)
Occupation categorical {0,1,2} Category of occupation of the customer.
0 unemployed / unskilled
1 skilled employee / official
2 management / self-employed / highly qualified employee / officer
Settlement size categorical {0,1,2} The size of the city that the customer lives in.
0 small city
1 mid-sized city
2 big city
2. 2. IMPORT PAKET
Langkah pertama adalah melakukan import terhadap paket yang akan digunakan dalam proeses
permrograman model. Seperti pada code dibawah ini:
import numpy as np
import pandas as pd
from sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
from sklearn.cluster import KMeans
import pickle
from sklearn.linear_model import LogisticRegression
import matplotlib.pyplot as plt
import matplotlib.axes as axs
import seaborn as sns
sns.set()
3. LOAD DATASET DAN MODEL SEGMENTASI PASAR
Pada artikel sebelumnya kita telah membuat sebuah model segmentasi pasar. Model segmentasi
pasar tersebut dibuat menjadi 3 file yaitu : skalar.pickel, pca.pickel, dan kmeans_pca. Pickel.
Untuk membaca dataset gunakan code berikut:
df_purchase = pd.read_csv("data/purchase data.csv")
sedangkan untuk meakses model machine learning market segementation dengan cara berikut:
scalar = pickle.load(open('skalar.pickel','rb'))
pca = pickle.load(open('pca.pickel','rb'))
kmeans_pca=pickle.load(open('kmeans_pca.pickel','rb'))
4. MENETAPKAN SEGMENTASI PASAR PADA SETIAP DATA DI DATASET PRUCHASE.CSV
Berikutnya adalah menetapkan segementasi pasar dari setiap data yang ada pada dataset
puchase.csv.
Seperti dikatehui terdapat beberapa feature dalam dataset purchase.cvs yang sama dengan
feature dataset yang digunakan ketika membuat machine learning.
Feature tersebut adalah 'Sex','Marital status','Age','Education','Income','Occupation','Settlement
size'.
Feature inilah yang dibaca kemudian dimasukkan kedalam model Machine Learning, dengan
menggunakan kode berikut:
feature=df_purchase[['Sex','Marital
status','Age','Education','Income','Occupation','Settlement size']]
df_purchase_seg_std = scalar.transform(feature)
df_purchase_seg_pca = pca.transform(df_purchase_seg_std)
purchase_seg_kmeans_pca = kmeans_pca.predict(df_purchase_seg_pca)
Hasil klasifikasi segmentasi pasar disimpan kedalam variabel bernama
purchase_seg_kmeans_pca
5. MENAMBAHKAN FEATURE HASIL KLASIFIKASI SEGMENTASI PASAR KE DATASET
Setelah melakukan poses klasifikasi segmentasi pasar telah dilakukan, maka langkah selanjutnya
adalah menggabungkan data hasil klasifikasi dengan dataframe purchase. Codenya sebagai
berikut:
df_purchase_predictor = df_purchase.copy()
df_purchase_predictor['segment'] = purchase_seg_kmeans_pca
df_purchase_predictor
Code diatas, dataframe dicopy dan disimpan pada variabel baru bernama
df_purchase_predictor. Dataframe terbut yang ditambahkan feature baru bernama segment.
Sehingga apabila ditampilkan hasilnya sebagai berikut:
3. 6. MENAMBAHKAN DUMMIES SEGMENT
Feature Segment adalah feature yang bersifat kategorikal, artinya tidak dapat dibandingkan satu
sama lain antar segment.
Untuk itu feature ini dapat diubah menjadi feature pada dataframe untuk mempermudah prose
pembentukan model machine learning.
Berikut codenya:
segment_dummies = pd.get_dummies(purchase_seg_kmeans_pca, prefix='segment',
prefix_sep='_')
segment_dummies
Hasil dari code diatas adalah sebagai berikut:
Dari gambar diatas terbentuk feature baru bernama segment_0, segment_1, segment_2 dan
segment_3. Feature bernilai 1 sesuai dengan feature segment. Sebagai contoh apabila feature
segment adalah 1, maka feature segment_1 akan bernilai 1 dan segment segment_0, segment_2
dan segment_3 akan bernilai nol (0).
7. MENGGABUNGKAN FEATURE SEGMENT_0, SEGMENT_1 , SEGMENT_2, SEGMENT_3 DENGAN
DATAFRAME.
Tahapan ini adalah menggabungkan feature baru yang telah dibentuk dengan datframe yang
telah ada bernama df_purchase_predictor. Hal ini dilakukan untuk memberikan
kemudaham dalam pembentukan model machine learning.
df_purchase_predictor = pd.concat([df_purchase_predictor,segment_dummies],
axis=1)
df_pa=df_purchase_predictor
4. 8. MEMBUAT MODEL PROBABILITAS PEMBELIAN
Selanjutnya adalah membuat model machine learning untuk menghitung purchase probability.
Alogoritma yang digunakan adalah regresi linier.
Feature yang menjadi Y adalah feature Incidence yang bernilai 1 untuk pembelian dan 0 apabila
tidak terjadi pembelian sedangkan sumbu faktor X adalah Harga.
Namun sepeti pada dataset diawal terlihat bahwa terdapat 5 feature harga yang berasal dari
feature brand. Untuk itu nilai faktor yang akan diambil adalah rata-rata harga.
Y = df_pa['Incidence']
X = pd.DataFrame()
X['mean_price'] = (df_pa['Price_1']+
df_pa['Price_2']+
df_pa['Price_3']+
df_pa['Price_4']+
df_pa['Price_5']
)/5
model_purchase = LogisticRegression(solver='sag')
model_purchase.fit(X,Y)
9. MENAMPILKAN NILAI KOEFISIEN DARI MODEL
Melihat nilai koefisien dari model yang telah dibuat dengan menggunakan code berikut:
model_purchase.coef_
Hasilnya adalah :
array([[-2.34838627]])
Nilai mines pada koefisien menandakan bahwa hubungan antara Y dan X bersifat terbalik.
Dimana semakin tinggi nilai X makan probabilitas terjadinya Y akan semakin kecil.
10. ELASTISITAS HARGA TERHADAP PROBABILITAS PEMBELIAN
Pada tahap ini, kita akan mempelajari feature harga pada dataset. Hal ini dilakukan untuk
memberikan gambaran dalam penentuan simulasi harga yang akan digunakan.
Mengapa kita mgnggunakan simulasi harga ? hal ini dikerenakan apabila menggunakan harga
yang ada, maka gap antara data harga semakin besar dan hasilnya tidak maksimal dalam
menampilkan grafik simulasi elastisitas harga.
Sebelumnya mari kita lihat statistika deskriptif dari harga pada dataset dengan code berikut:
df_pa[['Price_1','Price_2','Price_3','Price_4','Price_5']].describe()
Hasilnya sesuai gambar berikut:
Pada gambari diatas terlihat bahwa harga terendah adalah $1,1 dan harga tertinggi adalah $2.8.
.
5. 11. MEMBUAT DATA HARGA UNTUK SIMULASI
price_range = np.arange(0.5,3.5,0.01)
price_range
Code diatas adalah untuk membuat dummie data untuk harga jual dimana nilai minimalnya
adalah $ 0,5 dengan nilai maximal $ 3,5 dengan iterasi atau penambahannya $ 0.01.
Nilai iterasinya menjadi kecil dikarenakan untuk menampilkan pergerakan elastisitas harga dan
probabilitas pembelian untuk kenaikan $ 0,01.
Hasil dari kode diatas adalah :
Pada data array diatas, telah terbentuk 300 data yang akan digunakan untuk membuat prediksi
Y/ probabilitas pembelian. Namun sebelumnya data tersebut disimpan dalam bentuk dataframe
menggunakan perintah berikut:
df_price_range = pd.DataFrame(price_range)
12. MEMBUAT SIMULASI PROBABILITAS NILAI Y DARI PRICE_RANGE
Y_pr = model_purchase.predict_proba(df_price_range)
Y_pr
Perintah diatas adalah membuat probabilitas nilai Y dari model_purchase yang telah dibuat
sebelumnya dengan dataframe df_price_range sebagai inputan nilai X.
Hasilnya adalah sebagai berikut:
6. Gambar diatas menunjukkan probabilitas nilai Y atau probabilitas terjadinya pembelian dari
hasil nilai X yang dibuat.
Terdapat 2 kolom dimana kolom 1 adalah kolom yang menunjukkan probabilitas nilai 0 (tidak
terjadi purchase) dan kolom 2 adalah kolomg yang menunjukkan pobabilitas nilai 1 (terjadi
purchase)
Dalam hal ini, probablitas yang dibutuhkan adalah pada kolom 2, untuk itu nilai pada kolom
kedua kemudian disimpan pada variabel baru dengan nama purchase_pr dengan menggunakan
perintah berikut:
purchase_pr = Y_pr[:][:,1]
13. MENGHITUNG ELSATISITAS HARGA
pe = model_purchase.coef_[:,0]*price_range*(1-purchase_pr)
pe
Perintah diatas adalah untuk melakukan perhitungan terhadap elastisitas harga (price
elasticities) dengan hasil barikut:
7. Hasil dari perhitungan tersebut kemudian disimpan dalam bentuk dataframe menggunakan
perintah dibawah ini:
df_price_elasticities = pd.DataFrame(price_range)
df_price_elasticities = df_price_elasticities.rename({0:'Price point'},
axis=1)
df_price_elasticities['Mean_PE'] = pe
df_price_elasticities
Hasil dari code diatas adalah sebagai berikut:
14. ANALISA DATAFRAME ELSATISITAS HARGA
Seperti dilihat pada langkah sebelumnya dimana dataframe ditampilkan sebanyak 300 baris
dengan 2 kolom, namun data yang ditampilkan tidak secara keseluruhan. Maka dilakukan
perbaikan terhadap perintah tampilan data dengan kode berikut:
pd.options.display.max_rows = None
df_price_elasticities
Perintah diatas digunakan untuk menampilkan seluruh data pada dataframe tanpa ada
pemotongan tampilan.
8. 15. TAMPILKAN GRAFIK ELSATISITAS HARGA
plt.figure(figsize=(9,6))
plt.plot(price_range,pe, color='grey')
plt.xlabel('Price')
plt.ylabel('Elasticities')
plt.title('Price Elasticities of Purchase Probability')
Code diatas digunakan untuk menampilkan data Mean_PE kedalam bentuk grafis dimana sumbu
X nya adalah harga dan sumbu Y adalah tingkat elastisitas harga.
Hasilnya adalah sebagai berikut:
16. ANALISA GRAFIK ELSATISITAS HARGA
Terlihat pada grafik elastisitsa harga bahwa tingkat elastisitas harga akan semakin kecil apabila
harga semakin tinggi. Artinya semakin tinggi harga dari produk maka semakin rendah minat dari
pasar untuk membeli.
Namun kita harus tau, pada rate apa perubahan harga tersebut sangat berpengaruh terhadap
elastisitas.
Dari gambar terlihat bahwa tinggkat penurunan atau elastisitas masih sangat rendah pada point
harga 0,5 sampai dengan 1,1, dan menjadi sangat elastis ketika melewati 1,1.
Terlihat juga pada gambar bahwa tingkat elastisitasnya bersifat negatif, hal ini dikarenakan nilai
koefisien yang dihasilkan dari model adalah negatif (-2.35).
Elastisitas harga adalah besarnya perubahan (persen) kemungkinan terjadinya pembelian
terhadap perubahan harga.
Apabila nilainya diatas 100% (1) maka berarti elastis, dan apabila nilainya dibawah 100% (1)
maka disebut inelastic) bisa dilihat ditabel dibawan ini:
9. Gambar tersebut menjelaskan bahwa setiap kenaikan harga $1,1 akan mengakibatkan turunnya
probabilitas pembelian sebesar -0,69%
Dari gambar juga bisa dilihat bahwa kenaikan 1,5 % harga jual akan menyebabkan pernurunan
probabilitas pembelian sebanyak 1,7%.
Dari grafik tersebut dapat disimpulkan apabila probabilitas pembelian > 1 maka disebut elastic,
dan apabila probabilitas <1 maka disebut inelastic.
Jadi apabila harga masih dalam range inelastic atau <1, berarti masih dapat diterapkan kenaikan
harga, namun apabila dalam range elastic > 1, maka sebaiknya menahan harga.
Berikut gambarannya :
17. ANALSIA ELASTISITAS HARGA PADA SEGMENT PASAR 1 (CAREER FOCUSED)
Selanjutnya kita akan melakukan langkah permodelan namun dikhususkan pada segementasi
pasar 1 atau Carrer Focused. Hal yang pertama dilakukan adalah melakukan seleksi dataframe
yang mengambil data khusus untuk segmen 1 dengan perintah berikut:
df_pa_segment_1 = df_pa[df_pa['segment']==1]
Perintah diatas adalah membuat dataframe baru dengan nama df_pa_segment_1 yang isinya
data dari dataframe df_pa namun khusus feture bernilai 1
Increase Decrease
10. 18. MENENTUKAN FAKTOR X TERHADAP KEJADIAN Y PADA DATAFRAME SEGMENT 1 (CARRER
FOCUSED)
Y = df_pa_segment_1['Incidence']
X = pd.DataFrame()
X['Mean_price'] = (df_pa_segment_1['Price_1']+
df_pa_segment_1['Price_2']+
df_pa_segment_1['Price_3']+
df_pa_segment_1['Price_4']+
df_pa_segment_1['Price_5']
)/5
Code diatas digunakan untuk menentukan Y berasalah dari feature Incidence pada dataframe
df_pa_segment_1 dan X berasalah dari rata-rata harga pada dataframe df_pa_segment_1
19. MEMBUAT MODEL LINIER REGRESI UNTUK DATAFRAME SEGMENT 1 (CAREER FOCUSED)
model_incidence_seg_1 = LogisticRegression(solver='sag')
model_incidence_seg_1.fit(X, Y)
model_incidence_seg_1.coef_
Dengan nilai koefisien sebagai berikut:
array([[-1.71232127]])
Terlihat bahwa nilai koefisien dari segment carrer focused lebih rendah dari rata-rata koefisien
pasar keseluruhan yang bernilai -2,35
20. MEMBUAT Y PROBABILITY DARI SEGMENT 1
Y_pr_seg_1 = model_incidence_seg_1.predict_proba(df_price_range)
purchase_pr_seg_1 = Y_pr_seg_1[:][:,1]
pe_seg_1=model_incidence_seg_1.coef_[:,0]*price_range*(1-purchase_pr_seg_1)
df_price_elasticities['pe_segment_1']=pe_seg_1
df_price_elasticities
Code diatas digunakan untuk membuat Y probabilitas atas df_price_range, dan membuat
perhitungan elastisitas harga dan menyimpan dalam feature 'pe_segment_1' dengan output
sebagai berikut:
11. 21. MEMBUAT GRAFIK PERBANDINGAN ELASTISITAS HARGA UNTUK PASAR SEGMENT 1 (CARRER
FOCUSED)
plt.figure(figsize=(9,6))
plt.plot(price_range,pe, color='grey')
plt.plot(price_range,pe_seg_1, color='green')
plt.xlabel('Price')
plt.ylabel('Elasticities')
plt.title('Price Elasticities of Purchase Probability')
Code diatas digunakan untuk membuat grafik dan membandingkan elatisitas harga secara
keseluruhan dengan elastisitas harga dari segment carrer focused (segment 1). Dan hasilnya
adalah sebagai berikut:
Apabila dilihat dari dataframe df_price_elasticities, dapat diketahui bahwa titik elastisitas
harga pada segment 1 adalah $1,39 yang artinya kenaikan harga lebih dari nilai tersebut akan
menyebabkan penurunan probabilitas purchase dengan nilai probabilitas pruchase melebihi 1
yakni -1,01. Seperti pada gambar dibawah ini.
12. 22. SEGMENT PASAR 2 (FEWER OPPORTUNITY)
df_pa_segment_2 = df_pa[df_pa['segment']==2]
Y = df_pa_segment_2['Incidence']
X = pd.DataFrame()
X['Mean_price'] = (df_pa_segment_2['Price_1']+
df_pa_segment_2['Price_2']+
df_pa_segment_2['Price_3']+
df_pa_segment_2['Price_4']+
df_pa_segment_2['Price_5']
)/5
model_incidence_seg_2 = LogisticRegression(solver='sag')
model_incidence_seg_2.fit(X, Y)
model_incidence_seg_2.coef_
Hasilnya nilai koefisien sebagai berikut:
array([[-3.64025805]])
23. MEMBUAT Y PROBABILITAS DARI SEGMENT 2.
Y_pr_seg_2 = model_incidence_seg_2.predict_proba(df_price_range)
purchase_pr_seg_2 = Y_pr_seg_2[:][:,1]
pe_seg_2=model_incidence_seg_2.coef_[:,0]*price_range*(1-purchase_pr_seg_2)
df_price_elasticities['pe_segment_2']=pe_seg_2
df_price_elasticities
Perintah diatas digunakan untuk menghitung probabilitas nilai Y dan menghitung elastisitas
harga untuk segment 2 dan menampilkan dataframeny seperti pada gambar berikut:
Apabila dilihat dari dataframe df_price_elasticities, dapat diketahui bahwa titik elastisitas
harga pada segment 2 adalah $1,27 yang artinya kenaikan harga lebih dari nilai tersebut akan
menyebabkan penurunan probabilitas purchase dengan nilai probabilitas pruchase melebihi 1
yakni -1,02. Seperti pada gambar diatas.
24. MENAMPILKAN GRAFIK ELASTISITAS HARGA PADA SEGMENT 2 (FEWER OPPORTUNITY)
plt.figure(figsize=(9,6))
plt.plot(price_range,pe, color='grey')
plt.plot(price_range,pe_seg_1, color='green')
plt.plot(price_range,pe_seg_2, color='blue')
plt.xlabel('Price')
plt.ylabel('Elasticities')
plt.title('Price Elasticities of Purchase Probability')
13. Hasil dari code diatas adalah sebagai berikut:
25. ANALISA SEGMENT PASAR 3 (WELL OFF)
df_pa_segment_3 = df_pa[df_pa['segment']==3]
Y = df_pa_segment_3['Incidence']
X = pd.DataFrame()
X['Mean_price'] = (df_pa_segment_3['Price_1']+
df_pa_segment_3['Price_2']+
df_pa_segment_3['Price_3']+
df_pa_segment_3['Price_4']+
df_pa_segment_3['Price_5']
)/5
model_incidence_seg_3 = LogisticRegression(solver='sag')
model_incidence_seg_3.fit(X, Y)
Y_pr_seg_3 = model_incidence_seg_3.predict_proba(df_price_range)
purchase_pr_seg_3 = Y_pr_seg_3[:][:,1]
pe_seg_3=model_incidence_seg_3.coef_[:,0]*price_range*(1-purchase_pr_seg_3)
df_price_elasticities['pe_segment_3']=pe_seg_3
26. ANALISA SEGMENT PASAR 0 (STANDARD)
df_pa_segment_0 = df_pa[df_pa['segment']==0]
Y = df_pa_segment_0['Incidence']
X = pd.DataFrame()
X['Mean_price'] = (df_pa_segment_0['Price_1']+
df_pa_segment_0['Price_2']+
df_pa_segment_0['Price_3']+
df_pa_segment_0['Price_4']+
df_pa_segment_0['Price_5']
)/5
model_incidence_seg_0 = LogisticRegression(solver='sag')
model_incidence_seg_0.fit(X, Y)
Y_pr_seg_0 = model_incidence_seg_0.predict_proba(df_price_range)
purchase_pr_seg_0 = Y_pr_seg_0[:][:,1]
pe_seg_0=model_incidence_seg_0.coef_[:,0]*price_range*(1-purchase_pr_seg_0)
df_price_elasticities['pe_segment_0']=pe_seg_0
27. MEMBUAT GRAFIK PERBANDINGAN ELASTISITAS HARGA SELURUH SEGMENT PASAR
plt.figure(figsize=(9,6))
plt.plot(price_range,pe, color='grey')
plt.plot(price_range,pe_seg_1, color='green')
plt.plot(price_range,pe_seg_2, color='blue')
plt.plot(price_range,pe_seg_3, color='red')
plt.plot(price_range,pe_seg_0, color='yellow')
14. plt.legend(['Pasar Umum', 'Career Focused','Fewer Opprtunity','Well
Off','Standard'])
plt.xlabel('Price')
plt.ylabel('Elasticities')
plt.title('Price Elasticities of Purchase Probability')
Berikut adalah hasil dari code diatas:
Dari gambar diatas dapat dilihat bahwa terdapat elastisitas pada data yang hampir sama pada
semua segmen pasar yaitu 0.5 – 1.1.
Ada yang menjadi perhatian adalah Segment Fewer Opportunity dimana grafiknya memiliki nilai
paling tinggi pada range harga $0.5 - $1,1 hal ini mungkin disebabkan karena segment tersebut
merupakan segment yang terebesar.
Kemungkinan ke 2 adalah segment fewer opportunity memang sangat menyukai produk coklat
sehingga sedikit kenaikan harga tidak membuat probabilitas pembelian menurun.
Segmen fewer opportunity adalah segment yang paling sensitif terhadap kenaikan harga
apabila sudah diatas $1,1 dengan tingkat probabilitas kenaikan harga dibawah rata-rata pasar.
Pada Segment Standard memiliki probabitas elastis 1,01 dengan titik harga $1,24, hal ini
membuat segment standar adalah segment kedua yang paling tinggi sensitifitasnya apabila
terjadi kenaikan harga setelah segment fewer opprtunity, Namun elastisitas harga dari segment
ini masih diatas rata-rata.
Pada Segment Well Off memiliki probabitas elastis 1,00 dengan titik harga $1,47, hal ini
membuat segment well off adalah segment yang paling rendah sesifitasnya apabila terjadi
kenaikan harga. Perubahan harga mempergaruhi probabilitas puchase dari segment ini namun
tidak terlalu signifikan, kemungkinan segment ini sangat loyal terhadap produk.