Extrapolación: más allá del límite
En este ejercicio, vamos a considerar los peligros de la extrapolación. Aquí se muestra el perfil de una ruta de senderismo en una montaña. Un tramo de la ruta, marcado en negro, parece lineal y se usó para construir un modelo. Pero vemos que la recta de mejor ajuste, en rojo, no ajusta fuera del "dominio" original, ya que se extiende hacia estos nuevos datos externos, marcados en azul.
Si queremos usar el modelo para predecir la altitud, pero seguir siendo precisos dentro de cierta tolerancia, ¿cuáles son los valores más pequeños y más grandes de la variable independiente x a los que podemos permitirnos aplicar el modelo?
Aquí, usa las variables precargadas x_data, y_data, y_model y plot_data_model_tolerance() para completar tu solución.

Este ejercicio forma parte del curso
Introducción al modelado lineal en Python
Instrucciones del ejercicio
- Usa
np.abs()para calcular los residuales como las diferenciasy_data - y_model. - Encuentra los valores
.min()y.max()dexen los que losresidualsson menores que unatolerance = 100metros. - Usa
np.min()ynp.max()para imprimir el rango (el mayor y el menor) de valores dex_good. - Usa la función predefinida
plot_data_model_tolerance()para comparar los datos, el modelo y el rango de valores dex_gooddonderesiduals < toleranceesTrue.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Compute the residuals, "data - model", and determine where [residuals < tolerance]
residuals = np.abs(____ - ____)
tolerance = 100
x_good = x_data[____ < ____]
# Find the min and max of the "good" values, and plot y_data, y_model, and the tolerance range
print('Minimum good x value = {}'.format(np.____(____)))
print('Maximum good x value = {}'.format(np.____(____)))
fig = plot_data_model_tolerance(x_data, y_data, y_model, tolerance)