Phân rã phương sai thành hai phần
Giả sử có hai bộ dữ liệu quãng đường theo thời gian: một có vận tốc rất nhỏ và một có vận tốc lớn. Lưu ý rằng cả hai có thể có cùng sai số chuẩn của hệ số góc, nhưng R-squared của mô hình tổng thể lại khác nhau, tùy thuộc vào độ lớn của hệ số góc ("kích thước hiệu ứng") so với sai số chuẩn ("độ bất định").
Nếu vẽ cả hai bộ dữ liệu dưới dạng biểu đồ phân tán trên cùng một trục, sự tương phản sẽ rất rõ. Phương sai do hệ số góc gây ra khác với phương sai do nhiễu ngẫu nhiên quanh đường xu hướng. Trong bài tập này, mục tiêu của bạn là tính sai số chuẩn và R-squared cho hai bộ dữ liệu và so sánh chúng.

Bài tập này là một phần của khóa học
Nhập môn Mô hình tuyến tính với Python
Hướng dẫn bài tập
- Xây dựng và
fit()một mô hìnhols()cho cả hai bộ dữ liệudistances1vàdistances2. - Dùng
.bsecủa các mô hình thu đượcmodel_1vàmodel_2, cùng khóa'times', để trích xuất giá trị sai số chuẩn của hệ số góc từ mỗi mô hình. - Dùng thuộc tính
.rsquaredđể lấy giá trị R-squared từ mỗi mô hình. - In ra
se_1,rsquared_1,se_2,rsquared_2, và so sánh trực quan.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Build and fit two models, for columns distances1 and distances2 in df
model_1 = ols(formula="____ ~ times", data=df).____()
model_2 = ols(formula="____ ~ times", data=df).____()
# Extract R-squared for each model, and the standard error for each slope
se_1 = model_1.____['times']
se_2 = model_2.____['times']
rsquared_1 = model_1.____
rsquared_2 = model_2.____
# Print the results
print('Model 1: SE = {:0.3f}, R-squared = {:0.3f}'.format(____, ____))
print('Model 2: SE = {:0.3f}, R-squared = {:0.3f}'.format(____, ____))