Nama : Santi Amelia
NIM : M0725052
Kelas : C
Laporan ini disusun sebagai bentuk pemenuhan tugas dalam mata kuliah Sistem Informasi Manajemen. Dalam tugas ini, mahasiswa diminta untuk melakukan pengambilan suatu insight, visualisasi data, analisis data, dan menginterpretasikan hasil visualisasi dan analisis data. Dataset yang digunakan merupakan data Coffe Chain Datasets. Dalam analisis ini saya mengimpor ke dalam R menggunakan dataset format .sql.
library(odbc)
## Warning: package 'odbc' was built under R version 4.5.2
library(DBI)
## Warning: package 'DBI' was built under R version 4.5.2
con = dbConnect(odbc(),
Driver = "MySQL ODBC 8.0 ANSI Driver",
Server = "127.0.0.1",
UID = "root",
PWD = "lup4p4ssw0rd",
Port = 3306,
Database = "db")
dbListTables(con)
## [1] "facttable" "location" "product"
facttable <- dbReadTable(con, "facttable")
location <- dbReadTable(con, "location")
product <- dbReadTable(con, "product")
colnames(facttable)
## [1] "Profit" "Margin" "Sales" "COGS"
## [5] "Total.Expenses" "Marketing" "Inventory" "Budget.Profit"
## [9] "Budget.COGS" "Budget.Margin" "Budget.Sales" "Area.Code"
## [13] "ProductId" "Date"
colnames(location)
## [1] "Area.Code" "State" "Market" "Market.Size"
colnames(product)
## [1] "Product.Line" "Product.Type" "Product" "ProductId" "Type"
Terdapat kemungkinan bahwa tidak semua jenis produk memberikan tingkat rasio keuntungan yang sebanding dengan tingkat penjualannya. Perbedaan karakteristik masing-masing jenis produk, seperti biaya produksi, harga jual, dan strategi pemasaran memungkinkan perbedaan tingkat keuntungan pada setiap produk. Maka dari itu, dibutuhkan analisis lebih lanjut untuk mengetahui hubungan antar tingkat rasio keuntungan dengan tingkat penjualan dari masing-masing produk tersebut.
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
library(readr)
## Warning: package 'readr' was built under R version 4.5.3
# Gabungkan data
data_full <- facttable %>%
left_join(product, by = "ProductId")
# Membuat kolom Profit_Ratio
data_full <- data_full %>%
mutate(Profit_Ratio = Profit / Sales)
head(data_full)
## Profit Margin Sales COGS Total.Expenses Marketing Inventory Budget.Profit
## 1 94 130 219 89 36 24 777 100
## 2 68 107 190 83 39 27 623 80
## 3 101 139 234 95 38 26 821 110
## 4 30 56 100 44 26 14 623 30
## 5 54 80 134 54 26 15 456 70
## 6 53 108 180 72 55 23 558 80
## Budget.COGS Budget.Margin Budget.Sales Area.Code ProductId
## 1 90 130 220 719 1
## 2 80 110 190 970 2
## 3 100 140 240 970 3
## 4 30 50 80 303 13
## 5 60 90 150 303 5
## 6 80 130 210 720 6
## Date Product.Line Product.Type Product Type
## 1 2012-01-01 00:00:00 Beans Coffee Amaretto Regular
## 2 2012-01-01 00:00:00 Beans Coffee Colombian Regular
## 3 2012-01-01 00:00:00 Beans Coffee Decaf Irish Cream Decaf
## 4 2012-01-01 00:00:00 Leaves Tea Green Tea Regular
## 5 2012-01-01 00:00:00 Beans Espresso Caffe Mocha Regular
## 6 2012-01-01 00:00:00 Beans Espresso Decaf Espresso Decaf
## Profit_Ratio
## 1 0.4292237
## 2 0.3578947
## 3 0.4316239
## 4 0.3000000
## 5 0.4029851
## 6 0.2944444
# Membandingkan rata-rata sales, rata-rata profit, dan rata-rata profit ratio
summary_product <- data_full %>%
group_by(Product.Type) %>%
summarise(
avg_sales = mean(Sales, na.rm = TRUE),
avg_profit = mean(Profit, na.rm = TRUE),
avg_profit_ratio = mean(Profit_Ratio, na.rm = TRUE)
)
print(summary_product)
## # A tibble: 4 × 4
## Product.Type avg_sales avg_profit avg_profit_ratio
## <chr> <dbl> <dbl> <dbl>
## 1 Coffee 205. 70.7 0.240
## 2 Espresso 190. 58.4 0.217
## 3 Herbal Tea 196. 59.9 0.250
## 4 Tea 180. 55.2 -0.153
Berdasarkan hasil analisis, produk Coffee memiliki rata-rata penjualan dan profit tertinggi, sehingga menjadi kontributor utama terhadap pendapatan perusahaan. Sementara itu, Herbal Tea menunjukkan profit ratio tertinggi, yang mengindikasikan efisiensi keuntungan yang lebih baik dibandingkan produk lainnya. Sebaliknya, produk Tea memiliki profit ratio negatif, yang menunjukkan bahwa produk tersebut mengalami kerugian meskipun tetap menghasilkan penjualan. Oleh karena itu, diperlukan evaluasi lebih lanjut terhadap strategi penetapan harga maupun biaya pada produk Tea.
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.5.2
library(scales)
## Warning: package 'scales' was built under R version 4.5.2
##
## Attaching package: 'scales'
## The following object is masked from 'package:readr':
##
## col_factor
ggplot(summary_product,
aes(x = reorder(Product.Type, avg_profit_ratio),
y = avg_profit_ratio,
fill = avg_profit_ratio > 0)) +
geom_col(width = 0.7, color = "white") +
# Garis nol
geom_hline(yintercept = 0, color = "black", linewidth = 0.8) +
# Label
geom_text(aes(label = percent(avg_profit_ratio, accuracy = 0.01),
vjust = ifelse(avg_profit_ratio > 0, -0.5, 1.5)),
size = 4) +
# Warna beda positif & negatif
scale_fill_manual(values = c("TRUE" = "#2ECC71",
"FALSE" = "#E74C3C")) +
scale_y_continuous(labels = percent_format(),
expand = expansion(c(0.1, 0.1))) +
coord_flip() +
labs(
title = "Rata-rata Profit Ratio per Product Type",
subtitle = "Hijau = Untung | Merah = Rugi",
x = "Product Type",
y = "Average Profit Ratio"
) +
theme_minimal() +
theme(legend.position = "none")
Visualisasi tersebut menggambarkan perbandingan rata-rata rasio keuntungan untuk empat jenis produk yang berbeda, yaitu Herbal Tea, Coffee, Espresso, dan Tea. Pada grafik ini, warna hijau merepresentasikan keuntungan, sementara warna merah menandakan adanya kerugian.
Berdasarkan data yang ditampilkan, Herbal Tea merupakan jenis produk dengan performa terbaik karena memiliki rata-rata rasio keuntungan tertinggi mencapai \(24.98\%\). Posisi kedua ditempati oleh kategori Coffee dengan rasio keuntungan sebesar \(24.02\%\). Kategori Espresso juga menunjukkan performa yang cukup baik dengan rasio keuntungan di angka \(21.66\%\). Ketiga produk ini berada di sisi kanan garis nol, yang berarti semuanya memberikan keuntungan terhadap pendapatan perusahaan.
Di sisi lain, terdapat jenis produk Tea yang merupakan satu-satunya produk yang merugi. Kategori ini memiliki rata-rata rasio keuntungan sebesar \(-15.31\%\), yang divisualisasikan dengan batang berwarna merah ke arah kiri. Hal ini menunjukkan adanya masalah efisiensi atau margin pada jenis produk teh dibandingkan dengan teh herbal, espresso, atau kopi. Produk Tea yang merugi menunjukkan perlunya evaluasi mendalam terhadap strategi harga, biaya produksi, atau manajemen operasional khusus untuk produk Tea tersebut agar performanya dapat diperbaiki di masa mendatang.
library(ggplot2)
library(scales)
ggplot(data_full,
aes(x = Product.Type,
y = Sales,
fill = after_stat(y))) +
stat_summary(fun = mean, geom = "col", width = 0.7, color = "white") +
stat_summary(fun = mean, geom = "text",
aes(label = comma(round(after_stat(y), 0))),
vjust = -0.5, size = 4) +
scale_fill_gradient(low = "#36D1DC", high = "#5B86E5") +
coord_flip() +
labs(
title = "Rata-rata Penjualan per Product Type",
subtitle = "Perbandingan performa penjualan antar kategori produk",
x = "Product Type",
y = "Average Sales"
) +
theme_minimal(base_size = 12) +
theme(
plot.title = element_text(face = "bold", size = 14),
plot.subtitle = element_text(color = "gray40"),
axis.text.y = element_text(face = "bold"),
legend.position = "none"
)
Berdasarkan data yang ditampilkan, Coffe merupakan jenis produk dengan performa penjualan terbaik karena memiliki rata-rata penjualan tertinggi mencapai \(205\). Posisi kedua ditempati oleh kategori Herbal Tea dengan rata-rata penjualan sebesar \(196\). Kategori Espresso juga menunjukkan performa yang cukup baik dengan rata-rata penjualan di angka \(190\). Selanjutnya kategori Tea yang menunjukkan rata-rata penjualan terkecil di angka sebesar \(180\). Semua produk tersebut menghasilkan penjualan.
library(ggplot2)
library(scales)
ggplot(data_full,
aes(x = Product.Type,
y = Profit,
fill = after_stat(y))) +
stat_summary(fun = mean, geom = "col", width = 0.7, color = "white") +
stat_summary(fun = mean, geom = "text",
aes(label = comma(round(after_stat(y), 0))),
vjust = -0.5, size = 4) +
scale_fill_gradient(low = "#36D1DC", high = "#5B86E5") +
coord_flip() +
labs(
title = "Rata-rata Profit per Product Type",
subtitle = "Perbandingan profit penjualan antar kategori produk",
x = "Product Type",
y = "Average Profit"
) +
theme_minimal(base_size = 12) +
theme(
plot.title = element_text(face = "bold", size = 14),
plot.subtitle = element_text(color = "gray40"),
axis.text.y = element_text(face = "bold"),
legend.position = "none"
)
Berdasarkan data yang ditampilkan, Coffe merupakan jenis produk dengan profit penjualan terbaik karena memiliki rata-rata profit tertinggi mencapai \(71\). Posisi kedua ditempati oleh kategori Herbal Tea dengan rata-rata profit sebesar \(60\). Kategori Espresso juga menunjukkan performa yang cukup baik dengan rata-rata penjualan di angka \(58\). Selanjutnya kategori Tea yang menunjukkan rata-rata penjualan terkecil di angka sebesar \(55\). Semua produk tersebut menghasilkan profit.
\(H_0: \mu_1 = \mu_2 = \mu_3 = \mu_4\)
\(H_1: \text{Minimal ada satu rata-rata yang berbeda}\)
Taraf signifikansi yang digunakan adalah \(\alpha = 0.05\).
anova_model <- aov(Profit_Ratio ~ Product.Type, data = data_full)
summary(anova_model)
## Df Sum Sq Mean Sq F value Pr(>F)
## Product.Type 3 112 37.50 15.68 3.84e-10 ***
## Residuals 4244 10147 2.39
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Diperoleh \(p\text{-value} = 0.000000000384\), sehingga \(H_0\) ditolak.
Terdapat perbedaan rata-rata profit ratio antar jenis produk.