ÎncepețiÎncepe gratuit

Model liniar în antropologie

Dacă ai găsi o parte dintr-un schelet aparținând unui adult care a trăit cu mii de ani în urmă, cum ai putea estima înălțimea persoanei respective? Acest exercițiu este inspirat în parte din munca antropologului criminalist Mildred Trotter, care a construit un model de regresie pentru estimarea staturii pe baza „oaselor lungi" sau a femururilor umane – model folosit și astăzi.

În acest exercițiu, vei folosi date colectate de la multe persoane în viață și biblioteca Python scikit-learn pentru a construi un model liniar care pune în legătură lungimea femurului (osul coapsei) cu statura (înălțimea totală) a persoanei. Apoi, vei aplica modelul pentru a face o predicție despre înălțimea unui strămoș din antichitate.

Acest exercițiu face parte din cursul

Introducere în modelarea liniară în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Importă LinearRegression din sklearn.linear_model și inițializează modelul cu fit_intercept=False.
  • Redimensionează array-urile preîncărcate legs și heights din format "1-pe-N" în format "N-pe-1".
  • Transmite array-urile redimensionate legs și heights în model.fit().
  • Folosește model.predict() pentru a prezice valoarea fossil_height pentru fosila nou descoperită fossil_leg = 50.7.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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]))
Editează și rulează codul