library(readxl)
## Warning: package 'readxl' was built under R version 4.5.2
CDataset <- read_excel("~/Materi kuliah/semester 2/SIM/TUGAS/1. Tugas SIM 2025B - Coffee Chain Datasets.xlsx")
knitr::kable(head(CDataset, 10))
| Area Code | Date | Market | Market Size | Product | Product Line | Product Type | State | Type | Budget COGS | Budget Margin | Budget Profit | Budget Sales | COGS | Inventory | Margin | Marketing | Profit | Sales | Total Expenses |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 719 | 2012-01-01 | Central | Major Market | Amaretto | Beans | Coffee | Colorado | Regular | 90 | 130 | 100 | 220 | 89 | 777 | 130 | 24 | 94 | 219 | 36 |
| 970 | 2012-01-01 | Central | Major Market | Colombian | Beans | Coffee | Colorado | Regular | 80 | 110 | 80 | 190 | 83 | 623 | 107 | 27 | 68 | 190 | 39 |
| 970 | 2012-01-01 | Central | Major Market | Decaf Irish Cream | Beans | Coffee | Colorado | Decaf | 100 | 140 | 110 | 240 | 95 | 821 | 139 | 26 | 101 | 234 | 38 |
| 303 | 2012-01-01 | Central | Major Market | Green Tea | Leaves | Tea | Colorado | Regular | 30 | 50 | 30 | 80 | 44 | 623 | 56 | 14 | 30 | 100 | 26 |
| 303 | 2012-01-01 | Central | Major Market | Caffe Mocha | Beans | Espresso | Colorado | Regular | 60 | 90 | 70 | 150 | 54 | 456 | 80 | 15 | 54 | 134 | 26 |
| 720 | 2012-01-01 | Central | Major Market | Decaf Espresso | Beans | Espresso | Colorado | Decaf | 80 | 130 | 80 | 210 | 72 | 558 | 108 | 23 | 53 | 180 | 55 |
| 970 | 2012-01-01 | Central | Major Market | Chamomile | Leaves | Herbal Tea | Colorado | Decaf | 140 | 160 | 110 | 300 | 170 | 1091 | 171 | 47 | 99 | 341 | 72 |
| 719 | 2012-01-01 | Central | Major Market | Lemon | Leaves | Herbal Tea | Colorado | Decaf | 50 | 80 | 20 | 130 | 63 | 435 | 87 | 57 | 0 | 150 | 87 |
| 970 | 2012-01-01 | Central | Major Market | Mint | Leaves | Herbal Tea | Colorado | Decaf | 50 | 70 | 40 | 120 | 60 | 336 | 80 | 19 | 33 | 140 | 47 |
| 719 | 2012-01-01 | Central | Major Market | Darjeeling | Leaves | Tea | Colorado | Regular | 40 | 70 | 20 | 110 | 58 | 338 | 72 | 22 | 17 | 130 | 55 |
library(dplyr)
## Warning: package 'dplyr' was built under R version 4.5.2
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
data2 <- select(CDataset, -'Area Code')
for(col in names(data2)) {
if(is.numeric(data2[[col]])) {
kolom <- data2[[col]]
mean <- mean(kolom, na.rm = TRUE)
median <- median(kolom, na.rm = TRUE)
var <- var(kolom, na.rm = TRUE)
sd <- sd(kolom, na.rm = TRUE)
cat("\nStatistik deskriptif untuk kolom:", col,
"\n- Mean :", round(mean, 2),
"\n- Median :", round(median, 2),
"\n- Variansi :", round(var, 2),
"\n- Standar Deviasi :", round(sd, 2), "\n")
}
}
##
## Statistik deskriptif untuk kolom: Budget COGS
## - Mean : 74.83
## - Median : 50
## - Variansi : 4387.49
## - Standar Deviasi : 66.24
##
## Statistik deskriptif untuk kolom: Budget Margin
## - Mean : 100.82
## - Median : 70
## - Variansi : 8575.26
## - Standar Deviasi : 92.6
##
## Statistik deskriptif untuk kolom: Budget Profit
## - Mean : 60.91
## - Median : 40
## - Variansi : 6327.59
## - Standar Deviasi : 79.55
##
## Statistik deskriptif untuk kolom: Budget Sales
## - Mean : 175.65
## - Median : 130
## - Variansi : 22168.69
## - Standar Deviasi : 148.89
##
## Statistik deskriptif untuk kolom: COGS
## - Mean : 84.43
## - Median : 60
## - Variansi : 4522.53
## - Standar Deviasi : 67.25
##
## Statistik deskriptif untuk kolom: Inventory
## - Mean : 749.38
## - Median : 619
## - Variansi : 436963.2
## - Standar Deviasi : 661.03
##
## Statistik deskriptif untuk kolom: Margin
## - Mean : 104.29
## - Median : 76
## - Variansi : 8900.51
## - Standar Deviasi : 94.34
##
## Statistik deskriptif untuk kolom: Marketing
## - Mean : 31.19
## - Median : 22
## - Variansi : 730.26
## - Standar Deviasi : 27.02
##
## Statistik deskriptif untuk kolom: Profit
## - Mean : 61.1
## - Median : 40
## - Variansi : 10344.63
## - Standar Deviasi : 101.71
##
## Statistik deskriptif untuk kolom: Sales
## - Mean : 192.99
## - Median : 138
## - Variansi : 22841.22
## - Standar Deviasi : 151.13
##
## Statistik deskriptif untuk kolom: Total Expenses
## - Mean : 54.06
## - Median : 46
## - Variansi : 1046.69
## - Standar Deviasi : 32.35
Saya ingin mengetahui apakah terdapat perbedaan nilai penjualan antar wilayah melalui uji statistik dan mengidentifikasi wilayah dengan performa tertinggi melalui visualisasi data. Variabel yang saya ambil yaitu Market dan Sales.
data <- data.frame(
Market = CDataset$Market,
Sales = CDataset$Sales
)
summarise(
group_by(data, Market),
p_value = shapiro.test(Sales)$p.value
)
## # A tibble: 4 × 2
## Market p_value
## <chr> <dbl>
## 1 Central 7.28e-36
## 2 East 3.09e-34
## 3 South 1.80e-28
## 4 West 1.71e-37
Sebelum dilakukan uji hipotesis, perlu adanya uji normalitas dahulu untuk mengetahui normal atau tidaknya data yang dipakai.
Jika p-value < 0.05 maka data tidak berdistribusi normal, sehingga analisis dilanjutkan menggunakan metode non-parametrik yaitu Kruskal-Wallis.
kruskal.test(Sales ~ Market, data = CDataset)
##
## Kruskal-Wallis rank sum test
##
## data: Sales by Market
## Kruskal-Wallis chi-squared = 27.871, df = 3, p-value = 3.865e-06
Setelah dianalisis menggunakan uji Kruskal-Wallis dengan hipotesis: H0 : Tidak ada perbedaan nilai penjualan antar wilayah, H1 : Ada perbedaan nilai penjualan antar wilayah.
Jika p-value < 0.05 maka H0 ditolak. Hasil uji hipotesis dapat diketahui p-value = 3.865e-06 yang sangat kecil dari 0.05 sehingga H0 ditolak, artinya terdapat perbedaan signifikan penjualan antar wilayah.
data1 <- summarise(
group_by(data, Market),
total_sales = sum(Sales, na.rm = TRUE)
)
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.5.2
ggplot(data1, aes(x = Market, y = total_sales)) +
geom_bar(stat = "identity", fill = "palegreen", width = 0.6) +
theme_minimal() +
labs(title = "Total Penjualan di tiap Wilayah",
x = "Wilayah",
y = "Total Penjualan") +
scale_y_continuous(labels = scales::number) +
theme(axis.text.x = element_text(angle = 45, hjust =1))
Grafik batang dengan judul “Total Penjualan di tiap Wilayah” menampilkan jumlah total penjualan yang dihasilkan oleh masing-masing wilayah, yaitu Central, East, South, dan West. Dari grafik terlihat bahwa wilayah West dan Central memiliki total penjualan tertinggi dibandingkan wilayah East dan South. Perbedaan total penjualan antar wilayah ini menunjukkan adanya ketimpangan performa pasar.
Dapat disimpulkan bahwa terdapat perbedaan kontribusi penjualan yang cukup signifikan antar Wilayah. Wilayah West dan Central menjadi penyumbang utama penjualan, sedangkan wilayah South memiliki kontribusi paling rendah. Hal ini menunjukkan bahwa faktor geografis berpengaruh terhadap performa penjualan, sehingga strategi bisnis perlu disesuaikan dengan karakteristik masing-masing wilayah. Saran yang bisa diambil dari interpretasi grafik dan analisis diatas yaitu perusahaan sebaiknya mempertahankan dan mengoptimalkan strategi penjualan di wilayah dengan kontribusi tinggi seperti West dan Central, namun di sisi lain perlu dievaluasi dan dianalisis lebih lanjut terkait penyebab rendahnya penjualan di wilayah East dan South sehingga dapat dilakukan perbaikan strategi.