比如:对各列求和并在最下一行显示出来,excel就是对一列总一个sum()函数,然后往左一拉就解决,而python则要定义一个函数,python要判断格式,若非数值型数据会直接。我就不一一举例了!
好了,我们开始正题。
在网上找的销售数据,差不多长这样。
1、数据透视表
需求
想知道每个地区的业务员分别赚取的利润总和与利润平均数
pd.pivot_table(sale,index=“地区名称”,columns=“业务员名称”,values=“利润”,aggfunc=[np.sum,np.mean])
兄弟们学习python,有时候不知道怎么学,从哪里开始学。掌握了基本的一些语法或者做了两个案例后,不知道下一步怎么走,不知道如何去学习更加高深的知识。
那么对于这些大兄弟们,我准备了大量的免费视频教程,PDF电子书籍,以及视频源的源代码!
还会有大佬解答!
都在这个裙里了 点我快速进入
欢迎加入,一起讨论 一起学习!
2、去除重复值
需求
去除业务员编码的重复值
sale.drop_duplicates(“业务员编码”,inplace=True)
3、分类汇总
需求
北京区域各业务员的利润总额
sale.groupby([“地区名称”,“业务员名称”])[“利润”].sum()
4、关联公式:Vlookup
vlookup是excel几乎最常用的公式,一般用于两个表的关联查询等。
所以我先把这张表分为两个表。
df1=sale[[‘订单明细号’,‘单据日期’,‘地区名称’, ‘业务员名称’,‘客户分类’, ‘存货编码’, ‘客户名称’, ‘业务员编码’, ‘存货名称’, ‘订单号’,
‘客户编码’, ‘部门名称’, ‘部门编码’]]
df2=sale[[‘订单明细号’,‘存货分类’, ‘税费’, ‘不含税金额’, ‘订单金额’, ‘利润’, ‘单价’,‘数量’]]
需求
想知道df1的每一个订单对应的利润是多少
利润一列存在于df2的表格中,所以想知道df1的每一个订单对应的利润是多少。
用excel的话首先确认订单明细号是唯一值,然后在df1新增一列写:=vlookup(a2,df2!a:h,6,0) ,然后往下拉就ok了。
那用python是如何实现的呢?
#查看订单明细号是否重复,结果是没。
df1[“订单明细号”].duplicated().value_counts()
df2[“订单明细号”].duplicated().value_counts()
df_c=pd.merge(df1,df2,on=“订单明细号”,how=“left”)
5、条件计算
需求
存货名称含“三星字眼”并且税费高于1000的订单有几个?
这些订单的利润总和和平均利润是多少?(或者最小值,最大值,四分位数,标注差)
sale.loc[sale[“存货名称”].str.contains(“三星”)&(sale[“税费”]>=1000)][[“订单明细号”,“利润”]].describe()
6、分组
需求
根据利润数据分布把地区分组为:“较差”,“中等”,“较好”,“非常好”
首先,当然是查看利润的数据分布呀,这里我们采用四分位数去判断。
sale.groupby(“地区名称”)[“利润”].sum().describe()
根据四分位数把地区总利润为[-9,7091]区间的分组为“较差”,(7091,10952]区间的分组为"中等"
(10952,17656]分组为较好,(17656,37556]分组为非常好。
#先建立一个Dataframe
sale_area=pd.DataFrame(sale.groupby(“地区名称”)[“利润”].sum()).reset_index()
#设置bins,和分组名称
bins=[-10,7091,10952,17656,37556]
groups=[“较差”,“中等”,“较好”,“非常好”]
#使用cut分组
#sale_area[“分组”]=pd.cut(sale_area[“利润”],bins,labels=groups)
7、对比两列差异
因为这表每列数据维度都不一样,比较起来没啥意义,所以我先做了个订单明细号的差异再进行比较。
需求:比较订单明细号与订单明细号2的差异并显示出来。
sale[“订单明细号2”]=sale[“订单明细号”]
#在订单明细号2里前10个都+1.
sale[“订单明细号2”][1:10]=sale[“订单明细号2”][1:10]+1
#差异输出
result=sale.loc[sale[“订单明细号”].isin(sale[“订单明细号2”])==False]
8、异常值替换
首先用describe()函数简单查看一下数据有无异常值。
#可看到销项税有负数,一般不会有这种情况,视它为异常值。
sale.describe()
需求
用0代替异常值。
sale[“订单金额”]=sale[“订单金额”].replace(min(sale[“订单金额”]),0)
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Python开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注Python)
如果你也是看准了Python,想自学Python,在这里为大家准备了丰厚的免费学习大礼包,带大家一起学习,给大家剖析Python兼职、就业行情前景的这些事儿。
一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、学习软件
工欲善其必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。
三、全套PDF电子书
书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。
四、入门学习视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
四、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
五、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
成为一个Python程序员专家或许需要花费数年时间,但是打下坚实的基础只要几周就可以,如果你按照我提供的学习路线以及资料有意识地去实践,你就有很大可能成功!
最后祝你好运!!!
五、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
成为一个Python程序员专家或许需要花费数年时间,但是打下坚实的基础只要几周就可以,如果你按照我提供的学习路线以及资料有意识地去实践,你就有很大可能成功!
最后祝你好运!!!