Biểu đồ dư là một biểu đồ trong đó phần dư được hiển thị trên trục Y và biến độc lập được hiển thị trên trục x. Mô hình hồi quy tuyến tính phù hợp với dữ liệu nếu các dấu chấm trong biểu đồ dư được phân phối ngẫu nhiên trên trục ngang. Hãy cùng xem cách tạo ra một cốt truyện còn lại trong Python.
Phương pháp 1: Sử dụng Plot_regry_exog []
plot_regress_exog[]:
- So sánh các phát hiện hồi quy với một hồi quy.
- Endog vs exog, phần dư của người dùng so với exog, có thể trang bị so với exog, và và được trang bị cộng với phần dư so với exog, được vẽ trong hình 2 x 2.
Cú pháp: StatSmodels.Graphics.Regressionplots.plot_regrates_exog [result, exog_idx, fig = none]statsmodels.graphics.regressionplots.plot_regress_exog[results, exog_idx, fig=None]
Parameters:
- Kết quả: Phiên bản kết quả
- exog_idx: chỉ mục hoặc tên của bộ hồi quy
- Hình: Một con số được tạo nếu không có con số nào được cung cấp
Trả về: Hình 2x22X2 figure
Hồi quy tuyến tính đơn
Sau khi nhập các gói cần thiết và đọc tệp CSV, chúng tôi sử dụng ols [] từ StatSmodels.formula.API để phù hợp với dữ liệu vào hồi quy tuyến tính. Chúng tôi tạo ra một hình và vượt qua hình đó, tên của biến độc lập và mô hình hồi quy sang phương thức Plot_regrator_Exog []. Một con số 2x2 của các ô dư được hiển thị. Trong phương thức ols [], chuỗi trước đó ‘~ là biến phụ thuộc hoặc biến mà chúng tôi đang cố gắng dự đoán và sau‘ ~, các biến độc lập. Đối với hồi quy tuyến tính, có một biến phụ thuộc và một biến độc lập.
OLS [‘Trả lời_varable ~ dự đoán_varable, data = data]
CSV đã sử dụng: Headbrain3 headbrain3
Python3
import
numpy as np
import
pandas as pd
import
matplotlib.pyplot as plt
import
statsmodels.api as sm
from
statsmodels.formula.api
import
numpy as np
1
numpy as np
2numpy as np
3 numpy as np
4numpy as np
5numpy as np
6
numpy as np
7numpy as np
3 numpy as np
9import
0import
1
import
2import
3numpy as np
3import
5
import
6import
7
import
8numpy as np
3 pandas as pd
0numpy as np
3pandas as pd
2pandas as pd
3pandas as pd
4pandas as pd
5pandas as pd
6
import
8numpy as np
3 pandas as pd
9
import
0import
1import
1
import
0import
4numpy as np
3import
6
Output:
Chúng ta có thể thấy rằng các điểm được vẽ ngẫu nhiên hoặc phân tán. Điểm hoặc phần dư nằm rải rác xung quanh dòng ‘0, không có mẫu và các điểm không dựa trên một bên nên không có vấn đề gì về tính không đồng nhất. & nbsp; với biến dự đoán ‘head_size, ở đó, không có sự không đồng nhất. & nbsp;
Hồi quy tuyến tính nhiều:
Trong nhiều hồi quy tuyến tính, chúng ta có nhiều hơn các biến độc lập hoặc biến dự đoán và một biến phụ thuộc. Mã tương tự như hồi quy tuyến tính ngoại trừ việc chúng ta phải thực hiện thay đổi này trong phương thức ols [].
OLS [‘Trả lời_varable ~ dự đoán_varable1 + dự đoán_varable2 + ,., data = data]
‘+, Được sử dụng để thêm có bao nhiêu dự đoán_varia mà chúng tôi muốn trong khi tạo mô hình. & NBSP;
CSV đã sử dụng: HomePrices homeprices
Ví dụ 1:
Python3
import
numpy as np
import
pandas as pd
import
matplotlib.pyplot as plt
import
statsmodels.api as sm
from
statsmodels.formula.api
import
numpy as np
1
numpy as np
2numpy as np
3 numpy as np
4numpy as np
5numpy as np
6
import
3
numpy as np
7numpy as np
3 numpy as np
9import
0import
1
import
6statsmodels.api as sm
3
import
8numpy as np
3 pandas as pd
0numpy as np
3pandas as pd
2pandas as pd
3pandas as pd
4pandas as pd
5pandas as pd
6
import
8numpy as np
3 pandas as pd
9
Output:
Chúng ta có thể thấy rằng các điểm được vẽ ngẫu nhiên hoặc phân tán. Điểm hoặc phần dư nằm rải rác xung quanh dòng ‘0, không có mẫu và các điểm không dựa trên một bên nên không có vấn đề gì về tính không đồng nhất. & nbsp; với biến dự đoán ‘head_size, ở đó, không có sự không đồng nhất. & nbsp;
Hồi quy tuyến tính nhiều:
Python3
import
numpy as np
import
pandas as pd
import
matplotlib.pyplot as plt
import
statsmodels.api as sm
from
statsmodels.formula.api
import
numpy as np
1
numpy as np
2numpy as np
3 numpy as np
4numpy as np
5numpy as np
6
import
3
numpy as np
7numpy as np
3 numpy as np
9import
0import
1
import
8numpy as np
3 pandas as pd
0numpy as np
3pandas as pd
2pandas as pd
3pandas as pd
4pandas as pd
5pandas as pd
6
import
8numpy as np
3 pandas as pd
9
Output:
Chúng ta có thể thấy rằng các điểm được vẽ ngẫu nhiên hoặc phân tán. Điểm hoặc phần dư nằm rải rác xung quanh dòng ‘0, không có mẫu và các điểm không dựa trên một bên nên không có vấn đề gì về tính không đồng nhất. & nbsp; với biến dự đoán ‘head_size, ở đó, không có sự không đồng nhất. & nbsp;
Hồi quy tuyến tính nhiều:
Trong nhiều hồi quy tuyến tính, chúng ta có nhiều hơn các biến độc lập hoặc biến dự đoán và một biến phụ thuộc. Mã tương tự như hồi quy tuyến tính ngoại trừ việc chúng ta phải thực hiện thay đổi này trong phương thức ols [].This function will regress y on x and then plot the residuals as a scatterplot. You can fit a lowess smoother to the residual plot as an option, which can aid in detecting whether the residuals have structure.
OLS [‘Trả lời_varable ~ dự đoán_varable1 + dự đoán_varable2 + ,., data = data]seaborn.residplot[*, x=None, y=None, data=None, lowess=False, x_partial=None, y_partial=None, order=1, robust=False, dropna=True, label=None, color=None, scatter_kws=None, line_kws=None, ax=None]
Parameters:
- X: Tên cột của biến độc lập [dự đoán] hoặc một vectơ.column name of the independent variable [predictor] or a vector.
- Y: Tên cột của biến phụ thuộc [phản hồi] hoặc vectơ.column name of the dependent variable[response] or a vector.
- Dữ liệu: Tham số tùy chọn.khung dữ liệuoptional parameter. dataframe
- Lowess: Theo mặc định, nó sai.by default it’s false.
Dưới đây là một ví dụ về biểu đồ dư đơn giản trong đó x [biến độc lập] là Head_Size từ bộ dữ liệu và y [biến phụ thuộc] là cột Brain_weight của bộ dữ liệu.
Python3
import
pandas as pd
import
numpy as np
34
import
matplotlib.pyplot as plt
numpy as np
2numpy as np
3 numpy as np
4numpy as np
5numpy as np
6
numpy as np
42numpy as np
3import
1numpy as np
45numpy as np
3numpy as np
47import
9numpy as np
3numpy as np
50
numpy as np
51
Đầu ra: & nbsp;
Chúng ta có thể thấy rằng các điểm được vẽ trong một sự lây lan ngẫu nhiên, không có mô hình và điểm nào không dựa trên một bên nên không có vấn đề gì về tính không đồng nhất.& nbsp;