Cara membuat histogram residu di r


Salah satu asumsi utama regresi linier adalah residunya terdistribusi normal.

Salah satu cara untuk memverifikasi asumsi ini secara visual adalah dengan membuat histogram residu dan mengamati apakah distribusi mengikuti “bentuk lonceng” yang mengingatkan pada distribusi normal .

Tutorial ini memberikan contoh langkah demi langkah tentang cara membuat histogram residu untuk model regresi di R.

Langkah 1: Buat datanya

Pertama, mari buat beberapa data palsu untuk digunakan:

 #make this example reproducible
set.seed(0)

#createdata
x1 <- rnorm(n=100, 2, 1)
x2 <- rnorm(100, 4, 3)
y <- rnorm(100, 2, 3)
data <- data.frame(x1, x2, y)

#view first six rows of data
head(data)

        x1 x2 y
1 3.262954 6.3455776 -1.1371530
2 1.673767 1.6696701 -0.6886338
3 3.329799 2.1520303 5.8081615
4 3.272429 4.1397409 3.7815228
5 2.414641 0.6088427 4.3269030
6 0.460050 5.7301563 6.6721111

Langkah 2: Sesuaikan model regresi

Selanjutnya, kita akan menyesuaikan model regresi linier berganda ke data:

 #fit multiple linear regression model
model <- lm(y ~ x1 + x2, data=data)

Langkah 3: Buat Histogram Residu

Terakhir, kita akan menggunakan paket visualisasi ggplot untuk membuat histogram residu model:

 #load ggplot2
library (ggplot2)

#create histogram of residuals
ggplot(data = data, aes (x = model$residuals)) +
    geom_histogram(fill = ' steelblue ', color = ' black ') +
    labs(title = ' Histogram of Residuals ', x = ' Residuals ', y = ' Frequency ')

Histogram residu di R

Perhatikan bahwa kita juga dapat menentukan jumlah bin untuk menempatkan residu menggunakan argumen bin .

Semakin sedikit kotak yang ada, semakin lebar batang histogramnya. Misalnya, kita dapat menentukan 20 bins :

 #create histogram of residuals
ggplot(data = data, aes (x = model$residuals)) +
    geom_histogram(bins = 20 , fill = ' steelblue ', color = ' black ') +
    labs(title = ' Histogram of Residuals ', x = ' Residuals ', y = ' Frequency ') 

Histogram sisa di R

Atau kita dapat menentukan 10 bin :

 #create histogram of residuals
ggplot(data = data, aes (x = model$residuals)) +
    geom_histogram(bins = 10 , fill = ' steelblue ', color = ' black ') +
    labs(title = ' Histogram of Residuals ', x = ' Residuals ', y = ' Frequency ') 

Tidak peduli berapa banyak kotak yang kita tentukan, kita dapat melihat bahwa residunya kira-kira terdistribusi normal.

Kita juga dapat melakukan uji statistik formal seperti Shapiro-Wilk, Kolmogorov-Smirnov, atau Jarque-Bera untuk menguji normalitas.

Namun, perlu diingat bahwa pengujian ini sensitif terhadap ukuran sampel yang besar – artinya, pengujian ini sering kali menyimpulkan bahwa residu tidak normal jika ukuran sampelnya besar.

Karena alasan ini, seringkali lebih mudah untuk menilai normalitas dengan membuat histogram dari residu.

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *