Pandas rodando.Función de aplicar

Pandas rodando.Función de aplicar

Rolling () es una de las muchas funciones útiles ofrecidas por el kit de herramientas Pandas, que es extraordinario en su capacidad para llevar a cabo cálculos complicados en conjuntos de datos. Para aplicar una función particular con una ventana de rodadura a todos los datos, tenemos un método "Rolling ().aplicar()".

Esto se puede usar para el marco de datos, así como para la serie. Para invocar esta función, tenemos que seguir esta sintaxis:


Este artículo llevará a cabo la ejecución práctica de esta función con dos técnicas en los programas de Python.

Ejemplo # 1: Utilizando Pandas Rolling ().Aplicar () función para calcular la mediana de un marco de datos de pandas

Para esta ilustración, emplearemos los pandas "DF.laminación().Aplicar el método () "para aplicar un método a todo el marco de datos con la ventana de rodadura. Nos moveremos directamente a la implementación de este concepto.

La compilación del programa Python se realiza en una herramienta compatible con nuestro sistema. Proporciona el mejor entorno respaldado por Python, por lo que no nos atascaremos en el proceso de ejecución. El que hemos elegido es la herramienta "Spyder". Utilizaremos esta herramienta para reunir nuestros programas de ejemplo en este tutorial. Acabamos de lanzar la herramienta para trabajar en ella, y lo llevará directamente al entorno de trabajo. Comenzaríamos a escribir el script en él.

Ahora, los requisitos principales se cargan en este archivo. Entonces, importamos los dos módulos requeridos de Python. Estos son "pandas" y "numpy". La biblioteca Pandas se importa porque crearemos un marco de datos usando esta biblioteca y el "Rolling ().La función aplicar () "pertenece a este mismo kit de herramientas. La segunda biblioteca, Numpy, se carga a un método; a partir de él que se usará para calcular una expresión matemática. Entonces, ambas bibliotecas se han introducido en el programa. Además, se han establecido abreviaturas, como "PD" y "NP", respectivamente.

Usando una función de la biblioteca de pandas, necesitamos construir un pandas dataFrame. El método para la creación de DataFrame es "PD.Marco de datos()". Cuando ejercemos esta función, instruye al programa de Python que comience el proceso de generación de datos de datos. Así, invocamos el "PD.Método dataFrame () "y suministraron valores especificados para cada columna que tuvieron que agregarse en él. Queremos que este marco de datos tenga cuatro columnas; Por lo tanto, los llamamos "este", "oeste", "norte" y "sur".

El tipo de datos para todas las columnas se mantiene igual, que es entero dtype, y el tamaño de las columnas es 8. Los valores identificados para la columna "Este" son "1, 2, 3, 4, 5, 6, 7 y 8". El "oeste" posee valores "0, 1, 2, 3, 4, 5, 6 y 7". Los datos almacenados en la columna "Norte" son "9, 8, 7, 6, 5, 4, 3 y 2". Y la última columna, "Sur", tiene los valores "3, 5, 7, 9, 6, 4, 2 y 8". Se construye un objeto DataFrame, "direcciones", para contener este marco de datos para que pueda estar disponible para usarse más tarde.

Necesitamos poner este marco de datos a la vista. Esto se puede hacer utilizando la función Python "print ()". Este método toma cualquier tipo de entrada, ya sea una cadena, función, objeto, variable o alguna expresión, y simplemente pone el resultado en la pantalla. Entonces, proporcionamos el objeto DataFrame de "dirección" para imprimirlo.


Este es el marco de datos resultante que construimos ejecutando el fragmento de código anterior.


Ahora para calcular el "Rolling ().aplicar () ”En este marco de datos hemos definido una función. La "def" es la palabra clave que define una función. La función que hemos creado es "ApplyRolling ():". Dentro de este método, se define otra función, que es "mediana_estimación (i):". Es posible que haya observado que hemos escrito: "I" entre los aparatos ortopédicos de esta función. Esta "i" se usa para las iteraciones porque la función "mediana_estimation ()" funcionará iterativamente en cada valor en el marco de datos. Ahora, ¿qué funcionará con cada iteración?? En la siguiente línea, lo hemos especificado para devolvernos una salida del "NP.función de mediana (i) ".

Como el nombre identifica, es la función de Numpy la que calculará la mediana iterativamente para todos los valores. Cada valor será reemplazado por "I"; la mediana se estimará para ese valor en particular y devolverá el resultado. Luego invoca el "DF.laminación().Aplicar el método () ". El nombre de DataFrame se menciona como "direcciones", la función "Rolling ()" se establece para encontrar la ventana de rodadura para tres observaciones, y la función "Aplicar ()" se ejerce con la función "Mediana_estimación". La salida se mantendrá en la variable "resultado". Y luego, devolvimos este "resultado" variable a la función principal.

Por lo tanto, todo este proceso se puede resumir a medida que la función "Aplicar ()" comienza y pide a la función "mediana_estimation ()" para calcular la mediana de iteración. Luego entra en el marco de datos, calcula la ventana rodante, aplica el método mediano para generar la salida y sale de la función principal. Y "print ()" exhibirá el resultado de la función "ApplyRolling ()".


Aquí, podemos ver que las primeras tres entradas tienen valores NAN porque hemos especificado estimar la ventana de rodadura para tres observaciones, ya que no tienen más entradas sobre ellas para completar la ventana, por lo que se dejan vacíos. Desde la cuarta entrada, la mediana se calculó para la ventana rodante. El tipo de datos devuelto de este DataFrame es flotante.

Ejemplo # 2: Utilización de pandas rodando.Aplicar () función para calcular la suma de una serie Pandas

La segunda técnica para emplear este método es ejercerlo en la serie Pandas esta vez.

Primero importamos la Biblioteca Pandas a nuestro entorno de Python e hicimos de "PD" su alias para ser utilizado durante todo el programa. Luego invocamos el "PD.Función Series () "desde el kit de herramientas Pandas para crear una serie Pandas. El "PD" es la abreviatura de los Pandas definidos anteriormente, y la "serie" es la palabra clave para construir una serie. Hemos especificado una matriz de valores para esta función. Los valores son "11, 12, 13, 14, 15, 3, 7, 17, 9, 1, 21, 24 y 2". Para preservar esta serie, tenemos un objeto de serie, "aleatorio". Este objeto "aleatorio" ahora mantiene nuestra serie, por lo que la pasamos al método "print ()" para presentar su contenido en el terminal.


Cuando presionamos la opción "Ejecutar archivo", nuestro código se ejecuta. En la siguiente instantánea, puede ver la serie generada actualmente.


Después de imprimir la serie, hemos definido una función "serie_ra ()". Ahora, los principales cálculos se realizarán en esta función. Dentro de esta función, hemos definido otra función que es "Compute_sum (J)". Puede adivinar por su etiqueta que obtendrá la suma. La "j" aquí le dice que realice esta función iterativamente. Cada iteración se moverá y realizará la función "suma (j)". Y luego devuelva la suma calculada para cada valor.

Entonces la "serie.laminación().El método aplicar () "se llama dentro de la función" Compute_sum () ". Estimará la ventana de búsqueda de búsqueda para cinco observaciones y luego calculará su suma usando el método "Aplicar ()". La salida se conservará en la variable local "resultado" y se devolverá a la función principal. Por último, hemos pasado la función de entrada "series_ra ()" al método "print ()" para ver la serie final.


Esta es la serie definitiva con una suma calculada en una ventana rodante de cinco observaciones.

Conclusión

El tema discutido para este artículo se basó en los dos conceptos de pandas, que son "Rolling ()" y "Aplicar ()". Hemos elaborado sobre la utilización de este método dándole una explicación detallada de la implementación práctica del "Rolling ().Función Aplicar () ". Este tutorial contenía dos enfoques para emplear este método. La primera instancia habló sobre la aplicación de una función mediana desde el kit de herramientas Numpy en la ventana rodante de un marco de datos de pandas. Mientras que el segundo ejemplo nos dio la idea de implementar este concepto en una serie de pandas. Entonces, aplicamos esta función calculando la suma en la ventana de rodadura especificada de la serie. Puede ejercer la técnica que es más factible para su tarea.