data("iris")
attach(iris)
str(iris)
## 'data.frame': 150 obs. of 5 variables:
## $ Sepal.Length: num 5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...
## $ Sepal.Width : num 3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...
## $ Petal.Length: num 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...
## $ Petal.Width : num 0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...
## $ Species : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1 ...
versicolor<- iris[which(Species=="versicolor"),c("Petal.Length","Petal.Width")]
str(versicolor)
## 'data.frame': 50 obs. of 2 variables:
## $ Petal.Length: num 4.7 4.5 4.9 4 4.6 4.5 4.7 3.3 4.6 3.9 ...
## $ Petal.Width : num 1.4 1.5 1.5 1.3 1.5 1.3 1.6 1 1.3 1.4 ...
head(versicolor)
## Petal.Length Petal.Width
## 51 4.7 1.4
## 52 4.5 1.5
## 53 4.9 1.5
## 54 4.0 1.3
## 55 4.6 1.5
## 56 4.5 1.3
plot(versicolor$Petal.Length, versicolor$Petal.Width,
col = "blue", xlab = "Petal Length", ylab = "Petal Width", pch = 16)
title("Plot of Petal Width vs Petal Length",
sub = "Species = Versicolor", cex.sub = 0.8)
cat("Koefisien Korelasi (r) =",cor(versicolor$Petal.Length, versicolor$Petal.Width,
method = "pearson") )
## Koefisien Korelasi (r) = 0.7866681
Analisis regresi merupakan teknik analisis parametrik yang digunakan untuk memodelkan data. Selain itu, analisis regresi dapat digunakan untuk mengidentifikasi hubungan sebab akibat antara beberapa peubah. Dalam analisis regresi, dikenal dua jenis peubah yaitu :
Peubah respon yaitu peubah yang keberadaannya diperngaruhi oleh peubah lainnya dan dinotasikan dengan Y.
Peubah penjelas yaitu peubah yang bebas (tidak dipengaruhi oleh peubah lainnya) dan dinotasikan dengan X.
Model regresi linier sederhana dapat dituliskan sebagai berikut:
Asumsi model regresi:
Nilai harapan sisaan sama dengan nol \((E(\varepsilon_i)=0)\)
Ragam sisaan homogen \((Var(\varepsilon_i)=\sigma^2)\)
Antar sisaan saling bebas
# Pemodelan regresi
(model<- lm(Petal.Width~Petal.Length, data = versicolor))
##
## Call:
## lm(formula = Petal.Width ~ Petal.Length, data = versicolor)
##
## Coefficients:
## (Intercept) Petal.Length
## -0.08429 0.33105
# Uji hipotesis
summary(model)
##
## Call:
## lm(formula = Petal.Width ~ Petal.Length, data = versicolor)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.273031 -0.073373 -0.006479 0.086271 0.295231
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -0.08429 0.16070 -0.525 0.602
## Petal.Length 0.33105 0.03750 8.828 1.27e-11 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.1234 on 48 degrees of freedom
## Multiple R-squared: 0.6188, Adjusted R-squared: 0.6109
## F-statistic: 77.93 on 1 and 48 DF, p-value: 1.272e-11
# Selang kepercayaan bagi penduga parameter regresi
confint(model)
## 2.5 % 97.5 %
## (Intercept) -0.4074002 0.2388235
## Petal.Length 0.2556540 0.4064532
# Diagnostik Model
par(mfrow = c(2,2))
plot(model)
# Prediksi data
newdata1<- data.frame(Petal.Length=c(4.25,5))
predict(model, newdata = newdata1)
## 1 2
## 1.322689 1.570980
# SK bagi E(Yn+1)
predict(model, newdata = newdata1, interval = "confidence")
## fit lwr upr
## 1 1.322689 1.287606 1.357773
## 2 1.570980 1.505075 1.636884
# SK bagi dugaan (Yn+1)
predict(model, newdata = newdata1, interval = "predict")
## fit lwr upr
## 1 1.322689 1.072203 1.573176
## 2 1.570980 1.314355 1.827604