4

因此,R 表达式及其输出如下:

> (4-7)^1.3
[1] NaN

任何想法如何在 R 中解决这个问题?

4

2 回答 2

8

答案是一个复数,所以你需要给它一个复数参数:

> (4-7+0i)^1.3
[1] -2.451751-3.374545i

但请记住,这只是一个根...

于 2011-11-17T12:23:45.500 回答
6

我引用维基百科,尤其是粗体文本(http://en.wikipedia.org/wiki/Exponentiation):

IEEE 754-2008 浮点标准用于大多数浮点库的设计。它推荐了许多不同的函数来计算幂:[19]

  • pow 将 00 视为 1。这是最早定义的版本。如果幂是精确整数,则结果与 pown 相同,否则结果与 powr 相同(某些例外情况除外)。
  • pown 将 00 视为 1。幂必须是精确整数。该值是为负数定义的,例如 pown(-3,5) 是 -243。
  • powr 将 00 视为 NaN(非数字 - 未定义)。对于像 powr(−3,2) 这样底数小于零的情况,该值也是 NaN。该值由 epower×log(base) 定义。

所以我认为 R 根据国际标准表现出标准行为。

于 2011-11-17T12:31:19.497 回答