LBB-Programming for Data Science

Data

Dalam analisa kali ini, data yang digunakan adalah data “retail.csv” dengan struktur data sebagai berikut:

  • Order.ID: Id Pemesanan.
  • Order.Date: Tanggal Pemesanan.
  • Ship.Date: Tanggal Pengiriman.
  • Ship.Mode: Jenis Pengiriman.
  • Customer.ID: Id Pelanggan.
  • Segment : Segmen Pelanggan.
  • Product.ID: Id Produk.
  • Category : Kategori Produk; memilki 3 jenis/levels (“Furniture”, “Office Supplies”, “Technology”).
  • Sub.Category: Kategori produk yang lebih spesifik.
  • Product.Name: Nama produk yang terjual.
  • Sales: Penghasilan yang didapatkan setiap penjualan.
  • Quantity: Jumlah barang yang terjual.
  • Discount: Besarnya diskon yang diberikan untuk setiap penjualan.
  • Profit: Keuntungan yang didapatkan perusahaan untuk setiap penjualan.
retail <- read.csv(file = "retail.csv")

Struktur data

Dalam hal ini kita akan melakukan inspeksi terhadap struktur data, dan mengubah type data jika ada yang belum sesuai

str(retail)
## 'data.frame':    9994 obs. of  14 variables:
##  $ Order.ID    : chr  "CA-2016-152156" "CA-2016-152156" "CA-2016-138688" "US-2015-108966" ...
##  $ Order.Date  : chr  "11/8/16" "11/8/16" "6/12/16" "10/11/15" ...
##  $ Ship.Date   : chr  "11/11/16" "11/11/16" "6/16/16" "10/18/15" ...
##  $ Ship.Mode   : chr  "Second Class" "Second Class" "Second Class" "Standard Class" ...
##  $ Customer.ID : chr  "CG-12520" "CG-12520" "DV-13045" "SO-20335" ...
##  $ Segment     : chr  "Consumer" "Consumer" "Corporate" "Consumer" ...
##  $ Product.ID  : chr  "FUR-BO-10001798" "FUR-CH-10000454" "OFF-LA-10000240" "FUR-TA-10000577" ...
##  $ Category    : chr  "Furniture" "Furniture" "Office Supplies" "Furniture" ...
##  $ Sub.Category: chr  "Bookcases" "Chairs" "Labels" "Tables" ...
##  $ Product.Name: chr  "Bush Somerset Collection Bookcase" "Hon Deluxe Fabric Upholstered Stacking Chairs, Rounded Back" "Self-Adhesive Address Labels for Typewriters by Universal" "Bretford CR4500 Series Slim Rectangular Table" ...
##  $ Sales       : num  262 731.9 14.6 957.6 22.4 ...
##  $ Quantity    : int  2 3 2 5 2 7 4 6 3 5 ...
##  $ Discount    : num  0 0 0 0.45 0.2 0 0 0.2 0.2 0 ...
##  $ Profit      : num  41.91 219.58 6.87 -383.03 2.52 ...

Mengubah tipe data

retail$Order.Date <- mdy(retail$Order.Date)
retail$Ship.Date <- mdy(retail$Ship.Date)
retail$Ship.Mode <- as.factor(retail$Ship.Mode)
retail$month <- month(retail$Order.Date, label = T, abbr = T)
retail$year <- year(retail$Order.Date)

Analisa Data

Dalam Analisa data kali ini, kita akan mencari beberapa pertanyaan, sbb:

  • Kategori mana yang memiliki penjualan terbesar pada tahun 2017?
  • Apakah penjualan pada kategori tersebut meningkat dari tahun -tahun sebelumnya?
  • Bagaimana trend penjualan kategori tersebut per bulan nya di tahun 2017?
  • Apakah sub kategori yang memberikan kontribusi kuantitas penjualan terbesar?

Kategori dengan penjualan terbesar di Tahun 2017

retail2017 <-
  retail %>% 
  select(Category, year, Quantity, Sales) %>% 
  filter(year == 2017)

ggplot(retail2017, aes(Category,Quantity)) + geom_col() +theme_classic() +
  labs(title = "Penjualan terbanyak selama 2017 per Category")

Penjualan terbanyak selama 2017 adalah dari kategori “Office Supply”

Apakah penjualan pada kategori tersebut meningkat dari tahun -tahun sebelumnya?

retailos <-
  retail %>% 
  select(Category, year, Quantity) %>% 
  filter(Category == "Office Supplies")

ggplot(retailos, aes(year,Quantity)) + geom_col() +theme_classic() +
  labs(title = "Penjualan Office Supply dari tahun ke tahun")

Kuantitas penjualan dari kategori “Office Supply” selalu naik sejak tahun 2014 sampai 2017

Bagaimana trend penjualan kategori tersebut per bulan nya di tahun 2017?

retailos2017 <-
  retail %>% 
  select(Category, Quantity, month, year) %>% 
  filter(Category == "Office Supplies" & year == 2017)

tableavg <- aggregate( Quantity ~ month , retailos2017 , sum )

ggplot(retailos2017, aes(month,Quantity)) + 
  geom_col() +
  geom_hline(yintercept = mean(tableavg$Quantity, na.rm=TRUE), color='red', lty='dashed', lwd=2) +
  theme_classic() +
  labs(title = "Penjualan Office Supply Selama 2017")


Di Tahun 2017, kuantitas penjualan dari kategori Office Supply” pada bulan January sd Agustus, berada dibawah rata- rata kuantias produk itu sendiri di tahun tersebut. Kemudian penjualan tertinggi terjadi di bulan November 2017

Apakah sub kategori yang memberikan kontribusi kuantitas penjualan terbesar?

retailos2017sub <-
  retail %>% 
  select(Category, Quantity, month, year, Sub.Category) %>% 
  filter(Category == "Office Supplies" & year == 2017)

ggplot(retailos2017sub, aes(Sub.Category,Quantity)) + 
  geom_col() +
  theme_classic() +
  labs(title = "Penjualan Office Supply Selama 2017 by Sub Category")


sub Kategori yang paling banyak terjual dalam kategori Office Supply adalah binder