SAS attrn函数
2016-06-08 14:46
1121 查看
可用attrn函数计算行数列数,方法为:
/*计算行数:*/
当计算列数,将nobs(num of observations)换成nvars(number of variations)
注意:
1、Sysfunc是SAS宏里功能最为强大的一个statement,它可以调用包括SAS和SCL在内的所有内置函数。
2、在给宏变量赋值时,为了使用数据步中的函数(如:SUBSTR,SCAN,TRIM,LEFT等;一些数据步函数不能套用此宏函数,如:PUT,INPUT,LAG,DIF等)对值进行加工,需要用此宏函数将值扩起来。
方法:%SYSFUNC(数据步函数名(自变量)<,输出格式>)。
例:%let currdate = %sysfunc(today(),worddate.);
注:在宏或宏语句中嵌套使用数据步函数时,必须在每个数据步函数外使用%SYSFUNC。
3、上面程序使用了3个SCL函数,即open,attrn,close。
其中,Open用来打开一个数据集并返回一个非零的描述符,参数I表示input(read only);
Attrn函数用来获取相应数据集的指定数值类型的信息(attrc用于获取指定的字符型信息);
Close函数用于关闭数据集。
/*计算行数:*/
%let dsid=%sysfunc(open(sashelp.class,i)); %let n=%sysfunc(attrn(&dsid,nobs)); %let rc=%sysfunc(close(&dsid)); %put obsnum=&n;
当计算列数,将nobs(num of observations)换成nvars(number of variations)
注意:
1、Sysfunc是SAS宏里功能最为强大的一个statement,它可以调用包括SAS和SCL在内的所有内置函数。
2、在给宏变量赋值时,为了使用数据步中的函数(如:SUBSTR,SCAN,TRIM,LEFT等;一些数据步函数不能套用此宏函数,如:PUT,INPUT,LAG,DIF等)对值进行加工,需要用此宏函数将值扩起来。
方法:%SYSFUNC(数据步函数名(自变量)<,输出格式>)。
例:%let currdate = %sysfunc(today(),worddate.);
注:在宏或宏语句中嵌套使用数据步函数时,必须在每个数据步函数外使用%SYSFUNC。
3、上面程序使用了3个SCL函数,即open,attrn,close。
其中,Open用来打开一个数据集并返回一个非零的描述符,参数I表示input(read only);
Attrn函数用来获取相应数据集的指定数值类型的信息(attrc用于获取指定的字符型信息);
Close函数用于关闭数据集。
相关文章推荐
- UIAlertViewController弹出控件代码集成5步
- 通过nginx实现内网hadoop、hbase集群对外访问web界面
- Mybatis入门实例(一)
- iText系列(三) Itext生成PDF文件加密与加水印
- iOS 线程安全之@synchronized的用法
- 0-2岁宝宝学习能力三步走
- Android 5.x Theme 与 ToolBar 实战
- ListView设置分割线颜色
- 算法分析之复杂度
- 你还傻傻的分不清“和服"和"浴衣"吗?
- 蛇形走线参数设置
- 几个前端时间插件总结
- RxJava初探
- ios开发静态库生成
- qu
- minicom 没有tx 信号
- Qt中update()和repaint()的源码分析
- C++ 类自动生成函数
- 编译tomcat-redis-session-manager-master部署到tomcat上
- map集合取出key