gpt4 book ai didi

dataset - SAS 过程删除和数据集

转载 作者:行者123 更新时间:2023-12-02 05:52:34 29 4
gpt4 key购买 nike

我刚刚学习 sas 并且看到了两个有趣的过程。

  proc Delete data = table;  run;

  proc datasets lib=Libr nolist;
modify table;
rename __first = second;
quit;
run;

以及关于它们的几个问题:

  1. 为什么有些程序以quit而不是run的方式结束?

  2. 为什么 datasets 同时使用 quitrun? (这是退出表的语句吗?)

  3. 是否最好推荐使用 datasets-procedure 来完成小任务? (当然不是,但是为了什么?或者不使用它?)

  4. 还有,哪种方法更快:proc deletesql-drop? (速度更快,需要的数据量更大)

最佳答案

  1. 一些 SAS程序以 QUIT 结尾, 而不是 RUN ,因为它们在 Interactive Mode 中运行.例如,在 PROC GLM ,你可以在SAS的顶部指定一个额外的模型声明窗口显示 PROC GLM正在运行(如果您使用的是 Windows 版本)。

  2. 一些程序员养成了输入 QUIT 的习惯和 RUN一起。我认为这并不重要,因为使用 QUIT 的过程一旦你输入它们,语句就会开始运行。我只使用一个或另一个。

  3. PROC DELETE是不受支持的遗留功能;它已被 PROC DATASETS 正式取代,它是 SAS 中处理数据集的指定工具。 Mailing List Post .

我发现自己在 SAS 时通常不需要删除数据集.因为SAS有效地管理它的内存使用,并且由于现在 RAM 非常充足,我通常 90% 的工作都来 self 在 session 开始时按需创建的临时数据集。

  1. 和以前一样,PROC DELETE现在已弃用 PROC DATASETS .就哪个更快而言,排除非常大的数据,我敢打赌它们之间几乎没有区别。然而,在处理永久性 SAS 数据集时,我喜欢使用 PROC DATASETS而不是 PROC SQL ,仅仅是因为我觉得使用 SAS 设计的方法而不是 SQL 来处理永久数据集更好我认为实现(不是 100%)。

关于dataset - SAS 过程删除和数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10193412/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com