Untuk memberikan sedikit konteks saya menyiapkan data yang berasal dari datasets yang tersedia di R yaitu “mtcars”. Datasets ini berisi data terkait data motor.
head(mtcars)
Karena datasets tersebut memiliki lebih dari 5 peubah maka saya akan ambil hanya 5 peubah pertama.
df <- mtcars[,1:5]
df
summary(df)
## mpg cyl disp hp
## Min. :10.40 Min. :4.000 Min. : 71.1 Min. : 52.0
## 1st Qu.:15.43 1st Qu.:4.000 1st Qu.:120.8 1st Qu.: 96.5
## Median :19.20 Median :6.000 Median :196.3 Median :123.0
## Mean :20.09 Mean :6.188 Mean :230.7 Mean :146.7
## 3rd Qu.:22.80 3rd Qu.:8.000 3rd Qu.:326.0 3rd Qu.:180.0
## Max. :33.90 Max. :8.000 Max. :472.0 Max. :335.0
## drat
## Min. :2.760
## 1st Qu.:3.080
## Median :3.695
## Mean :3.597
## 3rd Qu.:3.920
## Max. :4.930
boxplot(df,main="Plot Boxplot", col="skyblue")
cor(df)
## mpg cyl disp hp drat
## mpg 1.0000000 -0.8521620 -0.8475514 -0.7761684 0.6811719
## cyl -0.8521620 1.0000000 0.9020329 0.8324475 -0.6999381
## disp -0.8475514 0.9020329 1.0000000 0.7909486 -0.7102139
## hp -0.7761684 0.8324475 0.7909486 1.0000000 -0.4487591
## drat 0.6811719 -0.6999381 -0.7102139 -0.4487591 1.0000000
Untuk melihat peubah mana yang memiliki korelasi dengan mudah, kita dapat membuat heatmap.
Untuk itu, kita perlu menggunakan library “ggplots” dan juga “reshape2” .
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.3.2
library(reshape2)
## Warning: package 'reshape2' was built under R version 4.3.2
setelah mengimport library, kita dapat membuat heatmap dengan syntax berikut
cor_matrix <- cor(df)
melt_cor <- melt(cor_matrix)
ggplot(melt_cor, aes(Var1, Var2, fill = value)) +
geom_tile(color = "white") +
scale_fill_gradient2(low = "blue", mid = "white", high = "red", midpoint = 0,
name = "Korelasi", limits = c(-1, 1)) +
labs(title = "Korelasi",
x = "Peubah",
y = "Peubah") +
theme_minimal()
Dari heatmap itu dapat dilihat korelasi terbesar terjadi pada peubah “disp” dan “cyl”. Mari kita lihat dalam regresi linear sederhana.
Untuk dapat melakukannya kita dapat menggunakan visualisasi data dalam library “ggplots2”.
ggplot(df[,c("disp","cyl")], aes(x = disp, y = cyl)) +
geom_point() +
geom_smooth(method = "lm", se = FALSE, color = "blue") +
labs(title = "Regresi Linear Sederhana",
x = "Displacement",
y = "Amount of Cylinders") +
theme_minimal()
## `geom_smooth()` using formula = 'y ~ x'