Viết 1 function

Mô hình hồi quy bội có dạng: Y=β1+β2X2+β3X3+..+βkXk+u

Kiểm định Durbin - Watson

Trong Eviews mỗi khi chạy hồi quy thì mặc định xuất hiện giá trị của Durbin-Watson Test – một kiểm định thường dùng đến khi đánh giá hiện tượng tự tương quan (Autocorrelation) – một vấn đề về lỗi mô hình rất phổ biến với chuỗi dữ liệu thời gian với cặp giả thuyết sau:

  H0: Phần dư của mô hình không có tự tương quan

  H1: Phần dư của mô hình có tự tương quan

Nếu cần thiết, trong R cũng có thể thực hiện kiểm định này với gói lmtest

linear_regression <- function(data, x_col, y_col) {
  library(lmtest)
  library(fBasics)
  # Chạy hồi quy tuyến tính
  lm_model <- lm(formula = paste(y_col, "~", x_col), data = data)
  # Trả về mô hình hồi quy tuyến tính
  print(summary(lm_model))
  # Lấy ra phần dư
  phandu <- lm_model$residuals
  # Phân phối của phần dư
  hist(phandu)
  # Kiểm định phân phối chuẩn cho phần dư
  jarqueberaTest(phandu)
  # Kiểm định phương sai thay đổi
}
library(palmerpenguins)
penguins <- na.omit(penguins)
linear_regression(penguins,'flipper_length_mm','body_mass_g')
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
## 
## Call:
## lm(formula = paste(y_col, "~", x_col), data = data)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1057.33  -259.79   -12.24   242.97  1293.89 
## 
## Coefficients:
##                   Estimate Std. Error t value Pr(>|t|)    
## (Intercept)       -5872.09     310.29  -18.93   <2e-16 ***
## flipper_length_mm    50.15       1.54   32.56   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 393.3 on 331 degrees of freedom
## Multiple R-squared:  0.7621, Adjusted R-squared:  0.7614 
## F-statistic:  1060 on 1 and 331 DF,  p-value: < 2.2e-16

## 
## Title:
##  Jarque - Bera Normalality Test
## 
## Test Results:
##   STATISTIC:
##     X-squared: 5.8759
##   P VALUE:
##     Asymptotic p Value: 0.05297