Bắt đầu ngayBắt đầu miễn phí

Hệ số chặn và điểm bắt đầu

Trong bài tập này, bạn sẽ thấy hai tham số intercept (hệ số chặn) và slope (độ dốc) trong bối cảnh mô hình hóa các phép đo thể tích của một dung dịch chứa trong một bình thủy tinh lớn. Dung dịch gồm nước, hạt ngũ cốc, đường và men. Tổng khối lượng của cả dung dịch và bình thủy tinh cũng được ghi lại, nhưng khối lượng của bình rỗng thì không.

Nhiệm vụ của bạn là dùng DataFrame pandas df đã được nạp sẵn, với các cột dữ liệu volumesmasses, để xây dựng một mô hình tuyến tính liên hệ masses (dữ liệu y) với volumes (dữ liệu x). Độ dốc sẽ là ước lượng của mật độ (độ thay đổi khối lượng / độ thay đổi thể tích) của dung dịch, và hệ số chặn sẽ là ước lượng khối lượng của bình rỗng (khối lượng khi volume=0).

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

Xem khóa học

Hướng dẫn bài tập

  • Import ols() từ statsmodels và dùng nó để xây dựng mô hình khớp với data=df với formula = "masses ~ volumes".
  • Trích xuất hệ số chặn a0 và độ dốc a1 bằng .params['Intercept'].params['volumes'] tương ứng.
  • In a0a1 với các tên gọi có ý nghĩa vật lý.
  • In model_fit() và tìm các giá trị khớp với những giá trị ở trên; tìm các nhãn hàng Intercept, volumes, và nhãn cột coef.

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.

# Import ols from statsmodels, and fit a model to the data
from statsmodels.formula.api import ols
model_fit = ols(formula="____ ~ ____", data=____)
model_fit = model_fit.fit()

# Extract the model parameter values, and assign them to a0, a1
a0 = model_fit.params['____']
a1 = model_fit.params['____']

# Print model parameter values with meaningful names, and compare to summary()
print( "container_mass   = {:0.4f}".format(____) )
print( "solution_density = {:0.4f}".format(____) )
print( model_fit.summary() )
Chỉnh sửa và Chạy Mã