Verwendung von Pandas zum Einbeziehen vorheriger Zeilenwerte in „Anwenden“-Berechnungen mit abgeleiteten Werten
Bei der Arbeit mit Datenrahmen in Pandas ist dies häufig erforderlich um Berechnungen durchzuführen, bei denen vorherige Zeilenwerte verwendet werden. Dies kann eine Herausforderung sein, wenn der vorherige Wert auch innerhalb der Funktion „Anwenden“ berechnet wird.
Betrachten Sie den folgenden Datenrahmen:
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
Um Spalte C zu berechnen, kopieren wir zunächst den Wert von D zur ersten Zeile:
df.loc[0, 'C'] = df.loc[0, 'D']
Jetzt können wir für die nachfolgenden Zeilen den Datenrahmen durchlaufen und eine Schleife verwenden, um die berechneten Werte für Spalte C einzugeben:
<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>
Diese Schleife stellt sicher, dass der Wert von C für jede Zeile durch ihren vorherigen Wert sowie die entsprechenden Werte von A und B bestimmt wird. Der resultierende Datenrahmen sieht folgendermaßen aus:
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
Indem Sie Folgendes befolgen Mit diesem Ansatz können Sie vorherige Zeilenwerte effektiv in „Anwenden“-Berechnungen einbeziehen, selbst wenn der vorherige Wert von derselben „Anwenden“-Funktion abgeleitet wird.
Das obige ist der detaillierte Inhalt vonWie integriere ich frühere Zeilenwerte in Pandas \'Apply\'-Berechnungen mit abgeleiteten Werten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!