unary "-" on logicals
On Thu, Oct 11, 2001 at 03:38:02PM -0600, HEUMANN,JOHN (A-Loveland,ex1) wrote:
"An Introduction to R" says that arithmetic operators coerce logical vectors to numeric vectors. This doesn't seem to be true for unary "-" however:
x <- 1:10 p1 <- (x > 5) p2 <- (-p1) is.logical(p2)
[1] TRUE
is.numeric(p2)
[1] FALSE Since "==" always does binary comparison, this can lead to some bizarre behavior:
p1
[1] FALSE FALSE FALSE FALSE FALSE TRUE TRUE TRUE TRUE TRUE
p2
[1] FALSE FALSE FALSE FALSE FALSE TRUE TRUE TRUE TRUE TRUE
(p1 == p2)
[1] TRUE TRUE TRUE TRUE TRUE FALSE FALSE FALSE FALSE FALSE
((!p1) == (!p2))
[1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
If you try
as.numeric(p1)
[1] 0 0 0 0 0 1 1 1 1 1
as.numeric(p2)
[1] 0 0 0 0 0 -1 -1 -1 -1 -1 So there is a coercion and a bug, somehow p2 is not forgetting to be a logical....
Considering that p1 and p2 are both logicals, the last two results seem to defy Boolean logic. Is the fact that -p1 remains a logical instead of a numeric intentional or a bug? Regards, -jh- ========================================= John M. Heumann, Agilent Technologies 815 14th St. S.W., Loveland, CO 80537 USA Email: john_heumann at agilent.com Phone: 970 679-3761 FAX: 970 679-5399 ========================================= -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
+---------------------------------------------------------------------------+ | Robert Gentleman phone : (617) 632-5250 | | Associate Professor fax: (617) 632-2444 | | Department of Biostatistics office: M1B28 | Harvard School of Public Health email: rgentlem at jimmy.dfci.harvard.edu | +---------------------------------------------------------------------------+ -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._