Python数据分析案例-药店销售数据分析

网上有关“Python数据分析案例-药店销售数据分析”话题很是火热,小编也是针对Python数据分析案例-药店销售数据分析寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。

最近学习了Python数据分析的一些基础知识,就找了一个药品数据分析的小项目来练一下手。

数据分析的目的:

本篇文章中,假设以朝阳医院2018年销售数据为例,目的是了解朝阳医院在2018年里的销售情况,通过对朝阳区医院的药品销售数据的分析,了解朝阳医院的患者的月均消费次数,月均消费金额、客单价以及消费趋势、需求量前几位的药品等。

数据分析基本过程包括:获取数据、数据清洗、构建模型、数据可视化以及消费趋势分析。

数据准备

数据是存在Excel中的,可以使用pandas的Excel文件读取函数将数据读取到内存中,这里需要注意的是文件名和Excel中的sheet页的名字。读取完数据后可以对数据进行预览和查看一些基本信息。

获取数据:朝阳医院2018年销售数据.xlsx(非真实数据) 提取码: 6xm2

导入原始数据

数据准备

数据是存在Excel中的,可以使用pandas的Excel文件读取函数将数据读取到内存中,这里需要注意的是文件名和Excel中的sheet页的名字。读取完数据后可以对数据进行预览和查看一些基本信息。

获取数据:朝阳医院2018年销售数据.xlsx(非真实数据) 提取码: 6xm2

导入原始数据

数据清洗

数据清洗过程包括:选择子集、列名重命名、缺失数据处理、数据类型转换、数据排序及异常值处理

(1)选择子集

在我们获取到的数据中,可能数据量非常庞大,并不是每一列都有价值都需要分析,这时候就需要从整个数据中选取合适的子集进行分析,这样能从数据中获取最大价值。在本次案例中不需要选取子集,暂时可以忽略这一步。

(2)列重命名

在数据分析过程中,有些列名和数据容易混淆或产生歧义,不利于数据分析,这时候需要把列名换成容易理解的名称,可以采用rename函数实现:

(3)缺失值处理

获取的数据中很有可能存在缺失值,通过查看基本信息可以推测“购药时间”和“社保卡号”这两列存在缺失值,如果不处理这些缺失值会干扰后面的数据分析结果。

缺失数据常用的处理方式为删除含有缺失数据的记录或者利用算法去补全缺失数据。

在本次案例中为求方便,直接使用dropna函数删除缺失数据,具体如下:

(4)数据类型转换

在导入数据时为了防止导入不进来,会强制所有数据都是object类型,但实际数据分析过程中“销售数量”,“应收金额”,“实收金额”,这些列需要浮点型(float)数据,“销售时间”需要改成时间格式,因此需要对数据类型进行转换。

可以使用astype()函数转为浮点型数据:

在“销售时间”这一列数据中存在星期这样的数据,但在数据分析过程中不需要用到,因此要把销售时间列中日期和星期使用split函数进行分割,分割后的时间,返回的是Series数据类型:

此时时间是没有按顺序排列的,所以还是需要排序一下,排序之后索引会被打乱,所以也需要重置一下索引。

其中by:表示按哪一列进行排序,ascending=True表示升序排列,ascending=False表示降序排列

先查看数据的描述统计信息

通过描述统计信息可以看到,“销售数量”、“应收金额”、“实收金额”这三列数据的最小值出现了负数,这明显不符合常理,数据中存在异常值的干扰,因此要对数据进一步处理,以排除异常值的影响:

数据清洗完成后,需要利用数据构建模型(就是计算相应的业务指标),并用可视化的方式呈现结果。

月均消费次数 = 总消费次数 / 月份数(同一天内,同一个人所有消费算作一次消费)

月均消费金额 = 总消费金额 / 月份数

客单价 = 总消费金额 / 总消费次数

从结果可以看出,每天消费总额差异较大,除了个别天出现比较大笔的消费,大部分人消费情况维持在1000-2000元以内。

接下来,我销售时间先聚合再按月分组进行分析:

结果显示,7月消费金额最少,这是因为7月份的数据不完整,所以不具参考价值。

1月、4月、5月和6月的月消费金额差异不大.

2月和3月的消费金额迅速降低,这可能是2月和3月处于春节期间,大部分人都回家过年的原因。

d. 分析药品销售情况

对“商品名称”和“销售数量”这两列数据进行聚合为Series形式,方便后面统计,并按降序排序:

截取销售数量最多的前十种药品,并用条形图展示结果:

结论:对于销售量排在前几位的药品,医院应该时刻关注,保证药品不会短缺而影响患者。得到销售数量最多的前十种药品的信息,这些信息也会有助于加强医院对药房的管理。

每天的消费金额分布情况:一横轴为时间,纵轴为实收金额画散点图。

结论: 从散点图可以看出,每天消费金额在500以下的占绝大多数,个别天存在消费金额很大的情况。

</article>

每到周五,估计都会有很多童鞋为本周的周报发愁不已!今天就结合几个真实案例来教大家如何玩转数据分析报告。不过,场景的主角名字都做了简单的处理!

从此,每周五小B就什么事情都干不了,只有一件事情:分析数据,内心好崩溃啊!!!

别怕,您的好友草莓老师已上线,小草莓来支招。不就是数据报告嘛,so easy!

1、首先,小B首次花点时间将需要分析的数据导入到BDP,并且制作不同的仪表盘(即不同的数据报告,只是叫法不同嘛),通过各种可视化图表让数据结果一目了然,比如这样的~

肯定需要对数据图表进行一些解释说明嘛,点击仪表盘右上方的”图文混排“,插入”文本“即可进行文字描述,比如这样的~

2、这不是还得花1天的时间进行数据分析嘛?别急,“神功能”来啦,快屏住呼吸,它,它,它就是“替换/追加”功能,在工作表页面的右上方哦~

因为小B每周要分析的数据指标都是一致的,所以小B每周只需要追加本周数据,然后在仪表盘右上方全局筛选一下本周,数据报告即可瞬间呈现本周最新数据,整个操作过程最多不超过1分钟,哪里需要1天呢,周五完全可以做很多其他的事情咯,从此可告别重复劳动啦!

当然,要是觉得追加数据都麻烦,那小草莓建议直接将后台数据库接入到BDP,只要数据库数据更新,在BDP上的数据报告结果也就更新了,是不是炒鸡快啊!放心,BDP是一个云端数据平台,接触不到用户的数据,所以大胆接入数据库吧,这样分析效率能大幅提高呢!

3、分享报告:最后只需轻轻点击仪表盘右上角的“分享”—“我要分享”,领导就能立马查看你的数据报告。假如数据有改动,分享的数据结果可以实时同步,超赞!针对这个场景小草莓讲的比较详细,因为数据报告是很多人在职场中都会遇到的需求,比如销售人员、市场营销人员、财务人员、招聘人员等。岗位虽不同,但思路都类似,希望上述内容能帮到你和身边的小伙伴!

小D在公司专门负责微信运营,平时除了写文章、策划互动活动等工作,当然数据反馈少不了,而且领导要求分别保存每周微信公众号的数据,一年下来手里有一堆的表格,零零散散,一不小心就丢了,好忧桑啊!

小草莓来支招:在BDP,若需更新本周新数据,可“追加”或者“接入数据库”,具体操作见场景1;为了一一保存每周数据,小D可复制上周的数据仪表盘,在新的仪表盘全局筛选下每周的时间段,仪表盘分别以不同时间段命名,这样数据都能在一个地方保存啦,麻麻再也不用担心我啦~

小P在公司专门给不同的客户制作不同的数据分析报告,有人力资源、财务、游戏、采购、活动、调研、电商、招生、服装零售、市场活动等各个方面,需求简直五花八门,每周客户还要实时的数据结果,偶尔客户还嫌弃报告的可视化效果不好,天呐~

小草莓来支招:不管是哪个数据报告,都离不开数据分析,小P每次都在BDP上做好,分别命名成不同的文件夹名称,以便于保存管理。BDP做出来的可视化那时相当好啊,受到客户的一致好评啊!做好的可视化报告可以一键分享给客户,每周一更新数据,客户就能看到实时同步的结果,再也不用每周发邮件打扰客户啦,而且工作效率大大提高了~

一起感受下BDP的可视化效果。你想要什么样的可视化效果,都可以寄已通过拖拽制作!

立即登录BDP,1分钟制作你的专属数据分析报告,简答又高效!

关于“Python数据分析案例-药店销售数据分析”这个话题的介绍,今天小编就给大家分享完了,如果对你有所帮助请保持对本站的关注!

(12)

猜你喜欢

发表回复

本站作者才能评论

评论列表(3条)

  • 易乙豪的头像
    易乙豪 2026年01月22日

    我是鲸羚号的签约作者“易乙豪”

  • 易乙豪
    易乙豪 2026年01月22日

    本文概览:网上有关“Python数据分析案例-药店销售数据分析”话题很是火热,小编也是针对Python数据分析案例-药店销售数据分析寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你...

  • 易乙豪
    用户012212 2026年01月22日

    文章不错《Python数据分析案例-药店销售数据分析》内容很有帮助

联系我们:

邮件:鲸羚号@gmail.com

工作时间:周一至周五,9:30-17:30,节假日休息

关注微信