SAS 学习笔记(十)— SAS函数

简介

函数类型
数组函数 / 字符函数 / 日期时间函数 / 描述统计函数 / 金融函数 / 数学函数
概率函数 / 随机数函数 / 三角函数 / 特殊函数 / 州和Zip码换算函数

SAS 变量列表
SAS变量列表是对要引用的一组变量的简写形式
在第一个变量名称前需使用OF关键字
四种形式:

  • 序号区间 Total = sum(of Year1-Year4);
  • 名称区间 Total = sum(of Year2--Year4);
  • 名称前缀 Total = sum(of Year:);
  • 特殊SAS名称列表
    在这里插入图片描述

字符变量处理

字符处理函数
  • SUBSTR 函数 (右侧)
    在赋值语句右侧的SUBSTR 函数可用于提取字符。
    NewVar=SUBSTR(string,start<,length>);

  • PROPCASE 函数
    PROPCASE函数将变量中的所有字符转换为合适的格式。
    (第一个字符为大写,其他的字符为小写 )
    NewVar = PROPCASE(argument <,delimiter(s)>);

  • delimiter(s)是用于分隔的字符。若缺失,默认的分隔符包括空格, /, - ,制表符等
  • SCAN 函数
    用于返回一个字符串中的第 n个词。
    NewVar = SCAN(string,n<,charlist>);
  • 当字符串中的字符值个数少于指定的n 时,返回缺失值。
  • 当n 为负数时,SCAN函数将从字符串的末尾开始选择字符。
  • 创建得到的之前未用LENGTH 语句对进行定义的变量值的长度为200 字节。
  • 第一个字符值前的分隔符无效。
  • 任何的字符或字符组合也可作为分隔符。
  • 两个或更多的连续的分隔符被视为一个分隔符
  • CATX 函数
    CATX 可对字符串进行连接。
    NewVar = CATX(separator, string-1, … ,string-n)
  • separator,是一个字符串,其将会被插入到各连接的参数中。
  • 若之前未用LENGTH语句对NewVar进行定义,则创建的NewVar的长度将为200字节。
  • 连接运算符
    !!||

  • FIND 函数
    FIND函数在目标字符串中搜寻指定的子字符串。
    若要搜寻的子字符串被找到,返回其第一次出现的位置。如果未找到,返回 0值
    Position = FIND(string,substring <,modifiers,startpos> );

  • Modifiers 可以是
    I 表示不区分大小写的搜寻。
    T 表示忽略string和substring中的拖尾空格。
  • startpos 指定从字符串的何处开始搜寻子字符串。
  • SUBSTR 函数(左侧)
    (在赋值语句左侧)用于对字符变量进行字符替换。
    SUBSTR(string,start<,length>)=value;
  • length指定string中被替换字符的长度。若缺失,则从 start 位置到string 最后的所有字符全部进行替换。
  • Length的值不能大于剩余字符的长度(包括尾部空格)
  • TRANWRD函数
    用TRANWRD函数可对字符串中指定的字符值或字符串进行替换或清除。
    NewVar = TRANWRD(source,target,replacement);
  • TRANWRD函数不会移除target或者replacement的尾部空格。
  • 若未预先定义长度,则新变量NewVar 的长度将为200字节。
    若查找的源字符中没有目标字符,则不会发生替换
  • COMPRESS 函数
    可将源字符中的指定字符除去。
    (若不指定要除去的字符,COMPRESS 函数会将源字符
    中的空格全部删去)
    NewVar = COMPRESS(source<,chars>);

  • 其他字符处理函数
    在这里插入图片描述在这里插入图片描述
    在这里插入图片描述


案例
  • CASE1
  • 5
    点赞
  • 81
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值