1. Pendahuluan

Industri kedai kopi mengalami pertubuhan yang cukup signifikan di berbagai wilayah di Amerika Serikat, terutama di California. Perubahan gaya hidup masyarakat yang lebih mengutamakan kenyamanan, produktivitas, dan pengalaman sosial menjadikan kedai kopi tidak hanya sekedar tempat untuk menikmati minuman, tapi juga sebagai ruang untuk saling bersosialisasi. Melalui pengolahan dan analisis dataset ini, diharapkan dapat memperoleh wawasan yang bermanfaat terkait perilaku konsumen, produk yang diminati, serta histori penjualan antar produk. Informasi ini dapat menjadi dasar yang bermanfaat bagi pihak yang terlibat dalam pengambilan keputusan yang strategis.

2. Deskripsi Data

Deskripsi data berisi penjelasan karakteristik dasar dari suatu dataset, memberikan sebuah gambaran umum tentang data tanpa memerlukan analisis yang dalam. Diketahui dataset berjudul “Coffee Chain Datasets” dengan frekuensi bulanan dan periode observasi dari 1 Januari 2012 hingga 31 Desember 2013. Dataset ini memiliki 4248 observasi dan 20 kolom variabel.

# Mengimpor data
library(readxl)
## Warning: package 'readxl' was built under R version 4.4.3
coffee_data <- read_xlsx("C:/Users/LENOVO/Downloads/1. Tugas SIM 2025B - Coffee Chain Datasets/1. Tugas SIM 2025B - Coffee Chain Datasets.xlsx")

3. Eksplorasi Data

Eksplorasi data merupakan tahapan mengeksplorasi data lebih jauh untuk menemukan hubungan ataupun pola guna memahami data sebelum membuat keputusan. Sebelum melakukan eksplorasi data, packages yang akan digunakan harus dimuat terlebih dahulu.

# Load library
library(dplyr)
## 
## 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
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.4.2
library(scales)
## Warning: package 'scales' was built under R version 4.4.2
library(kableExtra)
## Warning: package 'kableExtra' was built under R version 4.4.3
## 
## Attaching package: 'kableExtra'
## The following object is masked from 'package:dplyr':
## 
##     group_rows
library(knitr)
## Warning: package 'knitr' was built under R version 4.4.2

Langkah selanjutnya adalah mengidentifikasi tipe variabel untuk mengetahui berbagai tipe atau struktur pada data. Selain itu, perlu adanya ringkasan statistik untuk mengetahui distribusi nilai, berbagai statistik deskriptif, dan lain-lain.

# Tipe variabel
str(coffee_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 ...
# Cek nilai yang hilang
colSums(is.na(coffee_data))
##      Area Code           Date         Market    Market Size        Product 
##              0              0              0              0              0 
##   Product Line   Product Type          State           Type    Budget COGS 
##              0              0              0              0              0 
##  Budget Margin  Budget Profit   Budget Sales           COGS      Inventory 
##              0              0              0              0              0 
##         Margin      Marketing         Profit          Sales Total Expenses 
##              0              0              0              0              0
# Ringkasan statistik
summary(coffee_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

3.1 Kinerja Penjualan Setiap Wilayah

Dalam tahap ini, dilakukan analisis mengenai kinerja penjualan di setiap wilayah. Tujuannya adalah untuk mengetahui wilayah mana yang paling menguntungkan dan mana yang kurang bagus. Tahap ini memuat total penjualan, keuntungan, dan perkiraan biaya produksi barang selama tahun 2012 hingga 2013.

rangkuman_tiap_state <- coffee_data %>%
  group_by(State) %>%
  summarise(
    Total_Sales = sum(Sales, na.rm = TRUE),
    Total_Profit = sum(Profit, na.rm = TRUE),
    Total_COGS = sum(COGS, na.rm = TRUE)
  ) %>%
  arrange(desc(Total_Sales))

rangkuman_tiap_state <- rangkuman_tiap_state %>%
  mutate(Profit_Margin = Total_Profit / Total_Sales)
rangkuman_tiap_state %>%
  kable(caption = "Kinerja Penjualan Setiap Wilayah") %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
                full_width = TRUE)
Kinerja Penjualan Setiap Wilayah
State Total_Sales Total_Profit Total_COGS Profit_Margin
California 96892 31785 45482 0.3280457
New York 70852 20096 35164 0.2836335
Illinois 69883 30821 29482 0.4410372
Nevada 60159 10616 31454 0.1764657
Iowa 54750 22212 23518 0.4056986
Colorado 48179 17743 20402 0.3682725
Oregon 40899 12439 17294 0.3041395
Washington 38930 11405 15814 0.2929617
Florida 37443 12310 15496 0.3287664
Texas 37410 15766 15674 0.4214381
Utah 35384 7751 15766 0.2190538
Ohio 34517 10773 14632 0.3121071
Wisconsin 33069 8702 13640 0.2631468
Massachusetts 29965 16442 9066 0.5487068
Oklahoma 27463 8558 11234 0.3116193
Connecticut 25429 7621 10470 0.2996972
Missouri 24647 3601 11434 0.1461030
Louisiana 23161 7355 9398 0.3175597
New Mexico 15892 799 7594 0.0502769
New Hampshire 14887 2748 5658 0.1845906

Keterangan :

Total_Sales = Jumlah penjualan semua produk dalam satu wilayah

Total_Profit = Jumlah keuntungan semua produk dalam satu wilayah

Total_COGS = Jumlah biaya produksi dalam satu wilayah

Profit_Margin = Margin keuntungan secara keseluruhan

Berdasarkan tabel di atas, wilayah California memiliki total penjualan dan total keuntungan terbesar dari semua wilayah, yaitu masing-masing 96892 dan 31785. Total penjualan terkecil dimiliki oleh New Hampshire, yaitu 14887. Sedangkan total penjualan terkecil dimiliki oleh New Mexico sebesar 799. Margin keuntungan terbesar didapatkan oleh Massachusetts sebesar 0.5487068.

3.2 Visualisasi Penjualan per Wilayah

Hasil visualisasi dari tabel di atas adalah sebagai berikut :

ggplot(rangkuman_tiap_state, aes(x = reorder(State, Total_Sales), y = Total_Sales)) +
  geom_bar(stat = "identity") +
  coord_flip() +
  labs(title = "Total Penjualan Antar State", 
       subtitle = "Tahun 2012-2013",
       x = "Wilayah", y = "Penjualan") +
  scale_y_continuous(labels = waiver()) +
  theme_minimal(base_size = 12)

3.3 Visualisasi Perbandingan antara Penjualan vs Keuntungan

Dari subbagian 3.1 jika divisualisasikan dengan scatter plot, didapat hasil diagram sebagai berikut :

ggplot(rangkuman_tiap_state, aes(x = Total_Sales, y = Total_Profit)) +
  geom_point(size = 2) +
  geom_text(aes(label = State), vjust = -1) +
  labs(title = "Penjualan vs Keuntungan per Wilayah",
       subtitle = "Tahun 2012-2013",
       x = "Total Penjualan",
       y = "Total Keuntungan") +
  theme_minimal(base_size = 12)

3.4 Analisis Budget dengan Aktual

Tahap selanjutnya adalah analisis budget dengan aktual dengan membandingkan penjualan dengan budget penjualan dan keuntungan dengan budget keuntungan. Tujuannya adalah untuk melihat apakah target di setiap wilayah tercapai.

analisis_budget <- coffee_data %>%
  group_by(State) %>%
  summarise(
    Actual_Sales = sum(Sales),
    Budget_Sales = sum(`Budget Sales`),
    Actual_Profit = sum(Profit),
    Budget_Profit = sum(`Budget Profit`)
  ) %>%
  mutate(
    Sales_Diff = Actual_Sales - Budget_Sales,
    Profit_Diff = Actual_Profit - Budget_Profit
  )
analisis_budget %>%
  kable(caption = "Perbedaan Nilai Budget dengan Aktual") %>%
  kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
                full_width = TRUE)
Perbedaan Nilai Budget dengan Aktual
State Actual_Sales Budget_Sales Actual_Profit Budget_Profit Sales_Diff Profit_Diff
California 96892 90680 31785 28380 6212 3405
Colorado 48179 45280 17743 17620 2899 123
Connecticut 25429 21840 7621 7920 3589 -299
Florida 37443 32600 12310 11800 4843 510
Illinois 69883 70640 30821 29280 -757 1541
Iowa 54750 47000 22212 18340 7750 3872
Louisiana 23161 21140 7355 7700 2021 -345
Massachusetts 29965 27000 16442 14600 2965 1842
Missouri 24647 22760 3601 5480 1887 -1879
Nevada 60159 46540 10616 10660 13619 -44
New Hampshire 14887 12880 2748 4020 2007 -1272
New Mexico 15892 15060 799 2660 832 -1861
New York 70852 63580 20096 18440 7272 1656
Ohio 34517 33280 10773 11960 1237 -1187
Oklahoma 27463 24780 8558 8780 2683 -222
Oregon 40899 35420 12439 12540 5479 -101
Texas 37410 37220 15766 15900 190 -134
Utah 35384 32320 7751 10480 3064 -2729
Washington 38930 34740 11405 12300 4190 -895
Wisconsin 33069 31400 8702 9900 1669 -1198

Dari tabel di atas, wilayah Nevada memiliki surplus penjualan paling besar, yaitu sebesar 13619. Namun untuk keuntungan justru mengalami defisit sebesar 44. Illinois menjadi satu-satunya wilayah yang mengalami defisit penjualan, yaitu 757. Sedangkan keuntungan justru berbanding terbalik, yaitu surplus sebesar 1541. Pemegang surplus keuntungan terbesar dimiliki oleh wilayah Iowa, yaitu sebesar 3872. Sedangkan pemegang defisit keuntungan terbesar dimiliki oleh wilayah Utah, yaitu 2729.

3.5 Visualisasi Perbandingan antara selisih

Dari subbagian 3.4 jika divisualisasikan dengan scatter plot, didapat hasil diagram sebagai berikut :

ggplot(analisis_budget, aes(x = Sales_Diff, y = Profit_Diff)) +
  geom_point(size = 2) +
  geom_hline(yintercept = 0, linetype = "dashed", color = "red") +
  geom_vline(xintercept = 0, linetype = "dashed", color = "red") +
  geom_text(aes(label = State), vjust = -1) +
  labs(title = "Selisih Budget dan Aktual Penjualan & Keuntungan per Wilayah",
       subtitle = "Tahun 2012-2013",
       x = "Selisih Penjualan",
       y = "Selisih Keuntungan") +
  theme_minimal(base_size = 12)

4. Eksplorasi Data Lebih Lanjut

Dikarenakan California menjadi wilayah dengan total penjualan dan total keuntungan terbesar, maka dilakukan eksplorasi data lebih lanjut untuk analisis data yang lebih mendetail.

coffee_data_california <- coffee_data %>%
  filter(State == "California")

head(coffee_data_california)
## # A tibble: 6 × 20
##   `Area Code` Date                Market `Market Size` Product    `Product Line`
##         <dbl> <dttm>              <chr>  <chr>         <chr>      <chr>         
## 1         661 2012-01-01 00:00:00 West   Major Market  Caffe Lat… Beans         
## 2         818 2012-01-01 00:00:00 West   Major Market  Caffe Moc… Beans         
## 3         213 2012-01-01 00:00:00 West   Major Market  Decaf Esp… Beans         
## 4         510 2012-01-01 00:00:00 West   Major Market  Chamomile  Leaves        
## 5         310 2012-01-01 00:00:00 West   Major Market  Lemon      Leaves        
## 6         707 2012-01-01 00:00:00 West   Major Market  Mint       Leaves        
## # ℹ 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>

4.1 Produk Terlaris di California

produk_terlaris_ca <- coffee_data_california %>%
  group_by(Product) %>%
  summarise(Total_Sales = sum(Sales)) %>%
  arrange(desc(Total_Sales))
ggplot(produk_terlaris_ca, aes(x = reorder(Product, -Total_Sales),
                               y = Total_Sales, fill = Product)) +
  geom_col(width = 0.7, show.legend = FALSE) +
  geom_text(aes(label = comma(Total_Sales)),
            vjust = -0.5, size = 3) +
  labs(
    title    = "Produk Terlaris di California",
    subtitle = "Tahun 2012-2013",
    x = "Produk", y = "Total Penjualan"
  ) +
  theme(axis.text.x = element_text(angle = 90)) +
  theme_minimal(base_size = 8)

Dari grafik di atas, diambil 4 produk teratas untuk membandingkan histori penjualannya.

4.2 Tren Penjualan 4 Produk Teratas

trend_product_sales <- coffee_data_california %>%
  group_by(Date, Product) %>%
  summarise(Total_Sales = sum(Sales)) %>%
  slice_max(Total_Sales, n = 4)
## `summarise()` has grouped output by 'Date'. You can override using the
## `.groups` argument.
ggplot(trend_product_sales, aes(x = Date, y = Total_Sales,color = Product)) +
  geom_line(linewidth = 1) +
  geom_point(size = 2) +
  labs(title = "Tren Penjualan 4 Produk Teratas di California",
       subtitle = "Tahun 2012-2013",
       x = "Tanggal",
       y = "Total Penjualan") +
  theme_minimal(base_size = 12)

Berdasarkan histori penjualan di atas, produk kopi Colombian secara konsisten menjadi produk terlaris setiap bulan, begitu juga dengan produk espreso Decaf Espresso yang konsisten berada di peringkat 2. Puncak penjualan produk teh herbal Lemon selalu terjadi di bulan Agustus. Secara keseluruhan, produk-produk tersebut mengalami penurunan pada bulan November 2012 dan Desember 2013.

4.3 Korelasi Penjualan dengan Keuntungan

cor.test(
  coffee_data_california$Sales,
  coffee_data_california$Profit
)
## 
##  Pearson's product-moment correlation
## 
## data:  coffee_data_california$Sales and coffee_data_california$Profit
## t = 27.52, df = 286, p-value < 2.2e-16
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.8168484 0.8808323
## sample estimates:
##       cor 
## 0.8519907

5. Uji Statistik

5.1 Uji ANOVA

Tahap selanjutnya adalah uji statistik ANOVA untuk menganalisis apakah rata-rata penjualan berbeda antar produk.

Hipotesis

H0 : Rata-rata penjualan antar produk adalah sama

H1 : Setidaknya terdapat satu produk dengan rata-rata berbeda

anova_produk <- aov(Sales ~ Product, data = coffee_data_california)

summary(anova_produk)
##              Df   Sum Sq Mean Sq F value Pr(>F)    
## Product      11 11777760 1070705   523.3 <2e-16 ***
## Residuals   276   564664    2046                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

5.2 Uji TukeyHSD

Berdasarkan perhitungan ANOVA di atas dengan p-value < 0.05, maka H0 ditolak yang berarti terdapat perbedaan rata-rata yang signifikan. Maka tahap selanjutnya adalah uji lanjutan dengan TukeyHSD.

TukeyHSD(anova_produk)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = Sales ~ Product, data = coffee_data_california)
## 
## $Product
##                                         diff          lwr        upr     p adj
## Caffe Latte-Amaretto              386.958333  343.9165701  430.00010 0.0000000
## Caffe Mocha-Amaretto              207.375000  164.3332367  250.41676 0.0000000
## Chamomile-Amaretto                146.625000  103.5832367  189.66676 0.0000000
## Colombian-Amaretto                647.125000  604.0832367  690.16676 0.0000000
## Darjeeling-Amaretto               158.041667  114.9999034  201.08343 0.0000000
## Decaf Espresso-Amaretto           495.541667  452.4999034  538.58343 0.0000000
## Decaf Irish Cream-Amaretto         42.708333   -0.3334299   85.75010 0.0539323
## Earl Grey-Amaretto                 80.250000   37.2082367  123.29176 0.0000002
## Green Tea-Amaretto                 54.708333   11.6665701   97.75010 0.0021883
## Lemon-Amaretto                    415.291667  372.2499034  458.33343 0.0000000
## Mint-Amaretto                      45.541667    2.4999034   88.58343 0.0276133
## Caffe Mocha-Caffe Latte          -179.583333 -222.6250966 -136.54157 0.0000000
## Chamomile-Caffe Latte            -240.333333 -283.3750966 -197.29157 0.0000000
## Colombian-Caffe Latte             260.166667  217.1249034  303.20843 0.0000000
## Darjeeling-Caffe Latte           -228.916667 -271.9584299 -185.87490 0.0000000
## Decaf Espresso-Caffe Latte        108.583333   65.5415701  151.62510 0.0000000
## Decaf Irish Cream-Caffe Latte    -344.250000 -387.2917633 -301.20824 0.0000000
## Earl Grey-Caffe Latte            -306.708333 -349.7500966 -263.66657 0.0000000
## Green Tea-Caffe Latte            -332.250000 -375.2917633 -289.20824 0.0000000
## Lemon-Caffe Latte                  28.333333  -14.7084299   71.37510 0.5728601
## Mint-Caffe Latte                 -341.416667 -384.4584299 -298.37490 0.0000000
## Chamomile-Caffe Mocha             -60.750000 -103.7917633  -17.70824 0.0003142
## Colombian-Caffe Mocha             439.750000  396.7082367  482.79176 0.0000000
## Darjeeling-Caffe Mocha            -49.333333  -92.3750966   -6.29157 0.0103248
## Decaf Espresso-Caffe Mocha        288.166667  245.1249034  331.20843 0.0000000
## Decaf Irish Cream-Caffe Mocha    -164.666667 -207.7084299 -121.62490 0.0000000
## Earl Grey-Caffe Mocha            -127.125000 -170.1667633  -84.08324 0.0000000
## Green Tea-Caffe Mocha            -152.666667 -195.7084299 -109.62490 0.0000000
## Lemon-Caffe Mocha                 207.916667  164.8749034  250.95843 0.0000000
## Mint-Caffe Mocha                 -161.833333 -204.8750966 -118.79157 0.0000000
## Colombian-Chamomile               500.500000  457.4582367  543.54176 0.0000000
## Darjeeling-Chamomile               11.416667  -31.6250966   54.45843 0.9993026
## Decaf Espresso-Chamomile          348.916667  305.8749034  391.95843 0.0000000
## Decaf Irish Cream-Chamomile      -103.916667 -146.9584299  -60.87490 0.0000000
## Earl Grey-Chamomile               -66.375000 -109.4167633  -23.33324 0.0000436
## Green Tea-Chamomile               -91.916667 -134.9584299  -48.87490 0.0000000
## Lemon-Chamomile                   268.666667  225.6249034  311.70843 0.0000000
## Mint-Chamomile                   -101.083333 -144.1250966  -58.04157 0.0000000
## Darjeeling-Colombian             -489.083333 -532.1250966 -446.04157 0.0000000
## Decaf Espresso-Colombian         -151.583333 -194.6250966 -108.54157 0.0000000
## Decaf Irish Cream-Colombian      -604.416667 -647.4584299 -561.37490 0.0000000
## Earl Grey-Colombian              -566.875000 -609.9167633 -523.83324 0.0000000
## Green Tea-Colombian              -592.416667 -635.4584299 -549.37490 0.0000000
## Lemon-Colombian                  -231.833333 -274.8750966 -188.79157 0.0000000
## Mint-Colombian                   -601.583333 -644.6250966 -558.54157 0.0000000
## Decaf Espresso-Darjeeling         337.500000  294.4582367  380.54176 0.0000000
## Decaf Irish Cream-Darjeeling     -115.333333 -158.3750966  -72.29157 0.0000000
## Earl Grey-Darjeeling              -77.791667 -120.8334299  -34.74990 0.0000005
## Green Tea-Darjeeling             -103.333333 -146.3750966  -60.29157 0.0000000
## Lemon-Darjeeling                  257.250000  214.2082367  300.29176 0.0000000
## Mint-Darjeeling                  -112.500000 -155.5417633  -69.45824 0.0000000
## Decaf Irish Cream-Decaf Espresso -452.833333 -495.8750966 -409.79157 0.0000000
## Earl Grey-Decaf Espresso         -415.291667 -458.3334299 -372.24990 0.0000000
## Green Tea-Decaf Espresso         -440.833333 -483.8750966 -397.79157 0.0000000
## Lemon-Decaf Espresso              -80.250000 -123.2917633  -37.20824 0.0000002
## Mint-Decaf Espresso              -450.000000 -493.0417633 -406.95824 0.0000000
## Earl Grey-Decaf Irish Cream        37.541667   -5.5000966   80.58343 0.1558033
## Green Tea-Decaf Irish Cream        12.000000  -31.0417633   55.04176 0.9988906
## Lemon-Decaf Irish Cream           372.583333  329.5415701  415.62510 0.0000000
## Mint-Decaf Irish Cream              2.833333  -40.2084299   45.87510 1.0000000
## Green Tea-Earl Grey               -25.541667  -68.5834299   17.50010 0.7224531
## Lemon-Earl Grey                   335.041667  291.9999034  378.08343 0.0000000
## Mint-Earl Grey                    -34.708333  -77.7500966    8.33343 0.2532113
## Lemon-Green Tea                   360.583333  317.5415701  403.62510 0.0000000
## Mint-Green Tea                     -9.166667  -52.2084299   33.87510 0.9999168
## Mint-Lemon                       -369.750000 -412.7917633 -326.70824 0.0000000

Dari Uji Tukey di atas, dapat disimpulkan bahwa ada banyak variabel yang signifikan.

5.3 Uji Asumsi Normalitas

Digunakan uji Shapiro-Wilk untuk mengetahui apakah data berdistribusi normal.

Hipotesis

H0 = Data berdistribusi normal

H1 = Data tidak berdistribusi normal

shapiro.test(coffee_data_california$Sales)
## 
##  Shapiro-Wilk normality test
## 
## data:  coffee_data_california$Sales
## W = 0.89129, p-value = 1.703e-13

Berdasarkan hasil uji Shapiro-Wilk di atas, maka H0 ditolak yang berarti data penjualan di wilayah California tidak berdistribusi normal. Kondisi ini menunjukkan adanya kemungkinan kemencengan atau outlier. Maka analisis selanjutnya adalah dengan menggunakan uji Kruskal-Wallis.

5.4 Uji Kruskal-Wallis

Hipotesis

H0 = Median penjualan antar produk adalah sama

H1 = Median penjualan antar produk berbeda

kruskal.test(Sales ~ Product, data = coffee_data_california)
## 
##  Kruskal-Wallis rank sum test
## 
## data:  Sales by Product
## Kruskal-Wallis chi-squared = 267.53, df = 11, p-value < 2.2e-16

Berdasarkan hasil uji Kruskal-Wallis di atas, maka H0 ditolak yang berarti median penjualan antar produk berbeda. Sehingga diperlukan uji lanjutan Dunn test (post hoc).

6. Kesimpulan

California mencatatkan total penjualan tertinggi dan keuntungan terbesar, namun margin keuntungannya bukan yang tertinggi. Ini menandakan bahwa volume besar tidak selalu berarti efisiensi terbaik. California menjadi salah satu wilayah yang mengalami surplus penjualan dan keuntungan, menunjukkan bahwa performa operasional yang solid dan perencanaan anggaran yang cukup realistis. Dari semua produk, produk kopi Colombian menjadi produk terlaris secara konsisten, disusul produk-produk lainnya. California layak menjadi fokus utama strategi bisnis karena volume penjualan dan keuntungannya yang dominan. Produk kopi COlombian dan Decaf Espresso perlu dipertahankan sebagai andalan, sementara produk-produk lainnya seperti Lemon perlu dioptimalkan melalui strategi promosi musiman di bulan-bulan puncak.