先说说vba和python的区别,再来看这两做数据分析的优缺对比。
一、vba和python二者的区别
vba,全称 visual basic for application,用于windows程序内扩展编程的vb语言,Microsoft word 、excel 、ppt中都默认都集成了该功能,无需额外安装解释器。目前国内金山wps也支持,只需要安装一个vba插件就可以了。
python是一门独立的解释性编程语言,可用于linux/windows/mac跨平台软件开发,用途广泛。linux和mac系统自带python2,选择python可以直接在线安装。windows则需要选择相应的版本并手动安装。
二、vba、python做数据分析的优缺对比
1、分析的数据格式对比
Excel优点:
我们用vba做数据分析,往往是在单个固定格式excel中,虽然excel也可以连接外部数据,需要录制宏,这个对于不太会写代码的数据分析员,用起来很方便,他会把操作过程记录并保存为vba红代码,方便一建执行调用。
Excel缺点:
但外部数据连接,一般使用的odbc接口,默认可以加载access和SQLserver数据库,连接其他数据库就需要下载安装相应的驱动程序,对于尝试用excel做数据分析的人员来说,甚是麻烦。
python优点
而python不仅可以读取excel、access,还可以很方便的连接关系型数据库mysql、sqlserver,还有非关系型数据库mongodb等
python不足
要求程序员理解数据库连接、认证、数据读取过程,具有一定的编程基础,手写整个过程
2、vba函数/宏过程与python分析工具的便捷性对比
Excel优点
vba宏,可以录制,所有excel数据录入、筛选、排序、公式计算的过程都可以记录下,生成vba代码,excel也有数据分析的扩展。
Excel缺点
Excel vba 没有分类、聚类数据挖掘的现成函数。
pyhton优点
有numpy和pandas数据分析工具库和sklearn数据挖掘(模型)工具
python缺点:
需要学习掌握数据结构和常用筛选、排序,分组统计函数和数据挖掘算法工具
3、数据量限制和性能对比
excel数据量限制
最大支持104857行,根本算不上大数据级别的量。
excel性能较差
当excel文件较大时,打开速度就很慢。
python数据量没有限制
只要计算机内存够,无论多大的数据量都能加载进。
而且pandas基于列的数据结构,支持矩阵广播式操作,速度更快,很适大数据分析。
python偶发错误
但无限制的数据加载有时也会导致机器负荷较大,甚至内存溢出的问题出现。
由此可见vba数据分析各有优缺,关键看使用场景。对于专业的数据分析工程师,vba和pyhton都是必备技能,灵活解决问题。
愿我的分享给大家学习数据分析挖掘带来真正的价值,欢迎关注我。