2016-04-01 65 views
1

我在指数浮点数据时遇到问题。它似乎应该是一个简单的修复。这里是我的示例代码:R Exponent生成NaN

temp <- c(-0.005220092) 
temp^1.1 

[1] NaN 

-0.005220092^1.1 

[1] -0.003086356 

是否有一些明显的错误,我正在与此?这似乎可能是我对于指数的一个疏忽。

感谢,

亚历

回答

3

的原因楠,因为幂的结果是复杂的,所以你必须通过一个复杂的论证:

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

+0

非常感谢!这清除了这一点,我很欣赏快速反应。 –

+1

这让我想起'命运::幸运(147)'。 – RHertel

+0

@RHertel非常漂亮! – Faridcher