Processing math: 100%

Materia
Ejercicios


anterior | siguiente

Series de tiempo

Este problema apareció en el certamen 3 del primer semestre de 2011.

Una serie de tiempo es una secuencia de valores numéricos obtenidos al medir algún fenómeno cada cierto tiempo. Algunos ejemplos de series de tiempo son: el precio del dólar en cada segundo, el nivel medio mensual de concentración de CO2 en el aire y las temperaturas máximas anuales de una ciudad. En un programa, los valores de una serie de tiempo se pueden guardar en un arreglo.

Las medias móviles con retardo p de una serie de tiempo son la secuencia de todos los promedios de p valores consecutivos de la serie.

Por ejemplo, si los valores de la serie son {5,2,2,8,4,1,2} entonces las medias móviles con retardo 3 son: 5+2+23, 2+2+83, 2+843, 8413 y 41+23.

  1. Escriba la función medias_moviles(serie, p) que retorne el arreglo de las medias móviles con retardo p de la serie:

    >>> s = array([5, 2, 2, 8, -4, -1, 2])
    >>> medias_moviles(s, 3)
    array([ 3,  4,  2,  1, -1])
    
  2. Las diferencias finitas de una serie de tiempo son la secuencia de todas las diferencias entre un valor y el anterior.

    Por ejemplo, si los valores de la serie son {5,2,2,8,4,1,2} entonces las diferencias finitas son: (25), (22), (82), (48), (1+4) y (2+1).

    Escriba la función diferencias_finitas(serie) que retorne el arreglo de las diferencias finitas de la serie:

    >>> s = array([5, 2, 2, 8, -4, -1, 2])
    >>> diferencias_finitas(s)
    array([ -3,   0,   6, -12,   3,   3])