python分析每月销售数据-如何用Python分析销售数据.pdfVIP

python分析每月销售数据-如何用Python分析销售数据.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
python分析每⽉销售数据_如何⽤Python分析销售数据 数据分析的基本过程分为五个部分 :提出问题、理解数据、数据清洗、构 模型、数据可视化。下⾯我以前四部分为基础,对⼀个销售数据 进⾏分析。 1 提出问题 分析 ⽬标 :根据以下三个业务指标分析医院的销售情况 :⽉均消费次数、⽉均消费⾦额、客单价。 ⾸先导⼊数据分析包和数据⽂件 import pandas as pd fileNameStr=./朝阳医院20 18年销售数据.xlsx xls=pd.ExcelFile(fileNameStr,dtype=obj ect) salesDf=xls.parse(Sheet 1,dtype=obj ect) 2 理解数据 描述数据,基本了解数据情况。 在这⾥,我们要了解,需要哪些指标和如何达成分析的⽬标。 1.⽉均消费次数=⼀年的消费次数/⽉份 ⼀年的消费次数=有消费记录数据的总和(同⼀个⼈在⼀天内只计⼀次消费) 2.⽉均消费⾦额=总实收⾦额/⽉份 3.客单价=总消费⾦额/总消费次数 3 数据清洗 1 列表重命名 colNameDict={购药时间:销售时间} salesDf.rename(columns=colNameDict,inplace=True) salesDf.head() 2 缺失数据处理 3 数据类型转换 3.1 字符串转换为数值 salesDf [销售数量]=salesDf [销售数量].astype(float) salesDf [应收⾦额]=salesDf [应收⾦额].astype(float) salesDf [实收⾦额]=salesDf [实收⾦额].astype(float) salesDf.dtypes 3.2 字符串转换为 ⽇期类型 定义函数 def splitSaletime(timeColSer): timeList=[] for value in timeColSer: dateStr=value.split( ) [0] timeList.append(dateStr) timeSer=pd.Series(timeList) return timeSer 分割字符串,获取销售时间 timeSer=salesDf.loc[:,销售时间] dateSer=splitSaletime(timeSer) salesDf.loc[:,销售时间]=dateSer #修改销售时间 salesDf.head() 转换为 ⽇期格式 salesDf.loc[:,销售时间]=pd.to_datetime(salesDf.loc[:,销售时间], format=%Y-%m-%d, errors=coerce) 删除转换 ⽇期格式中的空值 salesDf=salesDf.dropna(subset=[销售时间,社保卡号],how=any) 4 数据排序 把数据按销售时间进⾏升序排列 salesDf=salesDf.sort_values(by=销售时间,ascending=True) salesDf.head(3) 更新排序后的⾏号 salesDf=salesDf.reset_index (drop=True) salesDf.head() 5 异常值处理 salesDf.describe() 我们发现销售数量和实收⾦额为负数,这在现实中是不合理的,所以我们需要筛选出正数来分析。 querySer=salesDf.loc[:,销售数量]0 #应⽤查询条件 print(before,salesDf.shape) salesDf=salesDf.loc[querySer,:] print(after,salesDf.shape) 4 构 模型 在第⼆步理解数据中,我们了解到同⼀天中,只计算⼀次消费次数,这⾥要对消费次数进⾏去重。 #同⼀天去重 kpi1_Df=salesDf.drop_duplicates(subset=[销售时间,社保卡号]) totalI=kpi1_Df.shape[0] print(总销售次数,totalI) 获得总消费次数是5342次。接着,来计算⽉份数。先按销售时间做升序,并对⾏号重命名。 kpi1_Df=kpi1_Df.sort_values(by=销售时间,ascending=True) kpi1_Df=kpi1_Df.reset_index (drop=True) kpi1_Df.head() 下⾯,获取最⼤和最⼩的时间值范围,计算出⽉份数为6. startTime=kpi1_D

您可能关注的文档

文档评论(0)

武松 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档