R指数产生NaN

时间:2016-04-01 05:02:52

标签: r math exponent

当我对浮点数据进行取幂时,我遇到了一个问题。看起来它应该是一个简单的解决方案。这是我的示例代码:

temp <- c(-0.005220092)
temp^1.1

[1] NaN

-0.005220092^1.1

[1] -0.003086356

我是否有一些明显的错误?对于指数而言,这似乎可能是我的疏忽。

谢谢,

亚历

1 个答案:

答案 0 :(得分:3)

NaN的原因是因为取幂的结果很复杂,所以你必须传递一个复杂的参数:

as.complex(temp)^1.1
[1] -0.002935299-0.000953736i
# or
(temp + 0i)^1.1
[1] -0.002935299-0.000953736i

第二个表达式有效的原​​因是因为一元-的优先级低于^,所以这相当于-(0.005220092^1.1)。请参阅?Syntax