楼主: yukai08008
2333 1

[学习分享] 关于SAS和R_Andy的原创帖 [推广有奖]

  • 2关注
  • 17粉丝

讲师

2%

还不是VIP/贵宾

-

威望
0
论坛币
2176 个
通用积分
3.0600
学术水平
10 点
热心指数
7 点
信用等级
7 点
经验
5915 点
帖子
120
精华
0
在线时间
556 小时
注册时间
2012-11-28
最后登录
2022-4-11

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

在知乎上看到一篇关于SAS和R的讨论,结合自己的使用经验mark一下。

**************知乎原文**************

优雅学习使用SAS的秘诀在于 1.Data Step  2.Proc SQL  3.Proc IML  3.Macro  4. ODS 各种画图 GTL

1.Data Step. 很多人开始以为Data Set 只是读读数据,改改数据用的,其实它的功能异常强大。你可以在里面调用函数和宏,可以使你的程序高度定制化和自动化,提供一些编程语言的功能。

2.Proc SQL. 真的真的很好用,处理数据一大利器! 很多情况下,把数据整理好需要半天,然后你跑个回归就1分钟....

3.Proc IML. 已经越来越好用了。不过很多情况下,其实用不着自己去写矩阵运算。

4.Macro.  用宏容易上瘾,最好什么过程都能一步到位,改几个输入参数就能完成所有工作。

5. ODS 各种画图 GTL .  SAS画图也有很高的定制性和自由度,但是它的图偏向商业和学术,看起来非常严肃的样子,而且画的图像素很高,质量极佳。你可以按照不同的需求来定制你的输出,最低的程度是仅仅改变图的style(多得吓人),最高程度是用GTL,可以画出令人吃惊的印刷级别的图。

至于其他各种统计 Proc,对照官方文件用就行,只有你不懂统计,没有你不会使用Proc。

SAS核心的在于企业用户的那些模块,有些是商业机密...


***************************
我的经验:
1.Data Step无需多说,是sas基础中的基础,其效率大大超过sql,使用起来也很方便。最重要的是理解PDV就差不多了。
2.Proc SQL.是SAS兼容并包的一个模块,有些问题还是需要使用sql解决起来比较方便。
3.Proc IML.是我最喜欢的模块,简洁高效的矩阵运算,看着代码辣么短是很爽的事情。
4.Macro. 个人认为只有熟练掌握了macro,sas才算是一门完整的编程语言。从结构上说,所有的过程和步都可以认为是一个宏单位,宏才可以调用宏(否则的话要用类似symput symget的参数传递方法)。而且宏的特性决定了可以执行基于宏单位的循环迭代。另外宏变量的作用域也很有意思,就不细说了。
5.ODS画图。目前图画的不是很多,不过sas的图看起来是很严肃的。其实sas还有个NVW的小套件(在开始菜单可以看到),用来快速的生成图很方便,还可以生成网络图。美观的图其实EM里面也有,就是跑起来太慢了,感觉套了java的东西都会有点慢(个人偏见 : ) )
6.关于sas其他的proc步,其实我是作为教科书来膜拜的。本质上sas把一些复杂的问题进行了处理,当然处理的方法会有很多,sas选择了一种方法来得到答案(比如logistic 中使用了牛顿迭代法),关键是sas的文档和实现水平都很好,完全可以作为一个标准答案。我们在研究其他方法的时候就可以和sas来印证。


关于R,刚刚上手使用,感觉还蛮有意思的。
1.免费。R是免费的,对很多公司来说这就够了。
2.安装简单。我用3版本的R,安装包才70M,设置也很简单,分分钟搞定。(关于SAS我真是不想重温安装的经历)
3.使用模式。感觉和Nodejs很像,解释执行、翻墙去下包调用
4.数据结构。这点最有意思,R的数据结构定义其实比sas data步复杂很多,和iml的矩阵定义比较像。这样就造成了使用方式很灵活,而sas就严格定义了结构,类型。
另外sas中使用对象结构比较少(hash对象),但是R都是对象格式,这样编程风格的话就更接近于nodejs那类型(对象,函数)。
5.功能完善。比如图像功能IML好像就没有。

总之感觉sas就像是黄埔军校的教育,一板一眼,非常严谨(SAS体系真的超庞大)。R就像是八路,路子不限,以达到目的为标准。这两个一左一右搭配起来应该可以解决基本上所有的问题了。就个人来说,研究算法什么的,因为R的结构更灵活,做起来应该会比较方便。
装R的时候还看到一段话蛮好笑,大体意思是说sas的软件费太贵,一年几十万美金。所以很多企业招人的时候要求的是sas的经验和技能,然后实际工作的时候用R来做 : )  


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:SAS和R Andy Data step proc sql logistic sas andy

沙发
zzt0001 学生认证  发表于 2016-7-13 01:17:19 |只看作者 |坛友微信交流群
这个分析有见地。

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-25 17:21