ComenzarEmpieza gratis

Modelo lineal en antropología

Si encontraras parte de un esqueleto de un ser humano adulto que vivió hace miles de años, ¿cómo podrías estimar la altura de la persona a la que pertenecía? Este ejercicio se inspira en parte en el trabajo de la antropóloga forense Mildred Trotter, que construyó un modelo de regresión para calcular estimaciones de estatura a partir de los "huesos largos" o fémures humanos, y que se utiliza con frecuencia hoy en día.

En este ejercicio, usarás datos de muchas personas vivas y la biblioteca de Python scikit-learn para construir un modelo lineal que relacione la longitud del fémur (hueso del muslo) con la "estatura" (altura total) de la persona. Después, aplicarás tu modelo para hacer una predicción sobre la altura de tu antiguo antepasado.

Este ejercicio forma parte del curso

Introducción al modelado lineal en Python

Ver curso

Instrucciones del ejercicio

  • Importa LinearRegression de sklearn.linear_model e inicializa el modelo con fit_intercept=False.
  • Remodela los arrays de datos precargados legs y heights de "1 por N" a arrays de "N por 1".
  • Pasa los arrays remodelados legs y heights a model.fit().
  • Usa model.predict() para predecir el valor fossil_height para el fósil recién encontrado fossil_leg = 50.7.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# 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]))
Editar y ejecutar código