ermutuxia

2021-03-09   阅读量: 12167

老师,请教下,总增量是负数时,怎么计算各部分的增量贡献占比?

扫码加入数据分析学习群

老师,请教下,总增量是负数时,怎么计算各部分的增量贡献占比?

下面先说一个总增量为正的例子

import pandas as pd

import numpy as np

data1=pd.DataFrame({"aa2019":[7,9,10,6],"aa2020":[8,15,7,3]},index=["part1","part2","part3","part4"])

data1["增长量"]=data1["aa2020"]-data1["aa2019"]

data1["变化总额"]=data1["增长量"].sum()

#计算对于增长的贡献率

data1["贡献率"]=data1["增长量"]/data1["变化总额"]

9.png



如果总增量是负的,计算贡献率的时候可以是各个部分的增长量除以变化总额的绝对值

import pandas as pd

import numpy as np

data1=pd.DataFrame({"aa2019":[7,9,10,6],"aa2020":[8,12,5,3]},index=["part1","part2","part3","part4"])

data1["增长量"]=data1["aa2020"]-data1["aa2019"]

data1["变化总额"]=data1["增长量"].sum()

data1["变化总额绝对值"]=data1["变化总额"].map(lambda x:abs(x))

#计算对于增长的贡献率

data1["贡献率"]=data1["增长量"]/data1["变化总额绝对值"]

4.png

可以看到我们贡献率总额是负的,因为我们的结果是负增长的,这个时候不是讨论谁有功了,而是看谁的过最大

添加CDA认证专家【维克多阿涛】,微信号:【cdashijiazhuang】,提供数据分析指导及CDA考试秘籍。已助千人通过CDA数字化人才认证。欢迎交流,共同成长!
1.7111 1 1 关注作者 收藏

评论(1)

wangxishi
2021-03-10

谢谢老师,讲的很明白!

0.0000 0 0 回复

推荐课程