首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SAS - %let和libname组合的结果

SAS - %let和libname组合的结果
EN

Stack Overflow用户
提问于 2018-01-14 12:30:33
回答 1查看 2.8K关注 0票数 0

我目前正在学习SAS,我有一个代码需要修改和重用,但首先我必须理解它。我的问题只是其中的一小部分(代码顶部)。下面是:

代码语言:javascript
复制
%let dir=/home/user/PROJECT/CODES/;
%let dir_project=/home/user/PROJECT/;

libname inp "&dir_project" compress=yes;
libname out "&dir.out" compress=yes;

%let tg=out.vip;

我的问题是:

  1. &dir.out是什么意思?它指的是什么?我想这是个叫"out“的东西。它是在找数据库吗?如果是的话,我所有的数据库通常都是临时的,我应该把它改为WORK.OUT吗?
  2. "tg“的最终路径是什么?我怀疑它是:"/home/user/PROJECT/CODES/out.vip“。

最初,代码指的是C: drive上的一些位置,但我完全在Studio中工作,所以我必须对其进行调整。

提前谢谢你

EN

回答 1

Stack Overflow用户

发布于 2018-01-14 13:45:27

1- &dir.是一个宏变量.周期标志着变量的结束,因此&dir.out在运行时解析为/home/user/PROJECT/CODES/out。您的libname语句现在将链接libref out到这个物理位置。

2- tg变量是数据集引用,格式为"library.dataset“。在这里,out是库,vip是数据集。这样您就可以编写代码,例如:

代码语言:javascript
复制
data &tg.;
  set sashelp.class; 
run;

若要在vip库中创建dataset out,请执行以下操作。

这样,你实际上(几乎)是对的。&tg.的结果路径(解析为out.vip)将是/home/user/PROJECT/CODES/out/vip.sas7bdat

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48249600

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档