在 SAS 中保留/删除变量

发布于 2024-12-07 20:43:06 字数 142 浏览 0 评论 0原文

我想从大型 SAS 数据集中删除列/变量,称之为“数据”。我将所有想要删除的列名存储在另一个 SAS 数据集中 - 让我们称之为“var”,它有一个带有标题列的列。如何使用 drop 函数从原始数据集“data”中删除“var”中包含的所有变量?

谢谢!

I want to remove columns/variables from a large SAS dataset, call it 'data'. I have all of the column names that I want to drop stored in another SAS dataset - let's call it 'var', it has a single column with header column. How do I drop all of the variables contained in 'var' from my original dataset 'data' with the drop function?

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦境 2024-12-14 20:43:06

您可以使用 proc sql 的“into”子句将变量名称列从“vars”数据集复制到宏变量中,然后将其传递到数据步骤中的 drop= 语句。见下文:

proc sql noprint;
  select <name_of_column> into: vars_to_drop separated by " "
  from var;
quit;

data data;
  set data (drop= &vars_to_drop);
run;

You can use the "into" clause of proc sql to copy the column of variable names from the "vars" data set into a macro variable that you then pass to the drop= statement in a data step. See below:

proc sql noprint;
  select <name_of_column> into: vars_to_drop separated by " "
  from var;
quit;

data data;
  set data (drop= &vars_to_drop);
run;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文