Dataset yang digunakan dalam analisis ini adalah Coffee Chain Dataset, yaitu dataset tentang aktivitas bisnis pada perusahaan coffee chain (rantai kedai kopi). Dataset ini berisi data operasional yang mencakup informasi penjualan, keuntungan, produk, serta biaya yang dikeluarkan dalam proses bisnis.
Dataset ini menggambarkan bagaimana performa penjualan produk kopi dan turunannya di berbagai kategori produk serta bagaimana penjualan tersebut berkontribusi terhadap keuntungan perusahaan. Dengan adanya data ini, dapat dilakukan analisis untuk memahami faktor-faktor yang mempengaruhi profitabilitas bisnis.
Beberapa variabel utama yang terdapat dalam dataset ini antara lain: - Sales: menunjukkan total nilai penjualan yang dihasilkan - Profit: menunjukkan keuntungan bersih yang diperoleh - Product Type: menunjukkan kategori atau jenis produk yang dijual - Total Expenses: menunjukkan total biaya yang dikeluarkan dalam operasional
Selain itu, dataset ini juga memuat variabel tambahan seperti lokasi, waktu penjualan, dan detail produk lainnya yang dapat digunakan untuk analisis lebih lanjut.
Berdasarkan dataset yang tersedia, analisis dalam laporan ini fokus pada dua aspek utama, yaitu:
Hubungan antara Sales dan Profit
Analisis ini bertujuan untuk mengetahui apakah peningkatan penjualan
(Sales) berpengaruh terhadap peningkatan keuntungan (Profit). Untuk
menjawab hal ini, digunakan metode regresi linear yang mampu menjelaskan
hubungan antar variabel numerik.
Perbedaan Profit antar Product Type
Analisis ini bertujuan untuk mengetahui apakah terdapat perbedaan
rata-rata keuntungan berdasarkan jenis produk yang dijual. Metode yang
digunakan adalah analisis varians (ANOVA), yang dapat menguji perbedaan
antar kelompok kategori.
Melalui kedua analisis tersebut, dapat diperoleh insight mengenai faktor utama yang mempengaruhi keuntungan serta produk mana yang memberikan kontribusi profit yang lebih tinggi.
#Library yan digunakan
library(readxl)
## Warning: package 'readxl' was built under R version 4.4.2
library(ggplot2)
library(dplyr)
## Warning: package 'dplyr' was built under R version 4.4.3
##
## 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
data <- read_excel("Coffee Chain Datasets.xlsx")
head(data)
## # 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>
str(data)
## 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 ...
summary(data)
## 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
Sebelum analisis statistik, dilakukan visualisasi menggunakan scatter plot untuk melihat pola hubungan antara Sales dan Profit, termasuk arah hubungan, kecenderungan linier, serta kemungkinan adanya outlier. Ditambahkan pula garis regresi linear (trend line) untuk memberikan gambaran awal hubungan kedua variabel.
Selanjutnya, digunakan regresi linear sederhana untuk menguji pengaruh Sales terhadap Profit. Model yang digunakan adalah:
\(\text{Profit} = \beta_0 + \beta_1 \cdot \text{Sales} + \varepsilon\)
di mana \(\beta_0\) adalah intercept, \(\beta_1\) adalah koefisien regresi, dan \(\varepsilon\) adalah error.
Analisis ini mencakup uji signifikansi koefisien regresi serta nilai \(R^{2}\) untuk melihat seberapa besar variasi Profit dapat dijelaskan oleh Sales.
#Visualisasi
ggplot(data, aes(x = Sales, y = Profit)) +
geom_point(alpha = 0.6) +
geom_smooth(method = "lm") +
labs(title = "Hubungan Sales dan Profit",
x = "Sales",
y = "Profit")
## `geom_smooth()` using formula = 'y ~ x'
#Model regresi linier
model1 <- lm(Profit ~ Sales, data = data)
summary(model1)
##
## Call:
## lm(formula = Profit ~ Sales, data = data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -606.28 -9.15 11.77 28.31 466.85
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -42.456004 1.527850 -27.79 <2e-16 ***
## Sales 0.536582 0.006233 86.08 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 61.39 on 4246 degrees of freedom
## Multiple R-squared: 0.6357, Adjusted R-squared: 0.6357
## F-statistic: 7410 on 1 and 4246 DF, p-value: < 2.2e-16
Model regresi yang diperoleh adalah:
\(\text{Profit} = -42.456 + 0.5366 \cdot \text{Sales}\)
Koefisien Sales bernilai positif (0.5366), yang menunjukkan bahwa peningkatan Sales cenderung meningkatkan Profit. Hasil uji signifikansi menunjukkan \(p\text{-value} < 0.05\), sehingga dapat disimpulkan bahwa Sales berpengaruh signifikan terhadap Profit. Nilai \(R^2 = 0.6357\) menunjukkan bahwa sekitar 63.57% variasi Profit dapat dijelaskan oleh Sales, sementara sisanya dipengaruhi faktor lain. Berdasarkan scatter plot, terlihat hubungan linear positif antara Sales dan Profit, meskipun terdapat beberapa penyebaran data dan nilai Profit negatif yang mengindikasikan adanya faktor lain yang mempengaruhi.
Sebelum pengujian statistik, dilakukan eksplorasi data untuk melihat distribusi Profit pada setiap Product Type. Karena Product Type bersifat kategorik dan Profit numerik, digunakan boxplot untuk membandingkan distribusi, median, sebaran data, serta mendeteksi outlier pada tiap kelompok.Selanjutnya, dilakukan uji Analysis of Variance (ANOVA) untuk mengetahui apakah terdapat perbedaan rata-rata Profit antar beberapa Product Type.
Hipotesis yang digunakan: \(H_0\): Tidak terdapat perbedaan rata-rata Profit antar Product Type \(H_1\): Terdapat setidaknya satu perbedaan rata-rata Profit
Keputusan diambil berdasarkan nilai \(p\text{-value}\), dengan kriteria: jika \(p\text{-value} < 0.05\), maka \(H_0\) ditolak, sehingga terdapat perbedaan yang signifikan antar kelompok.
#Visualisassi
ggplot(data, aes(x = `Product Type`, y = Profit)) +
geom_boxplot() +
labs(title = "Perbandingan Profit antar Jenis Produk",
x = "Product Type",
y = "Profit")
#Uji Anova
anova_model <- aov(Profit ~ `Product Type`, data = data)
summary(anova_model)
## Df Sum Sq Mean Sq F value Pr(>F)
## `Product Type` 3 141680 47227 4.577 0.00333 **
## Residuals 4244 43791957 10319
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Berdasarkan hasil uji ANOVA, diperoleh \(p\text{-value} = 0.00333 < 0.05\), sehingga dapat disimpulkan bahwa terdapat perbedaan rata-rata Profit yang signifikan antar Product Type. Nilai \(F\) sebesar 4.577 menunjukkan bahwa variasi antar kelompok lebih besar dibandingkan variasi dalam kelompok, sehingga perbedaan tersebut signifikan secara statistik.
Berdasarkan boxplot, setiap Product Type memiliki distribusi Profit yang berbeda dengan variasi penyebaran data yang cukup besar. Selain itu, terdapat beberapa outlier, baik pada nilai Profit tinggi maupun negatif, yang menunjukkan adanya kemungkinan keuntungan besar maupun kerugian pada kondisi tertentu. Hasil ini menunjukkan bahwa jenis produk mempengaruhi keuntungan, sehingga perlu dipertimbangkan dalam penentuan strategi bisnis.