ComenzarEmpieza gratis

Transformación de datos brutos

En el último capítulo, calculaste la media móvil. En este ejercicio, definirás una función que calcula el cambio porcentual del último punto de datos respecto a la media de una ventana de puntos de datos anteriores. Esta función te ayudará a calcular el cambio porcentual a lo largo de una ventana móvil.

Se trata de un tipo de serie temporal más estable que suele ser útil en machine learning.

Este ejercicio forma parte del curso

Machine learning para datos de series temporales en Python

Ver curso

Instrucciones de ejercicio

  • Define una función percent_change que tome una serie temporal de entrada y haga lo siguiente:
    • Extrae todos los valores de la serie de entrada excepto el último (asignado a previous_values) y el sólo el último valor de la serie temporal ( asignado a last_value)
    • Calcula la diferencia porcentual entre el último valor y la media de los valores anteriores.
  • Utilizando una ventana móvil de 20, aplica esta función a prices, y visualízala utilizando el código dado.

Ejercicio interactivo práctico

Pruebe este ejercicio completando este código de muestra.

# Your custom function
def percent_change(series):
    # Collect all *but* the last value of this window, then the final value
    previous_values = series[:____]
    last_value = series[-1]

    # Calculate the % difference between the last value and the mean of earlier values
    percent_change = (____ - np.mean(previous_values)) / np.mean(previous_values)
    return percent_change

# Apply your custom function and plot
prices_perc = prices.rolling(20).____
prices_perc.loc["2014":"2015"].plot()
plt.show()
Editar y ejecutar código