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>




python数据分析工资多少(2023年最新分享)
1、主要对日常数据进行提取和报表的开发工作;2、主要进行数据平台的设计,研发与维护;3、主要参与跨部门需求沟通和数据校验;4、主要进行与业务相关的数据分析和数据挖掘工作。想了解更多有关python工程师的详情,推荐咨询达内教育。达内教育独创TTS8.0教学系统,达内OMO教学模式,全新升级,线上线下交互...

数据分析用多少python?
python数据分析需要哪些库? 1.Numpy库 是Python开源的数值计算扩展工具,提供了Python对多维数组的支持,能够支持高级的维度数组与矩阵运算。此外,针对数组运算也提供了大量的数学函数库,Numpy是大部分Python科学计算的基础,具有很多功能。 2.Pandas库 是一个基于Numpy的数据分析包,为了解决数据分析任务而创建的。Pandas中...

【Python进阶篇】Pandas:从零开始数据分析
在Python的数据分析旅程中,我们已经对NumPy有所了解,它在科学计算中扮演着重要角色。然而,进一步提升数据分析能力,Pandas就是那个不可或缺的“得力助手”。Pandas,作为基于NumPy构建的库,为数据处理增添了更多的灵活性和美观性。它不仅继承了NumPy的精华,还在设计上更侧重于图表和混杂数据的处理,使得...

学python做数据分析需要多久(2023年最新分享)
Python是一种广泛使用的解释型、高级和通用的编程语言。Python由荷兰数学和计算机科学研究学会的GuidovanRossum创造,第一版发布于1991年,它是ABC语言的后继者,也可以视之为一种使用传统中缀表达式的LISP方言。Python提供了高效的高级数据结构,还能简单有效地面向对象编程。零基础学Python需要多久如果你是自学...

python数据分析需要学多久(2023年最新分享)
主要有以下几个方向:一、检查数据表 Python中使用shape函数来查看数据表的维度,也就是行数和列数。你可以使用info函数查看数据表的整体信息,使用dtypes函数来返回数据格式。Isnull是Python中检验空值的函数,你可以对整个数据表进行检查,也可以单独对某一列进行空值检查,返回的结果是逻辑值,包含空值...

python大数据分析多久(python大数据分析原理)
采用Python语言实现数据分析是目前大数据领域比较常见的解决方案,通过Python来实现基于机器学习方式的数据分析需要经过多个步骤,分别是数据收集、数据整理、算法设计、算法实现、算法验证和算法应用。用python做量化交易要学多久?5个月。python凭借其突出的语言优势与特性,已经融入到各行各业的每个领域。一般来...

为什么选择python做数据分析
选择Python作为数据分析的原因有以下几个关键因素:1. 易学易用:Python是一门易于学习且容易使用的编程语言。Python的数据科学库(如pandas和NumPy)非常强大,易于理解,可以让你迅速上手数据分析。2. 生态系统:Python有一个庞大的数据科学生态系统,包括了许多数据科学工具和库,如scikit-learn用于机器学习...

python数据分析的目的是
Python数据分析的目的是理解和分析数据,从数据中提取有价值的信息,帮助决策者做出明智的决策。一、理解数据 Python数据分析的首要目的是理解数据。在大数据时代,数据无处不在,如何从海量的数据中提取有意义的信息是关键。Python作为一种强大的编程语言,配合其丰富的数据处理库,如Pandas、NumPy等,可以...

python数据分析的价格多少钱(python价格回归分析代码)
2、3D游戏开发:Python具有良好的3D渲染库和游戏开发框架。3、自动化测试:所有关于自动化的事情都可以用【Python】来解决,而Python可以完成大部分自动化工作并提高生产力。4、数据分析:现在无论什么行业,做数据分析的都离不开Python,Python带来了极大的工作效率。Python可以用于生物信息学、物理学和数字...

数据分析python多久入门?
Python想要从事数据分析工作,都要学习哪些知识? 就目前来说Python是人工智能的最佳编程语言,想要从事数据分析的话需要学习以下知识: 1、熟练Python语言基础,掌握数据分析建模理论、熟悉数据分析建模过程; 2、熟练NumPy、SciPy和Pandas数据分析工具的使用;特别是Pandas和Numpy,Pandas是Python中一种数据分析的包,而Numpy是一...

向阳区14770903652: python pandas 统计某一数据出现多少次 -
仍发酮治: 输入: import pandas as pd data0 = [0,1,2,0,1,0,2,0] pd.value_counts(data0) 输出每个数出现的频数: 0 4 2 2 1 2 (0出现4次,2出现2次,1出现两次)

向阳区14770903652: python从键盘中输入一个圆锥的半径r和高h,输出体积 -
仍发酮治: import mathdef volume_cone(r, h): return 1/3 * math.pi * r**2 * hr = input("Input radius of the cone: ")h = input("Input height of...

向阳区14770903652: python对Excel中数据的处理 -
仍发酮治: 下面就详细的讲述整个实现过程. 1、在计算机上安装python(x,y)2.6.6版本.这一步是确保机器上的python开发环境,具体的安装过程在此就不在赘述,网上相关资料比较多 2、建议安装一个Notepad++,这样写代码比较方便

向阳区14770903652: 如何利用python进行数据分析 -
仍发酮治: 1、为什么用Python做数据分析 首先因为Python可以轻松地集成C、C++、Fortran代码,一些底层用C写的算法封装在python包里后性能非常高效.并且Python与Ruby都有大量的Web框架,因此用于网站的建设,另一方面个人觉得因为Python作...

向阳区14770903652: python数据分析师需要掌握什么技能? -
仍发酮治: 首先是基础篇1、首先是Excel,貌似这个很简单,其实未必.Excel不仅能够e79fa5e98193e59b9ee7ad9431333433626537做简单二维表、复杂嵌套表,能画折线图/Column chart/Bar chart/Area chart/饼图/雷达图/Combo char/散点图/Win Loss图...

向阳区14770903652: python数据分析(python是啥)
仍发酮治: 1、Python is an object-oriented explanation of computer programming languages, is a powerful and well-size-fits-all language, has been more than a decade of development,...

向阳区14770903652: 如何用Python从大量pdf 中提取表格中的数据进行分析 -
仍发酮治: 用pandas df转成matrix.然后处理二维数组. 再写到最终的excel.

向阳区14770903652: 药店店长 该怎样写数据分析报告 -
仍发酮治: 从以下这几个方面入手1、财务数据:目标完成率、去年同比、环比、各大品类销售占比、周转率、毛利率、动销比、库存等2、基础数据:客流量、成交率、平均客件数、客单价、人效、平效、...

向阳区14770903652: python pandas怎么用 -
仍发酮治: 安装pandas 1. Anaconda 安装pandas、Python和SciPy最简单的方式是用Anaconda.Anaconda是关于Python数据分析和科学计算的分发包. 2. Miniconda 使用Anaconda会安装一百多个依赖包,如果想灵活控制安装的依赖包或带宽有限,使...

向阳区14770903652: 新手如何学习Python数据分析 -
仍发酮治: 对于新手,如何学好python,这些很关键:Part1:能掌握好Python关键代码以及Pandas、Numpy、Matplotlib、Seaborn这四个基本工具包,便能独立完成一些简单的数据分析工作了;Part2:工欲善其事,必先利其器,所以你必须选择体验良好的数据分析编程环境;Part3:用真实商业数据应用项目检验能力.学习Python数据分析的最终目的,是为了掌握数据分析技能,拥有解决实际工作或日常生活中与数据分析相关问题的能力.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网