为什么数据分析需要会编程语言?编程语言的作用是什么?
关键词: 数据分析编程语言 大数据分析 编程语言,编程语言作用
如Python、R、C++、Java这些语言的功能实现上和不太需要编程的SPSS Modeler SAS/EM 统计 数据挖掘软件有什么不同?
有什么是这些后者不能实现而前者可以的?
这整个过程中,各个环节都可能涉及到大量的参数需要调节,各种细节都需要控制,还有很多主观的选择。这样的过程如果用软件窗口去实现,窗口中的选项将非常复杂,整个过程需要在多个数据及上重复执行也很麻烦。用编程语言可以精确地描述整个过程,控制大部分细节,并且可以批量的重复实现。
数据分析和探索的过程是一个不断尝试想法、验证假设的过程,这就需要临时产生、执行新的代码,脚本语言如Python和R天生就是对这样的互动操作有很好的支持。如果这种过程都用C++或Java这些需要编译(二进制或bytecode)——执行的语言来完成,那么过程将比较痛苦。
因此对于专业的数据分析,掌握数据库的应用、数据分析的编程语言是很有必要的。题目中提到的编程语言一些是通用编程语言(如C++、Java)可以广泛地用于开发各种项目,而R作为脚本语言凭借其良好的互动性和丰富的扩展包资源可以方便地解决大部分数据处理、变换、统计分析、可视化的问题,并可以重现所有的细节。数据分析者最好通用语言和脚本语言各至少掌握一种,这样在处理许多项目时就能合理地发挥不同语言的优势,提高整体的生产力。
首先,数据挖掘软件的使用范围较小。拿EM来说,EM解决的是数据挖掘的事,包括聚类模型,预测模型,神经网络,购物篮分析,文本挖掘,信用卡风险建模等等等,SAS公司已经将这一个一个模型都模块化,其好处就是不用写大量的编程语言,拖一下结点,改一下参数,模型就可以跑出来了。那么其局限性也就在此,如果有新的模型,sas还没帮你封装,那对不起,你还得自己编程。
其次,从使用的角度来说EM有其不方便的地方。虽然模块化了,但是在一些前期数据处理上还是不够自由,比如异常值的处理,变量处理上等等等,而自己写代码编程也可以根据自己的需求进行编写。我自己建模的时候比较喜欢直接用sas写代码…
最后,EM的使用中也是需要一些简单的代码知识的。我曾经参加过一系列SAS公司开设的EM的培训,那个讲师说默认我们都是会sas的基本编程语法的…所以怎么也离不开编程语言呀!
转载请注明:数据分析 » 为什么数据分析需要会编程语言?编程语言的作用是什么?