Modelcomponenten
Tot nu toe kreeg je een vooraf gedefinieerd model om mee te werken. In deze oefening implementeer je een modelfunctie die modelwaarden voor y retourneert, berekend op basis van invoerdata x, en eventuele invoercoëfficiënten voor de "nulde-orde" term a0, de "eerste-orde" term a1, en een kwadratische term a2 van een model (zie hieronder).
\(y = a_0 + a_1 x + a_2 x^2\)
Onthoud dat "eerste orde" lineair is, dus stellen we de standaardwaarden voor dit algemene lineaire model in met a2=0. Later passen we dit aan voor vergelijking.
Deze oefening maakt deel uit van de cursus
Introductie tot lineaire modellering in Python
Oefeninstructies
- Maak de functiedefinitie
model()af zodat diexen standaardinputsa0=3, a1=2, a2=0accepteert, enyretourneert. - Maak een array met waarden
xmet denumpy-methodenp.linspace(). - Geef
xdoor aan jemodel()zondera0, a1, a2te specificeren, zodat je de standaard voorspeldey-waarden krijgt. - Gebruik de vooraf gedefinieerde
plot_prediction()om een plot te zien van de resulterende dataxeny.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# Define the general model as a function
def model(x, a0=____, a1=____, a2=____):
return a0 + (a1*____) + (a2*____*____)
# Generate array x, then predict y values for specific, non-default a0 and a1
x = np.____(-10, 10, 21)
y = model(____)
# Plot the results, y versus x
fig = plot_prediction(____, ____)