[R] WIERD: Basic computing in R

Marc Schwartz marc_schwartz at comcast.net
Tue Jul 1 20:43:28 CEST 2008


on 07/01/2008 01:15 PM poolloopus at yahoo.com wrote:
> Can someone please enlighten me as to why the following happens?
>> -2.7^8.6
> [1] -5125.407
> 
>> p<- -2.7 q<- 8.6 p^q
> [1] NaN 

> R seems perfectly able to calculate -2.7^8.6, but fails when
> the exact same values are assigned to variables and then the
> computation is repeated. Thanks in advance for any suggetsions. Kris.

You are not seeing what you think you are seeing in the first result.

 > -2.7^8.6
[1] -5125.407

is parsed in the same way as:

 > -(2.7^8.6)
[1] -5125.407

In other words, it is parsed as:

 > 2.7^8.6
[1] 5125.407

and then negated.

If you were to 'properly' define the precedence of operation, you would use:

 > (-2.7)^8.6
[1] NaN

which is the same result you get when you use the vectors.


See R FAQ 7.33 Why are powers of negative numbers wrong?:

http://cran.r-project.org/doc/FAQ/R-FAQ.html#Why-are-powers-of-negative-numbers-wrong_003f

HTH,

Marc Schwartz



More information about the R-help mailing list