0

我正在尝试使用一系列 if 和 else 语句,用于:

if var1 = 1 then var2 = "day 1";

else if var1 = 2 then var2 = "day 2";

以上位工作正常。

然后我有var11.1 和 1.2 和 2.1 等的值。我想要的是,如果 的值var1是 xx 格式(一个小数点后的值),那么var2 = "No day assigned".

我不确定如何在 SAS 中进行编程?

任何指针将不胜感激。

4

1 回答 1

1

我会使用 MOD 函数来确定 var1 是否为整数。如果您的上述逻辑适用于所有值(即天数与 var1 相同),那么您还可以将 if 语句简化为一行。

data test;
input var1;
length var2 $15;
var2=ifc(mod(var1,1)=0,cats('day ',var1),'No day assigned');
cards;
1
2
1.1
2.1
3
4
;
run;
于 2013-02-27T12:23:01.600 回答