Kuadrat Terkecil dengan `numpy`
Rumus di bawah ini merupakan hasil dari kalkulus yang dibahas pada pengantar. Dalam latihan ini, kita akan mengasumsikan kalkulus tersebut benar, dan mengimplementasikan rumus-rumus ini dalam kode menggunakan numpy.
$$ a_{1} = \frac{ covariance(x, y) }{ variance(x) } $$ $$ a_{0} = mean(y) - a_{1} mean(x) $$
Latihan ini adalah bagian dari kursus
Pengantar Pemodelan Linear di Python
Petunjuk latihan
- Hitung rata-rata dan deviasi dari kedua variabel
x, ypada data yang sudah dimuat. - Gunakan
np.sum()untuk melengkapi rumus kuadrat terkecil, dan gunakan hasilnya untuk menghitung nilai optimala0dana1. - Gunakan
model()untuk membangun nilai modely_modeldari nilai kemiringan optimal a1 dan intersep a0 tersebut. - Gunakan fungsi
compute_rss_and_plot_fit()yang telah disediakan untuk mengonfirmasi secara visual bahwa model optimal ini sesuai dengan data.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# prepare the means and deviations of the two variables
x_mean = np.____(x)
y_mean = np.____(y)
x_dev = x - ____
y_dev = y - ____
# Complete least-squares formulae to find the optimal a0, a1
a1 = np.sum(____ * ____) / np.sum( np.square(____) )
a0 = ____ - (a1 * ____)
# Use the those optimal model parameters a0, a1 to build a model
y_model = model(x, ____, ____)
# plot to verify that the resulting y_model best fits the data y
fig, rss = compute_rss_and_plot_fit(a0, a1)