A & NBSP; Biểu đồ dư & NBSP; là một loại lô hiển thị các giá trị được trang bị so với các giá trị còn lại cho mô hình hồi quy.residual plot is a type of plot that displays the fitted values against the residual values for a regression model.
Kiểu cốt truyện này thường được sử dụng để đánh giá xem mô hình hồi quy tuyến tính có phù hợp cho một bộ dữ liệu nhất định hay không và để kiểm tra tính không đồng nhất của phần dư.
Hướng dẫn này giải thích cách tạo ra một biểu đồ dư cho mô hình hồi quy tuyến tính trong Python.
Ví dụ: Biểu đồ còn lại trong Python
Đối với ví dụ này, chúng tôi sẽ sử dụng một bộ dữ liệu mô tả các thuộc tính của 10 cầu thủ bóng rổ:
import numpy as np import pandas as pd #create dataset df = pd.DataFrame[{'rating': [90, 85, 82, 88, 94, 90, 76, 75, 87, 86], 'points': [25, 20, 14, 16, 27, 20, 12, 15, 14, 19], 'assists': [5, 7, 7, 8, 5, 7, 6, 9, 9, 5], 'rebounds': [11, 8, 10, 6, 6, 9, 6, 10, 10, 7]}] #view dataset df rating points assists rebounds 0 90 25 5 11 1 85 20 7 8 2 82 14 7 10 3 88 16 8 6 4 94 27 5 6 5 90 20 7 9 6 76 12 6 6 7 75 15 9 10 8 87 14 9 10 9 86 19 5 7
Biểu đồ còn lại cho hồi quy tuyến tính đơn giản
Giả sử chúng ta phù hợp với mô hình hồi quy tuyến tính đơn giản bằng cách sử dụng & nbsp; điểm & nbsp; làm biến dự đoán và & nbsp; xếp hạng & nbsp; là biến phản hồi:
#import necessary libraries import matplotlib.pyplot as plt import statsmodels.api as sm from statsmodels.formula.api import ols #fit simple linear regression model model = ols['rating ~ points', data=df].fit[] #view model summary print[model.summary[]]
Chúng ta có thể tạo một biểu đồ còn lại so với được trang bị bằng cách sử dụng chức năng Plot_regry_Exog [] từ thư viện StatSmodels:
#define figure size fig = plt.figure[figsize=[12,8]] #produce regression plots fig = sm.graphics.plot_regress_exog[model, 'points', fig=fig]
Bốn lô được sản xuất. Một ở góc trên cùng bên phải là cốt truyện còn lại so với được trang bị. Trục X trên biểu đồ này hiển thị các giá trị thực cho các điểm biến dự đoán và trục y hiển thị phần dư cho giá trị đó.
Vì phần dư dường như được phân tán ngẫu nhiên xung quanh 0, đây là một dấu hiệu cho thấy tính không đồng nhất không phải là vấn đề với biến dự đoán.
Sơ đồ dư cho hồi quy tuyến tính nhiều
Thay vào đó, chúng tôi phù hợp với mô hình hồi quy tuyến tính nhiều người sử dụng & nbsp; hỗ trợ & nbsp; và & nbsp; rebound & nbsp; là biến dự đoán và & nbsp; xếp hạng & nbsp; là biến phản hồi:
#fit multiple linear regression model model = ols['rating ~ assists + rebounds', data=df].fit[] #view model summary print[model.summary[]]
Một lần nữa, chúng ta có thể tạo một biểu đồ dự đoán còn lại so với dự đoán cho từng yếu tố dự đoán riêng lẻ bằng cách sử dụng hàm Plot_regric_Exog [] từ thư viện StatSmodels.
Ví dụ, ở đây, những gì mà cốt truyện còn lại so với dự đoán trông giống như biến dự đoán & nbsp; hỗ trợ: hỗ trợ: hỗ trợ: hỗ trợ: hỗ trợ:
#create residual vs. predictor plot for 'assists' fig = plt.figure[figsize=[12,8]] fig = sm.graphics.plot_regress_exog[model, 'assists', fig=fig]
Và ở đây, những gì mà cốt truyện còn lại so với dự đoán trông giống như biến dự đoán & nbsp; rebound:
#create residual vs. predictor plot for 'assists' fig = plt.figure[figsize=[12,8]] fig = sm.graphics.plot_regress_exog[model, 'rebounds', fig=fig]
Trong cả hai ô, phần dư dường như được phân tán ngẫu nhiên xung quanh 0, đó là một dấu hiệu cho thấy tính không đồng nhất không phải là vấn đề với biến dự đoán trong mô hình.