将带负数的向量提升到R中的小数指数

use*_*796 2 math r

我有一个包含负数的数字向量,我想把它提升到一个小数指数,但不能弄清楚如何做到这一点.这是一些示例代码.

a = seq(5,-5,1)
b = a^(5/2)
Run Code Online (Sandbox Code Playgroud)

bNANa为负时返回值.然而,

d = -5^(5/2) 
Run Code Online (Sandbox Code Playgroud)

作品.我知道这是因为R中的优先级,但是如何做我想要的,也就是乘以绝对值a,然后分配负数(同时也评估可能性a == 0)?

我知道这更像是数学和R问题而不是统计数据,所以如果需要移动我会这样做.

Syc*_*ica 7

exponent <- function(a, pow) (abs(a)^pow)*sign(a)
Run Code Online (Sandbox Code Playgroud)

  • 好的.比我的更优雅. (3认同)