Regresi linear
Kita akan mengasumsikan bahwa fertilitas merupakan fungsi linear dari tingkat buta huruf perempuan. Yaitu, \(f = a i + b\), di mana \(a\) adalah kemiringan (slope) dan \(b\) adalah intersep. Kita dapat memandang intersep sebagai laju fertilitas minimal, kemungkinan berada antara satu dan dua. Nilai kemiringan menunjukkan bagaimana laju fertilitas bervariasi terhadap tingkat buta huruf. Kita dapat menemukan garis terbaik menggunakan np.polyfit().
Buat plot data dan garis terbaiknya. Cetak kemiringan dan intersepnya. (Pikirkan: apa satuannya?)
Latihan ini adalah bagian dari kursus
Pemikiran Statistik dengan Python (Bagian 2)
Petunjuk latihan
- Hitung kemiringan dan intersep garis regresi menggunakan
np.polyfit(). Ingat,fertilityberada pada sumbu-y danilliteracypada sumbu-x. - Cetak kemiringan dan intersep dari regresi linear.
- Untuk memplot garis terbaik, buat array
xyang berisi 0 dan 100 menggunakannp.array(). Lalu, hitung nilai teoretisyberdasarkan parameter regresi Anda, yaituy = a * x + b. - Plot data dan garis regresi pada plot yang sama. Pastikan memberi label pada sumbu.
- Tekan submit untuk menampilkan plot Anda.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Plot the illiteracy rate versus fertility
_ = plt.plot(illiteracy, fertility, marker='.', linestyle='none')
plt.margins(0.02)
_ = plt.xlabel('percent illiterate')
_ = plt.ylabel('fertility')
# Perform a linear regression using np.polyfit(): a, b
a, b = ____
# Print the results to the screen
print('slope =', a, 'children per woman / percent illiterate')
print('intercept =', b, 'children per woman')
# Make theoretical line to plot
x = ____
y = ____ * ____ + ____
# Add regression line to your plot
_ = plt.plot(____, ____)
# Draw the plot
plt.show()