Regresi dummy

Tugas Minggu 5

Import Data

library(readxl)
library(tidyverse)
data <- read_excel("C:/Users/Admin/Downloads/PSD Kelompok 3 (3).xlsx")
names(data)[names(data) == "Jumlah Ulasan"] <- "J.Ulasan"
head(data)
## # A tibble: 6 × 6
##   Brand     HARGA LOKASI      J.Ulasan RAM   Penyimpanan
##   <chr>     <dbl> <chr>       <chr>    <chr> <chr>      
## 1 iphone  4388000 Jabodetabek 10       4     256        
## 2 iphone  9458000 Jabodetabek 3071     4     128        
## 3 iphone  9409000 Jabodetabek 2713     4     128        
## 4 iphone  5047000 Luar Jawa   87       4     64         
## 5 iphone 11287000 Jabodetabek 567      6     128        
## 6 iphone 21447000 Jabodetabek 732      8     256

Pada tahap ini, Kami akan mengambil data hasil scrapping pada Minggu 3. Data ini adalah Data Penjualan Handphone, dengan Harga sebagai peubah Respon dan 5 Peubah Penjelas. Peubah Penjelas terdiri dari Brand, Lokasi, Ram, Penyimpanan.

Pada Tahap ini Toko tidak kami masukkan ke model atas dasar pertimbangan pengelompokkan yang rumit untuk dilakukan sehingga pada bagian ini kami tidak memasukkan peubah Toko terlebih dahulu dan memodelkan dengan 5 Peubah Penjelas

Melakukan Releveling Pada Data Kategorik

data$Brand <- relevel(as.factor(data$Brand), ref="iphone")
data$LOKASI <- relevel(as.factor(data$LOKASI), ref="Jabodetabek")
data$RAM <- relevel(as.factor(as.numeric(data$RAM)), ref = "6")
data$Penyimpanan <- relevel(as.factor(as.numeric(data$Penyimpanan)), ref = "128")
data$J.Ulasan <- as.numeric(data$J.Ulasan)

Pada tahapan ini , kami melakukan Re-level pada data-data kategorik yaitu Brand, Lokasi , RAM dan Penyimpanan. RAM dan Penyimpanan memang berbentuk data numerik, namun dalam substansinya, angka-angka pada RAM dan Penyimpanan sudah disetting dalam beberapa kategori sehingga dapat dikatakan bahwa data ini lebih ke Kategorik daripada Numerik.

Pada Tahap ini, Kami juga menentukan Reference yaitu Untuk Brand Kami menerapkan Reference di kategori Iphone, lalu untuk Lokasi kamu menerapkan reference di Jabodetabek, 6 Untuk Ram dan 128 untuk Penyimpanan.

Terakhir kami menyiapkan data ulasan sebagai numeric. Hal ini dilakukan agar data tetap dibaca sebagai numerik pada model.

Eksplorasi

hist(data$HARGA)

Untuk Visualisasi Sebelum Ke Model, Dapat dilihat bahwa Kecenderungan Harga menjulur ke kanan. Hal ini mengartikan bahwa harga Handphone menyebar di daerah 5 Jutaan. Kemudian data mulai turun secara signifikan sampai ke harga puluhan juta. Sebaran data hasil histogram ini juga mengindikasikan adanya outlier karena data tidak terdistribusi secara merata, untuk itu kami akan melakukan pendeteksian pencilan setelah pemodelan.

Pemodelan

model <- lm(HARGA ~ Brand+ LOKASI + RAM + Penyimpanan+ J.Ulasan, data=data) 
summary(model)
## 
## Call:
## lm(formula = HARGA ~ Brand + LOKASI + RAM + Penyimpanan + J.Ulasan, 
##     data = data)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -12853595  -1607087   -586536   1435603  14613759 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)          1.102e+07  1.678e+05  65.685  < 2e-16 ***
## Brandasus           -7.748e+06  4.688e+05 -16.529  < 2e-16 ***
## Brandinfinix        -9.997e+06  2.215e+05 -45.142  < 2e-16 ***
## Brandoppo           -8.896e+06  2.553e+05 -34.848  < 2e-16 ***
## BrandRealme         -8.830e+06  2.508e+05 -35.211  < 2e-16 ***
## BrandSamsung        -7.186e+06  1.737e+05 -41.364  < 2e-16 ***
## Brandvivo           -8.731e+06  1.980e+05 -44.103  < 2e-16 ***
## Brandxiaomi         -9.110e+06  1.778e+05 -51.228  < 2e-16 ***
## LOKASIBali           3.884e+05  4.681e+05   0.830 0.406761    
## LOKASIDI Yogyakarta -6.591e+05  7.483e+05  -0.881 0.378479    
## LOKASIJawa Barat    -1.784e+04  2.283e+05  -0.078 0.937735    
## LOKASIJawa Tengah   -1.905e+05  4.780e+05  -0.399 0.690263    
## LOKASIJawa Timur     3.799e+05  1.773e+05   2.142 0.032244 *  
## LOKASILuar Jawa      4.378e+05  1.671e+05   2.620 0.008841 ** 
## RAM1                -1.117e+07  1.327e+06  -8.413  < 2e-16 ***
## RAM2                -8.142e+06  5.753e+05 -14.153  < 2e-16 ***
## RAM3                -6.381e+06  3.622e+05 -17.618  < 2e-16 ***
## RAM4                -2.780e+06  1.822e+05 -15.259  < 2e-16 ***
## RAM8                 9.669e+05  1.661e+05   5.820 6.50e-09 ***
## RAM12                4.762e+06  2.669e+05  17.842  < 2e-16 ***
## RAM16                8.399e+06  6.345e+05  13.237  < 2e-16 ***
## RAM18                1.271e+07  2.100e+06   6.053 1.59e-09 ***
## RAM24                1.567e+06  1.742e+06   0.899 0.368505    
## Penyimpanan8        -3.033e+06  2.928e+06  -1.036 0.300349    
## Penyimpanan16        2.474e+06  1.156e+06   2.140 0.032437 *  
## Penyimpanan32        3.742e+06  6.041e+05   6.194 6.63e-10 ***
## Penyimpanan64       -5.358e+05  1.917e+05  -2.795 0.005226 ** 
## Penyimpanan256       5.122e+05  1.379e+05   3.714 0.000207 ***
## Penyimpanan512       2.456e+06  2.494e+05   9.848  < 2e-16 ***
## J.Ulasan            -3.379e+02  2.808e+02  -1.203 0.228918    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2870000 on 3091 degrees of freedom
##   (25 observations deleted due to missingness)
## Multiple R-squared:  0.6273, Adjusted R-squared:  0.6239 
## F-statistic: 179.4 on 29 and 3091 DF,  p-value: < 2.2e-16

Didapatkan Model Sebagai Berikut ini , Dimana R-Squared 62%. Didapat pula bahwa mayoritas peubah yang digunaka signfikan dalam taraf kepercayaan 95 %. Namun ada beberapa peubah juga yang tidak signifkan seperti Jumlah Ulasan.

Periksa Asumsi

plot(model)

## Warning in sqrt(crit * p * (1 - hh)/hh): NaNs produced

## Warning in sqrt(crit * p * (1 - hh)/hh): NaNs produced

Dari Plot Residual Vs Fitted, Asumsi Homoskedastisitas tidak terpenuhi karena banyaknya residual data hasil tidak menyebar di nilai tengah dimana y= 0 . Sehingga dapat disimpulkan bahwa terjadi Heteroskedasitas yang artinya ragam sisanya tidak homogen.

Dari Plot QQ-Residual , walaupun beberapa data menyebar normal di tengah, namun, mayoritas data di ujung dan di belakannya tidak berada di garis kenormalan data. Sehinga dapat dikatakan data tidak menyebar normal namun harus tetap dilakukan uji secara formal. Data ini bisa berpotensi tidak normal karena adanya pencilan. Data tidak menyebar mengikuti garis lurus. Bagian atas yang melenceng dari garis menunjukkan bahwa sisaan model menjulur ke kanan.

Dari Plot Fitted Values Vs Standarad Residual dapat dilihat bahwa data cenderung menyebar dan membentuk pola, hal ini mengindikasikan bahwa nilai harapan sisaan pada data tidak saling bebas . karena adanya pola yang terbentuk.

library(car)
## Warning: package 'car' was built under R version 4.3.2
## Loading required package: carData
## Warning: package 'carData' was built under R version 4.3.2
## 
## Attaching package: 'car'
## The following object is masked from 'package:dplyr':
## 
##     recode
## The following object is masked from 'package:purrr':
## 
##     some
vif(model)
##                 GVIF Df GVIF^(1/(2*Df))
## Brand       2.494361  7        1.067466
## LOKASI      1.130748  6        1.010293
## RAM         7.462211  9        1.118131
## Penyimpanan 4.322606  6        1.129741
## J.Ulasan    1.067401  1        1.033151

VIF pada Seluruh Data Berada dibawah 10, yang artinya cukup bukti untuk mengatakan tidak ada multikolinearitas.

Uji Formal

#normalitas
shapiro.test(residuals(model))
## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(model)
## W = 0.91741, p-value < 2.2e-16
# 2. Homoskedastisitas

library(lmtest)
## Warning: package 'lmtest' was built under R version 4.3.3
## Loading required package: zoo
## Warning: package 'zoo' was built under R version 4.3.2
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
bptest(model)
## 
##  studentized Breusch-Pagan test
## 
## data:  model
## BP = 630.37, df = 29, p-value < 2.2e-16
# 3. Run.test

library(snpar)

runs.test(model$residuals)
## 
##  Approximate runs rest
## 
## data:  model$residuals
## Runs = 1579, p-value = 0.5309
## alternative hypothesis: two.sided

Dapat dilihat bahwa data tidak menyebar normal dan terjadi heteroskedastitsitas. Namun dari autokorelasinya menggunakan run.test terpenuhi

library(olsrr)
## Warning: package 'olsrr' was built under R version 4.3.2
## 
## Attaching package: 'olsrr'
## The following object is masked from 'package:datasets':
## 
##     rivers
library(ggplot2)

# Membuat plot leverage residuals
p <- ols_plot_resid_lev(model)

# Menghapus layer teks yang biasanya mengandung label urutan data
p$layers <- p$layers[sapply(p$layers, function(x) class(x$geom)[1] != "GeomText")]

# Tampilkan plot tanpa label urutan data
p

Jika dilihat masih banyak data yang merupakan outlier dan menjadi titik Leverage, sehingga mungkin saja data-data ini menyebabkan distribusi menjadi tidak normal dan merambat pada pelanggaran asumsi lainnya

Uji Coba Transformasi untuk penanganan

data$HARGA.t <- log(data$HARGA)
data$HARGA.t <- log(data$HARGA)
modelt <- lm(HARGA.t ~ Brand+LOKASI + RAM + Penyimpanan+J.Ulasan, data=data) 
summary(model)
## 
## Call:
## lm(formula = HARGA ~ Brand + LOKASI + RAM + Penyimpanan + J.Ulasan, 
##     data = data)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -12853595  -1607087   -586536   1435603  14613759 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)          1.102e+07  1.678e+05  65.685  < 2e-16 ***
## Brandasus           -7.748e+06  4.688e+05 -16.529  < 2e-16 ***
## Brandinfinix        -9.997e+06  2.215e+05 -45.142  < 2e-16 ***
## Brandoppo           -8.896e+06  2.553e+05 -34.848  < 2e-16 ***
## BrandRealme         -8.830e+06  2.508e+05 -35.211  < 2e-16 ***
## BrandSamsung        -7.186e+06  1.737e+05 -41.364  < 2e-16 ***
## Brandvivo           -8.731e+06  1.980e+05 -44.103  < 2e-16 ***
## Brandxiaomi         -9.110e+06  1.778e+05 -51.228  < 2e-16 ***
## LOKASIBali           3.884e+05  4.681e+05   0.830 0.406761    
## LOKASIDI Yogyakarta -6.591e+05  7.483e+05  -0.881 0.378479    
## LOKASIJawa Barat    -1.784e+04  2.283e+05  -0.078 0.937735    
## LOKASIJawa Tengah   -1.905e+05  4.780e+05  -0.399 0.690263    
## LOKASIJawa Timur     3.799e+05  1.773e+05   2.142 0.032244 *  
## LOKASILuar Jawa      4.378e+05  1.671e+05   2.620 0.008841 ** 
## RAM1                -1.117e+07  1.327e+06  -8.413  < 2e-16 ***
## RAM2                -8.142e+06  5.753e+05 -14.153  < 2e-16 ***
## RAM3                -6.381e+06  3.622e+05 -17.618  < 2e-16 ***
## RAM4                -2.780e+06  1.822e+05 -15.259  < 2e-16 ***
## RAM8                 9.669e+05  1.661e+05   5.820 6.50e-09 ***
## RAM12                4.762e+06  2.669e+05  17.842  < 2e-16 ***
## RAM16                8.399e+06  6.345e+05  13.237  < 2e-16 ***
## RAM18                1.271e+07  2.100e+06   6.053 1.59e-09 ***
## RAM24                1.567e+06  1.742e+06   0.899 0.368505    
## Penyimpanan8        -3.033e+06  2.928e+06  -1.036 0.300349    
## Penyimpanan16        2.474e+06  1.156e+06   2.140 0.032437 *  
## Penyimpanan32        3.742e+06  6.041e+05   6.194 6.63e-10 ***
## Penyimpanan64       -5.358e+05  1.917e+05  -2.795 0.005226 ** 
## Penyimpanan256       5.122e+05  1.379e+05   3.714 0.000207 ***
## Penyimpanan512       2.456e+06  2.494e+05   9.848  < 2e-16 ***
## J.Ulasan            -3.379e+02  2.808e+02  -1.203 0.228918    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2870000 on 3091 degrees of freedom
##   (25 observations deleted due to missingness)
## Multiple R-squared:  0.6273, Adjusted R-squared:  0.6239 
## F-statistic: 179.4 on 29 and 3091 DF,  p-value: < 2.2e-16

Didapatkan R-Squared yang lebih tinggi daripada model sebelum di Transformasi, namun tujuannya adalah melihat apakah bisa untuk menyelesaikan permasalahan asumsi maka langsung kita cek

Pengecekan

#normalitas
shapiro.test(residuals(modelt))
## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(modelt)
## W = 0.99178, p-value = 2.147e-12
# 2. Homoskedastisitas

library(lmtest)

bptest(modelt)
## 
##  studentized Breusch-Pagan test
## 
## data:  modelt
## BP = 313.04, df = 29, p-value < 2.2e-16
library(snpar)

# Seleksi Peubah

library(leaps)
## Warning: package 'leaps' was built under R version 4.3.3
regfit.full <- regsubsets(HARGA ~ Brand+ LOKASI + RAM + Penyimpanan+ J.Ulasan, data=data , nvmax = 29)
reg.summary <-  summary(regfit.full)
summary(regfit.full)
## Subset selection object
## Call: regsubsets.formula(HARGA ~ Brand + LOKASI + RAM + Penyimpanan + 
##     J.Ulasan, data = data, nvmax = 29)
## 29 Variables  (and intercept)
##                     Forced in Forced out
## Brandasus               FALSE      FALSE
## Brandinfinix            FALSE      FALSE
## Brandoppo               FALSE      FALSE
## BrandRealme             FALSE      FALSE
## BrandSamsung            FALSE      FALSE
## Brandvivo               FALSE      FALSE
## Brandxiaomi             FALSE      FALSE
## LOKASIBali              FALSE      FALSE
## LOKASIDI Yogyakarta     FALSE      FALSE
## LOKASIJawa Barat        FALSE      FALSE
## LOKASIJawa Tengah       FALSE      FALSE
## LOKASIJawa Timur        FALSE      FALSE
## LOKASILuar Jawa         FALSE      FALSE
## RAM1                    FALSE      FALSE
## RAM2                    FALSE      FALSE
## RAM3                    FALSE      FALSE
## RAM4                    FALSE      FALSE
## RAM8                    FALSE      FALSE
## RAM12                   FALSE      FALSE
## RAM16                   FALSE      FALSE
## RAM18                   FALSE      FALSE
## RAM24                   FALSE      FALSE
## Penyimpanan8            FALSE      FALSE
## Penyimpanan16           FALSE      FALSE
## Penyimpanan32           FALSE      FALSE
## Penyimpanan64           FALSE      FALSE
## Penyimpanan256          FALSE      FALSE
## Penyimpanan512          FALSE      FALSE
## J.Ulasan                FALSE      FALSE
## 1 subsets of each size up to 29
## Selection Algorithm: exhaustive
##           Brandasus Brandinfinix Brandoppo BrandRealme BrandSamsung Brandvivo
## 1  ( 1 )  " "       " "          " "       " "         " "          " "      
## 2  ( 1 )  " "       " "          " "       " "         " "          " "      
## 3  ( 1 )  " "       "*"          " "       " "         " "          " "      
## 4  ( 1 )  " "       "*"          " "       " "         " "          "*"      
## 5  ( 1 )  " "       "*"          " "       "*"         " "          "*"      
## 6  ( 1 )  " "       "*"          "*"       "*"         "*"          "*"      
## 7  ( 1 )  " "       "*"          "*"       "*"         "*"          "*"      
## 8  ( 1 )  " "       "*"          "*"       "*"         "*"          "*"      
## 9  ( 1 )  " "       "*"          "*"       "*"         "*"          "*"      
## 10  ( 1 ) " "       "*"          "*"       "*"         "*"          "*"      
## 11  ( 1 ) " "       "*"          "*"       "*"         "*"          "*"      
## 12  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 13  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 14  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 15  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 16  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 17  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 18  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 19  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 20  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 21  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 22  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 23  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 24  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 25  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 26  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 27  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 28  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 29  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
##           Brandxiaomi LOKASIBali LOKASIDI Yogyakarta LOKASIJawa Barat
## 1  ( 1 )  " "         " "        " "                 " "             
## 2  ( 1 )  "*"         " "        " "                 " "             
## 3  ( 1 )  "*"         " "        " "                 " "             
## 4  ( 1 )  "*"         " "        " "                 " "             
## 5  ( 1 )  "*"         " "        " "                 " "             
## 6  ( 1 )  "*"         " "        " "                 " "             
## 7  ( 1 )  "*"         " "        " "                 " "             
## 8  ( 1 )  "*"         " "        " "                 " "             
## 9  ( 1 )  "*"         " "        " "                 " "             
## 10  ( 1 ) "*"         " "        " "                 " "             
## 11  ( 1 ) "*"         " "        " "                 " "             
## 12  ( 1 ) "*"         " "        " "                 " "             
## 13  ( 1 ) "*"         " "        " "                 " "             
## 14  ( 1 ) "*"         " "        " "                 " "             
## 15  ( 1 ) "*"         " "        " "                 " "             
## 16  ( 1 ) "*"         " "        " "                 " "             
## 17  ( 1 ) "*"         " "        " "                 " "             
## 18  ( 1 ) "*"         " "        " "                 " "             
## 19  ( 1 ) "*"         " "        " "                 " "             
## 20  ( 1 ) "*"         " "        " "                 " "             
## 21  ( 1 ) "*"         " "        " "                 " "             
## 22  ( 1 ) "*"         " "        " "                 " "             
## 23  ( 1 ) "*"         " "        " "                 " "             
## 24  ( 1 ) "*"         " "        " "                 " "             
## 25  ( 1 ) "*"         " "        " "                 " "             
## 26  ( 1 ) "*"         " "        "*"                 " "             
## 27  ( 1 ) "*"         "*"        "*"                 " "             
## 28  ( 1 ) "*"         "*"        "*"                 " "             
## 29  ( 1 ) "*"         "*"        "*"                 "*"             
##           LOKASIJawa Tengah LOKASIJawa Timur LOKASILuar Jawa RAM1 RAM2 RAM3
## 1  ( 1 )  " "               " "              " "             " "  " "  " " 
## 2  ( 1 )  " "               " "              " "             " "  " "  " " 
## 3  ( 1 )  " "               " "              " "             " "  " "  " " 
## 4  ( 1 )  " "               " "              " "             " "  " "  " " 
## 5  ( 1 )  " "               " "              " "             " "  " "  " " 
## 6  ( 1 )  " "               " "              " "             " "  " "  " " 
## 7  ( 1 )  " "               " "              " "             " "  " "  " " 
## 8  ( 1 )  " "               " "              " "             " "  " "  " " 
## 9  ( 1 )  " "               " "              " "             " "  " "  "*" 
## 10  ( 1 ) " "               " "              " "             " "  "*"  "*" 
## 11  ( 1 ) " "               " "              " "             " "  "*"  "*" 
## 12  ( 1 ) " "               " "              " "             " "  "*"  "*" 
## 13  ( 1 ) " "               " "              " "             " "  "*"  "*" 
## 14  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 15  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 16  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 17  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 18  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 19  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 20  ( 1 ) " "               " "              "*"             "*"  "*"  "*" 
## 21  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 22  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 23  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 24  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 25  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 26  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 27  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 28  ( 1 ) "*"               "*"              "*"             "*"  "*"  "*" 
## 29  ( 1 ) "*"               "*"              "*"             "*"  "*"  "*" 
##           RAM4 RAM8 RAM12 RAM16 RAM18 RAM24 Penyimpanan8 Penyimpanan16
## 1  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 2  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 3  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 4  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 5  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 6  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 7  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 8  ( 1 )  " "  " "  "*"   " "   " "   " "   " "          " "          
## 9  ( 1 )  "*"  " "  "*"   " "   " "   " "   " "          " "          
## 10  ( 1 ) "*"  " "  "*"   " "   " "   " "   " "          " "          
## 11  ( 1 ) "*"  " "  "*"   " "   " "   " "   " "          " "          
## 12  ( 1 ) "*"  " "  "*"   "*"   " "   " "   " "          " "          
## 13  ( 1 ) "*"  " "  "*"   "*"   " "   " "   " "          " "          
## 14  ( 1 ) "*"  " "  "*"   "*"   " "   " "   " "          " "          
## 15  ( 1 ) "*"  "*"  "*"   "*"   " "   " "   " "          " "          
## 16  ( 1 ) "*"  "*"  "*"   "*"   " "   " "   " "          " "          
## 17  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          " "          
## 18  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          " "          
## 19  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          " "          
## 20  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          " "          
## 21  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          " "          
## 22  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          "*"          
## 23  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          "*"          
## 24  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   "*"          "*"          
## 25  ( 1 ) "*"  "*"  "*"   "*"   "*"   "*"   "*"          "*"          
## 26  ( 1 ) "*"  "*"  "*"   "*"   "*"   "*"   "*"          "*"          
## 27  ( 1 ) "*"  "*"  "*"   "*"   "*"   "*"   "*"          "*"          
## 28  ( 1 ) "*"  "*"  "*"   "*"   "*"   "*"   "*"          "*"          
## 29  ( 1 ) "*"  "*"  "*"   "*"   "*"   "*"   "*"          "*"          
##           Penyimpanan32 Penyimpanan64 Penyimpanan256 Penyimpanan512 J.Ulasan
## 1  ( 1 )  " "           " "           " "            "*"            " "     
## 2  ( 1 )  " "           " "           " "            "*"            " "     
## 3  ( 1 )  " "           " "           " "            "*"            " "     
## 4  ( 1 )  " "           " "           " "            "*"            " "     
## 5  ( 1 )  " "           " "           " "            "*"            " "     
## 6  ( 1 )  " "           " "           " "            " "            " "     
## 7  ( 1 )  " "           "*"           " "            " "            " "     
## 8  ( 1 )  " "           "*"           " "            " "            " "     
## 9  ( 1 )  " "           " "           " "            " "            " "     
## 10  ( 1 ) " "           " "           " "            " "            " "     
## 11  ( 1 ) " "           " "           " "            "*"            " "     
## 12  ( 1 ) " "           " "           " "            " "            " "     
## 13  ( 1 ) " "           " "           " "            "*"            " "     
## 14  ( 1 ) " "           " "           " "            "*"            " "     
## 15  ( 1 ) " "           " "           " "            "*"            " "     
## 16  ( 1 ) "*"           " "           " "            "*"            " "     
## 17  ( 1 ) "*"           " "           " "            "*"            " "     
## 18  ( 1 ) "*"           " "           "*"            "*"            " "     
## 19  ( 1 ) "*"           "*"           "*"            "*"            " "     
## 20  ( 1 ) "*"           "*"           "*"            "*"            " "     
## 21  ( 1 ) "*"           "*"           "*"            "*"            " "     
## 22  ( 1 ) "*"           "*"           "*"            "*"            " "     
## 23  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 24  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 25  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 26  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 27  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 28  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 29  ( 1 ) "*"           "*"           "*"            "*"            "*"
reg.summary$adjr2
##  [1] 0.09240237 0.13856492 0.17996271 0.22998662 0.27180073 0.33017864
##  [7] 0.40556025 0.46406155 0.51016061 0.53845534 0.56307456 0.58207056
## [13] 0.59511227 0.60330756 0.61001694 0.61525926 0.61958078 0.62152828
## [19] 0.62252194 0.62318433 0.62365766 0.62410094 0.62415064 0.62415792
## [25] 0.62413529 0.62410899 0.62407385 0.62397130 0.62385039
which.max(reg.summary$adjr2)
## [1] 24
coef(regfit.full, 24)
##      (Intercept)        Brandasus     Brandinfinix        Brandoppo 
##     1.102538e+07    -7.643575e+06    -1.000860e+07    -8.898051e+06 
##      BrandRealme     BrandSamsung        Brandvivo      Brandxiaomi 
##    -8.830088e+06    -7.192492e+06    -8.728234e+06    -9.105534e+06 
## LOKASIJawa Timur  LOKASILuar Jawa             RAM1             RAM2 
##     3.830273e+05     4.408839e+05    -1.117701e+07    -8.169859e+06 
##             RAM3             RAM4             RAM8            RAM12 
##    -6.385813e+06    -2.787857e+06     9.568391e+05     4.737387e+06 
##            RAM16            RAM18     Penyimpanan8    Penyimpanan16 
##     8.300965e+06     1.256514e+07    -3.012885e+06     2.487205e+06 
##    Penyimpanan32    Penyimpanan64   Penyimpanan256   Penyimpanan512 
##     3.748907e+06    -5.397252e+05     5.161355e+05     2.492005e+06 
##         J.Ulasan 
##    -3.327357e+02
#Cp
reg.summary$cp 
##  [1] 4408.72093 4025.65492 3682.31799 3267.74290 2921.42153 2438.19702
##  [7] 1814.56096 1330.98154  950.28778  717.04507  514.33213  358.21288
## [13]  251.37716  184.62932  130.19089   87.89424   53.22162   38.14977
## [19]   30.95178   26.48923   23.58780   20.93643   21.52792   22.46879
## [25]   23.65580   24.87283   26.16250   28.00610   30.00000
which.min(reg.summary$cp)
## [1] 22
n <- nrow(data)
rss <- reg.summary$rss
aic <- n*log(rss/n) + 2*(10+1)
aic
##  [1] 96327.73 96162.49 96006.54 95807.52 95630.86 95366.96 94990.34 94663.40
##  [9] 94379.43 94191.24 94017.78 93876.92 93776.18 93710.83 93656.15 93612.56
## [17] 93576.01 93558.85 93549.57 93543.03 93538.06 93533.34 93531.90 93530.83
## [25] 93530.00 93529.20 93528.48 93528.32 93528.32
which.min(aic)
## [1] 29
coef(regfit.full, 29)
##         (Intercept)           Brandasus        Brandinfinix           Brandoppo 
##        1.102039e+07       -7.748241e+06       -9.996847e+06       -8.896092e+06 
##         BrandRealme        BrandSamsung           Brandvivo         Brandxiaomi 
##       -8.829891e+06       -7.185516e+06       -8.730847e+06       -9.109551e+06 
##          LOKASIBali LOKASIDI Yogyakarta    LOKASIJawa Barat   LOKASIJawa Tengah 
##        3.883858e+05       -6.590816e+05       -1.783686e+04       -1.904907e+05 
##    LOKASIJawa Timur     LOKASILuar Jawa                RAM1                RAM2 
##        3.798504e+05        4.377656e+05       -1.116853e+07       -8.141921e+06 
##                RAM3                RAM4                RAM8               RAM12 
##       -6.381449e+06       -2.780065e+06        9.668636e+05        4.762440e+06 
##               RAM16               RAM18               RAM24        Penyimpanan8 
##        8.398689e+06        1.271118e+07        1.567127e+06       -3.032647e+06 
##       Penyimpanan16       Penyimpanan32       Penyimpanan64      Penyimpanan256 
##        2.473774e+06        3.741696e+06       -5.357751e+05        5.121893e+05 
##      Penyimpanan512            J.Ulasan 
##        2.456009e+06       -3.379496e+02
reg.summary$bic
##  [1]  -287.5025  -443.3781  -590.0422  -779.4395  -946.6506 -1200.4091
##  [7] -1565.9870 -1882.2796 -2155.9450 -2334.5980 -2498.6373 -2630.3238
## [13] -2722.2266 -2779.0053 -2825.2022 -2860.4001 -2888.6141 -2897.5927
## [19] -2898.7579 -2897.2001 -2894.0840 -2890.7236 -2884.0979 -2877.1204
## [25] -2869.8948 -2862.6391 -2855.3103 -2847.4223 -2839.3826
which.min(reg.summary$bic)
## [1] 19
coef(regfit.full, 19)
##    (Intercept)      Brandasus   Brandinfinix      Brandoppo    BrandRealme 
##     11094447.8     -7667292.8     -9972189.6     -8951201.6     -8835170.6 
##   BrandSamsung      Brandvivo    Brandxiaomi           RAM1           RAM2 
##     -7169694.4     -8736884.5     -9083600.1    -10723015.7     -7959902.8 
##           RAM3           RAM4           RAM8          RAM12          RAM16 
##     -6375916.6     -2763403.3       959749.5      4713574.5      8300264.8 
##          RAM18  Penyimpanan32  Penyimpanan64 Penyimpanan256 Penyimpanan512 
##     12552487.1      3611103.6      -578264.1       495172.0      2434857.9
#Kesimpulan
method.sub <- data.frame(kriteria_pemilihan_model = c("R2-adjusted", "Cp", "AIC", "BIC"), model_terpilih = c(24,22, 29, 19)) 
colnames(method.sub) <- c("Kriteria Pemilihan Model", "Model Terpilih")
method.sub
##   Kriteria Pemilihan Model Model Terpilih
## 1              R2-adjusted             24
## 2                       Cp             22
## 3                      AIC             29
## 4                      BIC             19
#membuat plot
par(mfrow=c(2,2))

#plot Adj R2
plot(reg.summary$adjr2 ,xlab="Model",
 ylab="R2-Adjusted",type="l", main="Plot R2-Adjusted")
points(24, reg.summary$adjr2[24], col="red",cex=2,pch=20)

#plot Cp
plot(reg.summary$cp ,xlab="Model",
 ylab="Cp",type="l", main="Plot Cp")
points(22, reg.summary$cp[22], col="red",cex=2,pch=20)

#plot AIC
plot(aic, xlab="Model",
 ylab="AIC",type="l", main="Plot AIC")
points(29, aic[29], col="red",cex=2,pch=20)

#plot BIC
plot(reg.summary$bic ,xlab="Model",
 ylab="BIC",type="l", main="Plot BIC")
points(19, reg.summary$bic[19], col="red",cex=2,pch=20)

regfit.fwd <- regsubsets(HARGA ~ Brand+ LOKASI + RAM + Penyimpanan+ J.Ulasan, data=data , nvmax = 29, method = "forward")
reg.summary.fwd <- summary(regfit.fwd)
reg.summary.fwd
## Subset selection object
## Call: regsubsets.formula(HARGA ~ Brand + LOKASI + RAM + Penyimpanan + 
##     J.Ulasan, data = data, nvmax = 29, method = "forward")
## 29 Variables  (and intercept)
##                     Forced in Forced out
## Brandasus               FALSE      FALSE
## Brandinfinix            FALSE      FALSE
## Brandoppo               FALSE      FALSE
## BrandRealme             FALSE      FALSE
## BrandSamsung            FALSE      FALSE
## Brandvivo               FALSE      FALSE
## Brandxiaomi             FALSE      FALSE
## LOKASIBali              FALSE      FALSE
## LOKASIDI Yogyakarta     FALSE      FALSE
## LOKASIJawa Barat        FALSE      FALSE
## LOKASIJawa Tengah       FALSE      FALSE
## LOKASIJawa Timur        FALSE      FALSE
## LOKASILuar Jawa         FALSE      FALSE
## RAM1                    FALSE      FALSE
## RAM2                    FALSE      FALSE
## RAM3                    FALSE      FALSE
## RAM4                    FALSE      FALSE
## RAM8                    FALSE      FALSE
## RAM12                   FALSE      FALSE
## RAM16                   FALSE      FALSE
## RAM18                   FALSE      FALSE
## RAM24                   FALSE      FALSE
## Penyimpanan8            FALSE      FALSE
## Penyimpanan16           FALSE      FALSE
## Penyimpanan32           FALSE      FALSE
## Penyimpanan64           FALSE      FALSE
## Penyimpanan256          FALSE      FALSE
## Penyimpanan512          FALSE      FALSE
## J.Ulasan                FALSE      FALSE
## 1 subsets of each size up to 29
## Selection Algorithm: forward
##           Brandasus Brandinfinix Brandoppo BrandRealme BrandSamsung Brandvivo
## 1  ( 1 )  " "       " "          " "       " "         " "          " "      
## 2  ( 1 )  " "       " "          " "       " "         " "          " "      
## 3  ( 1 )  " "       "*"          " "       " "         " "          " "      
## 4  ( 1 )  " "       "*"          " "       " "         " "          "*"      
## 5  ( 1 )  " "       "*"          " "       "*"         " "          "*"      
## 6  ( 1 )  " "       "*"          " "       "*"         "*"          "*"      
## 7  ( 1 )  " "       "*"          "*"       "*"         "*"          "*"      
## 8  ( 1 )  " "       "*"          "*"       "*"         "*"          "*"      
## 9  ( 1 )  " "       "*"          "*"       "*"         "*"          "*"      
## 10  ( 1 ) " "       "*"          "*"       "*"         "*"          "*"      
## 11  ( 1 ) " "       "*"          "*"       "*"         "*"          "*"      
## 12  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 13  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 14  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 15  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 16  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 17  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 18  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 19  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 20  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 21  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 22  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 23  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 24  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 25  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 26  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 27  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 28  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 29  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
##           Brandxiaomi LOKASIBali LOKASIDI Yogyakarta LOKASIJawa Barat
## 1  ( 1 )  " "         " "        " "                 " "             
## 2  ( 1 )  "*"         " "        " "                 " "             
## 3  ( 1 )  "*"         " "        " "                 " "             
## 4  ( 1 )  "*"         " "        " "                 " "             
## 5  ( 1 )  "*"         " "        " "                 " "             
## 6  ( 1 )  "*"         " "        " "                 " "             
## 7  ( 1 )  "*"         " "        " "                 " "             
## 8  ( 1 )  "*"         " "        " "                 " "             
## 9  ( 1 )  "*"         " "        " "                 " "             
## 10  ( 1 ) "*"         " "        " "                 " "             
## 11  ( 1 ) "*"         " "        " "                 " "             
## 12  ( 1 ) "*"         " "        " "                 " "             
## 13  ( 1 ) "*"         " "        " "                 " "             
## 14  ( 1 ) "*"         " "        " "                 " "             
## 15  ( 1 ) "*"         " "        " "                 " "             
## 16  ( 1 ) "*"         " "        " "                 " "             
## 17  ( 1 ) "*"         " "        " "                 " "             
## 18  ( 1 ) "*"         " "        " "                 " "             
## 19  ( 1 ) "*"         " "        " "                 " "             
## 20  ( 1 ) "*"         " "        " "                 " "             
## 21  ( 1 ) "*"         " "        " "                 " "             
## 22  ( 1 ) "*"         " "        " "                 " "             
## 23  ( 1 ) "*"         " "        " "                 " "             
## 24  ( 1 ) "*"         " "        " "                 " "             
## 25  ( 1 ) "*"         " "        " "                 " "             
## 26  ( 1 ) "*"         " "        "*"                 " "             
## 27  ( 1 ) "*"         "*"        "*"                 " "             
## 28  ( 1 ) "*"         "*"        "*"                 " "             
## 29  ( 1 ) "*"         "*"        "*"                 "*"             
##           LOKASIJawa Tengah LOKASIJawa Timur LOKASILuar Jawa RAM1 RAM2 RAM3
## 1  ( 1 )  " "               " "              " "             " "  " "  " " 
## 2  ( 1 )  " "               " "              " "             " "  " "  " " 
## 3  ( 1 )  " "               " "              " "             " "  " "  " " 
## 4  ( 1 )  " "               " "              " "             " "  " "  " " 
## 5  ( 1 )  " "               " "              " "             " "  " "  " " 
## 6  ( 1 )  " "               " "              " "             " "  " "  " " 
## 7  ( 1 )  " "               " "              " "             " "  " "  " " 
## 8  ( 1 )  " "               " "              " "             " "  " "  " " 
## 9  ( 1 )  " "               " "              " "             " "  " "  "*" 
## 10  ( 1 ) " "               " "              " "             " "  " "  "*" 
## 11  ( 1 ) " "               " "              " "             " "  "*"  "*" 
## 12  ( 1 ) " "               " "              " "             " "  "*"  "*" 
## 13  ( 1 ) " "               " "              " "             " "  "*"  "*" 
## 14  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 15  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 16  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 17  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 18  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 19  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 20  ( 1 ) " "               " "              "*"             "*"  "*"  "*" 
## 21  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 22  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 23  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 24  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 25  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 26  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 27  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 28  ( 1 ) "*"               "*"              "*"             "*"  "*"  "*" 
## 29  ( 1 ) "*"               "*"              "*"             "*"  "*"  "*" 
##           RAM4 RAM8 RAM12 RAM16 RAM18 RAM24 Penyimpanan8 Penyimpanan16
## 1  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 2  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 3  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 4  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 5  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 6  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 7  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 8  ( 1 )  "*"  " "  " "   " "   " "   " "   " "          " "          
## 9  ( 1 )  "*"  " "  " "   " "   " "   " "   " "          " "          
## 10  ( 1 ) "*"  " "  "*"   " "   " "   " "   " "          " "          
## 11  ( 1 ) "*"  " "  "*"   " "   " "   " "   " "          " "          
## 12  ( 1 ) "*"  " "  "*"   " "   " "   " "   " "          " "          
## 13  ( 1 ) "*"  " "  "*"   "*"   " "   " "   " "          " "          
## 14  ( 1 ) "*"  " "  "*"   "*"   " "   " "   " "          " "          
## 15  ( 1 ) "*"  "*"  "*"   "*"   " "   " "   " "          " "          
## 16  ( 1 ) "*"  "*"  "*"   "*"   " "   " "   " "          " "          
## 17  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          " "          
## 18  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          " "          
## 19  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          " "          
## 20  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          " "          
## 21  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          " "          
## 22  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          "*"          
## 23  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          "*"          
## 24  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   "*"          "*"          
## 25  ( 1 ) "*"  "*"  "*"   "*"   "*"   "*"   "*"          "*"          
## 26  ( 1 ) "*"  "*"  "*"   "*"   "*"   "*"   "*"          "*"          
## 27  ( 1 ) "*"  "*"  "*"   "*"   "*"   "*"   "*"          "*"          
## 28  ( 1 ) "*"  "*"  "*"   "*"   "*"   "*"   "*"          "*"          
## 29  ( 1 ) "*"  "*"  "*"   "*"   "*"   "*"   "*"          "*"          
##           Penyimpanan32 Penyimpanan64 Penyimpanan256 Penyimpanan512 J.Ulasan
## 1  ( 1 )  " "           " "           " "            "*"            " "     
## 2  ( 1 )  " "           " "           " "            "*"            " "     
## 3  ( 1 )  " "           " "           " "            "*"            " "     
## 4  ( 1 )  " "           " "           " "            "*"            " "     
## 5  ( 1 )  " "           " "           " "            "*"            " "     
## 6  ( 1 )  " "           " "           " "            "*"            " "     
## 7  ( 1 )  " "           " "           " "            "*"            " "     
## 8  ( 1 )  " "           " "           " "            "*"            " "     
## 9  ( 1 )  " "           " "           " "            "*"            " "     
## 10  ( 1 ) " "           " "           " "            "*"            " "     
## 11  ( 1 ) " "           " "           " "            "*"            " "     
## 12  ( 1 ) " "           " "           " "            "*"            " "     
## 13  ( 1 ) " "           " "           " "            "*"            " "     
## 14  ( 1 ) " "           " "           " "            "*"            " "     
## 15  ( 1 ) " "           " "           " "            "*"            " "     
## 16  ( 1 ) "*"           " "           " "            "*"            " "     
## 17  ( 1 ) "*"           " "           " "            "*"            " "     
## 18  ( 1 ) "*"           " "           "*"            "*"            " "     
## 19  ( 1 ) "*"           "*"           "*"            "*"            " "     
## 20  ( 1 ) "*"           "*"           "*"            "*"            " "     
## 21  ( 1 ) "*"           "*"           "*"            "*"            " "     
## 22  ( 1 ) "*"           "*"           "*"            "*"            " "     
## 23  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 24  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 25  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 26  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 27  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 28  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 29  ( 1 ) "*"           "*"           "*"            "*"            "*"
reg.summary.fwd$adjr2
##  [1] 0.09240237 0.13856492 0.17996271 0.22998662 0.27180073 0.31971277
##  [7] 0.39810804 0.45942116 0.50886123 0.53707813 0.56307456 0.57849925
## [13] 0.59511227 0.60330756 0.61001694 0.61525926 0.61958078 0.62152828
## [19] 0.62252194 0.62318433 0.62365766 0.62410094 0.62415064 0.62415792
## [25] 0.62413529 0.62410899 0.62407385 0.62397130 0.62385039
which.max(reg.summary.fwd$adjr2)
## [1] 24
reg.summary.fwd$cp
##  [1] 4408.72093 4025.65492 3682.31799 3267.74290 2921.42153 2524.83997
##  [7] 1876.23513 1369.37291  961.03449  728.43189  514.33213  387.72148
## [13]  251.37716  184.62932  130.19089   87.89424   53.22162   38.14977
## [19]   30.95178   26.48923   23.58780   20.93643   21.52792   22.46879
## [25]   23.65580   24.87283   26.16250   28.00610   30.00000
which.min(reg.summary.fwd$cp)
## [1] 22
coef(regfit.fwd, 22)
##      (Intercept)        Brandasus     Brandinfinix        Brandoppo 
##       10990755.0       -7623740.3      -10000888.1       -8891565.1 
##      BrandRealme     BrandSamsung        Brandvivo      Brandxiaomi 
##       -8809399.0       -7184141.8       -8714781.0       -9091447.5 
## LOKASIJawa Timur  LOKASILuar Jawa             RAM1             RAM2 
##         392234.8         465815.4      -11162498.7       -8281926.7 
##             RAM3             RAM4             RAM8            RAM12 
##       -6426797.3       -2795097.7         952428.6        4725554.2 
##            RAM16            RAM18    Penyimpanan16    Penyimpanan32 
##        8296919.9       12547133.4        2486487.0        3804857.7 
##    Penyimpanan64   Penyimpanan256   Penyimpanan512 
##        -542625.9         523738.7        2500352.0
rss <- reg.summary.fwd$rss
aic <- n*log(rss/n) + 2*(10+1)
aic
##  [1] 96327.73 96162.49 96006.54 95807.52 95630.86 95415.73 95029.53 94690.52
##  [9] 94387.77 94200.61 94017.78 93903.69 93776.18 93710.83 93656.15 93612.56
## [17] 93576.01 93558.85 93549.57 93543.03 93538.06 93533.34 93531.90 93530.83
## [25] 93530.00 93529.20 93528.48 93528.32 93528.32
which.min(aic)
## [1] 29
reg.summary.fwd$bic 
##  [1]  -287.5025  -443.3781  -590.0422  -779.4395  -946.6506 -1152.0209
##  [7] -1527.1037 -1855.3729 -2147.6770 -2325.2990 -2498.6373 -2603.7673
## [13] -2722.2266 -2779.0053 -2825.2022 -2860.4001 -2888.6141 -2897.5927
## [19] -2898.7579 -2897.2001 -2894.0840 -2890.7236 -2884.0979 -2877.1204
## [25] -2869.8948 -2862.6391 -2855.3103 -2847.4223 -2839.3826
which.min(reg.summary.fwd$bic)
## [1] 19

Backward

regfit.backward <- regsubsets(HARGA ~ Brand+ LOKASI + RAM + Penyimpanan+ J.Ulasan, data=data , nvmax = 29, method = "backward")
reg.summary.backward <- summary(regfit.backward)
reg.summary.backward
## Subset selection object
## Call: regsubsets.formula(HARGA ~ Brand + LOKASI + RAM + Penyimpanan + 
##     J.Ulasan, data = data, nvmax = 29, method = "backward")
## 29 Variables  (and intercept)
##                     Forced in Forced out
## Brandasus               FALSE      FALSE
## Brandinfinix            FALSE      FALSE
## Brandoppo               FALSE      FALSE
## BrandRealme             FALSE      FALSE
## BrandSamsung            FALSE      FALSE
## Brandvivo               FALSE      FALSE
## Brandxiaomi             FALSE      FALSE
## LOKASIBali              FALSE      FALSE
## LOKASIDI Yogyakarta     FALSE      FALSE
## LOKASIJawa Barat        FALSE      FALSE
## LOKASIJawa Tengah       FALSE      FALSE
## LOKASIJawa Timur        FALSE      FALSE
## LOKASILuar Jawa         FALSE      FALSE
## RAM1                    FALSE      FALSE
## RAM2                    FALSE      FALSE
## RAM3                    FALSE      FALSE
## RAM4                    FALSE      FALSE
## RAM8                    FALSE      FALSE
## RAM12                   FALSE      FALSE
## RAM16                   FALSE      FALSE
## RAM18                   FALSE      FALSE
## RAM24                   FALSE      FALSE
## Penyimpanan8            FALSE      FALSE
## Penyimpanan16           FALSE      FALSE
## Penyimpanan32           FALSE      FALSE
## Penyimpanan64           FALSE      FALSE
## Penyimpanan256          FALSE      FALSE
## Penyimpanan512          FALSE      FALSE
## J.Ulasan                FALSE      FALSE
## 1 subsets of each size up to 29
## Selection Algorithm: backward
##           Brandasus Brandinfinix Brandoppo BrandRealme BrandSamsung Brandvivo
## 1  ( 1 )  " "       " "          " "       " "         " "          " "      
## 2  ( 1 )  " "       "*"          " "       " "         " "          " "      
## 3  ( 1 )  " "       "*"          " "       " "         " "          "*"      
## 4  ( 1 )  " "       "*"          " "       "*"         " "          "*"      
## 5  ( 1 )  " "       "*"          " "       "*"         "*"          "*"      
## 6  ( 1 )  " "       "*"          "*"       "*"         "*"          "*"      
## 7  ( 1 )  " "       "*"          "*"       "*"         "*"          "*"      
## 8  ( 1 )  " "       "*"          "*"       "*"         "*"          "*"      
## 9  ( 1 )  " "       "*"          "*"       "*"         "*"          "*"      
## 10  ( 1 ) " "       "*"          "*"       "*"         "*"          "*"      
## 11  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 12  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 13  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 14  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 15  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 16  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 17  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 18  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 19  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 20  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 21  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 22  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 23  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 24  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 25  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 26  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 27  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 28  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 29  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
##           Brandxiaomi LOKASIBali LOKASIDI Yogyakarta LOKASIJawa Barat
## 1  ( 1 )  "*"         " "        " "                 " "             
## 2  ( 1 )  "*"         " "        " "                 " "             
## 3  ( 1 )  "*"         " "        " "                 " "             
## 4  ( 1 )  "*"         " "        " "                 " "             
## 5  ( 1 )  "*"         " "        " "                 " "             
## 6  ( 1 )  "*"         " "        " "                 " "             
## 7  ( 1 )  "*"         " "        " "                 " "             
## 8  ( 1 )  "*"         " "        " "                 " "             
## 9  ( 1 )  "*"         " "        " "                 " "             
## 10  ( 1 ) "*"         " "        " "                 " "             
## 11  ( 1 ) "*"         " "        " "                 " "             
## 12  ( 1 ) "*"         " "        " "                 " "             
## 13  ( 1 ) "*"         " "        " "                 " "             
## 14  ( 1 ) "*"         " "        " "                 " "             
## 15  ( 1 ) "*"         " "        " "                 " "             
## 16  ( 1 ) "*"         " "        " "                 " "             
## 17  ( 1 ) "*"         " "        " "                 " "             
## 18  ( 1 ) "*"         " "        " "                 " "             
## 19  ( 1 ) "*"         " "        " "                 " "             
## 20  ( 1 ) "*"         " "        " "                 " "             
## 21  ( 1 ) "*"         " "        " "                 " "             
## 22  ( 1 ) "*"         " "        " "                 " "             
## 23  ( 1 ) "*"         " "        " "                 " "             
## 24  ( 1 ) "*"         " "        " "                 " "             
## 25  ( 1 ) "*"         " "        " "                 " "             
## 26  ( 1 ) "*"         " "        "*"                 " "             
## 27  ( 1 ) "*"         "*"        "*"                 " "             
## 28  ( 1 ) "*"         "*"        "*"                 " "             
## 29  ( 1 ) "*"         "*"        "*"                 "*"             
##           LOKASIJawa Tengah LOKASIJawa Timur LOKASILuar Jawa RAM1 RAM2 RAM3
## 1  ( 1 )  " "               " "              " "             " "  " "  " " 
## 2  ( 1 )  " "               " "              " "             " "  " "  " " 
## 3  ( 1 )  " "               " "              " "             " "  " "  " " 
## 4  ( 1 )  " "               " "              " "             " "  " "  " " 
## 5  ( 1 )  " "               " "              " "             " "  " "  " " 
## 6  ( 1 )  " "               " "              " "             " "  " "  " " 
## 7  ( 1 )  " "               " "              " "             " "  " "  " " 
## 8  ( 1 )  " "               " "              " "             " "  " "  "*" 
## 9  ( 1 )  " "               " "              " "             " "  " "  "*" 
## 10  ( 1 ) " "               " "              " "             " "  " "  "*" 
## 11  ( 1 ) " "               " "              " "             " "  " "  "*" 
## 12  ( 1 ) " "               " "              " "             " "  "*"  "*" 
## 13  ( 1 ) " "               " "              " "             " "  "*"  "*" 
## 14  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 15  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 16  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 17  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 18  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 19  ( 1 ) " "               " "              " "             "*"  "*"  "*" 
## 20  ( 1 ) " "               " "              "*"             "*"  "*"  "*" 
## 21  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 22  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 23  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 24  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 25  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 26  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 27  ( 1 ) " "               "*"              "*"             "*"  "*"  "*" 
## 28  ( 1 ) "*"               "*"              "*"             "*"  "*"  "*" 
## 29  ( 1 ) "*"               "*"              "*"             "*"  "*"  "*" 
##           RAM4 RAM8 RAM12 RAM16 RAM18 RAM24 Penyimpanan8 Penyimpanan16
## 1  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 2  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 3  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 4  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 5  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 6  ( 1 )  " "  " "  " "   " "   " "   " "   " "          " "          
## 7  ( 1 )  "*"  " "  " "   " "   " "   " "   " "          " "          
## 8  ( 1 )  "*"  " "  " "   " "   " "   " "   " "          " "          
## 9  ( 1 )  "*"  " "  "*"   " "   " "   " "   " "          " "          
## 10  ( 1 ) "*"  " "  "*"   "*"   " "   " "   " "          " "          
## 11  ( 1 ) "*"  " "  "*"   "*"   " "   " "   " "          " "          
## 12  ( 1 ) "*"  " "  "*"   "*"   " "   " "   " "          " "          
## 13  ( 1 ) "*"  " "  "*"   "*"   " "   " "   " "          " "          
## 14  ( 1 ) "*"  " "  "*"   "*"   " "   " "   " "          " "          
## 15  ( 1 ) "*"  "*"  "*"   "*"   " "   " "   " "          " "          
## 16  ( 1 ) "*"  "*"  "*"   "*"   " "   " "   " "          " "          
## 17  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          " "          
## 18  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          " "          
## 19  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          " "          
## 20  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          " "          
## 21  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          " "          
## 22  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          "*"          
## 23  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   " "          "*"          
## 24  ( 1 ) "*"  "*"  "*"   "*"   "*"   " "   "*"          "*"          
## 25  ( 1 ) "*"  "*"  "*"   "*"   "*"   "*"   "*"          "*"          
## 26  ( 1 ) "*"  "*"  "*"   "*"   "*"   "*"   "*"          "*"          
## 27  ( 1 ) "*"  "*"  "*"   "*"   "*"   "*"   "*"          "*"          
## 28  ( 1 ) "*"  "*"  "*"   "*"   "*"   "*"   "*"          "*"          
## 29  ( 1 ) "*"  "*"  "*"   "*"   "*"   "*"   "*"          "*"          
##           Penyimpanan32 Penyimpanan64 Penyimpanan256 Penyimpanan512 J.Ulasan
## 1  ( 1 )  " "           " "           " "            " "            " "     
## 2  ( 1 )  " "           " "           " "            " "            " "     
## 3  ( 1 )  " "           " "           " "            " "            " "     
## 4  ( 1 )  " "           " "           " "            " "            " "     
## 5  ( 1 )  " "           " "           " "            " "            " "     
## 6  ( 1 )  " "           " "           " "            " "            " "     
## 7  ( 1 )  " "           " "           " "            " "            " "     
## 8  ( 1 )  " "           " "           " "            " "            " "     
## 9  ( 1 )  " "           " "           " "            " "            " "     
## 10  ( 1 ) " "           " "           " "            " "            " "     
## 11  ( 1 ) " "           " "           " "            " "            " "     
## 12  ( 1 ) " "           " "           " "            " "            " "     
## 13  ( 1 ) " "           " "           " "            "*"            " "     
## 14  ( 1 ) " "           " "           " "            "*"            " "     
## 15  ( 1 ) " "           " "           " "            "*"            " "     
## 16  ( 1 ) "*"           " "           " "            "*"            " "     
## 17  ( 1 ) "*"           " "           " "            "*"            " "     
## 18  ( 1 ) "*"           " "           "*"            "*"            " "     
## 19  ( 1 ) "*"           "*"           "*"            "*"            " "     
## 20  ( 1 ) "*"           "*"           "*"            "*"            " "     
## 21  ( 1 ) "*"           "*"           "*"            "*"            " "     
## 22  ( 1 ) "*"           "*"           "*"            "*"            " "     
## 23  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 24  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 25  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 26  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 27  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 28  ( 1 ) "*"           "*"           "*"            "*"            "*"     
## 29  ( 1 ) "*"           "*"           "*"            "*"            "*"
reg.summary.backward$adjr2
##  [1] 0.04693347 0.09940683 0.14617087 0.19386141 0.24431969 0.33017864
##  [7] 0.40519491 0.46221234 0.51016061 0.52429590 0.55192693 0.58207056
## [13] 0.59511227 0.60330756 0.61001694 0.61525926 0.61958078 0.62152828
## [19] 0.62252194 0.62318433 0.62365766 0.62410094 0.62415064 0.62415792
## [25] 0.62413529 0.62410899 0.62407385 0.62397130 0.62385039
which.max(reg.summary.backward$adjr2)
## [1] 24
library(readxl)
library(tidyverse)
data <- read_excel("C:/Users/Admin/Downloads/PSD Kelompok 3 (3).xlsx")
names(data)[names(data) == "Jumlah Ulasan"] <- "J.Ulasan"
head(data)
## # A tibble: 6 × 6
##   Brand     HARGA LOKASI      J.Ulasan RAM   Penyimpanan
##   <chr>     <dbl> <chr>       <chr>    <chr> <chr>      
## 1 iphone  4388000 Jabodetabek 10       4     256        
## 2 iphone  9458000 Jabodetabek 3071     4     128        
## 3 iphone  9409000 Jabodetabek 2713     4     128        
## 4 iphone  5047000 Luar Jawa   87       4     64         
## 5 iphone 11287000 Jabodetabek 567      6     128        
## 6 iphone 21447000 Jabodetabek 732      8     256
data$Brand_iphone <- ifelse(data$Brand == "iphone", 1, 0)
data$Brand_samsung <- ifelse(data$Brand == "samsung", 1, 0)
data$Brand_xiaomi <- ifelse(data$Brand == "xiaomi", 1, 0)
data$J.Ulasan <- as.numeric(data$J.Ulasan)

# Membersihkan data lokasi
data$LOKASI <- gsub("^di ", "", data$LOKASI)

# Membuat dummy DKI Jakarta vs Lainnya
data$dummy <- ifelse(data$LOKASI == "Jabodetabek", 2, 3)

data$dummyram6 <- ifelse(data$RAM == 6, 1, 0)

data$Brand <- relevel(as.factor(data$Brand), ref="iphone")
data$LOKASI <- relevel(as.factor(data$dummy), ref= "2")
data$RAM <- relevel(as.factor(as.numeric(data$RAM)), ref = "1")
data$Penyimpanan <- relevel(as.factor(as.numeric(data$Penyimpanan)), ref = "128")
data$J.Ulasan <- as.numeric(data$J.Ulasan)
model <- lm(HARGA ~ Brand+dummy + dummyram6 + Penyimpanan+J.Ulasan, data=data) 
summary(model)
## 
## Call:
## lm(formula = HARGA ~ Brand + dummy + dummyram6 + Penyimpanan + 
##     J.Ulasan, data = data)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -11520286  -1620775   -447706    877252  18761573 
## 
## Coefficients:
##                  Estimate Std. Error t value Pr(>|t|)    
## (Intercept)     8665481.7   361873.2  23.946  < 2e-16 ***
## Brandasus      -2193998.8   459488.7  -4.775 1.88e-06 ***
## Brandinfinix   -7863486.7   240782.0 -32.658  < 2e-16 ***
## Brandoppo      -6994171.3   287121.2 -24.360  < 2e-16 ***
## BrandRealme    -6834263.3   280762.4 -24.342  < 2e-16 ***
## BrandSamsung   -4840441.0   178770.5 -27.076  < 2e-16 ***
## Brandvivo      -6344122.5   212745.1 -29.820  < 2e-16 ***
## Brandxiaomi    -7298562.3   193542.3 -37.710  < 2e-16 ***
## dummy            130104.9   135962.0   0.957  0.33868    
## dummyram6        434934.9   172327.7   2.524  0.01166 *  
## Penyimpanan8   -8829886.1  3353000.3  -2.633  0.00849 ** 
## Penyimpanan16  -2875859.9  1273404.2  -2.258  0.02399 *  
## Penyimpanan32  -2731171.9   612496.6  -4.459 8.52e-06 ***
## Penyimpanan64  -2791235.0   197462.1 -14.136  < 2e-16 ***
## Penyimpanan256  1690847.0   150751.4  11.216  < 2e-16 ***
## Penyimpanan512  5209691.8   259351.3  20.087  < 2e-16 ***
## J.Ulasan           -455.2      326.5  -1.394  0.16340    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3349000 on 3104 degrees of freedom
##   (25 observations deleted due to missingness)
## Multiple R-squared:  0.4907, Adjusted R-squared:  0.4881 
## F-statistic: 186.9 on 16 and 3104 DF,  p-value: < 2.2e-16
library(leaps)
subset <-regsubsets(HARGA ~ Brand+dummy + dummyram6 + Penyimpanan+J.Ulasan, data=data, nvmax = 20)
summary(subset)
## Subset selection object
## Call: regsubsets.formula(HARGA ~ Brand + dummy + dummyram6 + Penyimpanan + 
##     J.Ulasan, data = data, nvmax = 20)
## 16 Variables  (and intercept)
##                Forced in Forced out
## Brandasus          FALSE      FALSE
## Brandinfinix       FALSE      FALSE
## Brandoppo          FALSE      FALSE
## BrandRealme        FALSE      FALSE
## BrandSamsung       FALSE      FALSE
## Brandvivo          FALSE      FALSE
## Brandxiaomi        FALSE      FALSE
## dummy              FALSE      FALSE
## dummyram6          FALSE      FALSE
## Penyimpanan8       FALSE      FALSE
## Penyimpanan16      FALSE      FALSE
## Penyimpanan32      FALSE      FALSE
## Penyimpanan64      FALSE      FALSE
## Penyimpanan256     FALSE      FALSE
## Penyimpanan512     FALSE      FALSE
## J.Ulasan           FALSE      FALSE
## 1 subsets of each size up to 16
## Selection Algorithm: exhaustive
##           Brandasus Brandinfinix Brandoppo BrandRealme BrandSamsung Brandvivo
## 1  ( 1 )  " "       " "          " "       " "         " "          " "      
## 2  ( 1 )  " "       " "          " "       " "         " "          " "      
## 3  ( 1 )  " "       "*"          " "       " "         " "          " "      
## 4  ( 1 )  " "       "*"          " "       " "         " "          "*"      
## 5  ( 1 )  " "       "*"          " "       "*"         " "          "*"      
## 6  ( 1 )  " "       "*"          "*"       "*"         "*"          "*"      
## 7  ( 1 )  " "       "*"          "*"       "*"         "*"          "*"      
## 8  ( 1 )  " "       "*"          "*"       "*"         "*"          "*"      
## 9  ( 1 )  " "       "*"          "*"       "*"         "*"          "*"      
## 10  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 11  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 12  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 13  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 14  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 15  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
## 16  ( 1 ) "*"       "*"          "*"       "*"         "*"          "*"      
##           Brandxiaomi dummy dummyram6 Penyimpanan8 Penyimpanan16 Penyimpanan32
## 1  ( 1 )  " "         " "   " "       " "          " "           " "          
## 2  ( 1 )  "*"         " "   " "       " "          " "           " "          
## 3  ( 1 )  "*"         " "   " "       " "          " "           " "          
## 4  ( 1 )  "*"         " "   " "       " "          " "           " "          
## 5  ( 1 )  "*"         " "   " "       " "          " "           " "          
## 6  ( 1 )  "*"         " "   " "       " "          " "           " "          
## 7  ( 1 )  "*"         " "   " "       " "          " "           " "          
## 8  ( 1 )  "*"         " "   " "       " "          " "           " "          
## 9  ( 1 )  "*"         " "   " "       " "          " "           " "          
## 10  ( 1 ) "*"         " "   " "       " "          " "           " "          
## 11  ( 1 ) "*"         " "   " "       " "          " "           "*"          
## 12  ( 1 ) "*"         " "   "*"       " "          " "           "*"          
## 13  ( 1 ) "*"         " "   "*"       "*"          " "           "*"          
## 14  ( 1 ) "*"         " "   "*"       "*"          "*"           "*"          
## 15  ( 1 ) "*"         " "   "*"       "*"          "*"           "*"          
## 16  ( 1 ) "*"         "*"   "*"       "*"          "*"           "*"          
##           Penyimpanan64 Penyimpanan256 Penyimpanan512 J.Ulasan
## 1  ( 1 )  " "           " "            "*"            " "     
## 2  ( 1 )  " "           " "            "*"            " "     
## 3  ( 1 )  " "           " "            "*"            " "     
## 4  ( 1 )  " "           " "            "*"            " "     
## 5  ( 1 )  " "           " "            "*"            " "     
## 6  ( 1 )  " "           " "            " "            " "     
## 7  ( 1 )  "*"           " "            " "            " "     
## 8  ( 1 )  "*"           " "            "*"            " "     
## 9  ( 1 )  "*"           "*"            "*"            " "     
## 10  ( 1 ) "*"           "*"            "*"            " "     
## 11  ( 1 ) "*"           "*"            "*"            " "     
## 12  ( 1 ) "*"           "*"            "*"            " "     
## 13  ( 1 ) "*"           "*"            "*"            " "     
## 14  ( 1 ) "*"           "*"            "*"            " "     
## 15  ( 1 ) "*"           "*"            "*"            "*"     
## 16  ( 1 ) "*"           "*"            "*"            "*"
library(leaps)
subset.summary <- summary(subset)
subset.summary$adjr2
##  [1] 0.09240237 0.13856492 0.17996271 0.22998662 0.27180073 0.33017864
##  [7] 0.40556025 0.45744159 0.47777285 0.48155627 0.48509134 0.48614543
## [13] 0.48708469 0.48784095 0.48809742 0.48808352
which.max(subset.summary$adjr2)
## [1] 15