1. Pendahuluan

Deskripsi Insight

Insight utama yang diangkat dalam analisis ini adalah evaluasi efektivitas alokasi biaya pemasaran terhadap tingkat keuntungan perusahaan berdasarkan lini produk. Melalui perspektif Sistem Informasi Manajemen (SIM), analisis ini bertujuan untuk menentukan apakah investasi pada sektor pemasaran memberikan timbal balik yang proporsional terhadap profitabilitas, serta bagaimana distribusi keuntungan tersebut bervariasi secara geografis dan temporal.

Data diperoleh dari Coffee Chain Dataset yang disediakan melalui platform SPADA UNS.

Tujuan Analisis

  • Mengukur korelasi antara biaya pemasaran dan profit.
  • Mengidentifikasi lini produk yang paling efisien dalam menghasilkan laba.
  • Menganalisis perbedaan performa keuntungan antar wilayah pasar (Market).
  • Membandingkan rata-rata profitabilitas antara produk jenis Caffeinated dan Decaf melalui uji komparatif.
  • Memastikan keandalan hasil melalui peninjauan validitas sebaran jumlah sampel data.

2. Persiapan Data

Dataset yang digunakan adalah Coffee Chain Datasets dalam format .xlsx. Langkah awal yang dilakukan adalah mengimpor data dan melakukan agregasi untuk variabel-variabel kunci.

# Menyiapkan library yang diperlukan
library(lubridate)
## Warning: package 'lubridate' was built under R version 4.5.3
## 
## Attaching package: 'lubridate'
## The following objects are masked from 'package:base':
## 
##     date, intersect, setdiff, union
library(readxl)
## Warning: package 'readxl' was built under R version 4.5.3
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.5.2
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
# Import data 
data_coffee <- read_excel("D:/CoffeeChain.xlsx")

# Melihat 6 baris pertama data
head(data_coffee)
## # A tibble: 6 × 20
##   `Area Code` Date                Market  `Market Size` Product   `Product Line`
##         <dbl> <dttm>              <chr>   <chr>         <chr>     <chr>         
## 1         719 2012-01-01 00:00:00 Central Major Market  Amaretto  Beans         
## 2         970 2012-01-01 00:00:00 Central Major Market  Colombian Beans         
## 3         970 2012-01-01 00:00:00 Central Major Market  Decaf Ir… Beans         
## 4         303 2012-01-01 00:00:00 Central Major Market  Green Tea Leaves        
## 5         303 2012-01-01 00:00:00 Central Major Market  Caffe Mo… Beans         
## 6         720 2012-01-01 00:00:00 Central Major Market  Decaf Es… Beans         
## # ℹ 14 more variables: `Product Type` <chr>, State <chr>, Type <chr>,
## #   `Budget COGS` <dbl>, `Budget Margin` <dbl>, `Budget Profit` <dbl>,
## #   `Budget Sales` <dbl>, COGS <dbl>, Inventory <dbl>, Margin <dbl>,
## #   Marketing <dbl>, Profit <dbl>, Sales <dbl>, `Total Expenses` <dbl>
# Melihat struktur tipe data
str(data_coffee)
## tibble [4,248 × 20] (S3: tbl_df/tbl/data.frame)
##  $ Area Code     : num [1:4248] 719 970 970 303 303 720 970 719 970 719 ...
##  $ Date          : POSIXct[1:4248], format: "2012-01-01" "2012-01-01" ...
##  $ Market        : chr [1:4248] "Central" "Central" "Central" "Central" ...
##  $ Market Size   : chr [1:4248] "Major Market" "Major Market" "Major Market" "Major Market" ...
##  $ Product       : chr [1:4248] "Amaretto" "Colombian" "Decaf Irish Cream" "Green Tea" ...
##  $ Product Line  : chr [1:4248] "Beans" "Beans" "Beans" "Leaves" ...
##  $ Product Type  : chr [1:4248] "Coffee" "Coffee" "Coffee" "Tea" ...
##  $ State         : chr [1:4248] "Colorado" "Colorado" "Colorado" "Colorado" ...
##  $ Type          : chr [1:4248] "Regular" "Regular" "Decaf" "Regular" ...
##  $ Budget COGS   : num [1:4248] 90 80 100 30 60 80 140 50 50 40 ...
##  $ Budget Margin : num [1:4248] 130 110 140 50 90 130 160 80 70 70 ...
##  $ Budget Profit : num [1:4248] 100 80 110 30 70 80 110 20 40 20 ...
##  $ Budget Sales  : num [1:4248] 220 190 240 80 150 210 300 130 120 110 ...
##  $ COGS          : num [1:4248] 89 83 95 44 54 72 170 63 60 58 ...
##  $ Inventory     : num [1:4248] 777 623 821 623 456 ...
##  $ Margin        : num [1:4248] 130 107 139 56 80 108 171 87 80 72 ...
##  $ Marketing     : num [1:4248] 24 27 26 14 15 23 47 57 19 22 ...
##  $ Profit        : num [1:4248] 94 68 101 30 54 53 99 0 33 17 ...
##  $ Sales         : num [1:4248] 219 190 234 100 134 180 341 150 140 130 ...
##  $ Total Expenses: num [1:4248] 36 39 38 26 26 55 72 87 47 55 ...
# Melihat ringkasan statistik seluruh variabel
summary(data_coffee)
##    Area Code          Date                        Market         
##  Min.   :203.0   Min.   :2012-01-01 00:00:00   Length:4248       
##  1st Qu.:417.0   1st Qu.:2012-06-23 12:00:00   Class :character  
##  Median :573.0   Median :2012-12-16 12:00:00   Mode  :character  
##  Mean   :582.3   Mean   :2012-12-15 22:00:00                     
##  3rd Qu.:772.0   3rd Qu.:2013-06-08 12:00:00                     
##  Max.   :985.0   Max.   :2013-12-01 00:00:00                     
##  Market Size          Product          Product Line       Product Type      
##  Length:4248        Length:4248        Length:4248        Length:4248       
##  Class :character   Class :character   Class :character   Class :character  
##  Mode  :character   Mode  :character   Mode  :character   Mode  :character  
##                                                                             
##                                                                             
##                                                                             
##     State               Type            Budget COGS     Budget Margin   
##  Length:4248        Length:4248        Min.   :  0.00   Min.   :-210.0  
##  Class :character   Class :character   1st Qu.: 30.00   1st Qu.:  50.0  
##  Mode  :character   Mode  :character   Median : 50.00   Median :  70.0  
##                                        Mean   : 74.83   Mean   : 100.8  
##                                        3rd Qu.: 90.00   3rd Qu.: 130.0  
##                                        Max.   :450.00   Max.   : 690.0  
##  Budget Profit      Budget Sales         COGS          Inventory      
##  Min.   :-320.00   Min.   :   0.0   Min.   :  0.00   Min.   :-3534.0  
##  1st Qu.:  20.00   1st Qu.:  80.0   1st Qu.: 43.00   1st Qu.:  432.0  
##  Median :  40.00   Median : 130.0   Median : 60.00   Median :  619.0  
##  Mean   :  60.91   Mean   : 175.6   Mean   : 84.43   Mean   :  749.4  
##  3rd Qu.:  80.00   3rd Qu.: 210.0   3rd Qu.:100.00   3rd Qu.:  910.5  
##  Max.   : 560.00   Max.   :1140.0   Max.   :364.00   Max.   : 8252.0  
##      Margin          Marketing          Profit           Sales    
##  Min.   :-302.00   Min.   :  0.00   Min.   :-638.0   Min.   : 17  
##  1st Qu.:  52.75   1st Qu.: 13.00   1st Qu.:  17.0   1st Qu.:100  
##  Median :  76.00   Median : 22.00   Median :  40.0   Median :138  
##  Mean   : 104.29   Mean   : 31.19   Mean   :  61.1   Mean   :193  
##  3rd Qu.: 132.00   3rd Qu.: 39.00   3rd Qu.:  92.0   3rd Qu.:230  
##  Max.   : 613.00   Max.   :156.00   Max.   : 778.0   Max.   :912  
##  Total Expenses  
##  Min.   : 10.00  
##  1st Qu.: 33.00  
##  Median : 46.00  
##  Mean   : 54.06  
##  3rd Qu.: 65.00  
##  Max.   :190.00
# Penyiapan data untuk tren penjualan
data_trend <- data_coffee %>%
  mutate(Bulan = floor_date(Date, "month")) %>%
  group_by(Bulan) %>%
  summarise(Total_Sales = sum(Sales))

3. Visualisasi Data

Visualisasi 1: Profit vs Marketing Expense per Lini Produk

Bertujuan untuk mengevaluasi korelasi antara alokasi biaya pemasaran dengan profitabilitas pada setiap lini produk guna mengidentifikasi efisiensi penggunaan anggaran perusahaan.

data_summary <- data_coffee %>%
  group_by(`Product Line`) %>%
  summarise(Total_Profit = sum(Profit), Total_Marketing = sum(Marketing))

ggplot(data_summary, aes(x = `Product Line`)) +
  geom_bar(aes(y = Total_Profit, fill = "Total Profit"), stat = "identity") +
  geom_line(aes(y = Total_Marketing, group = 1, color = "Marketing Expense"), linewidth = 1.2) +
  geom_point(aes(y = Total_Marketing)) +
  scale_fill_manual(values = "steelblue") +
  scale_color_manual(values = "red") +
  labs(title = "Efektivitas Pemasaran per Lini Produk", y = "Amount (USD)") +
  theme_minimal()

Interpretasi:

Grafik menunjukkan bahwa lini produk Beans adalah kontributor laba terbesar bagi perusahaan, meskipun tidak memiliki anggaran pemasaran tertinggi. Sebaliknya, lini produk lain memiliki biaya pemasaran yang hampir setara namun menghasilkan profit yang jauh lebih rendah. Terdapat anomali efisiensi pada lini Beans. Hal ini mengindikasikan bahwa produk Beans mungkin memiliki loyalitas pelanggan yang tinggi atau kualitas produk yang sudah dikenal luas, sehingga tidak memerlukan biaya promosi agresif untuk menghasilkan laba besar. Manajemen dapat mengalokasikan sebagian anggaran pemasaran dari lini yang kurang produktif ke lini Beans untuk memaksimalkan ROI (Return on Investment).

Visualisasi 2: Tren Penjualan Bulanan

Bertujuan untuk memantau fluktuasi total penjualan dari waktu ke waktu guna mengidentifikasi pola musiman yang dapat mendukung sistem perencanaan stok dan manajemen inventaris yang lebih akurat.

ggplot(data_trend, aes(x = Bulan, y = Total_Sales)) +
  geom_line(color = "darkgreen", linewidth = 1) +
  geom_area(fill = "darkgreen", alpha = 0.2) +
  labs(title = "Tren Penjualan Bulanan", x = "Period", y = "Total Sales (USD)") +
  theme_light()

Interpretasi:

Visualisasi area menunjukkan fluktuasi penjualan yang signifikan di setiap periode dengan titik puncak (peaks) dan lembah (troughs) yang menunjukkan sifat bisnis kopi yang sangat dipengaruhi oleh faktor musiman. Fluktuasi ini menjadi bukti kuat bahwa perusahaan memerlukan Sistem Informasi Prediktif untuk mendukung manajemen rantai pasok yang lebih responsif terhadap data. Dengan data tren ini, bagian operasional dapat mengatur jadwal pengiriman stok secara dinamis guna mencegah penumpukan barang saat penjualan rendah sekaligus memastikan ketersediaan produk mencukupi saat mendekati masa puncak penjualan (peak season).

Visualisasi 3: Distribusi Profit berdasarkan Wilayah (Market)

Bertujuan untuk memetakan sebaran keuntungan di berbagai wilayah pasar guna menemukan area dengan performa paling stabil serta mendeteksi adanya transaksi bernilai tinggi (outliers) yang bisa direplikasi strateginya.

ggplot(data_coffee, aes(x = Market, y = Profit, fill = Market)) +
  geom_boxplot(outlier.colour = "pink", outlier.shape = 1) +
  labs(title = "Distrbusi Profit berdasarkan Wilayah Pasar", x = "Market Region", y = "Profit (USD)") +
  theme_minimal() +
  theme(legend.position = "none")

Interpretasi :

Boxplot mengungkapkan bahwa median profit di wilayah Central dan West cenderung lebih stabil dan kompetitif dibandingkan wilayah lain. Keberadaan outliers positif (titik-titik di atas kumis grafik) di kedua wilayah tersebut menunjukkan adanya transaksi dengan nilai keuntungan yang sangat tinggi secara sporadis.Outliers ini adalah “tambang emas” informasi.Perusahaan harus mampu melacak transaksi spesifik tersebut,, seperti di toko mana itu terjadi, jam berapa, dan produk apa yang dibeli. Strategi sukses di titik-titik outliers tersebut harus didokumentasikan untuk direplikasi ke wilayah South dan East yang memiliki sebaran profit lebih rendah dan sempit.

Visualisasi 4: Jumlah Data per Produk

Bertujuan untuk memverifikasi volume sampel data pada setiap nama produk guna menjamin bahwa seluruh analisis statistik yang dilakukan memiliki basis data yang kuat dan valid secara ilmiah.

data_counts <- data_coffee %>%
  group_by(Product) %>%
  summarise(Jumlah_Data = n())

ggplot(data_counts, aes(x = reorder(Product, -Jumlah_Data), y = Jumlah_Data, fill = Product)) +
  geom_bar(stat = "identity") +
  geom_text(aes(label = Jumlah_Data), vjust = -0.5, size = 3) +
  labs(title = "Total Sampel Data per Nama Produk", x = "Produk", y = "Jumlah Baris Data") +
  theme_minimal() +
  theme(axis.text.x = element_text(angle = 45, hjust = 1), legend.position = "none")

Interpretasi:

Grafik batang menunjukkan distribusi sampel yang bervariasi untuk setiap produk, dengan frekuensi berkisar antara 72 hingga 480 observasi per produk. Produk Caffe Mocha memiliki jumlah sampel tertinggi yaitu 480 data, sedangkan Regular Espresso memiliki jumlah sampel paling sedikit yaitu 72 baris data.Ketersediaan volume data yang besar pada mayoritas produk menjamin bahwa keputusan manajemen yang diambil memiliki validitas statistik yang tinggi dan meminimalkan risiko bias. Namun, untuk produk dengan sampel yang lebih sedikit seperti Regular Espresso, manajemen disarankan untuk melakukan pengumpulan data tambahan di periode berikutnya agar hasil analisis profitabilitas pada produk tersebut di masa depan menjadi lebih stabil dan andal sebagai dasar kebijakan strategis.

4. Analisis Data

Analisis 1: Uji Korelasi Pearson (Marketing vs Profit)

Bertujuan untuk membuktikan apakah terdapat hubungan signifikan antara biaya yang dikeluarkan untuk pemasaran dengan profit yang dihasilkan, sehingga manajemen memiliki dasar data dalam menentukan anggaran iklan.

uji_korelasi <- cor.test(data_coffee$Marketing, data_coffee$Profit)
print(uji_korelasi)
## 
##  Pearson's product-moment correlation
## 
## data:  data_coffee$Marketing and data_coffee$Profit
## t = 15.08, df = 4246, p-value < 2.2e-16
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.1967258 0.2538172
## sample estimates:
##      cor 
## 0.225465

Hasil statistik: Nilai r = 0.225 dengan p-value < 2.2e-16.

Interpretasi:

Berdasarkan hasil uji korelasi, diperoleh nilai r = 0.225465 dengan p-value < 2.2e-16, yang menunjukkan adanya hubungan positif yang sangat signifikan antara anggaran pemasaran dan laba perusahaan. Meskipun kekuatan hubungannya berada pada kategori lemah-moderat dan tidak secara otomatis menunjukkan sebab-akibat langsung, tingkat signifikansi yang sangat tinggi membuktikan bahwa kebijakan pengeluaran pemasaran memberikan dampak balik (return) yang nyata bagi perusahaan. Secara manajerial, temuan ini melegitimasi alokasi biaya pemasaran saat ini dan dapat digunakan sebagai dasar untuk membangun model regresi guna mengestimasi proyeksi tambahan profit dari setiap kenaikan anggaran di masa depan.

Analisis 2: Statistik Deskriptif Penjualan

Bertujuan untuk mendapatkan gambaran umum mengenai profil transaksi perusahaan, termasuk mendeteksi kesenjangan antara nilai penjualan minimum dan maksimum untuk melihat efektivitas operasional toko.

summary(data_coffee$Sales)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##      17     100     138     193     230     912

Hasil Statistik: Min: 17, Median: 138, Mean: 193, Max: 912.

Interpretasi:

Statistik deskriptif menunjukkan rentang penjualan yang sangat luas dengan gap mencapai 774 poin antara nilai minimum dan maksimum. Karena nilai rata-rata (Mean = 193) jauh lebih tinggi daripada nilai tengah (Median = 138), data ini memiliki kemiringan positif (skewed right). Hal ini menandakan adanya beberapa transaksi atau toko dengan performa “super” yang mengangkat angka rata-rata keseluruhan.Secara Manajerial, sistem informasi perusahaan harus mampu mendeteksi profil transaksi bernilai tinggi tersebut (912 USD) untuk dipelajari pola pembeliannya. Sementara itu, transaksi di batas bawah (17 USD) perlu dievaluasi lebih lanjut untuk menentukan apakah disebabkan oleh masalah ketersediaan stok atau rendahnya minat pasar di lokasi tersebut.

Analisis 3: Uji ANOVA Satu Arah (Variansi Profit antar Wilayah)

Bertujuan untuk menguji apakah terdapat perbedaan profitabilitas yang nyata secara statistik antar wilayah pasar yang berbeda, guna menentukan apakah strategi bisnis perlu disesuaikan berdasarkan lokasi geografis.

hasil_anova <- aov(Profit ~ Market, data = data_coffee)
summary(hasil_anova)
##               Df   Sum Sq Mean Sq F value   Pr(>F)    
## Market         3   288811   96270   9.361 3.64e-06 ***
## Residuals   4244 43644825   10284                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Hasil Statistik: F-value = 9.361 dan p-value = 3.64e-06.

Interpretasi :

Hasil ANOVA menunjukkan nilai F-value = 9.361 dengan p-value = 3.64e-06. Karena p-value < 0.05, maka Hipotesis Nol ditolak. Hal ini menunjukkan bahwa terdapat perbedaan rata-rata profit yang signifikan antar wilayah pasar (Central, East, South, dan West).Dengan demikian, lokasi geografis pasar berpotensi berkaitan dengan variasi profitabilitas. Dari perspektif manajerial, temuan ini dapat menjadi dasar awal bagi perusahaan untuk mempertimbangkan perbedaan karakteristik tiap wilayah dalam perumusan strategi bisnis, dengan analisis lanjutan yang lebih mendalam.

Analisis 4: Uji-t Dua Sampel (Perbandingan Profit Berdasarkan Jenis Produk)

Bertujuan untuk membandingkan rata-rata keuntungan antara produk jenis Regular dan Decaf guna mengetahui kategori produk mana yang memberikan margin keuntungan lebih optimal bagi perusahaan.

# Melakukan Uji-t
uji_t <- t.test(Profit ~ Type, data = data_coffee)
print(uji_t)
## 
##  Welch Two Sample t-test
## 
## data:  Profit by Type
## t = -1.9627, df = 4205.4, p-value = 0.04975
## alternative hypothesis: true difference in means between group Decaf and group Regular is not equal to 0
## 95 percent confidence interval:
##  -11.800382966  -0.006391926
## sample estimates:
##   mean in group Decaf mean in group Regular 
##              57.76245              63.66583

uji Hipotesis

  • H0: Tidak ada perbedaan rata-rata profit antara produk Decaf dan Regular (\(\mu_1 = \mu_2\))

  • H1: Terdapat perbedaan rata-rata profit antara produk Decaf dan Regular (\(\mu_1 \neq \mu_2\)).

Hasil Statistik: t = -1.9627, p-value = 0.04975, Mean Decaf: 57.76 USD, Interval Kepercayaan (95% CI):[ -11.800 , -0.006] , Mean Regular: 63.66 USD.

Kesimpulan Akhir : Karena nilai p-value (0.04975) < 0.05, maka kita Tolak H0.

Interpretasi:

Hasil uji-t menunjukkan bahwa terdapat perbedaan rata-rata profit yang signifikan secara statistik antara produk jenis Regular dan Decaf (p < 0.05), meskipun signifikansinya bersifat marginal (tipis). Produk jenis Regular memiliki rata-rata profit yang lebih tinggi (63.66 USD) dibandingkan jenis Decaf (57.76 USD), dengan selisih rata-rata sebesar 5.9 USD. Hal ini diperkuat oleh Confidence Interval yang seluruh rentangnya bernilai negatif (tidak melewati angka nol), yang berarti profit Decaf secara konsisten lebih rendah dibanding Regular dalam tingkat kepercayaan 95%.Dari perspektif manajerial, temuan ini mengindikasikan bahwa jenis produk berkaitan dengan tingkat profitabilitas. Perusahaan dapat mempertimbangkan untuk memberikan alokasi sumber daya atau strategi pemasaran yang lebih optimal pada produk tipe Regular, dengan tetap melakukan evaluasi mendalam terhadap faktor-faktor eksternal lain yang mungkin memengaruhi profitabilitas.

5. Kesimpulan

Berdasarkan rangkaian analisis data yang telah dilakukan terhadap Coffee Chain Datasets, dapat ditarik beberapa kesimpulan utama sebagai dasar pengambilan keputusan manajemen: