CALL SYMPUT与CALL SYMPUTX区别
来源:互联网 发布:美工设计岗位职责 编辑:程序博客网 时间:2024/05/18 01:13
http://www2.sas.com/proceedings/sugi29/052-29.pdf
[SAS] CALL SYMPUT与CALLSYMPUTX
CALL SYMPUT的功能是可以在DATA step内将值塞到一个macro变量里面。如果这个macro变量已经存在,那这个call就会更新该macro变量的值。
CALL SYMPUT简介
CALL SYMPUT基本用法:
CALL SYMPUT (macro便俩个 , 值);
注:不会自动去除值前后的空白
可以分成常见的两种写法:
(1) 这一行statement可以將值Cookie塞入macro变量Gift里面,值必须给予单引号
call symput (‘Gift’,'Cookie’);
(2) DATA set变量nage的值塞入macro变量a14。这里macro变量名称为a14,存在DATA step的字串变量myvar內
myvar=’a14′;
call symput (myvar,nage);
CALL SYMPUT范例
data temp;
run;
proc means data=temp;
run;
程序中put(nage,z2.),用put做数字转文字的转换,将nage算好的值变成文字。不用put函数也可以,因为sas会自动帮你转换,但是差别在于对对其余空格让版面很丑。
結果如下↓
CALL SYMPUTX简介
那CALL SYMPUTX基本写法:
CALL SYMPUTX (macro变量 , text , );
上面提到CALL SYMPUT不会把值的前后空白去掉,但是CALL SYMPUTX会自动去点前后空白
而且第三个位置的是选择性的设定,可由3种选择
分別是G(global symbol table)、L(local symbol table)、F(当macro变量已存在与任一个symbol table)
CALL SYMPUT范例
在这个例子,CALL SYMPUTX被放在cards之前,因此在每次DATA step执行的时候,CALL SYMPUTX就会执行
此程式目的在抓取最后一笔booktitle的值
data newbooks;
run;
%put The value of macro var LASTTTILE is &lasttitle.;
結果
The value of macro var LASTTTILE is
因为资料最后一笔值是「Everday Email Eriquette」,就会被写入put里面。
- CALL SYMPUT与CALL SYMPUTX区别
- call symput与call symputx详解
- CALL SYMPUT Routine
- SAS宏技术中,%let和call symput有什么区别?
- SAS宏技术中,%let和call symput有什么区别?
- call与execute区别
- call() 与 apply()区别
- call与apply区别
- call()与apply()的区别
- call与apply的区别
- js call()与apply(区别)
- apply()与call()的区别
- call与apply的区别
- apply()与call()的区别
- call by value 与call by reference的区别
- call
- call
- call
- android开机启动到程序执行运行流程简图
- android studio 上传svn忽略文件
- (JAVA)门禁系统
- KVCKVO
- gulp-优化压缩
- CALL SYMPUT与CALL SYMPUTX区别
- 2.运维功能
- 各种Java加密算法
- andorid_关于TextView后面ImageView挤没的问题解决
- python 之每天一点点
- 从_NSA_攻击库到《Android_绿色应用公约》_国内移动开发环境安全性如何?
- Linux FTP服务器的搭建
- Windows ID事件及解释(XP、2000、2003)【转】
- 大数据、云计算系统顶级架构师课程学习路线图