1 PENDAHULUAN
1.1 Latar Belakang Kasus
Pengembangan budidaya usahatani kedelai memiliki potensi yang menjanjikan. Hanya saja ketersediaan air menjadi faktor penghambat pada budidaya pada lahan kering, mengingat curah hujan yang sangat rendah. Penjelasan tersebut mendorong penulis untuk mengkaji lebih dalam terkait upaya peningkatan produksi usahatani kedelai pada lahan kering seperti di Kabupaten Lombok tengah dengan mempertimbangkan faktor-faktor input produksi yang mempengaruhinya. Penelitian ini bertujuan untuk menyeldiki faktor-faktor yang diduga berpengaruh pada produksi kedelai di Lombok Tengah.
1.2 Statistika Deskriptif
Metode statistika digolongkan menjadi dua yaitu metode statistika deskriptif dan metode statistika inferensia. Statistika deskriptif membahas cara-cara pengumpulan, peringkasan, penyajian data sehingga diperoleh informasi yang lebih mudah dipahami. Informasi yang dapat diperoleh dengan statistika deskriptif antara lain pemusatan data (mean, median, modus), penyebaran data (range, simpangan rata-rata, varians, dan si pangan baku), kecenderungan suatu gugus data, ukuran letak (kuartil, desil, dan persentil)
1.3 Analisis Regresi
- Analisis yang mempelajari bentuk hubungan antara satu variabel respon (Y ) dengan satu atau lebih variabel prediktor (X).
- Pada analisis regresi harus jelas, variabel mana yang sebagai respon maupun prediktor.
- Variabel Y haruslah bersifat numerik, sedangkan variabel X boleh bersifat kategorik (regresi dummy).
- Tujuan analisis regresi adalah untuk melakukan peramalan.
1.4 Asumsi Klasik
Menurut Imam Ghozali (2011), uji asumsi klasik terhadap model regresi linier yang digunakan dilakukan agar dapat diketahui apakah model regresi baik atau tidak. Tujuan pengujian asumsi klasik adalah untuk memberikan kepastian bahwa persamaan regresi yang diperoleh memiliki ketepatan dalam estimasi, tidak bias, dan konsisten. Sebelum melakukan analisis regresi terlebih dahulu dilakukan pengujian asumsi. Asumsi-asumsi yang harus dipenuhi dalam analisis regresi antara lain: normalitas, homoskedastisitas, non autokorelasi, non multikolinieritas, dan linearitas.
1.4.1 Normalitas Sisaan
- Dibutuhkan agar \(\hat{\beta_j}\sim N(\beta_j,var(\hat{\beta_j}))\)
- Sehingga pengujian mengenai keberartian parameter model dapat menggunakan sebaran yang diturunkan dari sebaran normal (\(t\) dan \(F\))
- Pelanggaran asumsi ini berakibat pada tidak sahnya hasil uji hipotesis
- Dapat diuji menggunakan salah satu dari uji berikut:Jarque Berra, Saphiro Wilk, Kolmogorov Smirnov.
1.4.1.1 Penanganan ketidaknormalan:
- Menambah banyaknya pengamatan
- Menghilangkan data yang menyebabkan tidak normal
- Transformasi data menjadi log, ln atau pangkat
- Menggunakan bootstrap untuk mendapatkan sebaran penduga dan pengujian hipotesis
1.4.2 Homoskedastisitas
- ragam galat yang sama di setiap nilai X
- Pelanggaran dari asumsi ini: Heteroskedastisitas
- Efeknya: Heteroskedastisitas meningkatkan ragam dari sebaran \(\hat{\beta}\)
\(\hat{\beta}\) bukan lagi penduga yang paling efisien
- Terpenuhi atau tidaknya asumsi dapat diuji dengan Uji Breusch Pagan
- Cara mengatasi bila terdapat pelanggaran digunakan salah satu metode berikut:
Weighted Least Square (WLS)
White method
1.4.3 Non-Autokorelasi
- Non-Autokorelasi adalah asumsi kebebasan antar galat \[ cov(u_t,u_s)=0, t \neq s \]
- Pelanggaran dari asumsi ini disebut sebagai masalah autokorelasi, akibat kesalahan spesifikasi model, atau tidak digunakannya variabel prediktor yang penting
- Efek akibat pelanggaran asumsi ini: Penduga tidak lagi efisien (ragam besar)
Jika tidak terdeteksi,
◦ Penduga ragam menjadi tidak konsisten
◦ Uji t lebih sering dinyatakan nyata
◦ Overestimated R2: Lebih besar dari yang sebenarnya
Penanganan untuk pelanggaran asumsi ini:
Cochrane-Orcutt Iterative Procedure
- Terpenuhi tidaknya asumsi dapat diuji menggunakan uji Durbin Watson (DW)
1.4.4 Non Multikolinearitas
Non multikolinieritas: tidak adanya hubungan linier antar variabel prediktor
Diperlukan agar kontribusi efek perubahan setiap variabel prediktor terhadap variabel respons dapat dianalisis secara terpisah
Pelanggaran asumsi ini : masalah multikolinearitas
Pendeteksian multikolinearitas menggunakan \[ VIF_j=\frac{1}{(1-R_j^2)} \]
Multikoliearitas serius jika \(VIF>10\) (karena \(R_j^2>0.9\))
JIka tidak ada multikolinearitas \(VIF\) mendekati 1 (karena \(R_j^2\)) mendekati nol)
Untuk mendeteksi keberadaan multikolinieritas diperlukan instalasi package “car”
Digunakan perintah vif(…), dengan argument obyek lm yang sudah dibentuk
Perlu dilakukan pada regresi linier berganda
2 SOURCE CODE
2.1 Library yang Dibutuhkan
> library("magrittr")
> library("summarytools")
> library(stargazer)
> library(ggplot2)
> library(tseries)
> library(lmtest)
> library(car)
> library(GGally)2.2 Data dan variabel
>
> anova2 <- data.frame( Produksi = c(100,110,120,130,120,150,400,500,750,650,200,300,400,500,300),
+ Luas.Lahan = c(10,10,12,15,11,17,40,50,78,67,20,30,40,50,36),
+ Benih = c(50,60,70,80,75,90,220,270,400,320,100,156,227,250,150),
+ Pupuk = c(20,25,30,37,32,40,80,90,130,120,50,60,88,89,65))
> x1 <- anova2$Luas.Lahan
> x2 <- anova2$Benih
> x3 <- anova2$Pupuk
> y <- anova2$Produksi
> anova2
Produksi Luas.Lahan Benih Pupuk
1 100 10 50 20
2 110 10 60 25
3 120 12 70 30
4 130 15 80 37
5 120 11 75 32
6 150 17 90 40
7 400 40 220 80
8 500 50 270 90
9 750 78 400 130
10 650 67 320 120
11 200 20 100 50
12 300 30 156 60
13 400 40 227 88
14 500 50 250 89
15 300 36 150 65Y : Total produksi(ton)
X1 : Luas lahan(ha)
X2 : Benih(kuintal)
X3 : Pupuk(kuintal)
2.3 Statistika Deskriptif
> summary(anova2)
Produksi Luas.Lahan Benih Pupuk
Min. :100.0 Min. :10.0 Min. : 50.0 Min. : 20.00
1st Qu.:125.0 1st Qu.:13.5 1st Qu.: 77.5 1st Qu.: 34.50
Median :300.0 Median :30.0 Median :150.0 Median : 60.00
Mean :315.3 Mean :32.4 Mean :167.9 Mean : 63.73
3rd Qu.:450.0 3rd Qu.:45.0 3rd Qu.:238.5 3rd Qu.: 88.50
Max. :750.0 Max. :78.0 Max. :400.0 Max. :130.00 - Interpretasi:
Rata-rata produksi usaha tani kedelai adalah 100 ton. Rata-rata luas lahan yang digunakan adalah 10 ha. Rata-rata benih kedelai yang dipakai dalam usahatani ini adalah 50 kuintal. Rata-rata pupuk yang digunakan dalam usahatani ini adalah 20 kuintal.
Hasil produksi terbanyak sebesar 750 ton sedangkan paling sedikit sebesar 100 ton. Lahan terluas yang digunakan adalah sebesar 78 ha, sedangkan luas lahan terkecil sebesar 10 ha. Benih terbanyak digunakan adalah sebanyak 400 kuintal sedangakan paling sedikit digunakan 50 kuintal benih. Pupuk terbanyak digunakan sebanyak 130 kuintal pupuk, sedangkan paling sedikit sebanyak 20 kuintal pupuk.
2.4 Analisis Regresi
dengan \(db=n-2\)
> n <- nrow(anova2)
> y <- anova2[, 1]
> X <- anova2[, -1]
> X <- cbind(cons =1, X) %>% as.matrix()
> beta <- solve(t(X) %*% X) %*% (t(X) %*% y)
> beta %>% round(4)
[,1]
cons -5.1246
Luas.Lahan 5.4572
Benih 0.8776
Pupuk -0.0576Maka persamaan regresinya adalah:
\[
\bar{Y}=-5.1246+5.4572X_1+0.8776X_2-0.0576X_3
\] y-Duga sisaan \[
\bar{y}=X\beta
\]
> y_duga <- X %*% beta\[ \hat \epsilon=y-\hat{y} \]
> e <- y-y_duga2.5 Standar Error
- Standar error untuk setiap penduga parameter diduga matriks varians kovarians
- Akar dari diagonal matriks Var-Covar berisi standar error dari penduga parameter
\[ se=\sigma_\epsilon(X'X)^{-1} \] ### \(\sigma_\epsilon\) diduga dengan Kuadrat Tengah Galat \[ \hat\sigma_\epsilon=\frac{\sum{\hat\epsilon^2}}{n-1} \]
> MSE <- sum(e^2)/(n-1)
> VarCov <- MSE * solve(t(X) %*% X)
> Se <- VarCov %>% diag() %>% sqrt()2.6 Uji Parsial
Menguji signifikansi masing-masing penduga parameter Hipotessis:
\[
H_0:\beta=0
H_1:\beta\neq0
\] Statistik Uji:
Jika \(H_0\) benar maka: \[
t=\frac{\hat{\beta_i}}{se_\hat{\beta_i}}\sim t_{db}^{\frac{\alpha}{2}}
\]
dengan \(db=n-1\) untuk \(\beta_0\) dan \(db=n-p\) untuk lainnya,serta \(p\) adalah banyak prediktor.
> p <- ncol(X)
> SU <- beta/Se
> pVal <- c(2* pt(abs(SU[1]), n-1, lower.tail = F),
+ 2* pt(abs(SU[-1]), n-p, lower.tail = F))
> pVal
[1] 0.611118526 0.001037208 0.004127595 0.935341989
> beta
[,1]
cons -5.12456958
Luas.Lahan 5.45721359
Benih 0.87756353
Pupuk -0.05757555Sehingga dapat dirangkum dalam tabel
> data.frame(
+ Koefisien = beta %>% rownames(),
+ Pend.param = beta %>% round(4),
+ Std.Error = Se %>% round(3),
+ Stat.Uji = SU %>% round(3),
+ pValue = pVal %>% round(3),
+ Sig = ifelse(pVal < 0.001, "***",
+ ifelse(pVal < 0.01, "**",
+ ifelse(pVal < 0.05, "*",
+ ifelse(pVal < 0.1, ".",""))))
+ )
Koefisien Pend.param Std.Error Stat.Uji pValue Sig
cons cons -5.1246 9.853 -0.520 0.611
Luas.Lahan Luas.Lahan 5.4572 1.236 4.415 0.001 **
Benih Benih 0.8776 0.243 3.606 0.004 **
Pupuk Pupuk -0.0576 0.694 -0.083 0.935 2.7 Koefisien Determinasi
- Mengukur variabilitas dari variabel respons yang terjelaskan oleh variabel prediktor.
- Bernilai antara 0 dan 1
- Dikatakan baik jika nilai mendekati 1
- Dapat dihitung dengan persamaan
\[ R^2=\frac{JK_{Reg}}{JK_{Tot}}=1-\frac{JK_{Error}}{JK_{Tot}} \]
> JK_Error <- sum(e^2)
> JK_Tot <- sum( (y - mean(y))^2)
> R2 <- 1 - (JK_Error/JK_Tot)
> R2
[1] 0.9968712- \(R^2\) adjusted akan menghitung setiap penambahan variabel dan mengestimasi nilai \(R^2\) dari penambahan variabel tersebut.
- Nilai \(R^2\) adjusted tidak selalu bertambah apabila dilakukan penambahan variabel.
> R2a <- 1 - MSE/(JK_Tot/(n+2))
> R2a
[1] 0.99620072.8 Uji Simultan
- Menguji signifikansi parameter secara serempak atau simultas(bersama-sama)
- Hipotesis
\[ H_0:\forall\beta_i=0 H_1:\exists\beta_i\neq0 \] - Statistik Uji
Jika \(H_0\) benar maka: \[ F=\frac{R^2/(p-1)}{(1-R^2)/(n-p+3)}\sim F_{db_1,db_2}^2 \] dimana dalam hal ini \(db_1 = n-1\) dan \(db_2=n-p+3\).
> Fhit <- (R2/(p-1))/((1-R2)/(n-p+3))
> pVal2 <- pf(Fhit, p-1, n-p+3, lower.tail =F )
> Fhit; pVal2
[1] 1486.853
[1] 9.210182e-182.9 Penggunaan Function
> Data1 <- anova2
> head(anova2)
Produksi Luas.Lahan Benih Pupuk
1 100 10 50 20
2 110 10 60 25
3 120 12 70 30
4 130 15 80 37
5 120 11 75 32
6 150 17 90 40Y : Total produksi
X1 : Luas lahan
X2 : Benih
X3 : Pupuk
2.10 Eksplorasi Data
> #Tipe Data
> str(anova2)
'data.frame': 15 obs. of 4 variables:
$ Produksi : num 100 110 120 130 120 150 400 500 750 650 ...
$ Luas.Lahan: num 10 10 12 15 11 17 40 50 78 67 ...
$ Benih : num 50 60 70 80 75 90 220 270 400 320 ...
$ Pupuk : num 20 25 30 37 32 40 80 90 130 120 ...Penjelasan :
Terdapat 15 amatan dan 4 variabel di dalam data frame anova2
> #Karakteristik Data
> anova2 %>% dfSummary() %>% view()
> anova2 <- anova2 %>% na.omit()2.11 Korelasi
> cor(anova2) %>% round(3)
Produksi Luas.Lahan Benih Pupuk
Produksi 1.000 0.997 0.996 0.990
Luas.Lahan 0.997 1.000 0.991 0.989
Benih 0.996 0.991 1.000 0.989
Pupuk 0.990 0.989 0.989 1.000
> anova2 %>% ggpairs(progress = F ) ## Pemodelan
> model <- lm(Produksi~ ., data = anova2) %>% summary()
> model
Call:
lm(formula = Produksi ~ ., data = anova2)
Residuals:
Min 1Q Median 3Q Max
-19.2272 -10.6915 0.5035 8.6504 17.9972
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -5.12457 11.11569 -0.461 0.65376
Luas.Lahan 5.45721 1.39449 3.913 0.00242 **
Benih 0.87756 0.27456 3.196 0.00851 **
Pupuk -0.05758 0.78257 -0.074 0.94267
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 13.32 on 11 degrees of freedom
Multiple R-squared: 0.9969, Adjusted R-squared: 0.996
F-statistic: 1168 on 3 and 11 DF, p-value: 4.727e-14Penjelasan:
- Interpretasi koefisien regresi:
Setiap kenaikan satu ha luas lahan akan meningkatkan 5.46 ton produksi kedelai. Setiap kenaikan satu kuintal benih akan meningkatkan 877.56 kg produksi. Setiap kenaikan satu kuintal pupuk akan menurunkan 57.58 kg produksi.
2.12 Pemilihan Model
> model1 <- lm(Produksi~Luas.Lahan, anova2)
> model2 <- lm(Produksi~Luas.Lahan+Benih, anova2)
> model3 <- lm(Produksi~Luas.Lahan+Pupuk, anova2)
> model4 <- lm(Produksi~Benih+Pupuk, anova2)
> model5 <- lm(Produksi~., anova2)> stargazer(model1, model2, model3, model4, model5, type = "text")
=================================================================================================================================================
Dependent variable:
-----------------------------------------------------------------------------------------------------------------------------
Produksi
(1) (2) (3) (4) (5)
-------------------------------------------------------------------------------------------------------------------------------------------------
Luas.Lahan 9.688*** 5.409*** 8.084*** 5.457***
(0.219) (1.180) (1.498) (1.394)
Benih 0.869*** 1.511*** 0.878***
(0.237) (0.328) (0.275)
Pupuk 1.017 1.377 -0.058
(0.940) (1.024) (0.783)
Constant 1.434 -5.780 -11.412 -26.060* -5.125
(8.469) (6.372) (14.547) (14.429) (11.116)
-------------------------------------------------------------------------------------------------------------------------------------------------
Observations 15 15 15 15 15
R2 0.993 0.997 0.994 0.993 0.997
Adjusted R2 0.993 0.996 0.993 0.991 0.996
Residual Std. Error 17.828 (df = 13) 12.756 (df = 12) 17.711 (df = 12) 19.725 (df = 12) 13.320 (df = 11)
F Statistic 1,949.611*** (df = 1; 13) 1,910.725*** (df = 2; 12) 988.273*** (df = 2; 12) 795.616*** (df = 2; 12) 1,168.242*** (df = 3; 11)
=================================================================================================================================================
Note: *p<0.1; **p<0.05; ***p<0.012.13 Asumsi Klasik
2.13.1 Normalitas Galat
> sisa <- residuals(model)
> jarque.bera.test(sisa)
Jarque Bera Test
data: sisa
X-squared = 0.932, df = 2, p-value = 0.6275Penjelasan :
Dihasilkan p-value = 0.7197 lebih dari \(\alpha=5%\) maka terima H0. Artinya tidak terbukti ada pelanggaran asumsi normalitas sisaan pada model.
2.13.2 Homoskedastisitas
> shapiro.test(sisa)
Shapiro-Wilk normality test
data: sisa
W = 0.94338, p-value = 0.4268Penjelasan :
P-value = 0.4268 lebih dari % maka terima H0. Artinya tidak terbukti adanya pelanggaran asumsi homoskedastisitas ragam galat pada model.
2.13.3 Non-Autokorelasi
> dwtest(model)
Durbin-Watson test
data: model
DW = 2.2275, p-value = 0.4929
alternative hypothesis: true autocorrelation is greater than 0Penjelasan : Nilai p-value=0.4929 lebih dari \(\alpha=5%\) maka terima H0. Artinya tidak ada masalah autokorelasi.
2.13.4 Non-multikolinearitas
> model6 <- lm(Produksi~Luas.Lahan+Benih+Pupuk, anova2)
> vif(model6)
Luas.Lahan Benih Pupuk
72.35499 69.25689 57.91599 Penjelasan : Semua variabel bernilai diatas 10 artinya terdapat multikolinearitas serius. Artinya terdapat hubungan linier antar variabel prediktor (x1,x2,x3). Dengan demikian model yang dihasilkan belum memenuhi syarat model yang baik. Solusi dari masalah ini adalah dapat menggunakan:
- Regresi dengan komponen utama
- Regresi Ridge
3 Kesimpulan
Penentuan model regresi untuk menyeldiki faktor-faktor yang diduga paling berpengaruh pada produksi kedelai di Lombok Tengah belum bisa dilakukan pada regresi linier berganda. Perlu adanya analisis regresi dengan metode lain sehingga didapatkan model yang layak untuk pengambilan kesimpulan.
4 DAFTAR PUSTAKA
Ahmad Arul N. A., S.Stat, dkk. (2022). Korelasi dan Regresi .
Dr. M. Muchson, S.MM. Statistika Deskriptif. Spasi Media.
Nurjannah, S.Si., M.Phil., Ph.D. Analisis Regresi dan Asumsinya dalam R. Komputasi Statistika.