我在运行时遇到以下错误' proc hpsplit'在sas中创建决策树。
sas error: hpspit was unable to open the rules file for output
我的代码是 -
proc hpsplit data=sashelp.hmeq maxdepth=7 maxbranch=2;
target BAD;
input DELINQ DEROG JOB NINQ REASON / level=nom;
input CLAGE CLNO DEBTINC LOAN MORTDUE VALUE YOJ / level=int;
criterion entropy;
prune misc / N <= 6;
partition fraction(validate=0.2);
rules file='hpsplhme2-rules.txt';
score out=scored2;
run;
但如果我更改声明&#39;规则文件&#39;声明如下 -
rules file="%sysfunc(pathname(work))/rule.txt";
在这种情况下运行正常,但后来我无法查看rule.txt文件。 请建议我可以查看文件的方式或我可以继续的任何其他方式。
答案 0 :(得分:0)
可能就像
一样简单options noxwait noxsync xmin;
%sysexec
start
"Preview output"
"%sysfunc(pathname(WORK))\temp.txt"
;
如果简单不起作用,解决方案取决于您的SAS客户端和SAS主机安全策略。
答案 1 :(得分:0)
rules file='hpsplhme2-rules.txt';
不一定会写作;这取决于您当前会话中的默认目录。根据我的经验,通常不起作用。如果你在DM模式下运行SAS,那就是窗口右下角的任何内容(对于我的安装,默认是我的用户目录,即C:\ Users \ myusername)。但它可以在任何地方,只取决于管理员设置的位置,以及您是否在代码中执行了任何cd
命令。
这里的答案是完全限定您的路径名称。如果您在服务器上运行此命令,请确保该路径是您可以从服务器写入的路径(可能不是“c:\ something”)。