Section 1 : Pengenalan R

1.1 Apakah R itu?

Bahasa R (disingkat dengan R saja) adalah suatu fasilitas perangkat lunak terpadu untuk manipulasi data, simulasi, kalkulasi dan peragaan grafik. R memiliki kemampuan menganalisis data dengan sangat efektif dan dilengkapi dengan operator pengolahan array dan matriks. Tidak kalah menariknya R memiliki kemampuan penampilan grafik yang sangat baik demikian pula peragaan untuk datanya.

Bahasa R merupakan versi sumber terbuka (open-source) dari bahasa pemrograman S (Azola dan Harrel, 2006). Versi komersial yang berbasis bahasa S adalah S plus. Bahasa R memiliki kemampuan yang tidak kalah dangan paket-paket program pengolahan data komersial bahkan dalam beberapa hal kemampuannya lebih baik. Bahasa R mendapat sambutan yang baik dari kalangan statistikawan di seluruh dunia, sayangnya di Indonesia belum banyak dikenal.

Bahasa R dapat diperoleh secara gratis. Untuk memilikinya tinggal diunduh (di download) disini:

Install [R] (https://cran.r-project.org/bin/windows/base/)

Selain itu perlu menginstal RStudio yaitu interface yang sangat penting untuk dapat menjalankan program aplikasi R menjadi lebih user friendly:

Install versi terakhirnya disini (https://rstudio.com/products/rstudio/)

1.2 Interface R Studio

Layout RStudio terdiri dari 4 jendela

1. Editor adalah jendela yang digunakan untuk membuat script R. Script R adalah suatu code yang digunakan untuk menerjemahkan setiap perintah di R. Apabila jendela tersebut tidak muncul saat pertama kali menginstall RStudio, langkah yang dapat dilakukan adalah sebagai berikut: Klik tab File -> New File -> R script.

2. Console adalah jendela untuk mengeksekusi perintah dari script R yang dibuat. Jendela ini akan menampilkan output dari setiap satu proses/baris command R yang dijalankan.

3. Environment Jendela ini terdiri dari beberapa tab, yaitu Environment, History, dan Connections. Tab environment akan menampilkan summary dari input.

4.Fitur Lainnya Jendela ini merupakan fitur tambahan yang bermanfaat khususnya dalam manajemen file, menampilkan output command berupa plot, informasi dan bantuan dalam penulisan script.

1.3 Aturan dalam penamaan Objek

Semua hal yang dikerjakan dalam R dapat disimpan dalam bentuk objek dengan mendefinisikannya. Objek adalah label dari hasil dari suatu perintah di R. Penulisan Objek dalam R dengan operator ‘=’

contoh penamaan objek :

a1 = 24*140 
a1 
## [1] 3360

a1 merupakan objek yang dibuat untuk memanggil hasil perkalian dari 24 x 140. Cara memangggil hasil dari a1 maka letakan kursor di command R lalu klik run di R nya, maka hasil dari a1 akan keluar yaitu 3360

Catatan penulisan Objek dalam R bisa dengan operator ‘<-’

R memiliki berbagai fleksibilitas dalam memberikan nama variabel, namun demikian beberapa aturan penamaan objek yang perlu diketahui adalah sebagai berikut:

  1. Menggunakan huruf besar (kapital ) yaitu huruf A-Z atau menggunakan huruf kecil yaitu huruf (a-z)
  2. Menggunakan karakter numerik (0-9), juga titik (.) atau garisbawah (**_**)
  3. Tidak dapat menggunakan spasi, misalnya penulisan variabel:“harga buku” adalah contoh yang salah dalam penamaan variabel, bisa diganti dengan variabel seperti ini: “harga.buku”
  4. Variabel yang dibuat adalah case sensitive artinya pengetikkannya harus persis sama dan membedakan antara huruf besar dan huruf kecil. Misalnya Hargabuku dan hargabuku adalah dua variabel yang berbeda.
  5. Penamaan variabel sebaiknya mulai dengan huruf, meski Anda bisa memberikan nama variabel dengan harga_buku atau harga.buku hanya saja penamaan itu tidak disarankan
  6. Sebaiknya hindari menggunakan kata-kata yang sama dengan perintah-perintah yang dikenal R seperti: if, else, repeat, while, function, for,in, next, break, TRUE, FALSE, NULL, NA, NA_integer dan sebagainya.

1.4 Input Data ke R

ada 3 langkah yang harus dilakukan:

  1. Menyiapkan data dalam format CSV atau Untuk mengunduh file simulasi dapat klik tautan berikut: (http://bit.ly/3cbUYL0) (<– klik kanan new tab untuk mengunduh file)

  2. Menyimpan data ke dalam R

starclub = read.csv("E://Downloads/starclub.csv")

Perintah read.csv() untuk memanggil data kedalam direktori kerja R. Perintah diatas mempunya arti, Anda ingin mengakses data yang berada dilokasi E folder Downloads dan nama file yang ingin diakses adalah starclub.csv

  1. Memanggil data di R.
starclub
##    Penjualan.HP.di.toko Out.Of.Stock Display.Share Posisi.Produk.di.Rak
## 1              73733474    23.888889      25.25000             70.83333
## 2              79373001    33.500000      19.00000            100.00000
## 3             100201250    34.000000      34.50000             87.50000
## 4             109651912    18.181818      30.36364             77.27273
## 5             160834158    14.727273      19.24242             75.75758
## 6             277128250    16.000000      21.00000             87.50000
## 7             334009660    16.666667      31.00000            100.00000
## 8             200183114    15.733333      19.06667             70.00000
## 9              95434433     4.285714      22.71429             64.28571
## 10            137109753    30.500000      13.50000             68.75000
## 11            122380843    14.702703      20.59459             63.51351
## 12            238294709    11.058824      30.41176             72.05882
## 13            278291127     0.750000      53.37500            100.00000
## 14            239273781    10.666667      23.88889             80.55556
## 15             52890252    32.625000      20.03125             39.84375
## 16            149448002    17.888889      23.00000             41.66667
## 17            465019017    60.000000     100.00000            100.00000
## 18            116642716    35.428571      37.00000             67.85714
## 19             71493639    17.500000      46.26923             74.03846
## 20            150725659    18.000000      54.97917             89.58333
## 21            105515623     9.000000      68.80000            100.00000
## 22            144727868    17.076923      31.38462             76.92308
## 23            241502306    42.100000      19.30000             42.50000
## 24             51848671    39.000000      20.33333             66.66667
## 25             48563502     5.000000      26.50000             62.50000
## 26            269102927    10.888889      28.11111             87.96296
## 27            515459992     0.000000      56.00000            100.00000
## 28            357142003     0.000000      25.00000            100.00000
## 29             98577271     6.666667      19.20000             50.00000
## 30                    0     6.000000     100.00000             50.00000
## 31            206392505    16.269231      24.26923             71.15385
## 32            112865288    35.684211      21.14286             63.09524
## 33            328338334    16.666667      66.66667            100.00000
## 34            146737545    28.250000      25.70833             56.25000
## 35             95632431    14.428571      33.28571             71.42857
## 36            313906756    13.750000      30.50000             87.50000
## 37             88004754    25.875000      50.50000             84.37500
## 38            244087358    66.666667      34.00000             41.66667
## 39            247425028     8.000000      73.00000            100.00000
## 40            359660290    30.000000      39.00000             75.00000
##    Brand.Popularity Best.Selling.Product Pembayaran.Insentif
## 1          155.8333             155.8333            155.7692
## 2          180.0000             165.0000                  NA
## 3          165.0000             180.0000            180.0000
## 4          160.9091             156.0000            165.0000
## 5          150.0000             143.0769            148.3333
## 6          160.0000             145.0000            144.0000
## 7          174.0000             174.0000            180.0000
## 8          149.3617             139.3333            138.6486
## 9          128.5714             132.8571            125.0000
## 10         135.0000             157.5000            165.0000
## 11         144.6154             143.8462            147.4286
## 12         155.2941             162.3529            158.8235
## 13         174.5455             174.5455            177.2727
## 14         176.0000             164.0000            168.0000
## 15         129.0909             127.2727            135.0000
## 16         138.0000             144.0000            146.6667
## 17         180.0000             180.0000            180.0000
## 18         150.0000             156.0000            153.3333
## 19         170.4000             162.0000            165.0000
## 20         170.5882             168.2353            169.3333
## 21         180.0000             180.0000            180.0000
## 22         168.4615             163.8462            147.6923
## 23         140.0000             122.5000            117.5000
## 24         150.0000             150.0000            150.0000
## 25         105.0000             150.0000            150.0000
## 26         154.6875             155.6250            153.1034
## 27         180.0000             150.0000            180.0000
## 28         150.0000             120.0000                  NA
## 29         140.0000             138.0000            133.6364
## 30         180.0000             180.0000            180.0000
## 31         153.4615             150.0000            137.1429
## 32         151.5789             146.8421            164.0000
## 33         168.0000             168.0000            168.0000
## 34         147.5000             145.0000            155.4545
## 35         171.4286             171.4286            171.4286
## 36         180.0000             150.0000            180.0000
## 37         176.2500             180.0000            162.8571
## 38         165.0000             165.0000            170.0000
## 39         180.0000             180.0000            180.0000
## 40         176.2500             180.0000            180.0000

Section 2 : Regression Model

2.1 Background

Regression Model merupakan salah satu metode statistik yang dapat digunakan untuk melakukan prediksi. Dalam hal ini ingin melakukan prediksi penjualan HP di Toko dengan mempertimbangkan pengaruh dari Out Of Stock, Display Share, Posisi Produk di Rak, Brand Popularity, Best Selling Product dan Pembayaran Insentif

Pada tutorial kali ini, akan membahas Multiple Linear Regression.

  • Variabel yang akan diprediksi (Dependent) : Penjualan HP di toko

  • Variabel yang mempengaruhi prediksi (Indepedent) : Out Of Stock, Display Share, Posisi Produk di Rak, Brand Popularity, Best Selling Product, Pembayaran Insentif

2.2. Build Model

model = lm(Penjualan.HP.di.toko ~ Out.Of.Stock + Display.Share + Posisi.Produk.di.Rak + Brand.Popularity + Best.Selling.Product + Pembayaran.Insentif, data=starclub)
summary(model)
## 
## Call:
## lm(formula = Penjualan.HP.di.toko ~ Out.Of.Stock + Display.Share + 
##     Posisi.Produk.di.Rak + Brand.Popularity + Best.Selling.Product + 
##     Pembayaran.Insentif, data = starclub)
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -138708415  -63768169     100770   59827290  200394888 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)   
## (Intercept)           59076691  199134243   0.297  0.76870   
## Out.Of.Stock           2205439    1086186   2.030  0.05097 . 
## Display.Share           684448     995286   0.688  0.49676   
## Posisi.Produk.di.Rak   4110660    1189883   3.455  0.00162 **
## Brand.Popularity       2162615    1441170   1.501  0.14358   
## Best.Selling.Product  -5694550    1914247  -2.975  0.00564 **
## Pembayaran.Insentif    1904949    1738669   1.096  0.28168   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 89990000 on 31 degrees of freedom
##   (2 observations deleted due to missingness)
## Multiple R-squared:  0.5042, Adjusted R-squared:  0.4082 
## F-statistic: 5.253 on 6 and 31 DF,  p-value: 0.0007833
  • Out Of Stock = p-value < alpha 5%, maka Out Of Stock berpengaruh signifikan dalam model

  • Display Share = p-value > alpha 5%, maka Display Share tidak berpengaruh signifikan dalam model

  • Posisi Produk di Rak = p-value < alpha 5%, maka Posisi Produk di Rak berpengaruh signifikan dalam model

  • Brand Popularity = p-value > alpha 5%, maka Brand Popularity tidak berpengaruh signifikan dalam model

  • Best Selling Product = p-value < alpha 5%, maka Best Selling Product berpengaruh signifikan dalam model

  • Pembayaran Insentif = p-value > alpha 5%, maka Pembayaran Insentif tidak berpengaruh signifikan dalam model

Dengan Multiple R-squared: 0.5042

sehingga berdasarkan nilai diatas, maka model regresi untuk Penjuaan HP di toko adalah :

Penjuaan HP di toko = 59.076.691 + 2.205.439 Out Of Stock + 684.448 Display Share + 4.110.660 Posisi Produk di Rak + 2.162.615 Brand Popularity - 5.694.550 Best Selling Product + 1.904.949 Pembayaran Insentif

yang artinya keragaman Penjualan Hp di Toko yang dapat dijelaskan oleh Out Of Stock, Display Share, Posisi Produk di Rak, Brand Popularity, Best Selling Product dan pembayaran insentif sebesar 50.42% sedangnkan 49.58% dijelaskan oleh faktor lain diluar model ini.

2.3. Visualisasi

2.3.1 Scatterplot

untuk menampilkan sebuat scatterplot yang menarik, maka Install sebuah package ggplot2

#install.packages("ggplot2")
#memanggil package yang berhasil di install
library ("ggplot2") 
## Warning: package 'ggplot2' was built under R version 3.5.3

Menampilkan plot dengan fungsi: obyek = ggplot(dataframe,aes(VariabelIndependent(x),VariabelDependent(y))+geom_point ()+geom_smooth(method="lm", se=T)

g1=ggplot(starclub,aes(Posisi.Produk.di.Rak,Penjualan.HP.di.toko))+geom_point()+geom_smooth(method="lm",se=T)
g1

Berdasarkan pola diatas dimana titik-titik membentuk suatu garis lurus, diduga variabel Posisi.Produk.di.Rak memiliki hubungan dengan Variabel Penjualan.HP.di.toko

2.3.2 Histogram

Menampilkan histogram untuk variabel Dependent (Y) Penjualan.HP.di.toko.

histogram_plot=hist(starclub$Penjualan.HP.di.toko)