sas的sysfunc varnum函数

本文详细介绍了SAS编程中的%sysfunc函数,包括如何使用它打开和关闭数据集,获取数据集属性,以及通过varnum和fetchobs/getvarc函数处理变量和观测值。通过示例展示了如何创建一个宏来读取指定数据集的特定变量值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

%sysfunc函数是在宏语句中,执行sas或者用户自定义函数
%sysfunc(function(argument<,format>)
%let dsid=%sysfunc(open(&data_in,i));
open函数用来打开一个数据集并返回一个非零的描述符,参数i表示只读
close函数用于关闭数据集
 
Attrn
用来获取相应数据集的指定数值类型的信息
Attrc
用来获取数据集的指定字符型信息
 
用attrn计算行数和列数
%let dsid=%sysfunc(open(sashelp.class,i));
%let nrow=%sysfunc(attrn(%dsid,nobs)); /*行数*/
%let ncol=%sysfunc(attrn(%dsid,nvars); /*列数*/
%let rc=%sysfunc(close(%dsid));
 
Varnum
返回变量所在的位置,即变量在数据集中的第j列,值即为多少
Fectchobs
读取指定的第i条观测,若成功则返回0,如果读完所有观测,则返回-1
Getvarc
需要和fetchobs配合使用,fetchobs控制读取值所在的观测数
getvarc读取第i条观测的第j个变量的值(i,j)
 
%let dsid=%sysfunc(open(sashelp.class,i));
%let varnume=%sysfunc(varnum(&dsid,age));
 
%macro ds(dain=,var=);
 
data aa;
 
%let dsid=%sysfunc(open(&a

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值