Daftar Isi: DESKRIPSI DATA UKURAN PEMUSATAN DATA - Rata-Rata - Median - Modus UKURAN PENYEBARAN DATA - Range - Varians dan Standar Deviasi - Jangkauan Antarkuartil & Simp. Kuartil VISUALISASI DATA DAN INTERPRETASI - Histogram - Boxplot - Dotplot
Data profit merupakan data numerik yang mencerminkan keuntungan bersih yang diperoleh dari penjualan suatu produk dalam periode tertentu. Data ini biasanya diukur dalam satuan mata uang dan digunakan sebagai indikator kinerja keuangan suatu produk atau lini bisnis. Dalam hal ini, kita akan menganalisis data profit berdasarkan product dan product type pada dataset coffee chain.
Data profit tersebut dianalisis menggunakan salah satu metode statistika, yaitu analisis deskriptif, untuk mengevaluasi ukuran pemusatan dan penyebaran dari profit tiap produk dan jenis produk. Statistik deskriptif bertujuan untuk menggambarkan dan meringkas data dalam bentuk yang mudah dipahami. Melalui analisis ini, kita dapat memahami rata-rata profit, variasi antar produk, serta mengidentifikasi produk atau jenis produk yang paling menguntungkan maupun yang memiliki kontribusi paling kecil. Selain itu, visualisasi juga akan digunakan untuk mempermudah interpretasi data. Informasi ini berguna untuk memberikan gambaran tentang distribusi profit serta membantu pengambilan keputusan dalam strategi bisnis dan pengelolaan produk.
Package yang digunakan
library(readxl)
library(ggplot2)
library(rmarkdown)
library(knitr)
library(tinytex)
import data
data_cm <- read_excel("C:/Users/zulfa/Downloads/3. CM1 - Coffee Chain Datasets/3. CM1 - Coffee Chain Datasets.xlsx")
variabel yang digunakan
data_cm1 <- subset(data_cm, select = c(Product, Product_Type, Profit))
data_cm1
## # A tibble: 4,248 × 3
## Product Product_Type Profit
## <chr> <chr> <dbl>
## 1 Amaretto Coffee 94
## 2 Colombian Coffee 68
## 3 Decaf Irish Cream Coffee 101
## 4 Green Tea Tea 30
## 5 Caffe Mocha Espresso 54
## 6 Decaf Espresso Espresso 53
## 7 Chamomile Herbal Tea 99
## 8 Lemon Herbal Tea 0
## 9 Mint Herbal Tea 33
## 10 Darjeeling Tea 17
## # ℹ 4,238 more rows
Ukuran pemusatan data, atau yang sering disebut sebagai ukuran tendensi sentral, merupakan nilai yang dapat menggambarkan letak pusat dari sekelompok data. Ukuran ini bertujuan untuk memberikan representasi umum dari keseluruhan data dalam bentuk satu nilai yang paling mewakili. Dalam analisis ini, akan digunakan tiga ukuran utama, yaitu rata-rata (mean) sebagai nilai rata dari seluruh data, median sebagai nilai tengah yang membagi data menjadi dua bagian sama besar, dan modus sebagai nilai yang paling sering muncul dalam kumpulan data.
Rata-rata dilakukan dengan menjumlahkan seluruh nilai dalam kumpulan data, kemudian membaginya dengan jumlah sampel atau data yang tersedia. Ukuran ini memberikan gambaran umum mengenai nilai pusat dari data yang dianalisis. Adapun rumus yang digunakan untuk menghitung rata-rata (mean) adalah sebagai berikut: \[\bar{x} = \frac{1}{n} \sum_{i=1}^{n} x_i\]
R menyediakan function untuk menghitung nilai rata-rata, yaitu function mean. berikut contoh perhitungan dengan function tersebut:
#Menghitung rata-rata profit setiap product type
product_type.avg <- aggregate(Profit ~ Product_Type, data_cm1, mean)
product_type.avg
## Product_Type Profit
## 1 Coffee 70.72254
## 2 Espresso 58.35034
## 3 Herbal Tea 59.89962
## 4 Tea 55.19375
Interpretasi
Produk Coffee memiliki rata-rata profit tertinggi (±70.72), menunjukkan bahwa secara umum produk ini memberikan keuntungan terbesar dibandingkan yang lain. Di sisi lain, Tea memiliki rata-rata profit terendah (±55.19), menandakan bahwa produk ini paling rendah kontribusinya terhadap keuntungan rata-rata. Espresso dan Herbal Tea berada di tengah, dengan profit yang cukup berimbang, meskipun Herbal Tea sedikit lebih tinggi.
Secara keseluruhan, Coffee dapat dianggap sebagai produk paling menguntungkan, sementara Tea berpotensi dipertimbangkan untuk evaluasi strategi penjualannya.
Nilai median merupakan nilai tengah dari data yang telah diurutkan. Jika data ganjil, median merupakan data ke \(\frac{n+1}{2}\). Apabila banyak data genap, median merupakan rata-rata dari data ke \(\frac{n}{2}\) dan \(\frac{n}{2}+1\). R telah menyediakan function untuk menghitung median, yaitu function median. Berikut contoh perhitungan dengan menggunakan function tersebut:
# Hitung median Profit per Product Type
product_type_median <- aggregate(Profit ~ Product_Type, data_cm1, median)
product_type_median
## Product_Type Profit
## 1 Coffee 39
## 2 Espresso 40
## 3 Herbal Tea 40
## 4 Tea 44
Interpretasi
Produk Tea memiliki median profit tertinggi (44), yang berarti setengah dari data profit-nya berada di atas 44. Ini menunjukkan bahwa meskipun rata-ratanya rendah (dari data sebelumnya), distribusi keuntungan Tea lebih condong ke nilai yang tinggi di tengah. Sebaliknya, Coffee memiliki median terendah (39), mengindikasikan bahwa setengah dari nilai profit-nya berada di bawah 39, meskipun rata-ratanya paling tinggi menandakan kemungkinan adanya nilai ekstrem tinggi (outlier) yang mendorong rata-rata naik.
Espresso dan Herbal Tea memiliki median yang sama (40), menunjukkan bahwa distribusi keuntungan mereka relatif simetris dan stabil di sekitar nilai tersebut.
Modus merupakan salah satu ukuran tendensi sentral (selain mean/rata-rata dan median) yang menunjukkan nilai yang paling sering muncul atau memiliki frekuensi tertinggi dalam sebuah data.
R tidak menyediakan function untuk menghitung modus Berikut contoh perhitungan dengan menggunakan function yang dibangun sendiri pada R:
#Menghitung Modus
modus <- function(x) {
tab <- table(x)
mode <- as.numeric(names(tab)[which.max(tab)])
return(mode)}
modus.profit <- aggregate(Profit ~ Product_Type, data_cm1, modus)
colnames(modus.profit) <- c("Product Type", "modus Profit")
modus.profit
## Product Type modus Profit
## 1 Coffee 24
## 2 Espresso 31
## 3 Herbal Tea 26
## 4 Tea 47
Interpretasi
Produk Tea memiliki modus tertinggi (47), artinya profit sebesar 47 paling sering terjadi, mencerminkan bahwa profit umum atau paling sering dicapai oleh Tea tergolong tinggi.
Produk Coffee, Espresso, dan Herbal Tea memiliki modus yang lebih rendah (masing-masing 24, 31, dan 26), menunjukkan bahwa keuntungan yang paling sering dicapai oleh ketiga produk ini lebih kecil dibandingkan Tea.
Produk Tea tidak hanya memiliki median tertinggi, tapi juga modus tertinggi, menandakan bahwa profit umumnya lebih tinggi dan sering tercapai. Sementara itu, Coffee memiliki modus profit terendah, mengindikasikan bahwa nilai profit yang paling umum terjadi relatif rendah meskipun rata-rata profit-nya tinggi.
Ukuran penyebaran data digunakan untuk mengetahui sejauh mana nilai-nilai dalam suatu kumpulan data tersebar dari nilai rata-ratanya. Ukuran ini penting untuk memahami tingkat variasi atau keragaman data yang dianalisis. Dalam bagian ini, akan dibahas beberapa ukuran penyebaran utama, yaitu jangkauan (range) yang menunjukkan selisih antara nilai maksimum dan minimum, ragam (variance) yang mengukur rata-rata kuadrat deviasi tiap nilai terhadap rata-rata, serta simpangan baku (standard deviation) yang merupakan akar kuadrat dari ragam dan memberikan ukuran sebaran dalam satuan yang sama dengan data aslinya.
Range merupakan ukuran penyebaran yang paling sederhana, yaitu selisih antara nilai data terbesar dan nilai data terkecil. Nilai ini memberikan gambaran kasar mengenai seberapa lebar sebaran data. Adapun rumus untuk menghitung range adalah: \[R=X_{(n)}-X_{(1)}\]
Dalam R, tersedia fungsi bawaan untuk menghitung nilai maksimum dan minimum, yaitu range(). Selain itu, kita juga dapat menggunakan fungsi max() dan min() secara terpisah, atau membuat fungsi sendiri untuk menghitung range. Berikut contoh penggunaannya dalam R:
# Mencari min, max, dan range profit setiap product type
range.profit <- aggregate(Profit ~ Product_Type, data_cm1, function(x) c(min = min(x), max = max(x), range = max(x) - min(x)))
range.profit <- do.call(data.frame, range.profit)
print(range.profit)
## Product_Type Profit.min Profit.max Profit.range
## 1 Coffee -221 778 999
## 2 Espresso -392 646 1038
## 3 Herbal Tea -420 536 956
## 4 Tea -638 362 1000
Interpretasi
Produk Espresso memiliki jangkauan profit terbesar (1038), menunjukkan variasi keuntungan dan kerugian yang paling luas, sehingga fluktuasi profitnya tinggi. Tea memiliki kerugian paling besar (profit minimum -638), menandakan risiko tertinggi meskipun jangkauannya hampir sama dengan produk lain. Sebaliknya, Herbal Tea memiliki jangkauan profit terkecil (956), mencerminkan variasi profit yang lebih sempit dan relatif stabil dibandingkan produk lainnya.
Varians adalah ukuran penyebaran data yang menunjukkan seberapa jauh nilai-nilai dalam suatu kumpulan data menyimpang dari nilai rata-ratanya. Varians dihitung sebagai rata-rata dari kuadrat selisih setiap data terhadap rata-rata. Ukuran ini berguna untuk menggambarkan tingkat keragaman dalam data, di mana semakin besar nilai varians, maka semakin besar pula penyebaran data dari rata-rata.
Adapun rumus varians populasi adalah: \[\sigma^2 = \sum_{i=1}^{N} \frac {(x_i - \mu)^2}{N}\]
Untuk sampel (bukan populasi penuh), rumus varians sedikit dimodifikasi menjadi:
\[s^2 = \sum_{i=1}^{n} \frac {(x_i - \bar{x})^2}{n-1}\]
Sedangkan standard deviasi atau simpangan baku merupakan akar kuadrat dari varians. Ukuran ini menunjukkan seberapa besar penyimpangan nilai-nilai data dari rata-ratanya dalam satuan yang sama dengan data aslinya. Standard deviasi memberikan informasi yang lebih intuitif dibanding varians karena nilainya berada pada skala yang sama dengan data.
Dalam R, tersedia fungsi bawaan untuk menghitung varians dan simpangan baku, yaitu var() dan sd(). Berikut contoh perhitungannya:
#Menghitung varians dan standar deviasi profit untuk setiap product type
var.sd.profit <- aggregate(Profit~Product_Type, data_cm1, function(x) c(var=var(x),sd=sd(x)))
col_names1<- c("Product Type", "Variance", "Standard Deviation")
var.sd.profit <- do.call(data.frame, var.sd.profit)
print(var.sd.profit)
## Product_Type Profit.var Profit.sd
## 1 Coffee 14121.863 118.83545
## 2 Espresso 8323.011 91.23054
## 3 Herbal Tea 7286.714 85.36225
## 4 Tea 11914.880 109.15530
Interpretasi
Variansi dan simpangan baku mengukur tingkat penyebaran data profit terhadap nilai rata-rata.Produk Coffee memiliki simpangan baku tertinggi (±118.84), menunjukkan profitnya paling bervariasi atau tidak konsisten.Tea juga memiliki penyebaran profit yang besar (SD = 109.16), meskipun lebih kecil dari Coffee.Produk Herbal Tea memiliki simpangan baku terkecil (±85.36), artinya profitnya paling stabil dan dekat dengan nilai rata-rata.Nilai variansi sejalan dengan simpangan baku karena simpangan baku adalah akar dari variansi. Dapat disimpulkan bahwa produk Coffee dan Tea memiliki profit yang paling tidak stabil, sedangkan Herbal Tea dan Espresso cenderung lebih stabil dengan fluktuasi profit yang lebih kecil.
Jangkauan antarkuartil (Interquartile Range / IQR) merupakan selisih antara kuartil ketiga (Q3) dan kuartil pertama (Q1), yang menunjukkan sebaran data pada 50% tengah.
Simpangan kuartil atau jangkauan semikuartil adalah setengah dari jangkauan antarkuartil, dan berguna untuk menggambarkan penyebaran data di sekitar median.
Adapun rumus keduanya adalah: \[JAK=Q_3-Q_1\] \[Q_3= \frac{Q_3 - Q_1}{2}\]
R menyediakan fungsi bawaan untuk menghitung nilai kuartil, yaitu quantile(). Dengan menggunakan fungsi ini, kita dapat memperoleh nilai kuartil pertama (Q1) dan kuartil ketiga (𝑄3), lalu menghitung jangkauan antar kuartil (IQR) dan simpangan kuartil menggunakan fungsi buatan sendiri.
Berikut contoh penggunaannya dalam R:
# Mencari kuartil 1, kuartil 3, jangkauan antarkuartil, dan simpangan kuartil
sum.kuartil <- aggregate(Profit~ Product_Type, data = data_cm1,
FUN = function(x) {
Q1 <- quantile(x, probs = 0.25)
Q3 <- quantile(x, probs = 0.75)
IQR <- Q3 - Q1
Quartile.deviation <- IQR / 2
c(Q1, Q3, IQR, Quartile.deviation)
})
sum.kuartil <- do.call(data.frame, sum.kuartil)
print(sum.kuartil)
## Product_Type Profit.25. Profit.75. Profit.75..1 Profit.75..2
## 1 Coffee 17 91.00 74.00 37.000
## 2 Espresso 16 84.00 68.00 34.000
## 3 Herbal Tea 19 92.25 73.25 36.625
## 4 Tea 15 103.00 88.00 44.000
Interpretasi
Keempat jenis produk menunjukkan variasi profit yang berbeda di bagian tengah data. Tea memiliki simpangan kuartil tertinggi (44), menandakan penyebaran profitnya paling besar, sehingga fluktuasi keuntungannya lebih tinggi. Espresso memiliki simpangan kuartil terendah (34), yang berarti variasi profitnya paling kecil dan lebih konsisten. Coffee dan Herbal Tea berada di tengah, masing-masing dengan simpangan kuartil 37, menunjukkan penyebaran profit yang sedang. Data ini memberikan gambaran tentang stabilitas keuntungan antar jenis produk.
Histogram merupakan salah satu bentuk visualisasi data yang digunakan untuk menggambarkan distribusi frekuensi dari data numerik dalam bentuk grafik batang. Setiap batang dalam histogram menunjukkan jumlah data yang berada dalam suatu interval nilai tertentu. Dengan menggunakan histogram, kita dapat dengan mudah melihat pola distribusi data, apakah data tersebar secara merata, membentuk distribusi normal, atau condong ke arah tertentu. Histogram juga membantu dalam mengidentifikasi adanya pencilan (outlier) atau konsentrasi nilai pada rentang tertentu. Tujuan utama dari penggunaan histogram dalam analisis data adalah untuk mempermudah interpretasi pola penyebaran data secara visual, sehingga dapat memberikan wawasan awal terhadap karakteristik umum dari data yang dianalisis.
Berikut merupakan histogram rata-rata profit setiap product type:
# Membuat histogram tiap product type
ggplot(data = product_type.avg, aes(x = Product_Type, y = Profit, fill = Product_Type)) +
geom_bar(stat = "identity") + geom_text(aes(label = round(Profit, 2)), vjust = -0.5, color = "black") +
labs(x = "Product_Type", y = "Mean Profit") +
ggtitle("Histogram of Rata-Rata Profit Tiap Product Type") +
theme(axis.text.x = element_text(angle = 45, hjust = 1)) +
scale_fill_discrete(name = "Product_Type")
Interpretasi
Secara keseluruhan, visualisasi ini membantu menunjukkan bahwa produk kopi mendominasi profit, sementara produk teh relatif memberikan margin keuntungan yang lebih rendah, sehingga informasi ini dapat digunakan untuk pengambilan keputusan dalam pengelolaan portofolio produk.
Boxplot atau diagram kotak adalah salah satu bentuk visualisasi statistik yang digunakan untuk menggambarkan penyebaran dan sebaran data dalam satu grafik ringkas. Boxplot menunjukkan lima nilai penting dari suatu kumpulan data, yaitu nilai minimum, kuartil pertama (Q1), median (Q2), kuartil ketiga (Q3), dan nilai maksimum, serta sering kali menampilkan outlier atau pencilan sebagai titik-titik terpisah. Bentuk visualisasi ini sangat berguna untuk memahami persebaran data, mendeteksi adanya asimetri, serta mengidentifikasi apakah terdapat pencilan dalam data. Dengan membandingkan boxplot antar kategori, kita dapat dengan mudah melihat perbedaan distribusi data dan konsistensinya, menjadikannya alat yang efektif dalam eksplorasi data dan analisis perbandingan antar kelompok.
Berikut adalah boxplot yang terdiri dari nilai minimal dan maksimal, Q1 dan Q3, median, jangkauan antarkuartil:
ggplot(data_cm1, aes(x = Product_Type, y = Profit ,color = Product_Type)) +
geom_boxplot() +
labs(x = "Product_Type", y = "Profit", color = "Product_Type") +
ggtitle("Boxplot Profit Tiap Product Type")
Secara keseluruhan, produk Coffee dan Espresso menunjukkan variasi profit yang lebih ekstrem (terlihat dari banyaknya outlier), sementara Herbal Tea dan Tea lebih stabil dalam hal distribusi profit. Median profit tertinggi terlihat pada Herbal Tea, sedangkan yang paling rendah adalah pada Espresso.
Dotplot adalah salah satu bentuk visualisasi data yang digunakan untuk menunjukkan distribusi frekuensi dari suatu variabel secara sederhana. Setiap titik pada dotplot mewakili satu data atau sekelompok data yang memiliki nilai yang sama. Dotplot cocok digunakan untuk data kuantitatif atau data kategorik dengan jumlah pengamatan yang tidak terlalu besar, sehingga pola distribusinya mudah diamati.
Tujuan utama penggunaan dotplot adalah untuk memvisualisasikan sebaran data dan mendeteksi pola seperti pemusatan, penyebaran, serta kemungkinan adanya pencilan (outlier). Dibandingkan histogram atau boxplot, dotplot memberikan tampilan yang lebih terperinci terhadap nilai individual karena tidak mengelompokkan data ke dalam kelas-kelas tertentu.
Dalam konteks analisis data di R, dotplot sering digunakan untuk mengevaluasi persebaran nilai suatu variabel berdasarkan kategori tertentu, dan dapat dikombinasikan dengan warna atau posisi untuk membandingkan antar grup.
Berikut merupakan dotplot profit setiap product type
ggplot(data_cm1, aes(x = Profit, y = Product_Type, color = Product_Type)) +
geom_point() +
labs(x = "Profit", y = "Product Type", color = "Product Type") +
ggtitle("Dot Plot Angka Harapan Hidup Setiap Region")