使用python进行数据分析时,numpy和pandas这两个包对数据处理具有重要的意义,对于它们的基本用法我会单独写一篇文章。
这里以某药店2018年商品销售数据为例来学习python数据分析的基本过程。
数据分析基本步骤分为五部分:提出问题、理解数据、数据清洗、构建模型、数据可视化。关于这些的基本介绍在之间的文章中有写,感兴趣的可以点击下方链接~
👉[CSDN大礼包:《python学习路线&全套学习资料》免费分享](安全链接,放心点击)
一、提出问题
在与业务部门沟通后,通常会更加明确我们要分析的业务问题。本案例中从销售数据中主要分析月消费次数、月消费金额、客单价、消费趋势四大业务指标。
二、理解数据
注意:使用网页版jupyter notebook读取桌面Excel文件时,刚开始我写的文件路径的代码如下:
filename = ('C:\Users\Administrator\Desktop\sales_data.xlsx')
这时程序会报错,报错内容为:(unicode error) ‘unicodeescape’ codec can’t decode bytes in position 2-3: truncated \UXXXXXXXX escap。原因:在Python中 \ 是转义符,\u表示其后是unicode编码,因此\Users在这里会报错。解决办法:在字符串前面加个 r(rawstring 原生字符串),可以避免python与正则表达式语法的冲突,问题成功解决!
三、数据清洗
python中缺失值有3种:
① Python内置的None值;
② 在pandas中,将缺失值表示为NA,表示不可用not available;
③ 对于数值数据,pandas使用浮点值NaN(Not a Number)表示缺失数据。
后面出来数据,如果遇到错误:说什么foloat错误,那就是有缺失值,需要处理掉。上图我们用的是dropna()函数将缺失值删除。
在最开始读取Excel中数据时,有如下一行代码,还记得吗?
sales = pd.read_excel(filename, sheet_name = 'Sheet1', dtype = str)
其中”dtype = str“意思是将所有数据都导入为字符串类型。但销售数量、应收金额和实收金额三列应该是浮点型,所以要进行数据类型转换操作。
转换日期的过程中不符合日期格式的数值会被转换为空值None,因此这里要再删除一次销售时间和社保卡号列中的空行。
因为排序后的索引值为之前的行号,所以需要修改为从0-N排序的索引值。
数据基本完成清洗后,计算描述统计信息可以让我们从整体上来了解数据。上图结果可以看到销售数量、应收金额和实收金额的最小值均为负数,这说明是销售数量小于0所导致的。根据常识,这一现象不存在,所以选择删除此类异常值。
四、构建模型
根据最开始提出的业务问题的业务指标计算分析。
业务指标四:消费趋势,会用到pandas的高级功能及matplotlib,后续见分晓~
知道你对python感兴趣,所以给你准备了下面的资料~
这份完整版的Python全套学习资料已经上传,朋友们如果需要可以点击链接免费领取或者滑到最后扫描二v码【保证100%免费
】
python学习资源免费分享,保证100%免费!!!
需要的话可以点击这里👉[CSDN大礼包:《python学习路线&全套学习资料》免费分享](安全链接,放心点击)
文末有福利领取哦~
👉一、Python所有方向的学习路线
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
👉二、Python必备开发工具
👉三、Python视频合集
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
👉 四、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。(文末领读者福利)
👉五、Python练习题
检查学习结果。
👉六、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
👉因篇幅有限,仅展示部分资料,这份完整版的Python全套学习资料已经上传,朋友们如果需要可以扫描下方CSDN官方认证二维码或者点击链接免费领取【保证100%免费
】
需要的话可以点击这里👉[CSDN大礼包:《python学习路线&全套学习资料》免费分享](安全链接,放心点击)