重命名ONE SAS库中多个数据集中的多个变量

布拉德

有没有一种方法可以重命名ONE SAS库中多个表中的相同变量,在该表中还有其他不具有该表的表?所有具有需要重命名的变量的表的表名都以相同的两个字符开头。我见过宏可以在一个数据集中重命名多个变量,但不能在多个数据集中重命名多个变量。任何帮助,如果这是可能的,将不胜感激!

用户名

不需要宏。您可以使用调用执行和proc数据集将某些东西组合在一起。例如

data _null_;
  set sashelp.vtable end = eof;
  /*Replace xx with your two-letter dataset prefix*/
  where libname = upcase('mylib') and memname eq: upcase('xx') and memtype = 'DATA';
  if _n_ = 1 then call execute('proc datasets lib = mylib;');
  call execute(catx(' ','modify',memname,'; rename var1 = newvar1 var2 = newvar2; run;'));
  if eof then call execute('quit;');
run;

这应该或多或少地瞬时运行,因为它只需要修改元数据。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章