Intercept och startpunkter
I den här övningen får du se intercept- och lutningsparametrarna i ett praktiskt sammanhang. Mätningarna gäller volymen av en lösning i en stor glasburk. Lösningen består av vatten, korn, socker och jäst. Den totala massan av både lösningen och glasburken registrerades, men burken vägdes inte tom.
Din uppgift är att använda den förinstallerade pandas-DataFramen df, med datakolumnerna volumes och masses, för att bygga en linjär modell som relaterar masses (y-data) till volumes (x-data). Lutningen blir en uppskattning av lösningens densitet (massförändring / volymförändring) och interceptet blir en uppskattning av den tomma burkens vikt (massa när volymen är 0).

Den här övningen är en del av kursen
Introduktion till linjär modellering i Python
Övningsinstruktioner
- Importera
ols()frånstatsmodelsoch använd den för att bygga en modell anpassad tilldata=dfmedformula = "masses ~ volumes". - Extrahera interceptet
a0och lutningena1med.params['Intercept']respektive.params['volumes']. - Skriv ut
a0ocha1med fysikaliskt meningsfulla namn. - Skriv ut
model_fit()och leta efter värden som matchar de ovan; leta efter radmärkningarnaIntercept,volumesoch kolumnmärkningencoef.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Import ols from statsmodels, and fit a model to the data
from statsmodels.formula.api import ols
model_fit = ols(formula="____ ~ ____", data=____)
model_fit = model_fit.fit()
# Extract the model parameter values, and assign them to a0, a1
a0 = model_fit.params['____']
a1 = model_fit.params['____']
# Print model parameter values with meaningful names, and compare to summary()
print( "container_mass = {:0.4f}".format(____) )
print( "solution_density = {:0.4f}".format(____) )
print( model_fit.summary() )