CommencerCommencer gratuitement

Modèle linéaire en anthropologie

Si vous retrouviez une partie d’un squelette d’un être humain adulte ayant vécu il y a des milliers d’années, comment pourriez-vous estimer sa taille ? Cet exercice s’inspire en partie des travaux de la médecin légiste et anthropologue Mildred Trotter, qui a élaboré un modèle de régression pour estimer la stature à partir des « os longs » humains, notamment le fémur, encore largement utilisé aujourd’hui.

Dans cet exercice, vous utiliserez des données provenant de nombreuses personnes vivantes et la bibliothèque Python scikit-learn pour construire un modèle linéaire reliant la longueur du fémur (os de la cuisse) à la « stature » (taille totale) de la personne. Vous appliquerez ensuite votre modèle pour prédire la taille de votre ancêtre lointain.

Cet exercice fait partie du cours

Introduction à la modélisation linéaire en Python

Afficher le cours

Instructions

  • Importez LinearRegression depuis sklearn.linear_model et initialisez le modèle avec fit_intercept=False.
  • Remodelez les tableaux de données préchargés legs et heights de tableaux « 1-par-N » en tableaux « N-par-1 ».
  • Passez les tableaux remodélés legs et heights à model.fit().
  • Utilisez model.predict() pour prédire la valeur fossil_height pour le fossile nouvellement découvert fossil_leg = 50.7.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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]))
Modifier et exécuter le code