dataset - 删除 SAS 数据集

标签 dataset sas

在我的 SAS 程序完成后,我想删除几个数据集。我正在使用这个语句:

proc datasets lib=temp;
    delete xtemp2&sysparm trades&sysparm tickers&sysparm;
quit;
run;

在哪里

&sysparm 计算为数字,temp 计算为 libname。但是,我在日志文件中收到以下错误:

142             delete xtemp2&sysparm trades&sysparm tickers&sysparm;
            ______
            180
ERROR 180-322: Statement is not valid or it is used out of proper order.

有人知道这个问题吗?

编辑:

Here is some more of the log file to address the answer:
NOTE: "OUT_CSV" file was successfully created.
NOTE: PROCEDURE EXPORT used (Total process time):
      real time           0.27 seconds
      cpu time            0.12 seconds


142             delete xtemp2&sysparm trades&sysparm tickers&sysparm;
        ______
        180
ERROR 180-322: Statement is not valid or it is used out of proper order.

下面是 proc 之前的代码:

proc export data=temp.xtemp2&sysparm outfile=out_csv dbms=csv replace;
run;

proc datasets lib=temp;
    delete xtemp2&sysparm trades&sysparm tickers&sysparm;
quit;
run;

最佳答案

除了不需要最后一次 RUN 之外,您的代码没有任何明显错误(对于 PROC DATASETS 来说,QUIT 就足够了)。我使用这些参数创建了数据集,并且提供的代码运行良好。当您在 proc 语句之前有一些东西导致 proc 语句无法编译时,通常会出现该错误。例如:

*
proc datasets lib=temp;
    delete xtemp2&sysparm trades&sysparm tickers&sysparm;
quit;

会导致您提供的错误消息,以及几乎所有其他未正确结束的错误消息(尽管大多数其他此类错误会导致前面的语句出现第二条错误消息)。

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

相关文章:

c#-4.0 - 在数据集中查找空值 - DataRow.IsNull 方法与 ==DbNull.Value - c#

sas - 如何对 SAS 宏变量使用算术运算符

variables - 通过数据步骤的 SAS 变量串联

mysql - 是否可以在同一个查询中进行多次计数?

sas - 在 SAS 宏中执行循环

java - 合并两个具有不同但重叠模式和不同实例数量的稀疏 weka 数据集

c# - 返回数据集值给出错误

build - 我可以在构建而不是数据集上安排时间表吗?

excel - 导入数值列中包含无效字符的数据

r - 计算R中函数生成的数据的相关性