R Markdown

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
databaru <- read.csv("data_penjualan.csv")
head(databaru)
##   ID_Transaksi    Tanggal   Cabang   Admin    Kategori           Produk
## 1      TRX0001 2025-01-01  Jakarta    Maya  Elektronik   Smartwatch Fit
## 2      TRX0002 2025-01-01 Semarang    Budi Alat Kantor  Kertas A4 (Rim)
## 3      TRX0003 2025-01-02  Bandung   Putri    Aksesori Power Bank 20000
## 4      TRX0004 2025-01-05  Bandung   Wawan  Elektronik      Earbuds Pro
## 5      TRX0005 2025-01-05 Semarang    Budi Alat Kantor  Kertas A4 (Rim)
## 6      TRX0006 2025-01-09 Surabaya Lestari  Elektronik   Smartwatch Fit
##   Harga_Satuan Jumlah Diskon_Persen Total_Penjualan Metode_Pembayaran
## 1      1800000      2             0         3600000          E-Wallet
## 2        55000      3            15          140250      Kartu Kredit
## 3       280000      6             5         1596000             Tunai
## 4       650000      5            15         2762500          E-Wallet
## 5        55000      9             0          495000             Tunai
## 6      1800000      1             0         1800000          Transfer
##   Segmen_Pelanggan Rating
## 1             Baru      5
## 2             Baru      4
## 3             Lama      5
## 4             Baru      5
## 5             Lama      5
## 6             Lama      5
#1.produk yang memiliki penjualan terbesar dan berapa nilainya dan produk apa yang paling banyak terjual berdasarkan nilainya
## 1. Produk dengan Total_Penjualan terbesar
produk_sales_terbesar <- databaru %>%
  group_by(Produk) %>% 
  summarise(Total_Nilai_Penjualan = sum(Total_Penjualan, na.rm = TRUE)) %>%
  arrange(desc(Total_Nilai_Penjualan)) %>%
  slice(1)

print("Produk dengan Nilai Penjualan Terbesar:")
## [1] "Produk dengan Nilai Penjualan Terbesar:"
print(produk_sales_terbesar)
## # A tibble: 1 × 2
##   Produk        Total_Nilai_Penjualan
##   <chr>                         <int>
## 1 Smartphone X5             314160000
## 2. Produk dengan Jumlah unit terjual terbanyak
produk_unit_terbanyak <- databaru %>%
  group_by(Produk) %>%
  summarise(Total_Unit_Terjual = sum(Jumlah, na.rm = TRUE)) %>%
  arrange(desc(Total_Unit_Terjual)) %>%
  slice(1)

print("Produk dengan Unit Terjual Terbanyak:")
## [1] "Produk dengan Unit Terjual Terbanyak:"
print(produk_unit_terbanyak)
## # A tibble: 1 × 2
##   Produk          Total_Unit_Terjual
##   <chr>                        <int>
## 1 Kertas A4 (Rim)                289
#2. Menghitung penjualan per cabang untuk kategori Elektronik diskon >= 10%
cabang_elektronik_tertinggi <- databaru %>%
  filter(Kategori == "Elektronik" & Diskon_Persen >= 10) %>% 
  group_by(Cabang) %>%
  summarise(Total_Penjualan_Cabang = sum(Total_Penjualan, na.rm = TRUE)) %>%
  arrange(desc(Total_Penjualan_Cabang))

print("Total Penjualan per Cabang (Elektronik, Diskon >= 10%):")
## [1] "Total Penjualan per Cabang (Elektronik, Diskon >= 10%):"
print(cabang_elektronik_tertinggi)
## # A tibble: 4 × 2
##   Cabang   Total_Penjualan_Cabang
##   <chr>                     <int>
## 1 Surabaya              155022500
## 2 Jakarta                92865000
## 3 Semarang               52305000
## 4 Bandung                32017500
print("Cabang Tertinggi:")
## [1] "Cabang Tertinggi:"
print(slice(cabang_elektronik_tertinggi, 1))
## # A tibble: 1 × 2
##   Cabang   Total_Penjualan_Cabang
##   <chr>                     <int>
## 1 Surabaya              155022500
#3.kategori elektronik  dengan diskon minimal 10%, hitung total penjualan per cabang, cabang mana yang tertinggi dan berapa nilainya
## Soal 3a: Jakarta + E-Wallet
jakarta_ewallet <- databaru %>%
  filter(Cabang == "Jakarta" & Metode_Pembayaran == "E-Wallet") %>%
  summarise(
    Jumlah_Transaksi = n(),
    Rata_Rata_Penjualan = mean(Total_Penjualan, na.rm = TRUE)
  )

print("Hasil Analisis Jakarta + E-Wallet:")
## [1] "Hasil Analisis Jakarta + E-Wallet:"
print(jakarta_ewallet)
##   Jumlah_Transaksi Rata_Rata_Penjualan
## 1               38             3793776
## Soal 3b: Metode pembayaran dengan rata-rata tertinggi di Jakarta
metode_tertinggi_jakarta <- databaru %>%
  filter(Cabang == "Jakarta") %>%
  group_by(Metode_Pembayaran) %>%
  summarise(Rata_Rata_Penjualan = mean(Total_Penjualan, na.rm = TRUE)) %>%
  arrange(desc(Rata_Rata_Penjualan))

print("Rata-rata Penjualan per Metode Pembayaran di Jakarta:")
## [1] "Rata-rata Penjualan per Metode Pembayaran di Jakarta:"
print(metode_tertinggi_jakarta)
## # A tibble: 4 × 2
##   Metode_Pembayaran Rata_Rata_Penjualan
##   <chr>                           <dbl>
## 1 Kartu Kredit                 4906550 
## 2 E-Wallet                     3793776.
## 3 Transfer                     3194140 
## 4 Tunai                        2838809.
#4.Subset data dan analisis performa Admin
performa_admin <- databaru %>%
  filter(Jumlah >= 5 & Diskon_Persen > 0) %>%
  group_by(Admin) %>%
  summarise(
    Total_Penjualan_Admin = sum(Total_Penjualan, na.rm = TRUE),
    Jumlah_Transaksi_Ditangani = n()
  ) %>%
  arrange(desc(Total_Penjualan_Admin)) %>%
  slice(1)

print("Admin Terbaik pada Subset Transaksi:")
## [1] "Admin Terbaik pada Subset Transaksi:"
print(performa_admin)
## # A tibble: 1 × 3
##   Admin Total_Penjualan_Admin Jumlah_Transaksi_Ditangani
##   <chr>                 <int>                      <int>
## 1 Rina               24523750                          9
#5.Subset data dan analisis performa Admin
performa_admin <- databaru %>%
  filter(Jumlah >= 5 & Diskon_Persen > 0) %>%
  group_by(Admin) %>%
  summarise(
    Total_Penjualan_Admin = sum(Total_Penjualan, na.rm = TRUE),
    Jumlah_Transaksi_Ditangani = n()
  ) %>%
  arrange(desc(Total_Penjualan_Admin)) %>%
  slice(1)

print("Admin Terbaik pada Subset Transaksi:")
## [1] "Admin Terbaik pada Subset Transaksi:"
print(performa_admin)
## # A tibble: 1 × 3
##   Admin Total_Penjualan_Admin Jumlah_Transaksi_Ditangani
##   <chr>                 <int>                      <int>
## 1 Rina               24523750                          9