在2009年初,江堂的一篇博文“R与SAS之争:一个导读”描述了国外一家主流媒体纽约时报的一篇报道Data Analysts Captivated by R’s Power引起国外SAS社区和R社区的粉丝们的大讨论。报社记者写报道嘛,肯定会找些社会矛盾点,专业称“焦点”来引起不同人群的注意。为了达到吸引眼球的效果,适当的添油加醋(专业称“润色”)也未尝不可。当然,也不能否定记者的对社会趋势发展的职业敏感性。就这样一场偶然或必然的口水战拉开了。然而,那时并没有引起国内的R粉和SAS粉们注意。
而在2010年4月胡江堂的另一篇在统计之都的博文Think SAS(一)则为了突出SAS,把其他统计软件进行了对比。尽管是客观的对比,不过放在R粉汇集到地方,难免争议。尽管江堂表示了担心,但是还是不可避免地引起广大中文社区的SAS粉和R粉们的罕见的大PK。同为统计分析软件,毕竟R作为后起的免费工具,还是受到很多人的拥护的,并且R作为开源软件允许个人自由发布R包所带来的成就感吸引了很多学院派的亲睐。显然R粉的优越感天然的要强于SAS粉,毕竟大多用盗版SAS的总不如正大光明用R的有底气。
最近(2011年5月)dapangmao在SAS圈子一篇关于SAS软件的评论”SAS, 一个华丽时代的结束(原创by dapangmao)” (经作者同意,转载如下)引起了众多SASor们的讨论,这篇文章很多转载,并且在微博上也很受关注。从正文和众多跟贴来看, SAS软件发展似乎不能跟上目前这个时代快速发展的潮流, 很多SAS粉们纷纷表示出一种担忧, 当然更多的是出于自身职场的考虑。而R粉们则表现出一种旁观的心态,可能缺乏对SAS的了解,更有可能的是他们走的是学术研究的那条学院派道路,和工业界的职场派没有利益冲突。
这次SAS粉们集体唱衰,并不代表SAS处于弱势,只是表达对SAS软件发展较慢而不能有所作为的一种无力感。因为在商业上,纯R无法和SAS较量(在这个时代,个人始终不是团队的对手),即使是可能对SAS造成威胁的R商业版本Revolution, 现在还处于襁褓中,它以后将遇到和SAS同样要面临的商业化所带来的问题。http://saslist.net/
另外,这三篇评论都是SASor作者主导的,说明SAS粉们对SAS软件及公司的思考,也说明SAS粉一般对SAS和R软件都熟悉的。从跟贴看来,R阵营还不够SAS阵营成熟,至少在自我反思方面还不够。面对网络信息的海量暴增和各种新型的商业需求,也许有更新型的数据分析软件来满足数据分析人员的需求。
在这里我们没必要通过比较SAS与R之间的优劣来选择他们中的任意一个,因为这些优劣总是暂时的。因此,我们不如祛噪取精,从正文和回复中了解这两种软件具体在各个细节方面上的长处,以便以后灵活运用。对于数据分析人员来说,他们只是工具的一种。与其花时间犹豫该学那种软件,不如都修炼一番,以便日后业务处理上能够随心所欲,不受工具之困。
点击阅读更多
下面除转载大胖猫的原文外,并收罗转载博客和新浪微博的评论,一并展示给大家阅读。
SAS, 一个华丽时代的结束
dapangmao原创
出处:http://mysas.net/sns/space.php?uid=808&do=blog&id=853
我是从2000年左右开始接触SAS的。当时还是本科生,带我的师兄要发表英文文章,杂志要求用SAS,所以需要用SAS做几个ANOVA和t-test。那时候用的SAS是存在十几张软盘上的一个dos程序,还请了高手帮我们破解,很是花了一番功夫。印象深刻的是,第一SAS的data step有一个内循环,初学者不需要基本的循环知识就可以上手,第二可以把数据直接考到程序里面,不需要像其他软件那样需要指定路径,读取硬盘上的文件。所以SAS尤其适合像大胖猫这样不是出身计算机相关领域,但是又想要做一些统计分析的业余选手。后来认真学SAS是05年以后的事情了,来到美国可以用正版的SAS,学习SAS也方便很多了。这时候的SAS是8.2版本了,该有的都有了,Proc SQL也变得很流行。再以后,变化就不大了,9.1有了hash object,9.2有了画图的SG procedures,SAS的老本行,广义线性模式,也升级到了Proc GLIMMIX。今年下半年,9.3也应该面世了。
一直在SAS-L潜水,觉得最近几年邮件组里人气掉的厉害,讨论的话题也一直没有什么变化,倒是跟oloolo这样的新生代大侠学到了一些新的编程风格。Oloolo大侠把一些新的算法和数据挖掘方法整合进SAS,让人耳目一新。还有经常出没SAS-L的 Liu Wensui大侠,也是华人中间的SAS高手。刘大侠的Blog也是学习SAS的好地方,他用macro封装输入-计算-输出的模式是我们规范SAS编程的好榜样,而且他很早就开始使用SAS和R的混合编程(可惜他的blog最近关门了,无缘瞻仰了)。
SAS的疲软,一部分原因是因为SAS自身的因素。SAS开发过SAS/AF和SCL,后来都失败了。一个有经验的SAS Programmer没法转变成为一个SAS Developer。 把所有的模块(Base/STAT/ETS/IML 等等)和系统(PC,UNIX,z/OS)弄过一遍就没有什么好学的了。想自己在SAS里面开发自定义模块,困难重重。另外有很大一部分原因是因为R的挑战。R最近几年的发展让人目不暇接,已经成为定量金融,生物信息学和网络分析领域的行业标准。而这三个领域恰恰是发展最快的三个领域。学习R,很快就能开发自己的package,放到CRAN上面就可以扬名立万。所以从职业生涯考虑。有能力的新人不愿意学习SAS,造成了好的SAS Programmer青黄不接。
R的突飞猛进,一个方面因为它是开源的,学习起来很方便,不像SAS要考虑买许可证或者满世界找盗版。想用什么package,敲几个指令就行了。另外一个方面是因为原来制约R发展的内存瓶颈消失了。像Matlab和R这样的矩阵语言,里面的garbage collector不能像通用型编程语言(Java,Python等等)那样快的清空物件,所以内存很容易不够用。现在是64位时代了,买个4G以上的内存不贵。流行的分布式计算(Map/Reduce, Hadoop, Hive)和云计算也帮助解决了这个矛盾。在Amazon,Facebook,Google的数据中心里面,很容易从几千台机器里面集中几T的内存,跑跑R没有问题。大胖猫用过Amazon的EC2服务,价格很公道,也不用掏钱买另外的机器。而SAS对于比较大的数据,则只有望洋兴叹了。
SAS每年的营业额大概是20亿美元,人数只有它1/3的Teradata的营业额也是这么多。要想提高营业额和利润,把注意力集中在电信,银行,保险,医药这些高端客户,是SAS必然的选择。SAS和Teradata都是历史悠久的老公司,SAS从60年代一个做田间统计的小软件发展到现在横跨各个领域的大家伙,的确不易;Teradata是关系型数据库的开创者,Oracle和Sun都是 这个领域的后起之秀。SAS和Teradata的确也有互补之处;也许未来两者合并,更加符合股东的利益。SAS正在开发的并行procedure就是为Teradata专门设计的。SAS的老板,Dr. Goodnight或者不愿意失去对SAS的控制权,但现实上现在的市场恐怕容不下专门的分析软件公司了。统计软件界另一个和Goodnight齐名的传奇人物,Dr. Nie,果断卖掉SPSS是一个正确的选择,借助IBM的国际影响力,SPSS在世界其他国家卖的还不错。将近七十岁的老聂看到R的潜力,重新创业,现在他的Revolution R看上去发展势头不错。如果他还呆在SPSS,现在的情况就很难说了。
由于SAS是行读入的,所以特别适合整数据,我经常没事到各个论坛找些题换几种做法做做,其实跟电脑游戏一样好玩。感谢SAS帮我学会了统计和编程,伴我度过异国他乡的漫漫长夜。虽然属于SAS的华丽时代不会再有,但我仍会纪念开创那个时代的伟大的SAS程序员。Old SAS programmers never die, they just fade away.
以下是来自中文SAS圈子的回复:http://saslist.net/
嗯,没错,Cognos在olap界属于比较流行的工具了,多维数据库的机理也比较前沿。一般Olap工具的Miner及Analysis的功能都比较有限,这次和SPSS的整合,利用其统计分析的基础,期待在前端这方面能有一个较全面完整的应用。
都是各位战友的肺腑之言,字字珠玑句句有声。我个人觉得SAS公司内部高层需要新生代的改革,的确很多年的变化不大。
感谢京剧兄回复。我最喜欢京剧兄的文章了,每次都那么细致,有条理。建议施站加精收藏。
首先申明一下,本猫是铁杆SAS programmer,这么多年来对SAS是痴心不改,从没变心过。写这篇小破文,也是因为最近有两件事,有感而发。Mysas里面都是自己人,关起门聊聊吧。
第一件事源自跟SAS里面的一个朋友的几次通信聊天。该朋友是SAS/IML项目的一个头,某藤校PhD毕业,SAS里面工作了好多年,对IML爱的是不得了。我有次对他说9.3就要来了,Proc FCMP是不是会加强一点,俺用它做矩阵运算做的好辛苦。此公大怒,说要做矩阵运算,肯定是IML,别的想都不用想。我说,大哥,好多地方的机器没有装SAS/IML,很多网管都没听说过IML,我写了也没法用啊。Proc FCMP虽然挫,但是属于SAS/BASE里面的,装SAS的机器都会有,至少可以用啊。另外,有点奇怪的是,他坚信所有的SAS程序员都会用IML。本猫虽然是IML的三角猫,但也算会一丁点,见过很多SAS programmer都不会用了。我对他说,你们SAS应该改改吧,把Proc IML 放到Base或者STAT里面,卖SAS/IML许可证的那点钱不赚也罢,否则再过几年会SAS/IML的programmer就绝种了。他说,这个问题要向晚安同学(Jim Goodnight, SAS的老板)汇报。现在还没消息,估计没戏了。还有一次,我说,SAS IML Studio不兼容R2.12.0以后的版本,是不是出了问题。他说查查。过了几天,他说,找到了,里面的几个DLL出了问题,组里正在抢修,9.3肯定能兼容R2.12.0。我倒。。。。我机器现在跑的是R2.13.0,那不是要等到SAS9.4以后了,大胖猫估计那时已经老死了。
第二件事是跟Revolution R打的几次交道。Revolution R是老聂同学(Norman Nie, SPSS的前老板)开的一个卖R商业版本的公司。他们的小秘不知道怎么找到我的电话,说能不能跟我找几个他们公司的工程师聊聊技术上的需要,正好我那段时间闲的蛋痛,就说,行啊,聊就聊呗。好家伙,他们拉了好几个工程师,一聊就聊一下午,每次讲的我口水都干了。虽然胖猫在一个白天没啥鸟事,晚上鸟没啥事的小破地方上班,但也禁不住他们轮番轰炸啊。最后一次,我跟那个哥们说,哥们,你们硅谷创业型公司,不是据说都是一天干10个小时以上的英雄好汉吗,怎么跟俺一样闲啊;俺就一做SAS的马仔,你再跟我怎么说,我也不能掏钱买你们的软件。那哥们说,这是他们老板逼的,再忙也一定要了解潜在客户的需要。钱没有问题,老聂把卖SPSS的钱都压在上面了,就是要在闭眼之前灭了SAS。我说,得,哥们,俺没时间再给你扯了,再扯俺这破饭碗也端不住了。另外,我感觉,R阵营比较开放一点,比如俺最近的一篇关于如何用SAS调用R做图的博文,就被Revolution R的宣传官David Smith放在他们公司的官方博客上面。相对而言,SAS就没有那么关心客户的需要了,对用户社区的建设也不太给力。可能公司历史太悠久了,某些制度就僵化了,不如小的,新的公司有活力了。
我很赞同京剧兄的观点,什么软件都是工具,重要的是统计方法。但大胖猫不能像oloolo和施站这样已经升到管理层的大牛可以坐看云卷云舒花开花落,还是得关注一下技术的发展,让简历的卖相好一点。所以写这篇文章跟大侠们讨论讨论,希望有点收获。
SAS毕竟是商业产品,不同模块要考虑客户的问题,以及产品整合的问题。这种一个人/一个组负责一个模块/几个模块的模式,并不是公司的内部斗争,只是初衷为更好的方便客户跟进和debug。HP类的与普通类的,其实是两类产品,而就文件来讲,是不同的dll。
没那么夸张,金融业现在还是sas是老大。只不过是我们要求太高,走的太快而已~
要发论文,还是R最好,没有版权问题,新方法一大把,做应用很方便。在公司做,最怕有风险,还是SAS稳妥。
PS:说起最佳雇主这个东西,似乎98年的时候克莱斯勒是最佳雇主之一,10年后烂得跟屎一样。这种公司还是工程师来当领导最好。福特原来是个会计去当了CEO,结果也是烂得跟屎一样了,只要成本低,别的啥都不要,好么,屎了;董事会后来请来波音的老总来当CEO,立马不一样了,2年出了好几款世界品质的新发动机;新野马BOSS版就算是硬轴肌肉车在赛道上也跟宝马M3不分高低,当真士别三日当刮目相待。好么,又跑题了。
原创文章: ”一篇SAS评论引发的思考 by sxlion“,转载请注明: 转自SAS资源资讯列表
本文链接地址: http://saslist.net/archives/128
SAS太死板了,不是所有分析方法都有固定模式的,灵活便捷非常重要。
我的感觉是,开始很多情况下,因为自己对SAS了解有限,功夫修炼不到家,才会感到SAS不方便。后来慢慢深入学习SAS后,才发现SAS不是一般的灵活。所谓方便快捷,完全看个人 的SAS修炼水平了。这个对于很多软件也是一样的,熟能生巧。
SAS软件本身确实提供了各种灵活的可能性,越学越发现SAS的博大精深。
可能主要是因为SAS的语法不是那么主流(C、Python、Matlab、R等),学起来觉得怪怪的,要绕个弯子;这个门槛让很多像我这样的初学者不大喜欢。
恩,SAS有自己的一套语法规则,76年就开始了,可谓是古老的语言。当然,她一直在发展,老树发新芽。但毕竟他是商业软件,要求不同版本间的代码具有向上兼容性。形成这样新老语言混搭风格,简直是程序语言界的一朵”奇葩“(非褒义,哈哈)!
SAS语言种族多(很多语言种族相互独立),并且各种族语言深度不一,发展进化程度也差距很大,各语言入门门槛不一(见文SAS语言管窥),这种客观存在的原因导致各模块语言的成熟度和难度差距很大。
而作为一个一般的SAS程序员根本无法全面掌握SAS,并且SAS语言程序员们的层次水平相差巨大。常常看到新手哭诉SAS有多么难,多么坑爹,而同时SAS论坛(这里说的是中文)的学习氛围不那么好,比如有人问没人答,有人答没人懂。
不是人人都可以学好SAS的,因为这些东西都要靠自己摸索总结。很多SAS程序员的博客曲高和寡,也是因为看得懂的人不多。
有句老话,就做会者不难,难者不会。喜不喜欢,看个人口味吧。
举例?
大部分人都是从统计学的角度谈SAS和R,而且对统计也不太熟。你一小伙子和我这50多岁的老头相比,我当然不如你灵活,可是在职业上我会比你值钱的多。年轻人喜欢宝马的驾驶感,有身份的人喜欢劳斯莱斯的庄重,他们之间是不可替代的。SAS上百种产品岂是一个R能比得了的?Nie就是做梦。做SPSS 40多年也没做出什么名堂,他自身的思路有问题,Revolution根本就救不了他。如果比较SAS和R,就是美国和中国。美国现在变化慢,经济增长慢;中国快。美国人感到了压力:美国真笨,看中国变化多块,多有钱。如果一项一项来比,中国80%不如美国,教育,军事,社保体系,文化,环境……。中国能威胁到美国什么?SAS的领导头脑很清晰,晚安同学就是SAS创新的推动力,SAS R&D的头可不是好当的,压力很大。社会上任何风吹草动,马上就有评论出来,也就一天到两天的反应时间。学院派的有很多特殊情况,他们用什么都是可以理解的,毕竟玩错了,再玩一遍就是了。
这些比喻非常给力。
大家都以为SAS变化慢,或没有新东西。其实是客户不希望变化大,就像有的人说的,20年前的知识,也一样使用SAS。科学的东西有定势,不会有大的变化。另外,比起算法来,SAS更关注高速计算,系统的稳定等大的方面。新算法解决问题的能力如何还要看,什么也不是越全越好。很多评论者其实是学院派的背景较浓,希望SAS包括他们了解的新算法。作为商业客户,对此不是那么关注。SAS是两个人的公司。这两个人都是关注技术胜于任何方面的人。利润不是他们的关注点。公司300英亩的园区,各种设施齐全,就像一个小社会。这些都是那些上市公司无法比的。华尔街的大佬们(真正的老板)是不会让他们养那么多的服务人员的。SAS员工不存在没有动力,养老的思维,否则也不会站住行业的最前列。SAS接下来的战役就是对IBM,可以说是生死决战。