Python官方在今年2月做了一份报告,从官方的角度说明了Python的使用状况和受欢迎程度:
该调查由 Python 软件基金会与 JetBrains 一起发起,有来自 150 多个国家的超过两万名开发人员参与。
从官方喜出望外的报告中,我们可以看到Python受到大部分人的欢迎,依旧是用户手中的香饽饽:
在Python的用途上,大家使用Python最常用的场景是数据分析,从涨幅来看也是最高的。相关的机器学习场景涨幅也有7%。
这不禁引出一个问题:Python作为编程语言在数据分析领域的地位似乎举足轻重,但明明有更亲民的Excel、Tableau、PowerBI等软件,为什么数据分析师最终都会代码化?
作为一名使用Python的数据分析师,我想举几个小例子说明:
原因 1
鼠标操作流程手速太慢
即使是打游戏,手速也很大程度上来源于快捷键的使用。
数据分析也一样,代码能简化大量鼠标操作流程,用语言将过程“脚本化”,会帮助分析师减去不必要的操作时间,留出更多时间放在“分析过程”上。
举个例子,Excel做分析的过程可能是:定位空值-删除空值-修改数据格式-去除异常值-公式计算-数据透视表-整理数据-插入图表-调整结果……
繁琐的每一步都是来自鼠标点击,中间错误了哪一步,很多步骤都需要重新调整,浪费大量时间。
图中演示的是使用Excel进行简单的描述统计分析过程,比较繁琐。
Python靠的是代码编写每一步过程,统一语言带来记录方法的统一。当分析过程需要修改,只需要调整设定好的参数,效率当然嗖嗖的。
使用Python代码可以迅速调用数据,计算需求,并记录每一步过程,方便修改。
原因 2
Python拥有强大的库
分析软件每开发出一个新功能需要大量投入。而Python作为编程语言,开发新工具相对容易,一个人开发一个库的例子比比皆是。并且Python的使用热度带来了大量的大神,Python工具库可谓应有尽有,这也是Python有前文报告中众多用途的原因。
回到数据分析,以Python可视化必知基本库matplotlib为例,光是他的官方gallery就有26个大类527个样式,数量上就碾压了市面上大部分同功能软件。
matplotlib官网:https://matplotlib.org/tutorials/index.html
此外Python可视化类工具会有针对图表样式进行调整的代码,也可以交互,几行代码,省时省力,分分钟关机下班。
原因 3
代码辅助数学算法
小时候不爱数学,因为讨厌记繁琐的公式和进行步骤推算,一步算错,步步算错,而且我还无法理解为什么老师要求这么算。
但代码的出现拯救了我对数学的偏见。它能从特例的角度复现数学推理过程。通过计算机成千上万次的计算,让我更快理解算法的含义。
截图来自3blue1brown的微积分教学视频《微积分的本质》
以一道高中数学求导题为例:
求y=x²在x=2时的导数。
这道题不难,使用求导公式可知导数是4。但很多函数是不方便推导求导公式的,是否可以从导数的定义出发,寻找特例说明问题?
有的。
这道题要求的其实是连续可导函数f的曲线上,x=2时切线的斜率,那么我们可以定义一个移动的点m,使得m不断的接近x,当(m-x)足够小时,(f(m)-f(x))/(m-x)会越来越接近该点的所在曲线的切线斜率,也就是我们要求的导数。
图中所示程序迭代了1000次,点m以一定的0.01个单位的速度不断趋近x,结果导数(斜率)在不断趋近于4。
通过这个案例,我想说明的是代码的存在让模拟和迭代变得可能,定义一个规则,找到一个特例,让程序模拟千万遍,答案会呼之欲出。
这是一种使用程序构建算法的思想。
另一个有趣的案例是基于Python的梯度下降算法,使用Python多次模拟寻找最小化的损失函数和模型参数值。
案例文名为《Python推导线性回归模型》的文章,用到了梯度下降的方法推导出线性回归模型,适合python数据分析及机器学习初学者观看,完整链接见文末。
总结一下,数据分析师为什么会要求写代码?
原因在于代码在数据分析上更高效、丰富和自由。事实上代码不仅帮助分析,更能帮助逻辑思维。
如果你想自己感受下使用代码做数据分析带来的高效,建议你现在就可以开始学习Python。
-
代码
+关注
关注
30文章
4744浏览量
68343 -
机器学习
+关注
关注
66文章
8377浏览量
132402 -
数据分析
+关注
关注
2文章
1427浏览量
34010 -
python
+关注
关注
56文章
4782浏览量
84449
原文标题:会Python和不会Python的区别
文章出处:【微信号:TheBigData1024,微信公众号:人工智能与大数据技术】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论