gpt4 book ai didi

sas - 从数据步骤中的文本文件加载 SAS 代码

转载 作者:行者123 更新时间:2023-12-02 05:07:37 25 4
gpt4 key购买 nike

假设我有一个 SAS 数据步骤,我从其平均值中减去每个观察值(比如,我只有变量 X):

data tmp;
set tmp;
x = x-2;
run;

假设 mean 并不总是 2 并且我有另一个脚本创建一个包含一行的文本文件,其中包含:

x = x-2;

现在,问题是,有什么办法可以让我得到类似这样的东西:

data tmp;
set tmp;
load text_file;
run;

做与第一个数据步骤相同的事情?换句话说,我想要一个依赖于使用文件内容的解决方案(如我在数据步骤或宏中所示)。

最佳答案

%INCLUDE 会做你想做的。假设你的文本文件“c:\mycode.sas”有一行

x=x-2;

然后你可以这样做:

data tmp;
set tmp;
%include "c:\mycode.sas";
run;

我注意到这是一种非常非常糟糕的方法,但这正是您所要求的。

如果我想从 x 中减去 x 的平均值(标准化数据),我要么使用 PROC STDIZE,要么这样做:

proc means data=tmp;
var x;
output out=x_mean mean=x_bar;
run;

data want;
set tmp;
if _n_ = 1 then set x_mean;
x=x-x_bar;
run;

或者,PROC STDIZE(包含在 SAS/STAT 中):

proc stdize data=tmp out=want_std method=mean;
var x;
run;

关于sas - 从数据步骤中的文本文件加载 SAS 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16045219/

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