Lineární model v antropologii
Představ si, že jsi nalezl/a část kostry dospělého člověka, který žil před tisíci lety. Jak bys odhadl/a jeho výšku? Toto cvičení je částečně inspirováno prací forenzní antropoložky Mildred Trotterové, která sestavila regresní model pro odhad výšky postavy z lidských „dlouhých kostí" – konkrétně femurů – a tento model se běžně používá dodnes.
V tomto cvičení použiješ data od mnoha žijících lidí a knihovnu scikit-learn, abys sestavil/a lineární model popisující vztah mezi délkou femuru (stehenní kosti) a „staturou" (celkovou výškou) dané osoby. Pak pomocí svého modelu odhadneš výšku dávného předka.

Toto cvičení je součástí kurzu
Úvod do lineárního modelování v Pythonu
Pokyny k cvičení
- Importuj
LinearRegressionzsklearn.linear_modela inicializuj model s parametremfit_intercept=False. - Předem načtená datová pole
legsaheightspřetvaruj z formátu „1-by-N" na „N-by-1". - Přetvarovaná pole
legsaheightspředej domodel.fit(). - Pomocí
model.predict()předpověz hodnotufossil_heightpro nově nalezený fosilní nálezfossil_leg = 50.7.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# import the sklearn class LinearRegression and initialize the model
from sklearn.____ import ____
model = LinearRegression(fit_intercept=False)
# Prepare the measured data arrays and fit the model to them
legs = legs.reshape(len(____),1)
heights = heights.reshape(len(____),1)
model.fit(____, heights)
# Use the fitted model to make a prediction for the found femur
fossil_leg = np.array(50.7).reshape(1, -1)
fossil_height = model.predict(____)
print("Predicted fossil height = {:0.2f} cm".format(fossil_height[0,0]))