Kuadrat Terkecil dengan `statsmodels`
Beberapa pustaka Python menyediakan antarmuka abstraksi yang praktis sehingga Anda tidak selalu perlu menangani detail optimasi model secara eksplisit.
Sebagai contoh, pada latihan ini, Anda akan menggunakan pustaka statsmodels dalam alur kerja yang lebih tingkat tinggi dan generik untuk membangun model menggunakan optimasi kuadrat terkecil (meminimalkan RSS).
Untuk membantu Anda memulai, kami telah memuat data dari x_data, y_data = load_data() dan menyimpannya dalam sebuah pandas DataFrame dengan nama kolom x_column dan y_column menggunakan df = pd.DataFrame(dict(x_column=x_data, y_column=y_data))
Latihan ini adalah bagian dari kursus
Pengantar Pemodelan Linear di Python
Petunjuk latihan
- Bangun model
ols()dengan formulaformula="y_column ~ x_column"dan datadata=df, lalu.fit()ke data. - Gunakan
model_fit.predict()untuk memperoleh nilaiy_model. - Dengan fungsi yang disediakan
plot_data_with_model(), tumpangtindihkany_datadengany_model. - Ekstrak nilai parameter model
a0dana1darimodel_fit.params. - Gunakan
compute_rss_and_plot_fit()untuk memastikan hasil ini konsisten dengan rumus analitik yang diimplementasikan dengannumpy.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Pass data and `formula` into ols(), use and `.fit()` the model to the data
model_fit = ols(____="y_column ~ x_column", ____=df).____()
# Use .predict(df) to get y_model values, then over-plot y_data with y_model
y_model = model_fit.____(df)
fig = plot_data_with_model(x_data, ____, ____)
# Extract the a0, a1 values from model_fit.params
a0 = model_fit.____['Intercept']
a1 = model_fit.____['x_column']
# Visually verify that these parameters a0, a1 give the minimum RSS
fig, rss = compute_rss_and_plot_fit(a0, a1)