我试图计算一系列基于后面的值的值。例如,第10行中的变量A用于计算第9行中的变量B,第10行中的变量A以及第9行中的变量B用于计算第8行中的变量C等。是否有一种很好的方法可以做到这一点?每行都有一个字符变量/名称来标记它。我已经尝试使用此代码保留声明,但不保留特定值:SAS保留特定变量供以后使用
data null;
set oldData;
if name = 'Jimmy' then do;
variableA = variableNull1 + variableNull2;
retain variableA;
end;
if name = 'Johnny' then do;
variableB = variable A + variableNull3;
retain variableB;
end;
if name = 'Bobby' then do;
variableC = variableA + variable B + variableNull4;
retain variableC;
end;
(continue process for a few more lines)
run;
另一个想法是,如果我可以随便填上下每个变量,这也将正常工作。谢谢大家的帮助。
所需的输出是:
Jimmy VariableNull3 VariableC
Johnny VariableNull2 VariableB
Bobby VariableNull1 VariableA
注意,空的变量是通用的,可能有多个。如果我们有这样的输出也是可以的(但首选是这样的):
Jimmy VariableNull3 VariableA VariableB VariableC
Johnny VariableNull2 VariableA VariableB VariableC
Bobby VariableNull1 VariableA VariableB VariableC
您可以发布输入数据集和所需的输出示例吗? – NEOmen 2015-02-23 02:57:37
@NeOmen我刚刚添加了两个输出,可以和我在一起。谢谢! – Code4Days 2015-02-23 03:09:37
你可以发布样本输入吗? – NEOmen 2015-02-23 03:11:49