Cumulative sum and percentage on column?
df['cum_sum'] = df['val1'].cumsum()
df['cum_perc'] = 100*df['cum_sum']/df['val1'].sum()
This will add the columns to df
. If you want a copy, copy df
first and then do these operations on the copy.
It's a good answer, but written in 2014. I just modified a little bit, so it can pass the compiler and results looks similar to the example.
df['cum_sum'] = df["val1"].cumsum()
df['cum_perc'] = round(100*df.cum_sum/df["val1"].sum(),2)