Pandas roulant.Appliquer la fonction

Pandas roulant.Appliquer la fonction

Rolling () est l'une des nombreuses fonctions utiles offertes par la boîte à outils Pandas, qui est extraordinaire dans sa capacité à effectuer des calculs complexes sur des ensembles de données. Pour appliquer une fonction particulière avec une fenêtre de roulement à l'ensemble des données, nous avons une méthode «Rolling ().appliquer()".

Cela peut être utilisé pour le DataFrame, ainsi que pour la série. Pour invoquer cette fonction, nous devons suivre cette syntaxe:


Cet article effectuera l'exécution pratique de cette fonction avec deux techniques dans les programmes Python.

Exemple n ° 1: Utilisation de Pandas Rolling ().Appliquer () Fonction pour calculer la médiane d'un pandas dataframe

Pour cette illustration, nous utiliserons les Pandas «DF.roulant().appliquer () »Méthode pour appliquer une méthode à l'ensemble des données avec la fenêtre de roulement. Nous passerons directement à la mise en œuvre de ce concept.

La compilation du programme Python se fait sur un outil compatible avec notre système. Il fournit le meilleur environnement soutenu par Python, nous ne serons donc pas coincés dans le processus d'exécution. Celui que nous avons choisi est l'outil «Spyder». Nous utiliserons cet outil pour assembler nos exemples de programmes dans ce tutoriel. Nous venons de lancer l'outil pour y travailler, et cela vous amènera directement à l'environnement de travail. Nous commencerions à taper le script dessus.

Maintenant, les principales conditions requises sont chargées dans ce fichier. Nous avons donc importé les deux modules requis de Python. Ce sont des «pandas» et «numpy». La bibliothèque Pandas est importée car nous créerons un DataFrame à l'aide de cette bibliothèque et le «Rolling ().Appliquer () ”La fonction appartient à cette même boîte à outils. La deuxième bibliothèque, Numpy, est chargée à une méthode; à partir de là qui sera utilisé pour calculer une expression mathématique. Ainsi, ces deux bibliothèques ont été introduites dans le programme. De plus, les abréviations, telles que «PD» et «NP», respectivement, ont été définies pour eux.

En utilisant une fonction de la bibliothèque Pandas, nous devons construire un Pandas DataFrame. La méthode de création de dataframe est «PD.Trame de données()". Lorsque nous exerçons cette fonction, il ordonne au programme Python de commencer le processus de génération de dataframe. Ainsi, nous avons invoqué le «Pd.Méthode DataFrame () ”et fournies pour chaque colonne qui devait y être ajoutée. Nous voulons que ce DataFrame ait quatre colonnes; Par conséquent, nous les avons nommés «Est», «Ouest», «Nord» et «Sud».

Le type de données pour toutes les colonnes est maintenu le même, ce qui est entier DTYPE, et la taille des colonnes est de 8. Les valeurs identifiées pour la colonne «Est» sont «1, 2, 3, 4, 5, 6, 7 et 8». Le «Occident» contient des valeurs «0, 1, 2, 3, 4, 5, 6 et 7». Les données stockées dans la colonne «Nord» sont «9, 8, 7, 6, 5, 4, 3 et 2». Et la dernière colonne, «Sud», a les valeurs «3, 5, 7, 9, 6, 4, 2 et 8». Un objet DataFrame, «Directions», est construit pour maintenir ce DataFrame afin qu'il puisse être mis à disposition pour être utilisé plus tard.

Nous devons mettre cette dataframe en vue. Cela peut être fait en utilisant la fonction Python «print ()». Cette méthode prend tout type d'entrée, que ce soit une chaîne, une fonction, un objet, une variable ou une expression, et met simplement le résultat sur l'écran. Nous avons donc fourni l'objet DataFrame «Direction» pour l'imprimer.


Il s'agit du Frame de données résultant que nous avons construit en exécutant l'extrait de code précédent.


Maintenant pour calculer le «Rolling ().appliquer () »sur ce dataframe, nous avons défini une fonction. Le «def» est le mot-clé qui définit une fonction. La fonction que nous avons créée est «ApplyRolling ():». Dans cette méthode, une autre fonction est définie, qui est «Median_estimation (i):». Vous avez peut-être observé que nous avons écrit: «Je» entre les accolades de cette fonction. Ce «i» est utilisé pour les itérations car la fonction «median_estimation ()» fonctionnera de manière itérative sur chaque valeur du dataframe. Maintenant, qu'est-ce qu'il fonctionnera avec chaque itération? Dans la ligne suivante, nous l'avons spécifié pour nous renvoyer une sortie du «NP.Fonction médiane (i) ”.

Comme son nom l'identifie, c'est la fonction de Numpy qui calculera la médiane de manière itérative pour toutes les valeurs. Chaque valeur sera remplacée par «I»; La médiane sera estimée pour cette valeur particulière et renvoie le résultat. Puis invoque le «DF.roulant().Méthode appliquer () ». Le nom de DataFrame est mentionné comme «Directions», la fonction «Rolling ()» est définie pour trouver la fenêtre Rolling pour trois observations, et la fonction «Appliquer ()» est exercée avec la fonction «Median_estimation». La sortie sera conservée dans le «résultat» variable. Et puis, nous avons retourné ce «résultat» variable à la fonction principale.

Ainsi, tout ce processus peut être résumé comme la fonction «ApplicationRolling ()» démarre et demande la fonction «Median_estimation ()» pour calculer la médiane itérativement. Ensuite, il pénètre dans le dataframe, calcule la fenêtre de roulement, applique la méthode médiane pour générer la sortie, et il sort de la fonction principale. Et «print ()» présentera le résultat de la fonction «ApplicationRolling ()».


Ici, nous pouvons voir que les trois premières entrées ont des valeurs NAN car nous avons spécifié pour estimer la fenêtre roulante pour trois observations car elles n'ont plus de entrées au-dessus d'eux pour compléter la fenêtre, donc elles sont laissées vides. Depuis la quatrième entrée, la médiane a été calculée pour la fenêtre roulante. Le type de données renvoyé de ce dataframe est flottant.

Exemple n ° 2: Utilisation du roulement des pandas.Appliquer () Fonction pour calculer la somme d'une série Pandas

La deuxième technique de l'utilisation de cette méthode consiste à l'exercer sur la série Pandas cette fois.

Nous avons d'abord importé la bibliothèque Pandas dans notre environnement Python et avons fait de «Pd» son alias à utiliser tout au long du programme. Ensuite, nous avons invoqué le «PD.Série () ”Fonction de la boîte à outils Pandas pour créer une série Pandas. Le «PD» est l'abréviation des Pandas définie ci-dessus, et la «série» est le mot-clé pour construire une série. Nous avons spécifié un tableau de valeurs pour cette fonction. Les valeurs sont «11, 12, 13, 14, 15, 3, 7, 17, 9, 1, 21, 24 et 2». Pour préserver cette série, nous avons un objet de série, «Random». Cet objet «aléatoire» tient maintenant notre série, nous l'avons donc transmis à la méthode «print ()» pour présenter son contenu sur le terminal.


Lorsque nous appuyons sur l'option «Exécuter le fichier», notre code est exécuté. Dans l'instantané suivant, vous pouvez voir la série actuellement générée.


Après imprimer la série, nous avons défini une fonction «Series_ra ()». Maintenant, les principaux calculs seront effectués dans cette fonction. Dans cette fonction, nous avons défini une autre fonction qui est "calcul_sum (j)". Vous pouvez deviner par son étiquette qu'il obtiendra la somme. Le «J» lui dit d'effectuer cette fonction itérativement. Chaque itération emménagera et remplira la fonction «Sum (j)». Puis renvoyer la somme calculée pour chaque valeur.

Puis la «série.roulant().appliquer () "La méthode est appelée dans la fonction" calcul_sum () ". Il estimera la fenêtre de la recherche pour cinq observations, puis calculera leur somme en utilisant la méthode «Appliquer ()». La sortie sera conservée dans la variable locale «résultat» et retournée à la fonction principale. Enfin, nous avons passé la fonction d'entrée «série_ra ()» à la méthode «print ()» pour voir la série finale.


Ceci est la série ultime avec une somme calculée sur une fenêtre roulante de cinq observations.

Conclusion

Le sujet discuté de cet article était basé sur les deux concepts de pandas, qui sont «rolling ()» et «appliquer ()». Nous avons développé l'utilisation de cette méthode en vous donnant une explication détaillée de la mise en œuvre pratique du «Rolling ().Fonction appliquer () ”. Ce tutoriel contenait deux approches pour utiliser cette méthode. La première instance a parlé de l'application d'une fonction médiane à partir de la boîte à outils Numpy sur la fenêtre roulante d'un pandas dataframe. Tandis que le deuxième exemple nous a donné l'idée de mettre en œuvre ce concept sur une série Pandas. Nous avons donc appliqué cette fonction en calculant la somme sur la fenêtre de roulement spécifiée de la série. Vous pouvez exercer la technique qui est plus réalisable pour votre tâche.