Anda di halaman 1dari 3

Andri Oktarian, ST.

Magister Teknik Industri – USAKTI

Tugas Persoalan UTS Nomo 3


Analisis regresi logistik menggunakan data iris untuk memprediksi jenis dari iris tsb.
Data set dibagi menjadi 2: training data set =60%, test data set= 40%.
Training data set digunakan untuk membuat model, dan test data set digunakan untuk prediksi
Jawab:

> library(datasets)
> ir_data<- iris
> head(ir_data)
Sepal.Length Sepal.Width Petal.Length Petal.Width
1 5.1 3.5 1.4 0.2
2 4.9 3.0 1.4 0.2
3 4.7 3.2 1.3 0.2
4 4.6 3.1 1.5 0.2
5 5.0 3.6 1.4 0.2
6 5.4 3.9 1.7 0.4
Species
1 setosa
2 setosa
3 setosa
4 setosa
5 setosa
6 setosa
> str(ir_data)
'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 ...
> levels((ir_data$Species))
[1] "setosa" "versicolor" "virginica"
> sum(is.na(ir_data))
[1] 0
> ir_data<-ir_data[1:100,]
> set.seed(100)
> samp<-sample(1:100,40)
> ir_test<-ir_data[samp,]
> ir_ctrl<-ir_data[-samp,]
> library(ggplot2)
> y<-ir_test$Species; x<-ir_test$Sepal.Length
> glfit<-glm(y~x, family = 'binomial')
> summary(glfit)
Call:
glm(formula = y ~ x, family = "binomial")

Deviance Residuals:
Min 1Q Median 3Q Max
-1.91781 -0.45322 0.03097 0.30593 2.21381

Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -27.020 8.116 -3.329 0.000871 ***
x 5.033 1.522 3.307 0.000942 ***
---
Signif. codes:
0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for binomial family taken to be 1)


Null deviance: 55.352 on 39 degrees of freedom
Residual deviance: 23.754 on 38 degrees of freedom
AIC: 27.754
Number of Fisher Scoring iterations: 6

> newdata<- data.frame(x=ir_ctrl$Sepal.Length)


> predicted_val<-predict(glfit, newdata, type="response")
> prediction<-data.frame(ir_ctrl$Sepal.Length, ir_ctrl$Species,predicted_v
al)
> prediction
ir_ctrl.Sepal.Length ir_ctrl.Species predicted_val
1 5.1 setosa 0.205260294
2 4.9 setosa 0.086252944
3 4.7 setosa 0.033349202
4 4.6 setosa 0.020430779
5 5.0 setosa 0.135052797
6 4.6 setosa 0.020430779
7 4.4 setosa 0.007565187
8 4.9 setosa 0.086252944
9 5.4 setosa 0.538937259
10 4.3 setosa 0.004587276
11 5.8 setosa 0.897443172
12 5.4 setosa 0.538937259
13 5.7 setosa 0.841023848
14 5.4 setosa 0.538937259
15 5.1 setosa 0.205260294
16 4.6 setosa 0.020430779
17 5.0 setosa 0.135052797
18 5.2 setosa 0.299334521
19 5.2 setosa 0.299334521
20 5.2 setosa 0.299334521
21 5.5 setosa 0.659110306
22 5.0 setosa 0.135052797
23 5.5 setosa 0.659110306
24 4.9 setosa 0.086252944
25 4.4 setosa 0.007565187
26 5.0 setosa 0.135052797
27 5.0 setosa 0.135052797
28 5.1 setosa 0.205260294
29 4.6 setosa 0.020430779
30 5.3 setosa 0.414061118
31 5.0 setosa 0.135052797
32 6.4 versicolor 0.994451890
33 6.9 versicolor 0.999549665
34 5.5 versicolor 0.659110306
35 6.6 versicolor 0.997965093
36 5.2 versicolor 0.299334521
37 5.0 versicolor 0.135052797
38 6.0 versicolor 0.959908229
39 5.6 versicolor 0.761804625
40 5.8 versicolor 0.897443172
41 6.2 versicolor 0.984964632
42 5.6 versicolor 0.761804625
43 5.9 versicolor 0.935378233
44 6.4 versicolor 0.994451890
45 6.6 versicolor 0.997965093
46 6.7 versicolor 0.998768801
47 5.7 versicolor 0.841023848
48 5.5 versicolor 0.659110306
49 5.5 versicolor 0.659110306
50 6.0 versicolor 0.959908229
51 6.0 versicolor 0.959908229
52 6.3 versicolor 0.990855965
53 5.6 versicolor 0.761804625
54 5.5 versicolor 0.659110306
55 6.1 versicolor 0.975371966
56 5.7 versicolor 0.841023848
57 5.7 versicolor 0.841023848
58 6.2 versicolor 0.984964632
59 5.1 versicolor 0.205260294
60 5.7 versicolor 0.841023848
> qplot(prediction[,1], round(prediction[,3]), col=prediction[,2], xlab =
'Sepal Length', ylab = 'Prediction using Logistic Reg.')

> table(actual=x$virginica, predicted=pr>.5)


predicted
actual FALSE TRUE
FALSE 99 1
TRUE 1 49

Dari hasil perhitungan script R-Studio didapatkan bahwa model sederhana menjelaskan dari
prediksi yang cukup baik untuk Spesies Tanaman. Dapat juga dilihat pada titik biru di perhitungan
Cluster bagian bawah, titik biru ini menjelaskan bahwa meskipun specimen yang benar dari tanaman
ini “Versicolor” tetapi model ini memprediksi sebagai “Sentosa”. Setelah dilakukan prediski pada satu
Spesies dapat dilihat bahwa dari total 150 data, 99 dari data tersebut tidak termasuk dalam jenis
“Virginica” dan 49 spesimen lainnya termasuk dalam kategori “Virginica”

Anda mungkin juga menyukai