MulaiMulai sekarang secara gratis

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

Lihat Kursus

Petunjuk latihan

  • Bangun model ols() dengan formula formula="y_column ~ x_column" dan data data=df, lalu .fit() ke data.
  • Gunakan model_fit.predict() untuk memperoleh nilai y_model.
  • Dengan fungsi yang disediakan plot_data_with_model(), tumpangtindihkan y_data dengan y_model.
  • Ekstrak nilai parameter model a0 dan a1 dari model_fit.params.
  • Gunakan compute_rss_and_plot_fit() untuk memastikan hasil ini konsisten dengan rumus analitik yang diimplementasikan dengan numpy.

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)
Edit dan Jalankan Kode