Reamitular de pandas

Reamitular de pandas

“Los datos de la serie temporal a menudo deben compilarse o resumirse utilizando un nuevo período de tiempo. Estos datos de la serie temporal generalmente se procesan utilizando pandas "DataFrame.Función RESAMP () ". Es un enfoque práctico para volver a muestrear series de tiempo y convertir frecuencias."

Para usar este método, debemos seguir la sintaxis que se da a continuación:

Analizaremos la ejecución práctica del método "Repuestro ()" con diferentes técnicas en esta guía.

Ejemplo # 1: Utilizando el método REAMP () para calcular la suma

Para el remuestreo de los datos de la serie temporal, utilizaremos el método pandas "resample ()". Veremos la ejecución del script de Python para volver a muestrear los datos de la serie temporal para encontrar frecuencias en los días especificados.

El primer y fundamental requisito es una herramienta o software que nos proporciona un entorno para compilar y ejecutar el programa. Hemos seleccionado la herramienta Spyder para la implementación de los códigos de ejemplo. Hemos abierto la interfaz Spyder; un nuevo archivo con el ".Se ha lanzado la extensión de PY ". Ahora comience a escribir el guión de Python.

El requisito para ejecutar el script aquí es la biblioteca "pandas". Esto se debe a que el método "resample ()" es un método de pandas. Para poder usarlo en el script, primero debemos importar la biblioteca que lo mantiene manteniendo. Entonces, cargamos la biblioteca de Pandas en nuestro archivo de Python e hicimos "PD" para ser utilizado como alias de "Pandas" durante todo el programa.

El código comenzó invocando el "PD.Función Date_Range () ". Generará un rango de fechas con los límites proporcionados. Estamos creando un rango de fechas porque el método pandas "resample ()" funciona en la serie date_time. Entre los soportes de la función, hemos definido una fecha como "2022/2/3". Este es el valor inicial del rango de fechas. El segundo parámetro, "período", definirá el número de una tupla para la fecha en que hemos especificado "15", por lo que el rango de fechas comienza desde "2022/2/3" y sube a 15 tuplas. Aquí la frecuencia es "D" que significa "día" por defecto. Entonces, los intervalos se generarán en la base de los días. El "PD.El método date_range () "creará un rango de fecha de 15 días. Para guardar el rango de fecha de salida, hemos inicializado una variable "index_col". Ahora podemos acceder al rango de fechas mencionando esta variable.

Después de eso, tenemos que construir un Pandas DataFrame. Para construir un marco de datos con valores definidos por el usuario, los pandas nos proporcionan una función "PD.Marco de datos()". Hemos llamado a este método a nuestro programa y lo inicializamos con 3 columnas que son "extrañas", "pares" y "Prime". Los valores definidos para cada columna son de la misma longitud, que es 15.

La primera columna, "impar", está conteniendo números impares como sus valores. Estos valores son "1", "3", "5", "7", "9", "11", "13", "15", "17", "19", "21", "23" , "25", "27" y "29". Incluso los números se almacenan en la columna "uniforme" como "2", "4", "6", "8", "10", "12", "14", "16", "18", "20" , "22", "24", "26", "28" y "30". Mientras que la última columna, "Prime", tiene los primeros 15 números primos como sus valores: "1", "2", "3", "5", "7", "11", "13", "17" , "19", "23", "29", "31", "37", "41" y "47".

Justo después de definir valores para todas las columnas en el "PD.Método DataFrame () ", también hemos establecido nuestra columna de índice. Hicimos esto utilizando la propiedad "Índice" de DataFrame y asignándole la variable "index_col", que está conteniendo a la serie de rango de fechas. Esto significa que estamos configurando el rango de fechas como la columna de índice de nuestro marco de datos en lugar de la lista de índice predeterminado. El objeto "Números" preservará el resultado que se generará cuando invocemos el "PD.Función DataFrame () ". DataFrame se muestra finalmente empleando el método "print ()". Este método simplemente exhibe lo que se proporcione como entrada en él. Ingresamos el objeto "números" para mostrarlo en el terminal.

El programa ejecutado genera una salida en la que podemos ver que DataFrame tiene 3 columnas, "impar", "par" y "prime", mientras que la columna de índice tiene un rango de fechas que comienza desde "2022-02-03" y termina en "2022-02-17", creando un intervalo de 15 días.

Ahora realizaremos el reamualización de este marcado de datos. El pandas "resample ()" funciona con DatetimeIndex. Este método toma datos de series de tiempo como entrada y convierte los datos de esta serie de tiempo en diferentes frecuencias definidas.

Para esta ilustración, cambiaremos la frecuencia del DateTimeIndex de un intervalo de 1 día a un intervalo de 2 días. Hemos invocado el "PD.volver a muestrear ().método de sum () ". El método "RESAMS ()" declarará la frecuencia, mientras que la función "suma ()" calculará la suma de los días para la frecuencia proporcionada. Hemos proporcionado el nombre de DataFrame como "números" con el ".volver a muestrear ().método de sum () ".

La "regla" del parámetro se pasa al método "resample ()", y su valor se establece en "2D", lo que significa crear la frecuencia de un intervalo de 2 días y luego calcular la suma de valores en el marco de datos para el 2 días consecutivos. La marca de datos rejunta resultante se guardará en la variable "Two_days". Por último, lo presentamos en la pantalla utilizando la función "print ()".

Aquí la imagen de salida muestra un marco de datos replantado en el que tenemos 8 registros. La frecuencia se ha establecido para 2D para DateTimeDex, y la suma de valores se calcula para un intervalo 2D.

Ejemplo # 2: Utilizando el método RESAMP () para calcular la media

La primera demostración utilizó la función "suma ()" para calcular la suma de los datos remuestreados con la frecuencia de 2 días. Además de calcular la suma, también aplicamos otros métodos con el método "RESAMBER ()". En esta ilustración, vamos a utilizar la función "media ()" para calcular el promedio de los datos resmuestados con una frecuencia semanal.

Estamos utilizando el mismo marco de datos que se ha creado en la instancia anterior. El "DF.La función de reample () "se emplea con el".método medio () ". Hemos invocado el método con 2 parámetros; "Gobernar" y "cerrado". El parámetro de "regla" toma la duración del tiempo para la conversión necesaria. Como queremos la conversión en los datos de la serie temporal semanal, ingresamos "W"; utilizado durante una semana. El segundo parámetro, "cerrado", está configurado en "correcto" de forma predeterminada para la frecuencia "w", pero aquí lo hemos cambiado a "izquierda". Esto significa que el intervalo en el contenedor izquierdo es inclusivo y el intervalo en el contenedor derecho está restringido.

Luego usamos el ".función media () ", que calculará la media de los valores en intervalos semanales. El marco de datos final será mantenido por la variable "promedio". La función "print ()" la mostrará en la consola de Python.

Cuando compilamos el programa Python, obtenemos este DataFrame que contiene solo 3 registros. Ha calculado los valores promedio durante una semana en cada columna.

De la misma manera, podemos convertir la frecuencia en mensualmente utilizando "M", para uso trimestral "Q", para uso por hora "H", durante segundos, use "S", y muchas otras opciones se emplean de acuerdo con el requerimiento.

Conclusión

Los datos de la serie temporal a veces deben convertirse en una nueva frecuencia. Los pandas nos proporcionan un método, “DF.volver a muestra () ", para lidiar con esta necesidad. Este artículo demostró dos métodos diferentes para volver a muestrear los datos utilizando DateTimeIndex. Hemos ejercido diferentes técnicas para calcular diferentes datos de intervalos. El primer ejemplo elaboró ​​en el cálculo de la suma de la frecuencia de 2 días para volver a muestrear los datos, mientras que los 2Dakota del Norte Se llevó a cabo un ejemplo para descubrir el promedio de los valores en las bases semanales. Cada técnica se presenta con un código de programa de muestra y la salida correspondiente.