数据分析:帕累托法则分析菜品盈利

贡献度分析又称为帕累托分析。它的原理是帕累托法则,又称20/80定律。同样的投入在不同的地方会产生不同的效益。例如,对一个公司来讲,80%的利润常常来自于20%最畅销的产品,而其他80%的产品只产生了20%的利润
代码源于Python数据分析与挖掘实战

# -*- coding: utf-8 -*-

import pandas as pd
import matplotlib.pyplot as plt

dish_profit = '../data/catering_dish_profit.xls'
data = pd.read_excel(dish_profit, index_col=u'菜品名')
data = data[u'盈利'].copy()    #data类型由DataFrame改变为Series
data.sort_values(ascending=False)  #True表示升序

plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False

plt.figure()
data.plot(kind='bar')    #表示图形类型型为竖杆图
plt.ylabel(u'盈利(元)')    #设置当前图形的y轴标签
p = 1.0 * data.cumsum()/data.sum()    #cumsum()返回累积和,用于判断p是否满足帕累托法则
p.plot(color='r', secondary_y=True, style='-o', linewidth=2)    #secondary_y等于True定义y轴将会在右侧

plt.annotate(format(p[6], '.4%'), xy=(6, p[6]), xytext=(6*0.9, p[6]*0.9), arrowprops=dict(arrowstyle='->', connectionstyle='arc3, rad=.2'))    #p[6]表示取p的第7点满足帕累托法则即大于80%,.4%表示百分数后有4个小数点,arrowprops用来设置箭头
plt.ylabel(u'盈利(比例)')
plt.show()

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值