Package: series-de-tiempo-pabloatarama
Paquete Series De TiempoVersión 1.0.1Autor: Pablo Ataramahttps://pabloatarama.com/© Derechos Reservados 2021Importar libreriaPara importar la librería utilizamos:importSeriesDeTiempoasstPasos para utilizar la librería:Crear un objeto del tipoSerie.Aplicar un modelo a un objeto del tipo Serie que nos devolverá un objeto del tipoModelo.Crear una seriePara crear un objeto de tipoSerie(Serie de tiempo) utilizamos:serie=st.Serie(DataFrame,columna="")DondeDataFramees el DataFrame de la libreríapandasdonde se extraerá la data ycolumnala columna del DataFrame específica que se considerará comoyt.Aplicar un modeloPara usar un modelo se aplicara la respectiva función del modelo sobre el objeto de tipoSerie. Esto devolverá un objeto del tipo de modelo especificado. Cada función utiliza diferentes parámetros.Modelos soportadosConsiderando que se creó un objeto de tipoSeriellamadoserie:NaiveserieConModelo=serie.naive()Media movil simpleserieConModelo=serie.mediaMovilSimple(longitud=3,desfasada=False)longitud: longitud de la media móvil simple, por defecto es 3.desfasada: Si es desfasada o no (True o False), por defecto es False.Media movil dobleserieConModelo=serie.mediaMovilDoble(longitud=3,desfasada=False)longitud: longitud de ambas medias móviles, por defecto es 3.desfasada: Si es desfasada o no (True o False).Media movil ponderadaserieConModelo=serie.mediaMovilPonderada(longitud,ponderaciones)ponderaciones: lista con alfas a ponderar ej:[alfa1, alfa2, alfa3]donde alfa1 > alfa2 > alfa3, etc.Suavización exponencial simpleserieConModelo=serie.suavizacionExponencialSimple(alfa=0.5)alfa: parámetro alfa del modelo, por defecto es0.5.Media movil doble con tendenciaserieConModelo=serie.mediaMovilDobleConTendencia(longitud=3)longitud: longitud de ambas medias moviles, por defecto es 3.Brown o suavizacion exponencial dobleserieNaive=serie.brown(alfa=0.5,M1=None,M2=None)alfa: parámetro alfa del modelo, por defecto es 0.5.M1: Valor inicial de Mat, por defecto es yt para t = 1.M2: Valor inicial de Maat, por defecto es yt para t = 1.HoltserieConModelo=serie.holt(alfa=0.5,beta=0.5,M=None,T=0)alfa: parámetro alfa del modelo, por defecto es 0.5.beta: parámetro beta del modelo, por defecto es 0.5.M: Valor inicial de Mt, por defecto es yt para t = 1.T: Valor inicial de Tt, por defecto es 0.Holt y WintersserieConModelo=serie.holtYWinters(metodo,alfa=0.5,beta=0.5,gamma=0.5,L=4)metodo: El metodo a utilizar "aditivo" para el metodo aditivo y "multiplicativo" para el metodo multiplicativo.alfa: parámetro alfa del modelo, por defecto es 0.5.beta: parámetro beta del modelo, por defecto es 0.5.gamma: parámetro gamma del modelo, por defecto es 0.5.L: Longitud de la estacionalidad, por defecto es 4.DescomposiciónserieConModelo=serie.descomposicion(metodo,L=12)metodo: El metodo a utilizar "aditivo" para el metodo aditivo y "multiplicativo" para el metodo multiplicativo.L: Longitud de la estacionalidad, por defecto es 12.Graficar series y modelosPara graficar cualquier tipo de objeto de serie (sea del tipoSerieo del tipoModelo) se utiliza la funcióngraficar()serie.graficar(titulo="",xlabel="",ylabel="")titulo: Título del gráfico.xlabel: Título del eje x.ylabel: Título del eje y.Diagramas de cajasSe puede realizar digramas de cajas a los objetos de tipoSeriea lo largo del tiempo agrupando por cilos mediante:serie.cajasEstacionalidad(L=4,comienzo=1,titulo="",xlabel="",ylabel="",grilla=True)ciclo: Ciclos en que se agrupará los datos, por defecto es 4.titulo: Título de la gráfica.xlabel: Título del eje x.ylabel: Título del eje y.grilla: Grilla de gráfica (True o False), por defecto True.También se puede realizar diagramas de cajas sobre la estacionalidad mediante:serie.cajas(ciclo=4,comienzo=1,titulo="",xlabel="",ylabel="",grilla=True)ciclo: Ciclos en que se agrupará los datos, por defecto es 4.titulo: Título de la gráfica.xlabel: Título del eje x.ylabel: Título del eje y.grilla: Grilla de gráfica (True o False), por defecto True.ResidualesTambién es posible graficar el residual de los objetos de los modelos mediante:serieConModelo.residual.graficar(titulo="",xlabel="",ylabel="")Gráficas extras del modelo de descomposiciónLos modelos de descomposición tienen la peculiaridad de poseer las propiedades: tendencia y estacionalidad siendo estas también graficables mediantegraficar()serieDescomposicion.tendencia.graficar(titulo="",xlabel="",ylabel="")serieDescomposicion.estacionalidad.graficar(titulo="",xlabel="",ylabel="")En caso se requiera realizar una gráfica de otro tipo, todos los objetos de la librería contienen un DataFrame de pandas en su propiedad data:serie.dataserieConModelo.dataErrores de los ModelosPara consultar los errores de la aplicación de un determinado modelo que se encuentre en un objeto de ejemploserieConModelobasaría con consultar su propiedad "errores":serieConModelo.erroresPodemos extraer el valor específico de algún error consultando las propiedades:serieConModelo.errores.mseserieConModelo.errores.rmseserieConModelo.errores.u_theilPronósticosPara realizar un pronóstico se deberá llamar a la funciónpronosticar()y esta devolverá una copia del objeto del modelo pero con el pronóstico pedido agregado.serieConPronostico=serieConModelo.pronosticar(self,p=1,t=None)p: cantidad de periodos a pronosticar, por defecto es 1.t: valor de t desde donde comenzará el pronóstico, por defecto comienza luego del último dato.