2013 SAS依然是最爱,R用的越来越多了,SPSS依旧click click click,matlab基本不用了。
扯了这么多软件,并不是说个人推崇软件,我赞成"软件是tool"的说法,不过既然是工具,说是不依赖,其实还是依赖的(做到草木皆可为剑的神人不在此列)。废话不多说,说说这一年的感想。
首先SAS数据处理的能力无可比拟,以前也粗略写过,这是其他统计软件无可比拟的,至少在我用过的这么多里面是这样的。
再者统计模块的功能结实,全面;这点倒不像R,包的质量参差不齐,不过既然是开源的东西就不能苛求太多;或许一开始学习统计就是结合SAS用的,所以对它的结果输出十分熟悉,层次分明,每个部分都可以对到教科书的知识点,满足一下自己小小的虚荣心。
最后说说操作性,这也是一直以来被诟病的最多的,SAS再怎么做也不会像R和matlab那样交互式的干活了,我个人建议是熟悉就好,你站在SAS的角度去解决问题,其实也没有想象的那么糟糕。
其实最大的问题是,我盗版的SAS,总归上不了台面,这才是真正的痛。
说说R,撇开那些灵活,方法新颖,作图漂亮简洁;我觉得R最大的特点是——免费。免费意味着什么,意味着你随便下个R,就可以扔到服务器上,放心大胆的去折腾。
装个R,搞个ODBC接口,把数据从数据库抽过来,R对数据的计算方式,方法总归是要比sql强上几万倍的,用R干点数据库干不了的事情确实是个不错的选择,同时在内网之间的数据传输速度也是十分可观的。
再者,我很喜欢R的底层语言的接口;对于R,matlab这种解释性语言来讲,循环永远是最大的坑;自然我是没那个能力,把所有的运算都转到矩阵运算或者其他方法来避开循环,R中一些避开显式循环的函数也不是每次都能用得上。所以写循环变成不得不面对问题。R提供了C、fortran一些底层语言的接口,也算是大大改善了自身的这一问题。把迭代、循环的问题交给C,处理完的结果再返回给R,感觉就像写了个函数(编译成动态链接库的形式供R调用);而且在linux是C天然的运行环境,什么多余的事情都不用去做。
6月份用R搞社交网络的时候,由于巨大的话单量,CRAN上的SNA包给出的算法每次都返回一个结果,can not allocate memory xxxx Mb,被逼之下只能自己写算法,从找资料,搭环境,写算法到最后测试完工,前后花了三个多月的时间,没日没夜的折腾,中途好几次都想放弃,还好是坚持下来了,过程虽然艰辛,但结果总算有所交代。所以说人有的时候,是需要逼自己一把。
至于spssclementine,现在改名叫IBM Modeler了,这边买的正版货,我也就不吐槽什么了,如果说能用它做的,还是很方便的,随便点记下,画几根线,问题就算解决了,而且画出来的东西还是很漂亮的,至少比EM好看。只是这货算法给了一堆,效率说得过去的实在没几个,硬伤!
关于matlab,以往用的时候,我也只干一些统计学、算算矩阵的事情,现在需要的功能和R重叠了,花钱的软件还是放在一边吧!
Statistics、machine learning的东西,也在不断的学习,不敢有所间断。最后想说一句:"理论决定你的思想高度,软件决定你的实践水平。"