Comment incorporer les valeurs des lignes précédentes dans les calculs Pandas « appliquer » avec des valeurs dérivées ?

Mary-Kate Olsen
Libérer: 2024-10-27 10:23:30
original
319 Les gens l'ont consulté

How to Incorporate Previous Row Values into Pandas 'apply' Calculations with Derived Values?

Utiliser Pandas pour incorporer les valeurs des lignes précédentes dans les calculs « appliquer » avec des valeurs dérivées

Lorsque vous travaillez avec des trames de données dans Pandas, il est souvent nécessaire pour effectuer des calculs qui impliquent l’utilisation des valeurs des lignes précédentes. Cela peut être difficile lorsque la valeur précédente est également calculée dans la fonction « appliquer ».

Considérez le cadre de données suivant :

Index_Date    A   B     C    D
================================
2015-01-31    10   10   Nan   10
2015-02-01     2    3   Nan   22 
2015-02-02    10   60   Nan  280
2015-02-03    10  100   Nan  250
Copier après la connexion

Pour calculer la colonne C, nous commençons par copier la valeur de D à la première ligne :

df.loc[0, 'C'] = df.loc[0, 'D']
Copier après la connexion

Maintenant, pour les lignes suivantes, nous pouvons parcourir le dataframe et utiliser une boucle pour remplir les valeurs calculées pour la colonne C :

<code class="python">for i in range(1, len(df)):
    df.loc[i, 'C'] = df.loc[i-1, 'C'] * df.loc[i, 'A'] + df.loc[i, 'B']</code>
Copier après la connexion

Cette boucle garantit que la valeur de C pour chaque ligne est déterminée par sa valeur précédente, ainsi que les valeurs correspondantes de A et B. La trame de données résultante ressemblera à ceci :

  Index_Date   A   B    C    D
0 2015-01-31  10  10   10   10
1 2015-02-01   2   3   23   22
2 2015-02-02  10  60  290  280
Copier après la connexion

En suivant ceci approche, vous pouvez efficacement incorporer les valeurs des lignes précédentes dans les calculs « appliquer », même lorsque la valeur précédente est dérivée de la même fonction « appliquer ».

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!