CATS和CATX函数
这两个函数用于连接字符串。函数CATS首先去掉每个要连接字符串的首尾空格。CATX也会去掉首尾的空格,并且还会在每个字符串之间插入分隔符(CATX函数的第一个语句)。
这些函数需要非常注意的点是结果的存储长度,如果没有预先定义,默认是长度200。而你使用连接符号(||或!!)只是这些连接字符串长度之和。
如果你有一系列的变量如Base1-Basen,你可以在列表前使用关键词‘OF’。最后,列表中的值可以是字母,也可以说数字。如果一些语句是数字,SAS将会把数字当作字母对待,并且不会在SAS log里面出现转换信息。
下面的例子示意这些函数字母操作去掉空格,函数CATX字母插入分隔符。
程序17
1 2 3 4 5 6 7 8 | data join_up; length Cats $ 6 Catx $ 13; String1 = 'ABC '; String2 = ' XYZ '; String3 = '12345'; Cats = cats(String1,string2); Catx = catx('-',of String1-String3); run; |
图17:程序17的输出结果
Cats Catx
ABCXYZ ABC-XYZ-12345
COUNT和COUNTC函数
SAS有两个计数函数,COUNT和COUNTC。它们之间的区别就像FIND和FINDC。COUNT计算一个子字符串在一个字符串中出现的次数,COUNTC计算单独字母在字符串中出现的次数。这些函数的语句和FIND和FINDC一样。第一个语句是你想要搜索的字符串,第二个语句是子字符串(COUNT)或一列字母(COUNTC)。最后你可以在第三个语句中使用可选的修饰符,其中修饰符‘i’(忽略大小写)最有用了。 (更多…)
原创文章: ”SAS函数精选三 翻译“,转载请注明: 转自SAS资源资讯列表
本文链接地址: http://saslist.net/archives/284
SUBSTR函数
如果你需要从一个字符串中提取一个子字符串,你需要SUBSTR函数。需要提醒一下的是,有个函数SUBSTRN非常像SUBSTR,就是多了一些额外的特征。我不知道这些特征是否经常被需要,因此本文选择描述稍微简单的函数SUBSTR。
此函数的第一个语句是输入字符串,第二个语句是你想要提取字符串的开始位置,第三个是,可选语句,设定子字符串的长度。如果你忽略第三个语句,函数将提取输入字符串中最后一个非空字母,也就是说,它忽略输入字符串的后面的空格(这个特征非常有用)。
在我们继续例子之前,理解默认长度这个概念非常重要。比如说,在下一个程序中,如果你没有写LENGTH语句,SAS将仍然需要设置一个长度给State。对于这个函数,默认长度等于函数第一个语句的长度。你不能使得从字符串提取的子字符串长于字符串本身。很多其他的SAS字符函数默认长度为200。需要保证的是,具有这个功能的函数需要在DATA步中包含LENGTH语句。最好是包含LENGTH语句,即使是不需要,这样是没有风险的。http://saslist.net/
下面是一个使用SUBSTR函数的简单例子。
程序9
1 2 3 4 5 6 7 8 9 | data pieces_parts; input Id $9.; length State $ 2; State = substr(Id,3,2); Num = input(substr(Id,5),4.); datalines; XYNY123 XYNJ1234 ; |
这里是你想要提取州号码(从位置3开始,一共两位),ID的数字部分从位置5开始。注意你忽略数值提取中的第三个语句。这个非常有用,因为有的数字是3个字符长,有的是4个字符长。这个例子中,你使用INPUT函数将字符转化为数值。
图9,程序9的输出结果
Id State Num
XYNY123 NY 123
XYNJ1234 NJ 1234
使用等号在左边的SUBSTR函数
在早期学SAS的时候,等号在左边的SUBSTR函数被称为是SUBSTR假函数。据我所知,这是SAS唯一等号在左边的函数。下面是它的用途:
允许你用新的字符来替代已有字符串中的字符。这个听起来挺复杂的,但是你通过下面的程序看到,这实际上是很直接的方式。下面的程序使用SUBSTR函数(等号在左边的)来遮住帐号的前五个字符。 (更多…)
原创文章: ”SAS函数精选二 翻译“,转载请注明: 转自SAS资源资讯列表
本文链接地址: http://saslist.net/archives/283
下面是Dr. Ron Cody的一篇关于SAS函数的文章,非常好的函数介绍文章。曾经在2009年SAS公司(上海)举办的一次SASor聚会上,我做了一次关于SAS函数的presentation分享,见 ppt和正文,我发现竟然有部分内容重合。 我个人非常喜欢SAS系统提供的函数,建议老手新手都可以读读下面的文章,祝都有所获!
by Dr. Ron Cody 翻译 sxlion
摘要:
SAS函数为你的数据步(DATA step)编程提供惊人的能力。有一部分SAS函数是精华,能够帮助你节省大量不必要的代码。这篇文章内容覆盖其中最有用的一些SAS函数。有些函数可能对你来说有些陌生,然后她们将会改变你的编程方式,并助你轻松完成日常的编程任务。
介绍:
本文写到的大部分函数都与字符数据有关,这些函数的功能包括搜索字符串,查找和替代字符串,或连接字符串,还有些函数能测量两个字符串之间的距离(这对于“模糊”配对非常有用)。一些最新和最叹为观止的函数还以Call例程的形式存在。你知道怎么用函数在同一个观察值进行排序吗?你知道你不仅可以定位一列变量中极大或极小值,而且可以定位到第二位、第三位最大或最小的值? 如果你觉得上面的介绍能够吸引你的兴趣,请继续往下读! http://saslist.net
SAS是怎样存储字符值的?
在我们讨论字符函数之前,了解SAS怎样存储函数值非常重要。为了帮助讨论,你首先需要理解两个重要的字符函数:LENGTHN和 LENGTHC。
LENGTHN和 LENGTHC
这两个函数返回字符值的长度信息,其中LENGTHN返回未计算后缀空格语句的长度。LENGTHC返回字符变量的存储长度。你也许对旧的SAS函数LENGTH比较熟悉,大部分情况下函数LENGTH和LENGTHC返回同样的值。有一个例外的是,当语句里是缺失值时,LENGTH函数返回的是1,而LENGTHN返回0。有一些新函数看起来是在旧函数后面加个字母“n”,这里的“n”代表“空字符串”(“null string”)。在SAS9中,长度为0的字符串概念被引进。在大多数情况下,如果你看到一个你似曾相识的新函数(比如说新函数TRIMN, (更多…)
原创文章: ”SAS函数精选一 翻译“,转载请注明: 转自SAS资源资讯列表
本文链接地址: http://saslist.net/archives/282
2011年网站年末盘点
2012农历新年马上就要到了,看着湖南卫视的小年夜春晚,不禁想着给自己的博客网站做个盘点,这个想法其实在大家年会的时候就想做了,趁奥尼尔还没出场,赶紧把这个盘点给整了,有些事现在不做,以后永远就不会做了。
自从2010年9月3日开始至今天(2012.1.17),本博客网站共发布了60篇博文,其中2010年16篇,2011年42篇,2012年是2篇,累计访问IP近2W,PV近10W(因为用插件统计,所以有一定的水分,需要打折下)。因为没有类似的博客网站数据和其他类型网站的数据(都没有公布),所以无法横向和纵向比较。大家也随便看看,消遣一下吧,反正有水分。
本站文章包括自己原创评论、网络资源整理、工作信息、书籍点评推荐、转载文章和外文翻译等等内容,下面对本站博文的内容分类和精选才是最真才实料的干货。
史上最强悍的十篇SAS资源整理博文
原创文章: ”SAS资讯 from 新浪微博-2011-07-31“,转载请注明: 转自SAS资源资讯列表
本文链接地址: http://saslist.net/archives/153
第一部分 最新的消息,如行业前沿信息、招聘、会议资料,不要错过哦
1.1 行业前沿信息; 1.2 招聘信息; 1.3 刚刚结束的部分会议的资料,视频,可下载; 1.4 最新SAS博文
第二部分 数据挖掘,数据分析 理论、应用、工具软件及资料
2.1 数据挖掘,数据分析 理论、应用、工具软件及资料; 2.2 数据分析工具及讨论; 2.3 SAS讨论,官方资讯、历史回顾 ;
第三部分 图表展示理论、图表点评和各种应用例子——很多精彩图片哦,内容和展示形式都非常吸引人,懂的入,不懂可以熏陶下
3.1 图表学习与点评; 3.2 内容和形式都很好的精美图表欣赏
第四部分 微博传播研究、分析方法和文化杂谈
第五部分 数据挖掘,数学统计理论、文化书籍推荐
原创文章: ”SAS资讯 from 新浪微博-2011-06-15“,转载请注明: 转自SAS资源资讯列表
本文链接地址: http://saslist.net/archives/143
大家都知道数据步(DATA step)是SAS系统的基石,最基本也是最重要的。在5.5年前,也就是2006年,我在当时人气最旺的SAS中文技术论坛SASOR发了一篇翻译稿“SAS9数据步的新发现(一)(二)(三)(四)”,《The DATA step in SAS9: Whats New? 》一文所作的翻译草稿,原文来自SAS SUGI proceedings 作者Jason Secosky, SAS, Cary, NC. 。
主要内容包括SAS9.0和9.1版本四个方面新功能:1,PERL正则表达式、2, 哈希表(Hash tables)、3,新函数和4,原来函数,操作符和宏功能的扩展。由于SAS9是SAS一个变化非常重大的版本,所以当时就翻译了这篇文章,尽管差不多6年过去了,这些语言元素对于SAS用户来说,仍然还是很fashion的。据传SAS9.3带着万众瞩目的新功能如高性能计算,可视化增强和云计算将于今年(2011)秋季美国发布,不过现在是找不到The DATA step in SAS9.3,有What’s New in SAS9.2,但是里面DATA step的亮点不多。
下面我对以前的旧稿进行整理,主要把翻译润色了下,还有把代码都跑通了一遍(其实这个工作是2008年做的)。现在在这里给大家分享下,一来是这些功能大家现在用得还是很少(谁叫SAS语言这么有特色呢,几年不充电的SAS程序员照样能活得好好的),可以尝试下,用新的语言功能来改进现在的SAS运行性能;二来放在硬盘的0101制文件也是会“烂”掉的,不如趁SAS9.3没出来之前拿出来晒晒,也许对大家还有些帮助。 (更多…)
原创文章: ”SAS9数据步的新发现 旧稿新编 2006“,转载请注明: 转自SAS资源资讯列表
本文链接地址: http://saslist.net/archives/141
WWW网页
1, 很真诚地说,SAS自带的help帮助是最好的学SAS的资料,通常来说每个版本的SAS帮助有两种形式,一种就是随SAS软件安装一起存在于被安装电脑中的.chm格式文件;还有一种就是在SAS公司网站在线的帮助文件,提供pdf格式下载和html格式的阅读。
地址在:http://support.sas.com/documentation/
上面两种形式的帮助文件存在一定的差别,主要在1,online的帮助会经常更新,一些新的模块里面常常出现小错误(比如代码等)。有时你会发现自带的帮助里面的代码有时候运行出错,去网站找到同样问题的代码,你会发现运行很好,原因就是online可以实时更新。2,online版帮助可谓是号称史上最全的SAS帮助文档,22个开头字母一字排开,很有气场,里面有的模块也许一辈子也不会接触。相比而言,随机的chm文件只提供和安装介质相应的help文档。当然随机的chm文件还是有些优点的,比如查找问题起来很方便,速度快,还无需上网。个人认为大多数人还是倾向用随机的help,优点有二:一个是够用,一个是够快。
2,http://support.sas.com/notes/index.html
SAS公司提供一些编程小技巧,以前在support.sas.com/sassamples/quicktips/(已失效)里面,现在已经更新了。 上面经常会有一些实用的小代码出现,特别是一些新模块的代码举例。
3,http://support.sas.com/documentation/onlinedoc/code.samples.html
大家都知道,SAS公司出版的书籍非常昂贵,全是美金做单位,还不打折。但是与书对应的代码却是免费的。如果你想学习SAS的某个内容或者感觉自己学习SAS没有进展,那就到这里来读SAS代码吧,全部免费,可以下载打印出来慢慢品味。
世界各地有个叫SAS users group (SUG)的组织,不能的地方的SUG就加个代表该地区的缩写以示区别,比如说美国的一些SUG及简称:Southeast SAS Users Group (SESUG),MidWest SAS Users Group (MWSUG) ,Western Users of SAS Software (WUSS),South Central SAS Users Group (SCSUG) ,NorthEast SAS Users Group (NESUG)。 这些组织不是组织SAS程序员看电影,旅游参观等等活动,他们是组织当地的SAS程序员交流SAS使用经验,每次会议都有大量的论文投稿,其中不乏高质量的代码和应用论文,并且几乎所有论文都可以从上面提供的地址下载到。这些论文往往是SAS程序员在实际应用SAS经验的总结,并且各种难度级别和应用领域的文章都用,非常值得一看,特别是对于SAS高级技术进阶人员来说。随便说一下,在SAS公司的全球usergroup的列表里面只有日本,韩国,新加坡,其中日本从00年开始都连续搞了10年了。
以上资源都是免费的,几乎包括一切你需要学习和能够用到的。但是你会发现为什么没有中文的,全是英文的。本博就是为发布最新的最全面的中文资源资讯而建立的。
原创文章: ”学习SAS编程技术的好出处——网页资源“,转载请注明: 转自SAS资源资讯列表
本文链接地址: http://saslist.net/archives/41
BBS论坛 (按人气和知名度综合排行)
SAS中文论坛 http://www.mysas.net/forum/index.php
目前人气最足的SAS中文论坛
人大经济论坛 SAS专版 http://www.pinggu.org/bbs/index.asp?boardid=68
在校学生比例高,资源多,不过需要论坛币。
SASor论坛 http://sasor.feoh.net/
最早的中文SAS论坛,可惜后来人气越来越低,不过底蕴深厚,可以翻翻老底。
Mitbbs未名空间 统计版 http://www.mitbbs.com/mitbbs_bbsdoc.php?board=statistics
多为国外华人集聚的空间,里面有非常多讨论SAS的精彩主题,可惜需要翻墙。
当然还有一些其他的有关SAS的论坛,都不如上面专业和回答及时。
原创文章: ”学习和讨论SAS技术的好出处——论坛资源“,转载请注明: 转自SAS资源资讯列表
本文链接地址: http://saslist.net/archives/24