LoslegenKostenlos loslegen

Lineares Modell in der Anthropologie

Wenn du einen Teil eines Skeletts eines erwachsenen Menschen findest, der vor Tausenden von Jahren lebte, wie könntest du die Körpergröße dieser Person schätzen? Diese Übung ist teilweise von der Arbeit der forensischen Anthropologin Mildred Trotter inspiriert, die ein Regressionsmodell zur Berechnung von Größenabschätzungen aus menschlichen „Röhrenknochen“ bzw. Femora erstellt hat, das bis heute häufig verwendet wird.

In dieser Übung verwendest du Daten vieler lebender Personen und die Python-Bibliothek scikit-learn, um ein lineares Modell aufzubauen, das die Länge des Femurs (Oberschenkelknochen) mit der „Körpergröße“ (Gesamthöhe) der Person verknüpft. Anschließend wendest du dein Modell an, um eine Vorhersage zur Größe deiner antiken Ahnin/deines antiken Ahnen zu treffen.

Diese Übung ist Teil des Kurses

Einführung in lineares Modellieren mit Python

Kurs anzeigen

Anleitung zur Übung

  • importiere LinearRegression aus sklearn.linear_model und initialisiere das Modell mit fit_intercept=False.
  • Forme die vorab geladenen Datenarrays legs und heights von „1-by-N“ in „N-by-1“ um.
  • Übergib die umgeformten Arrays legs und heights an model.fit().
  • Verwende model.predict(), um den Wert fossil_height für den neu gefundenen Fund fossil_leg = 50.7 vorherzusagen.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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]))
Code bearbeiten und ausführen