C6.19 使用描述统计和直方图制定目标

数据来源

import pandas as pd
import matplotlib.pyplot as plt
import xlwings as xw

df = pd.read_excel(r'd:\python_file\描述统计.xlsx')
df.columns = ['序号', '员工姓名', '月销售额']   # 重命名数据列
df = df.drop(columns=['序号','员工姓名'])   # 删除列
df_describe = df.astype('float').describe()      # 计算数据的个数,平均值,最大值,最小值
df_cut = pd.cut(df['月销售额'], bins=7, precision=2)    # 将列数据分成7个均等的区间
cut_count = df['月销售额'].groupby(df_cut).count()     # 统计各个区间的人数
df_all = pd.DataFrame()   # 用于汇总数据
df_all['计数'] = cut_count     # 将月销售的区间及区间的人数写入前面创建的dataframe中
df_all_new = df_all.reset_index()     # 将索引重置为数字序号
df_all_new['月销售额'] = df_all_new['月销售额'].apply(lambda x:str(x))    # 将列数字转为字符串
fig = plt.figure()  # 创建汇图窗口
plt.rcParams['font.sans-serif'] = ['SimHei']    # 解决中文乱码问题
n, bins, patches = plt.hist(df['月销售额'], bins=7, edgecolor='black', linewidth=0.5)    # 使用列数扰据绘制直方图
plt.xticks(bins)   # 将x轴的刻度标签设置为各区间的端点值
plt.title('月销售额频率分析')    # 设置直方图的图表标题
plt.xlabel('月销售额')    # 设置x轴标题
plt.ylabel('频数')    # 设置y轴标题

app = xw.App(visible=False)
workbook = xw.books.open(r'd:\python_file\描述统计.xlsx')
worksheet = workbook.sheets['业务员销售额统计表']
worksheet.range('E2').value = df_describe
worksheet.range('H2').value = df_all_new
worksheet.pictures.add(fig, name='图片1', update=True, left=400, top=200)
worksheet.autofit()
workbook.save(r'd:\python_file\描述统计.xlsx')
workbook.close()
app.quit()

效果图

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值