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