SAS函数使用'power' / 指数函数

20

我可能漏了一些显而易见的东西,但是如何在SAS中计算“幂”呢?

例如X的平方,或Y的立方?

我需要的是变量1的variable2次方,但找不到语法……(我正在使用SAS 9.1.3)


2
SAS语法并不总是遵循已经建立的惯例(可能是因为语法太老了)。<>运算符特别讨厌,因为它被解释为最大值,并且因为SAS将0和缺失解释为假,而将其他任何东西解释为真。 - Ville Koskinen
3个回答

32

明白了!这里没有函数。

你需要做的是:

变量1 ** 变量2;


6
data t;
  num = 5;
  pow = 2;
  res = num**pow;
run;
proc print data = t;
run;

1

使用POWER函数和CONSTANT函数(如果需要)。

nbr_squared = power(nbr, 2);
nbr_cubed = power(nbr, 3);
E_to_the_power_2 = power(constant('E'),2);

不确定为什么这个回答得到了两个赞,但是它是错误的;在基本的SAS中没有POWER函数,除非你自己实现它。**运算符才是正确的答案。 - Joe
@Joe,现在proc ds2power()是有效的。 - whymath
1
@whymath 或许是吧,但这绝对不是一个 PROC DS2 的问题。 - Joe

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接