Hoe een omgekeerde cumulatieve som in panda's te berekenen
De functie cumsum() kan worden gebruikt om de cumulatieve som van waarden in een kolom van een pandas DataFrame te berekenen.
U kunt de volgende syntaxis gebruiken om een omgekeerde cumulatieve som van waarden in een kolom te berekenen:
df[' cumsum_reverse '] = df. loc [:: -1 , ' my_column ']. cumsum ()[:: -1 ]
Deze specifieke syntaxis voegt een nieuwe kolom met de naam cumsum_reverse toe aan een pandas DataFrame die de omgekeerde cumulatieve som weergeeft van de waarden in de kolom met de naam my_column .
Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.
Voorbeeld: bereken een omgekeerde cumulatieve som in panda’s
Laten we zeggen dat we het volgende panda’s DataFrame hebben dat de totale omzet van een winkel gedurende 10 opeenvolgende dagen weergeeft:
import pandas as pd #createDataFrame df = pd. DataFrame ({' day ': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], ' sales ': [3, 6, 0, 2, 4, 1, 0, 1, 4, 7]}) #view DataFrame df day sales 0 1 3 1 2 6 2 3 0 3 4 2 4 5 4 5 6 1 6 7 0 7 8 1 8 9 4 9 10 7
We kunnen de volgende syntaxis gebruiken om een omgekeerde lopende som van de verkoopkolom te berekenen:
#add new column that shows reverse cumulative sum of sales
df[' cumsum_reverse_sales '] = df. loc [:: -1 , ' sales ']. cumsum ()[:: -1 ]
#view updated DataFrame
df
day sales cumsum_reverse_sales
0 1 3 28
1 2 6 25
2 3 0 19
3 4 2 19
4 5 4 17
5 6 1 13
6 7 0 12
7 8 1 12
8 9 4 11
9 10 7 7
De nieuwe kolom cumsum_reverse_sales geeft de cumulatieve verkopen uit de laatste rij weer.
Zo interpreteren we de waarden in de kolom cumsum_reverse_sales :
- De cumulatieve som van de verkopen voor dag 10 is 7 .
- De cumulatieve som van de verkopen voor dag 10 en dag 9 is 11 .
- De cumulatieve som van de verkopen voor dag 10, dag 9 en dag 8 is 12 .
- De cumulatieve som van de verkopen voor dag 10, dag 9, dag 8 en dag 7 is 12 .
Enzovoort.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in panda’s kunt uitvoeren:
Hoe specifieke kolommen in Panda’s op te tellen
Hoe u een GroupBy-som uitvoert in Pandas
Hoe kolommen op te tellen op basis van een voorwaarde in Pandas