Dalam industri minuman, khususnya bisnis rantai kopi, pemantauan performa produk dari waktu ke waktu merupakan bagian penting dalam strategi pemasaran dan operasional. Salah satu produk unggulan yang secara konsisten ditawarkan oleh banyak jaringan kopi adalah Colombian Coffee, yang dikenal karena cita rasa khas dan asal-usulnya yang premium.
Menganalisis perbandingan profit antara tahun 2012 dan 2013 memberikan gambaran yang lebih jelas mengenai tren pasar dan faktor-faktor apa saja yang mempengaruhi naik turunnya keuntungan dari produk kopi Kolombia. Hal ini penting tidak hanya untuk pelaku industri kopi, tetapi juga untuk pemerintah dan lembaga perdagangan dalam merumuskan strategi dagang dan kebijakan ekspor yang berkelanjutan.
Uji Wilcoxon signed-rank adalah uji statistik non-parametrik yang digunakan untuk membandingkan dua sampel berpasangan yang saling terkait, guna menguji apakah terdapat perbedaan signifikan antara kedua sampel tersebut. Uji ini digunakan ketika data tidak terdistribusi normal, sehingga tidak memenuhi asumsi untuk uji t berpasangan. Prosedur uji ini melibatkan perhitungan selisih antara nilai berpasangan, memberi peringkat pada nilai mutlak selisih, dan menghitung jumlah peringkat positif dan negatif. Nilai uji yang diperoleh kemudian dibandingkan dengan nilai kritis atau p-value untuk menentukan apakah hipotesis nol (tidak ada perbedaan) dapat ditolak, dengan p-value yang lebih kecil dari tingkat signifikansi yang ditentukan (misalnya 0,05) menunjukkan adanya perbedaan yang signifikan.
Uji ini memiliki asumsi sebagai berikut:
Data Berpasangan: Setiap observasi dalam sampel pertama berpasangan dengan observasi di sampel kedua (contoh: sebelum dan sesudah perlakuan).
Skala Pengukuran: Data minimal berskala interval atau ordinal.
Distribusi Simetris: Selisih antara pasangan data (di = X1i − X2i) harus berdistribusi simetris sekitar median (tidak harus normal).
Independensi: Selisih antar pasangan harus independen (tidak saling memengaruhi).
\[ H_0 : d_{0.5} = 0 \quad \text{vs} \quad H_1 : d_{0.5} \neq 0 \] \[ H_0 : d_{0.5} \leq 0 \quad \text{vs} \quad H_1 : d_{0.5} > 0 \] \[ H_0 : d_{0.5} \geq 0 \quad \text{vs} \quad H_1 : d_{0.5} < 0 \]
Misal \((X_1, Y_1), (X_2, Y_2), \ldots, (X_n, Y_n)\) pasangan observasi dengan selisih \(d_i = Y_i - X_i\).
Diasumsikan data yang \(X_i = Y_i\) sudah dihilangkan, sehingga \(d_i > 0\) atau \(d_i < 0\).
Diasumsikan \(d_i\) = sampel random dari suatu distribusi kontinu yang simetrik (terhadap median \(M_d\)).
Misal akan diuji \(H_0 : M_d = 0\) versus \(H_1 : M_d \ne 0\), yang dapat dipandang sebagai uji \(H_0 : \mu_x = \mu_y\) versus \(H_1 : \mu_x \ne \mu_y\).
Ambil \(|d_i|, \; i = 1, 2, \ldots, n\) diurutkan dari terkecil sampai terbesar dan diranking. Rank 1 untuk \(|d_i|\) terkecil, rank \(n\) untuk \(|d_i|\) terbesar.
Jika terdapat beberapa \(|d_i|\) yang sama, maka diberi rank \(R_i\text{rank}(|d_i|)\) yaitu rata-rata rank. Yang didefinisikan sebagai: \[ \mu_1 = \begin{cases} R_i, & \text{jika } d_i = Y_i - X_i > 0 \\ 0, & \text{jika } d_i = Y_i - X_i < 0 \end{cases} \]
Selanjutnya dihitung \[ T^+ = \mu_1 + \mu_2 + \ldots + \mu_n \] yang merupakan jumlah rank dari semua \(d_i\) yang positif.
Daerah kritis: tolak \(H_0\) jika \(T^+ \le C_1\) atau \(T^+ \ge C_2\), dengan \(C_1\) dan \(C_2\) dipilih sedemikian sehingga tingkat signifikansi mendekati \(\alpha\) yang diinginkan, terdapat pada Tabel VII. \[ T \le C \quad \text{atau} \quad T^+ \ge \frac{n(n+1)}{2} - C \]
Untuk sampel besar \(n > 20\) dapat digunakan pendekatan normal:
\[E(T^+) = \frac{n(n+1)}{4}, \quad Var(T^+) = \frac{n(n+1)(2n+1)}{24}\]
atau
\[Z = \frac{T^+ - \frac{n(n+1)}{4}}{\sqrt{n(n+1)\left(2n + \frac{1}{24}\right)}} \sim N(0,1)\] Untuk uji satu sisi, dapat digunakan ekor atas/bawah distribusi saja.
Langkah yang pertama yang dapat dilakukan adalah mempersiapkan library yang akan digunakan dalam analisis data menggunakan software R. Library dapat menggunakan berbagai fungsi dan alat yang diperlukan untuk melakukan analisis data yang lebih efisien dan efektif.
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(readxl)
library(ggplot2)
Langkah selanjutnya adalah mengimport data yang akan digunakan dari file excel ke dalam R. Data yang akan digunakan pada analisis ini adalah data profit produk kopi “Colombian” pada tahun 2012 dan tahun 2013. Berikut variabel-variabel yang akan digunakan dalam analisis ini :
• Date : Tanggal transaksi penjualan terjadi. Digunakan untuk mengidentifikasi tahun penjualan (2012 atau 2013).
• Product : Nama produk yang dijual. Dalam analisis ini difilter menjadi hanya “Colombian”.
• Product Type : Jenis produk. Untuk konteks ini, hanya produk bertipe “Coffee” yang dianalisis.
• Profit : Profit bersih yang dihasilkan dari penjualan setiap baris transaksi. Ini adalah variabel utama yang dibandingkan antar tahun.
#Input Data
library(dplyr)
library(readxl)
library(ggplot2)
data <- read_excel("C:\\Users\\HP\\Documents\\SIM SMSTR 4\\CMSIM\\3. CM1 - Coffee Chain Datasets.xlsx", sheet = "data")
Setelah data dimuat, langkah berikutnya adalah menyaring data agar hanya berisi transaksi penjualan kopi “Colombian”. Penyaringan ini dilakukan dengan memilih baris yang bertipe produk “Coffee” dan bernama “Colombian”, lalu hanya kolom penting seperti tanggal, nama produk, jenis produk, dan profit yang disimpan untuk analisis selanjutnya.
# Mengambil Subset Data yang Hanya Berisi Transaksi Penjualan Produk Kopi "Colombian"
colombian_data <- data %>%
filter(`Product Type` == "Coffee", Product == "Colombian") %>%
select(Date, Product, `Product Type`, Profit)
Setelah mendapatkan data khusus untuk kopi Colombian, data profit dipisahkan berdasarkan tahun transaksi, yaitu tahun 2012 dan 2013. Tujuannya agar lebih mudah melihat dan membandingkan performa penjualan di masing-masing tahun.
# Pisahkan profit berdasarkan tahun
profit_2012 <- colombian_data %>%
filter(format(Date, "%Y") == "2012") %>%
pull(Profit)
print(profit_2012)
## [1] 68 111 5 39 42 9 115 68 367 25 262 30 26 29 159 30 262 -3
## [19] 28 38 68 115 6 42 38 15 121 63 340 23 245 34 24 29 164 30
## [37] 245 -5 25 44 69 119 6 39 35 17 114 67 366 26 259 29 26 29
## [55] 166 26 259 -4 24 48 63 156 3 35 27 17 107 73 397 27 276 30
## [73] 27 33 161 25 276 -2 8 54 68 161 7 33 24 17 98 78 434 31
## [91] 295 36 31 30 183 22 295 -1 8 58 68 167 8 31 19 24 79 99
## [109] 547 42 357 40 43 29 192 19 357 0 4 66 71 208 9 31 18 32
## [127] 75 104 564 43 370 36 44 28 206 16 370 -1 0 75 39 163 15 27
## [145] 19 35 75 104 563 44 368 46 44 53 250 15 368 1 8 76 42 129
## [163] 7 25 29 16 91 86 465 34 312 46 34 47 197 22 313 2 18 56
## [181] 27 120 7 35 28 18 115 64 348 24 247 47 23 74 185 22 247 -2
## [199] 21 56 27 139 5 38 32 16 122 63 324 20 236 44 20 71 174 27
## [217] 235 -4 14 50 29 194 8 26 24 20 105 73 390 28 271 46 27 66
## [235] 188 21 271 1 1 58
profit_2013 <- colombian_data %>%
filter(format(Date, "%Y") == "2013") %>%
pull(Profit)
print(profit_2013)
## [1] 106 173 8 61 65 14 179 106 572 39 408 47 41 45 248 47 408 -5
## [19] 44 59 101 171 9 62 56 22 180 93 505 34 364 50 36 43 243 45
## [37] 364 -7 37 65 102 177 9 58 52 25 169 99 543 39 384 43 39 43
## [55] 246 39 384 -6 36 71 93 232 4 52 40 25 159 108 589 40 410 45
## [73] 40 49 239 37 410 -3 12 80 94 222 10 46 33 23 135 108 599 43
## [91] 407 50 43 41 253 30 407 -1 11 80 94 230 11 43 26 33 109 137
## [109] 755 58 493 55 59 40 265 26 493 0 6 91 98 287 12 43 25 44
## [127] 104 144 778 59 511 50 61 39 284 22 511 -1 0 104 54 225 21 37
## [145] 26 48 104 144 777 61 508 63 61 73 345 21 508 1 11 105 62 191
## [163] 10 37 43 24 135 128 690 50 463 68 50 70 292 33 465 3 27 83
## [181] 40 178 10 52 42 27 171 95 516 36 367 70 34 110 275 33 367 -3
## [199] 31 83 40 206 7 56 47 24 181 93 481 30 350 65 30 105 258 40
## [217] 349 -6 21 74 43 288 12 39 36 30 156 108 579 42 402 68 40 98
## [235] 279 31 402 1 1 86
Uji normalitas merupakan salah satu uji asumsi klasik untuk mengetahui apakah data berasal dari populasi yang berdistribusi normal atau diambil dari populasi normal. Distribusi normal adalah distribusi yang simetris dengan modus, mean, dan median berada di pusat.terdapat beberapa cara untuk melakukan uji normalitas, salah satunya adalah Q-Q plot. Q-Q plot adalah suatu scatter plot yang membandingkan distribusi empiris dengan fitted distribution dalam kaitannya dengan nilai dimensi suatu variabel. Kriteria normalitas data menurut aturan Q-Q plot adalah jika sampel berasal dari suatu populasi yang berdistribusi normal, maka titik-titik nilai data akan terletak kurang lebih dalam satu garis. Syarat untuk melakukan uji non parametrik adalah data tidak berdistribusi normal, maka dari itu sebelum melakukan uji yang lainnya diperlukan untuk melakukan uji normalitas sebagai berikut :
Hipotesis
H0 : Data berdistribusi normal
H1 : Data tidak berdistribusi normal
Taraf Signifikansi
α = 0.05
Daerah Kritis
H0 ditolak jika nilai p-value < 0.05
Statistik Uji
Uji normalitas Shapiro-Wilk dan Q-Q plot untuk data profit produk kopi “Colombian” pada tahun 2012
# Uji normalitas Shapiro-Wilk dan Q-Q Plot untuk 2012
shapiro.test(profit_2012)
##
## Shapiro-Wilk normality test
##
## data: profit_2012
## W = 0.73978, p-value < 2.2e-16
qqnorm(profit_2012, main = "Q-Q Plot Profit 2012", col = "blue")
qqline(profit_2012, col = "red")
Uji normalitas dengan Shapiro-Wilk dan Q-Q plot untuk data profit produk kopi “Colombian” pada tahun 2013
# Uji normalitas Shapiro-Wilk dan Q-Q Plot untuk 2013
shapiro.test(profit_2013)
##
## Shapiro-Wilk normality test
##
## data: profit_2013
## W = 0.74424, p-value < 2.2e-16
qqnorm(profit_2013, main = "Q-Q Plot Profit 2013", col = "blue")
qqline(profit_2013, col = "red")
Kesimpulan
Berdasarkan kedua hasil uji Shapiro-Wilk dan Q-Q plot untuk data profit tahun 2012 dan 2013, terlihat bahwa titik-titik data tidak membentuk garis lurus dan menyimpang dari garis diagonal, terutama pada bagian ekor distribusi. Hal ini menunjukkan adanya penyimpangan dari distribusi normal. Dengan demikian, dapat disimpulkan bahwa data profit tahun 2012 dan 2013 tidak berdistribusi normal.
Karena pada uji normalitas data disimpulkan tidak berdistribusi normal, maka dilakukan uji Wilcoxon signed-rank untuk membandingkan dua sampel berpasangan yang saling terkait. Uji ini merupakan alternatif dari uji t berpasangan yang digunakan ketika data tidak memenuhi asumsi normalitas.
Hipotesis
H0 : Tidak ada perbedaan yang signifikan dalam profit produk kopi ‘Colombian’ antara tahun 2012 dan 2013
H1 : Ada perbedaan yang signifikan dalam profit produk kopi ‘Colombian’ antara tahun 2012 dan 2013
Taraf Signifikansi
α = 0.05
Daerah Kritis
H0 ditolak jika nilai p-value < 0.05
Statistik Uji
# Uji Wilcoxon signed-rank
wilcox.test(profit_2012, profit_2013, paired = TRUE)
##
## Wilcoxon signed rank test with continuity correction
##
## data: profit_2012 and profit_2013
## V = 35, p-value < 2.2e-16
## alternative hypothesis: true location shift is not equal to 0
Kesimpulan
Berdasarkan hasil uji Wilcoxon signed rank test terhadap profit produk kopi ‘Colombian’ antara tahun 2012 dan 2013, diperoleh nilai statistik V = 35 dengan p-value < 2.2e-16. Artinya, terdapat perbedaan yang signifikan dalam profit produk kopi ‘Colombian’ antara tahun 2012 dan 2013.
Dari hasil analisis yang dilakukan, dapat disimpulkan bahwa berdasarkan uji normalitas Shapiro-Wilk terhadap profit tahun 2012 dan 2013, keduanya memiliki nilai p < 0.05 (tepatnya < 2.2e-16), yang mengindikasikan bahwa data tidak berdistribusi normal. Hal ini diperkuat oleh hasil Q-Q plot yang menunjukkan penyimpangan dari garis normal. Karena asumsi normalitas tidak terpenuhi, maka digunakan uji non-parametrik Wilcoxon signed-rank untuk membandingkan profit antara kedua tahun. Hasil uji Wilcoxon menunjukkan adanya perbedaan yang signifikan (p-value < 2.2e-16), sehingga dapat disimpulkan bahwa terdapat perbedaan signifikan dalam profit penjualan kopi Colombian antara tahun 2012 dan 2013.