我在对 float 据求幂时遇到了问题。看起来应该很容易解决。这是我的示例代码:
temp <- c(-0.005220092)
temp^1.1
[1] NaN
-0.005220092^1.1
[1] -0.003086356
我在这方面犯了一些明显的错误吗?看来这可能是我对指数的疏忽。
谢谢,
亚历克斯
最佳答案
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)
。请参阅 ?语法
。
关于R 指数产生 NaN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36348409/