Email             :
RPubs            : https://www.rpubs.com/muhammad_naufal/
Jurusan          : Statistika Bisnis
Address         : Jalan Gunung Galunggung 5 Blok E9, No.21


1 [25%] Apa perbedaan regressi Linear Sederhana dan Berganda, jelaskan dengan contoh!

1.1 Analisis Regresi Sederhana

Analisis Regresi merupakan teknik analisis yang digunakan untuk pengujian pengaruh variable independent terhadap variable dependen. Regresi linier sederhana digunakan apabila variable dependen dipengaruhi hanya oleh satu variable independent. hubungan antara variabel bersifat linier, dimana perubahan pada variabel X akan diikuti oleh perubahan pada variabel Y secara tetap. Selain itu, analisis regresi linear sederhana bertujuan untuk forecast atau memprediksi nilai Y. Model regresi linear sederhana yang baik harus memenuhi asumsi eksogenitas, linearitas, autokorelasi, dan varians error.

Rumus dari analisis regresi linear sederhana adalah:

dimana:

  • Y’ = subyek dalam variabel dependen yang dipresiksi

  • a = harga Y ketika harga X = 0

  • b = angka koefisien regresi

  • X = subyek pada variabel independen yang memiliki nilai tertentu.

b adalah tangent dari perbandingan antara panjang garis variabel dependen dimana:

dimana:

  • R = koefisien korelasi antara variabel X dan Y

  • sy = simpangan baku variabel Y

  • sx = simpangan baku variabel X

Contoh :

Seorang manajer di suatu perusahaan ingin mengetahui apakah kopetensi pegawai (X) memengaruhi kinerja pegawai (Y) di perusahaannya

#input data
kopetensi <- c(40, 55, 34, 55, 50, 52, 61, 44, 30, 22,
      40, 64, 58, 48, 44)
kinerja <- c(4, 16, 12, 28, 15, 24, 22, 17, 4,
      14, 24, 26, 20, 9, 14)
KPKP<-(lm(kinerja~kopetensi))
summary(KPKP)
## 
## Call:
## lm(formula = kinerja ~ kopetensi)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -10.0782  -3.4528  -0.2676   3.9023   9.9218 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)  
## (Intercept)  -1.5207     6.5821  -0.231    0.821  
## kopetensi     0.3900     0.1375   2.835    0.014 *
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 6.095 on 13 degrees of freedom
## Multiple R-squared:  0.3821, Adjusted R-squared:  0.3346 
## F-statistic: 8.039 on 1 and 13 DF,  p-value: 0.01405

1.2 Analisis Regresi Berganda

Sedangkan regresi linier berganda atau multiple regression digunakan untuk menguji pengaruh lebih dari satu variable independent terhadap variable dependen. Model ini disebut linear berganda, karena beberapa variabel independen ini akan berpengaruh pada variabel dependen. Analisis regresi linear berganda bertujuan untuk mengetahui manakah variabel independen yang paling berpengaruh atau memiliki hubungan paling kuat terhadap variabel dependen. Selain itu, metode ini juga digunakan untuk menguji hipotesis karakteristik dependensi

Model regresi linear berganda dilukiskan dengan persamaan:

dimana:

  • Y = nilai prediksi dari variabel dependen

  • β0 = perpotongan y (nilai y ketika semua parameter lainnya disetel ke 0)

  • βiXi = koefisien regresi (βi) dari variabel independen (Xi) (atau pengaruh peningkatan nilai variabel independen terhadap nilai y yang diprediksi)

  • ϵ = kesalahan model

Contoh :

data_kinerja<-read.csv("C:/logaritma/datakinerja.csv")
library('readxl')
data_kinerja<-read_excel("C:/logaritma/datakinerja.xlsx",sheet=1)
modelreg<-lm(kinerja ~ pengalaman + semangat, data = data_kinerja)
summary(modelreg)
## 
## Call:
## lm(formula = kinerja ~ pengalaman + semangat, data = data_kinerja)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.0081 -0.8552  0.0141  0.5839  1.5845 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   4.5704     1.9242   2.375 0.049223 *  
## pengalaman    1.1013     0.1757   6.267 0.000417 ***
## semangat      0.5087     0.1759   2.893 0.023233 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.001 on 7 degrees of freedom
## Multiple R-squared:  0.8621, Adjusted R-squared:  0.8228 
## F-statistic: 21.89 on 2 and 7 DF,  p-value: 0.0009728

2 [25%] Lakukan analisis regresi linear sederhana dalam ilmu ekonometrik!

Seorang manajer di suatu perusahaan ingin mengetahui apakah kopetensi pegawai (X) memengaruhi kinerja pegawai (Y) di perusahaannya

df=data.frame(kinerja,kopetensi)
df
##    kinerja kopetensi
## 1        4        40
## 2       16        55
## 3       12        34
## 4       28        55
## 5       15        50
## 6       24        52
## 7       22        61
## 8       17        44
## 9        4        30
## 10      14        22
## 11      24        40
## 12      26        64
## 13      20        58
## 14       9        48
## 15      14        44
plot(kopetensi, kinerja,
     ylim=c(0,max(kinerja)),
     xlim=c(0,max(kopetensi)),
     xlab="kopetensi pegawai",
     ylab="kinerja pegawai",
     type="p")

Dari output diatas menunjukan scatter plot kinerja terhadap kopetensi pegawai yang menunjukkan bahwa terdapat hubungan positif antara kinerja pegawai dan kopetensi pegawai.

2.1 UJI ASUMSI

Untuk menganalisa suatu program linear, ada beberapa asumsi yang harus dipenuhi, yaitu :

2.1.1 Independensi pengamatan (alias tidak boleh ada autokorelasi)

Karena kita hanya memiliki satu variabel independen dan satu variabel dependen, kami tidak perlu menguji hubungan tersembunyi di antara variabel. Jika Anda mengetahui bahwa Anda memiliki autokorelasi dalam variabel (yaitu beberapa observasi dari subjek uji yang sama), jangan lanjutkan dengan regresi linier sederhana! Gunakan model yang lebih terstruktur seperti model mixed-effect.

2.1.2 Normalitas

Untuk mengecek normalitasnya dengan menggunakan fungsi hist() seperti berikut.

avg <- mean(kopetensi)
stdev <- sd(kopetensi)
hist(kopetensi, xlab = "kopetensi pegawai", main="Histogram dari Kopetensi Pegawai", freq = FALSE)
curve(dnorm(x, avg, stdev), add = TRUE, col=2)

2.1.3 Linearitas

Pada hubungan antar variabel bebas dan terikat ini harus linear sehingga dapat dilakukan dilakukan pengujian dengan plot untuk melihat pada distribusi titik datanya apakah dapat di gambarkan dengan linear.

library("gridExtra")
library("ggplot2")
glinear <- ggplot(KPKP)+
  geom_point(aes(x = kinerja,
                 y = kopetensi),
             shape = 1)+
  geom_smooth(aes(x = kinerja,
                  y = kopetensi),
              method = "lm",
              formula = "y~x",
              color = "red")
glinear

Pada plot diatas dapat diamati bahwa dapat disebut linear.

2.2 Hipotesis dan Tingkat Signifikan

Hipotesis dan tingkat signifikansinya adalah:

2.3 Model Linear dan Summary

Untuk melihat summatry dari model linier regresi sederhana kita dapat menggunakan lm() dan summary() seperti pada contoh nomor 1

summary(KPKP)
## 
## Call:
## lm(formula = kinerja ~ kopetensi)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -10.0782  -3.4528  -0.2676   3.9023   9.9218 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)  
## (Intercept)  -1.5207     6.5821  -0.231    0.821  
## kopetensi     0.3900     0.1375   2.835    0.014 *
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 6.095 on 13 degrees of freedom
## Multiple R-squared:  0.3821, Adjusted R-squared:  0.3346 
## F-statistic: 8.039 on 1 and 13 DF,  p-value: 0.01405

dapat dilihat dari hasil, bahwa β1=−1.52074 dan β2=0.3900. Sehingga estimasi dari y adalah:

  • y=β1+β2X

  • y=−1.5207+0.3900X

Kemudian kita cari p-value menggunakan fungsi anova()

anovaKPKP<-anova(KPKP)
anovaKPKP$`Pr(>F)`[1]
## [1] 0.01404875

Interpretasi : Pada kopetensi pegawai terhadap kinerja pegawai ini memiliki hubungan yang signifikan yang dapat dilihat dari tabel output pada p-value sebesar 0.0141 ( ’*’ ini menandakan sudah signifikan). Model ini dapat dilihat kuat atau tidaknya dapat dilihat pada R-squared: 0.3346 / 33% ini dapat diartikan bahwa datanya belum cukup kuat (mendekati 99% / 80%).Maka dapat dijelaskan, jika kopetensi pegawai naik sebesai 1 unit maka kinerja pegawai akan naik sebesar 0.3670.

3 [25%] Carilah contoh penerapan analisis regresi linear berganda dalam ilmu ekonometrik! (Persentasikan temuan anda)

library(data.table)
HDD<-as.data.table(data_kinerja)
HDD
##     karyawan pengalaman semangat kinerja
##  1:        A          6       10      17
##  2:        B          5        6      13
##  3:        C          4        7      12
##  4:        D          8        4      17
##  5:        E          9        3      15
##  6:        F          3        5      11
##  7:        G          2        8      11
##  8:        H          8        4      16
##  9:        I          3       10      12
## 10:        J          9        3      15

3.1 Uji Asumsi

Untuk menganalisa suatu program linear, ada beberapa asumsi yang harus dipenuhi, yaitu :

3.1.1 Independensi pengamatan (alias tidak boleh ada autokorelasi)

Pada pengujian hubungan antara variabel Independensi menggunakan fungsi cor yaang dapat memastikan korelasinya tidak terlalu tinggi. Pada kasus ini variabel bebasnya lebih dari 1, maka harus diperiksa apakah ada korelasi antar variabel. Jika korelasi mendekati 1 maka terdapat hubungan timpal balik positif. Jika mendekati 0, maka tidak ada korelasi. Dan jika mendekati -1 maka terdapat hubungan timpal balik negatif.

cor(data_kinerja$pengalaman, data_kinerja$semangat)
## [1] -0.7025763

Dari output korelasi ini berjumlah -0.7025763 yang artinya terdapat hubungan timpal balik negatif.

3.1.2 Normalitas

avg2 <- mean(HDD$kinerja)
stdev2 <- sd(HDD$kinerja)
hist(HDD$kinerja, xlab = "kinerja", main="", freq=FALSE)
curve(dnorm(x, avg2, stdev2), add = TRUE, col="blue")

### Linearitas Pada linearitas ini dapat melihat hubungan antara variabel bebas dan variabel terikat sehingga harus linear. Maka dalam linearitas menggunakan plot pencar sebagai visualisasinya yang berguna untuk melihat apakah distribusi titik data dapat dijelaskan dengan garis lurus.

glinear2 <- ggplot(HDD)+
  geom_point(aes(x = semangat,
                 y = kinerja),
             shape = 1)+
  geom_smooth(aes(x = semangat ,
                  y = kinerja),
              method = "lm",
              formula = "y~x",
              color = "yellow")

glinear3 <- ggplot(HDD)+
  geom_point(aes(x = pengalaman,
                 y = kinerja),
             shape = 1)+
  geom_smooth(aes(x = pengalaman,
                  y = kinerja),
              method = "lm",
              formula = "y~x",
              color = "yellow")
grid.arrange(glinear2, glinear3, nrow = 1, ncol =2)

Dari kedua plot diatas, pada hubungan antara pengalaman dan kinerja dapat diperkirakan bentuknya garis linear. Sedangkan hubungan antara semangat dan kinerja sedikit kurang jelas namun hubungan tersebut masih terlihat linier. Dengan demikian akan dilanjutkan dengan regresi linier.

3.2 Hipotesis dan Tingkat Signifikansi

Hipotesis dan tingkat signifikansinya adalah:

summary(modelreg)
## 
## Call:
## lm(formula = kinerja ~ pengalaman + semangat, data = data_kinerja)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.0081 -0.8552  0.0141  0.5839  1.5845 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   4.5704     1.9242   2.375 0.049223 *  
## pengalaman    1.1013     0.1757   6.267 0.000417 ***
## semangat      0.5087     0.1759   2.893 0.023233 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.001 on 7 degrees of freedom
## Multiple R-squared:  0.8621, Adjusted R-squared:  0.8228 
## F-statistic: 21.89 on 2 and 7 DF,  p-value: 0.0009728

dapat dilihat dari hasil, bahwa β0=4.5704, β1=1.1013, dan β2=0.5087. Sehingga estimasi dari y adalah:

  • y=β0+β1X1+β2X2
  • y=4.5704+1.1013X1+0.5087X2

Kemudian cari p-value menggunakan fungsi anova().

anovaHD <- anova(modelreg)
anovaHD$`Pr(>F)`[1]
## [1] 0.0005697183

Pada pengalaman terhadap kinerjae ini memiliki hubungan yang signifikan yang dapat dilihat dari tabel output pada p-value sebesar 0.0005 ( ’*’ ini menandakan sudah signifikan). Model ini dapat dilihat kuat atau tidaknya dapat dilihat pada R-squared: 0.8228 / 82% ini dapat diartikan bahwa datanya sudah cukup kuat.Maka dapat dijelaskan, jika pengalaman turun sebesai 1 unit maka kinerja ini akan turun sebesar 1.1013.

Pada semangat terhadap kinerja ini memiliki hubungan yang signifikan yang dapat dilihat dari tabel output pada p-value sebesar 0.0005 ( ’*’ ini menandakan sudah signifikan). Model ini dapat dilihat kuat atau tidaknya dapat dilihat pada R-squared: 0.8228 / 82% ini dapat diartikan bahwa datanya sudah cukup kuat. Maka dapat dijelaskan, jika pengalamang naik sebesai 1 unit kinerja disease ini akan naik sebesar 0.5087.

Dari hasil didapatkan bahwa p−value≤α dimana α=0.01 pada kasus karyawan. Berarti pada data karyawan, terdapat hubungan yang signifikan antara variabel semangat dan variabel pengalaman terhadap variabel kinerja dengan tingkat kepercayaan 82%.

4 [25%] Sehubungan dengan soal No 3, buatlah model regresi linear berganda yang terbaik dari semua kemungkinan variable (coba terapkan semua kemungkinan model, contohnya, kuardatik, log-log, dll sampai anda menemukan model terbaiknya)

4.1 model linear

Modellinear <- summary(modelreg)
Modellinear
## 
## Call:
## lm(formula = kinerja ~ pengalaman + semangat, data = data_kinerja)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.0081 -0.8552  0.0141  0.5839  1.5845 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   4.5704     1.9242   2.375 0.049223 *  
## pengalaman    1.1013     0.1757   6.267 0.000417 ***
## semangat      0.5087     0.1759   2.893 0.023233 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.001 on 7 degrees of freedom
## Multiple R-squared:  0.8621, Adjusted R-squared:  0.8228 
## F-statistic: 21.89 on 2 and 7 DF,  p-value: 0.0009728
summary(modelreg)$r.squared
## [1] 0.8621407

4.2 Model Kuadratik

kuadrat <- lm(kinerja~(pengalaman+semangat)^2, data=data_kinerja)
Modelkuadrat <- summary(kuadrat)
Modelkuadrat
## 
## Call:
## lm(formula = kinerja ~ (pengalaman + semangat)^2, data = data_kinerja)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.74783 -0.58824 -0.07398  0.35279  1.46328 
## 
## Coefficients:
##                     Estimate Std. Error t value Pr(>|t|)  
## (Intercept)          8.46035    2.68270   3.154   0.0197 *
## pengalaman           0.49432    0.36211   1.365   0.2212  
## semangat            -0.12040    0.37309  -0.323   0.7579  
## pengalaman:semangat  0.11261    0.06101   1.846   0.1145  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.8637 on 6 degrees of freedom
## Multiple R-squared:  0.9121, Adjusted R-squared:  0.8681 
## F-statistic: 20.74 on 3 and 6 DF,  p-value: 0.001437
summary(kuadrat)$r.squared
## [1] 0.9120671

4.3 Model Polinomial

polinomial <- lm(kinerja~poly(pengalaman,3)+semangat, data=data_kinerja)
Modelpolin <- summary(polinomial)
Modelpolin
## 
## Call:
## lm(formula = kinerja ~ poly(pengalaman, 3) + semangat, data = data_kinerja)
## 
## Residuals:
##         1         2         3         4         5         6         7         8 
##  0.327005 -0.568019 -0.169082  0.559185 -0.044391  0.644098 -0.264952 -0.440815 
##         9        10 
##  0.001363 -0.044391 
## 
## Coefficients:
##                      Estimate Std. Error t value Pr(>|t|)    
## (Intercept)           11.9287     0.6680  17.857 1.01e-05 ***
## poly(pengalaman, 3)1   7.8045     0.8105   9.629 0.000205 ***
## poly(pengalaman, 3)2  -1.3725     0.6005  -2.286 0.071037 .  
## poly(pengalaman, 3)3  -2.1751     0.5530  -3.933 0.011033 *  
## semangat               0.3285     0.1076   3.052 0.028355 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.5393 on 5 degrees of freedom
## Multiple R-squared:  0.9714, Adjusted R-squared:  0.9486 
## F-statistic:  42.5 on 4 and 5 DF,  p-value: 0.000473
summary(polinomial)$r.squared 
## [1] 0.9714307

4.4 Model Log-Linear

loglin <- lm(log(kinerja)~pengalaman+semangat, data=data_kinerja)
ModelLogLinear <- summary(loglin)
ModelLogLinear
## 
## Call:
## lm(formula = log(kinerja) ~ pengalaman + semangat, data = data_kinerja)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -0.067904 -0.054086  0.004226  0.039262  0.101639 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  1.93919    0.12420  15.613 1.07e-06 ***
## pengalaman   0.08083    0.01134   7.125 0.000189 ***
## semangat     0.03645    0.01135   3.210 0.014850 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.06463 on 7 degrees of freedom
## Multiple R-squared:  0.8909, Adjusted R-squared:  0.8597 
## F-statistic: 28.57 on 2 and 7 DF,  p-value: 0.0004295
summary(loglin)$r.squared 
## [1] 0.8908584

4.5 Model Linear-Log

linlog <- lm(kinerja~log(pengalaman)+log(semangat), data=data_kinerja)
Modellinearlog <- summary(linlog)
Modellinearlog
## 
## Call:
## lm(formula = kinerja ~ log(pengalaman) + log(semangat), data = data_kinerja)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.2529 -0.5730 -0.1647  0.6312  1.4529 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)       0.9817     3.0862   0.318 0.759687    
## log(pengalaman)   5.3335     0.9162   5.822 0.000649 ***
## log(semangat)     2.5065     1.0759   2.330 0.052640 .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.036 on 7 degrees of freedom
## Multiple R-squared:  0.8524, Adjusted R-squared:  0.8102 
## F-statistic: 20.21 on 2 and 7 DF,  p-value: 0.001236
summary(linlog)$r.squared 
## [1] 0.8523946

4.6 Model Log-Log

loglog <- lm(log(kinerja)~log(pengalaman)+log(semangat), data=data_kinerja)
Modelloglog <- summary(loglog)
Modelloglog
## 
## Call:
## lm(formula = log(kinerja) ~ log(pengalaman) + log(semangat), 
##     data = data_kinerja)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.08479 -0.03384 -0.01354  0.03869  0.09200 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)      1.67974    0.19851   8.462 6.36e-05 ***
## log(pengalaman)  0.39151    0.05893   6.644 0.000292 ***
## log(semangat)    0.17843    0.06920   2.578 0.036560 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.06664 on 7 degrees of freedom
## Multiple R-squared:  0.884,  Adjusted R-squared:  0.8508 
## F-statistic: 26.66 on 2 and 7 DF,  p-value: 0.0005322
summary(loglog)$r.squared 
## [1] 0.8839609

Model terbaik adalah model yang memiliki R^2 tertinggi. Pada kasus ini R^2 tertinggi berada pada model polinomial yaitu sebesar 0.9714307. Maka dapat disimpulkan model terbaik adalah Model Polinomial dimana variabel pengalaman di polinomialkan.