Import Data

Import data artinya input data dari folder lokal di komputer dengan fungsi read_csv ataupun read.csv dan diberi nama autodata_sales. Jika menggunakan fungsi read_csv maka membutuhkan library(readr).

#Cara 1
library(readr)
autosales_data <- read_csv("Auto Sales data.csv", show_col_types = FALSE)

#Cara 2
autosales_data <- read.csv("D:/Shabrina/College/Semester 3/MDR/Auto Sales data.csv", sep = ",")

Inspeksi Data

Data yang telah diinput kemudian dapat diinspeksi dengan menggunakan fungsi glimpse dari library dplyr untuk mendapatkan gambaran umum data frame.

library(dplyr)
glimpse(autosales_data)
## Rows: 2,747
## Columns: 20
## $ ORDERNUMBER          <int> 10107, 10121, 10134, 10145, 10168, 10180, 10188, …
## $ QUANTITYORDERED      <int> 30, 34, 41, 45, 36, 29, 48, 41, 37, 23, 28, 34, 4…
## $ PRICEEACH            <dbl> 95.70, 81.35, 94.74, 83.26, 96.66, 86.13, 114.84,…
## $ ORDERLINENUMBER      <int> 2, 5, 2, 6, 1, 9, 1, 14, 1, 7, 2, 2, 1, 6, 9, 5, …
## $ SALES                <dbl> 2871.00, 2765.90, 3884.34, 3746.70, 3479.76, 2497…
## $ ORDERDATE            <chr> "24/02/2018", "07/05/2018", "01/07/2018", "25/08/…
## $ DAYS_SINCE_LASTORDER <int> 828, 757, 703, 649, 586, 573, 567, 510, 475, 432,…
## $ STATUS               <chr> "Shipped", "Shipped", "Shipped", "Shipped", "Ship…
## $ PRODUCTLINE          <chr> "Motorcycles", "Motorcycles", "Motorcycles", "Mot…
## $ MSRP                 <int> 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 9…
## $ PRODUCTCODE          <chr> "S10_1678", "S10_1678", "S10_1678", "S10_1678", "…
## $ CUSTOMERNAME         <chr> "Land of Toys Inc.", "Reims Collectables", "Lyon …
## $ PHONE                <chr> "2125557818", "26.47.1555", "+33 1 46 62 7555", "…
## $ ADDRESSLINE1         <chr> "897 Long Airport Avenue", "59 rue de l'Abbaye", …
## $ CITY                 <chr> "NYC", "Reims", "Paris", "Pasadena", "Burlingame"…
## $ POSTALCODE           <chr> "10022", "51100", "75508", "90003", "94217", "590…
## $ COUNTRY              <chr> "USA", "France", "France", "USA", "USA", "France"…
## $ CONTACTLASTNAME      <chr> "Yu", "Henriot", "Da Cunha", "Young", "Hirano", "…
## $ CONTACTFIRSTNAME     <chr> "Kwai", "Paul", "Daniel", "Julie", "Juri", "Marti…
## $ DEALSIZE             <chr> "Small", "Small", "Medium", "Medium", "Medium", "…

Eksplorasi Data

Eksplorasi data pada bagian ini akan memuat beberapa grafik yang dapat menggambarkan hubungan variabel-variabel terkait.

1. Eksplorasi Data Numerik

1.1 Boxplot

Boxplot akan menunjukkan sebaran dan keragaman variable Quantity Ordered dan Price Each dari data frame.

#Bagian data dari data frame yang akan digunakan 
autosales_data %>%
  select(QUANTITYORDERED, PRICEEACH) %>%
  arrange(QUANTITYORDERED)
#Pembuatan Boxplot
boxplot(autosales_data$QUANTITYORDERED, autosales_data$PRICEEACH, names = c("Quantity Ordered", "Price Each"), main = "Boxplot of Quantity Ordered and Price Each", col="orange")

Hasil dari boxplot di atas menggambarkan distribusi Quantity Ordered dan Price Each. Terlihat bahwa Price Each memiliki banyak outliers di bagian atas dan panjang boxplot yang menunjukkan bahwa data beragam. Adapun Quantity Ordered juga memiliki outliers di bagian atas dan panjang boxplot cenderung kecil sehingga menunjukkan keragaman data yang kecil.

1.2 Scatter Plot

Scatter Plot akan menunjukkan hubungan variable Quantity Ordered terhadap Sales.

#Bagian data dari data frame yang akan digunakan
autosales_data %>%
  select(QUANTITYORDERED, SALES) %>%
  group_by(QUANTITYORDERED) %>%
  arrange(QUANTITYORDERED)
#Pembuatan Scatter Plot
plot(autosales_data$QUANTITYORDERED, autosales_data$SALES, main = "Scatter Plot: Quantity Ordered vs Sales", xlab = "Quantity Ordered", ylab = "Sales", col="red")

Hasil Scatter Plot menggambarkan Sales sebagai peubah Y dan Quality Ordered sebagai peubah X. Pola titik yang cenderung membentuk garis lurus dari kiri bawah ke kanan atas sehingga menunjukkan adanya hubungan positif antara kedua peubah tersebut.

1.3 Histogram

Histogram akan menunjukkan sebaran data variable Days Since Last Order.

#Bagian data dari data frame yang akan digunakan
autosales_data %>%
  select(DAYS_SINCE_LASTORDER) %>%
  arrange(DAYS_SINCE_LASTORDER)
#Pembuatan Histogram
hist(autosales_data$DAYS_SINCE_LASTORDER, main = "Histogram of Days Since Last Order", col = "yellow", border = "black", xlab = "Days Since Last Order")

Histogram di atas menunjukkan sebaran data yang cenderung simetris. Hari sejak pesanan terakhir yang bernilai sekitar 2500 memiliki frekuensi terbanyak.

2. Eksplorasi Data Kategorik

2.1 Bar Chart

Bar chart digunakan untuk menampilkan frekuensi dari masing-masing Product Line.

#Bagian data dari data frame yang akan digunakan diberi nama product
product <- autosales_data %>%
    group_by(PRODUCTLINE) %>%
    summarise(count = n()) %>%
    arrange(desc(count));
product
#Pembuatan Bar Chart
barplot(product$count, names.arg = product$PRODUCTLINE,
        col = "skyblue",
        main = "Bar Chart: Product Line Distribution", 
        xlab = "Product Line", 
        ylab = "Count")

Bar chart di atas menggambarkan distribusi Product Line dari jumlah terbanyak dimiliki oleh Classic Cars, Vintage Cars, Motorcycles, Planes, Truck and Buses, Ships, dan Trains.

2.2 Pie Chart

Pie chart digunakan untuk menggambarkan perbandingan Status order.

#Bagian dari data frame yang akan digunakan diberi nama piech
piech <- autosales_data %>%
  group_by(STATUS) %>%
  summarise(count = n()) %>%
  arrange(desc(count));
piech
#Pembuatan Pie Chart
pie(piech$count, labels = piech$STATUS, main = "Status")

Pie Chart di atas menunjukkan perbandingan jumlah Status order dengan urutan terbanyak dari Shipped, Cancelled, Resolved, On Hold, In Process, dan Disputed.

Analisis Data

Bagian analisis data akan menunjukkan keterkaitan satu variable dengan variable lainnya.

1. Analisis Negara dengan Kuantitas Order Terbanyak

Mengidentifikasi negara dengan kuantitas order terbanyak

autosales_data %>%
  select(QUANTITYORDERED, COUNTRY) %>%
  group_by(COUNTRY) %>%
  summarise(QUANTITYORDERED = n()) %>%
  arrange(desc(QUANTITYORDERED))

Tabel di atas menunjukkan variabel Country dengan Quantity Ordered yang diurutkan dari yang terbesar berdasarkan Quantity Ordered. Lima negara teratas dengan kuantitas order terbanyak adalah USA, Spain, France, Australia, UK.

2. Analisis Product Line dengan Sales Tertinggi

Mengidentifikasi Product Line dengan Sales tertinggi. Variable Productline dari data frame digrouping berdasarkan jenis productline. Kemudian, Sales dari masing-masing productline dicari totalnya dan diurutkan dari yang terbesar.

autosales_data %>%
  group_by(PRODUCTLINE) %>%
  summarise(Sales = sum(SALES)) %>%
  arrange(desc(Sales))

Dapat dilihat dari tabel di atas bahwa Product Line dengan Sales tertinggi adalah Classic Cars.

3. Analisis Demografi Customer

Mengidentifikasi asal customer yang terdiri dari negara, kota, hingga kode pos.

demography_cust <- autosales_data %>%
  group_by(CITY, POSTALCODE, COUNTRY) %>%
  summarise(CUSTOMER_COUNT = n()) %>%
  arrange(desc(CUSTOMER_COUNT));
demography_cust

Tabel tersebut menunjukkan bahwa jumlah customer terbanyak berasal dari Madrid, Spain. Adapun peringkat kedua hingga keempat berasal dari USA dengan kota yang berbeda-beda.

4. Analisis Dealsize dengan Total Sales

Mengidentifikasi jenis Dealsize dengan Total Sales nya.

autosales_data %>%
  group_by(DEALSIZE) %>%
  summarise(Average_Sales = mean(SALES), Total_Sales = sum(SALES)) %>%
  arrange(desc(Total_Sales))

Hasil yang didapatkan menunjukkan bahwa Dealsize Medium memiliki Total Sales tertinggi, diikuti dengan Small dan Large.

5. Korelasi Quantity Ordered dengan Sales

Mengukur keeratan variable Quantity Ordered dengan variable Sales.

Korelasi <- select(.data = autosales_data, QUANTITYORDERED, SALES)
cor(Korelasi)
##                 QUANTITYORDERED     SALES
## QUANTITYORDERED       1.0000000 0.5533587
## SALES                 0.5533587 1.0000000

Nilai korelasi yang didapat antara Quantity Ordered dengan Sales adalah 0,55 yang berarti adanya hubungan positif antara kedua variable tersebut. Nilai korelasi yang positif berarti ada kecenderungan bahwa ketika satu variable naik, variable lainnnya juga cenderung naik.