R annoyances
Dear John, I have not expected to cause that many traffic and largish discussion. What I tried to point out is that: - a "programmer" should know that one has to use TRUE / FALSE in code in order to make it work generaly which is also checked by R CMD check. - a "user" simply typing some lines in order to look at the data can shortly write T or F instead. where "programmer" and "user" are not well defined and probably undistinguishable according to Chambers (1998). I'd call people using [..., drop=FALSE] "programmer" here, since the code is probably used inside functions. S-PLUS compatibility (T/F) has to be considered as well. All possible changes to T/F (both removing the meaning of TRUE/FALSE in a clean session and making them reserved words) would break code of lots of users. With a common amount of statistical uncertainty I think it might be too late for changes ... Best, Uwe
John Fox wrote:
Dear Uwe, I've often wondered why T and F aren't reserved words in R as TRUE and FALSE are. Perhaps there's some use of T and F as variables, but that seems ill-advised. Regards, John -------------------------------- John Fox Department of Sociology McMaster University Hamilton, Ontario Canada L8S 4M4 905-525-9140x23604 http://socserv.mcmaster.ca/jfox --------------------------------
-----Original Message----- From: r-help-bounces at stat.math.ethz.ch [mailto:r-help-bounces at stat.math.ethz.ch] On Behalf Of Uwe Ligges Sent: Thursday, May 19, 2005 10:08 AM To: Chalasani, Prasad Cc: r-help at stat.math.ethz.ch Subject: Re: [R] R annoyances Chalasani, Prasad wrote:
Thanks all for pointing out that I can use mtx[,1,drop=F]
Which, for example, won't work for
F <- 10.25
---> drop=FALSE !
^^^^^
Uwe Ligges
-----Original Message----- From: Uwe Ligges [mailto:ligges at statistik.uni-dortmund.de] Sent: Thursday, May 19, 2005 10:49 AM To: Chalasani, Prasad Cc: r-help at stat.math.ethz.ch Subject: Re: [R] R annoyances Chalasani, Prasad wrote:
Dear R Folks, I'm a big fan of R, but there are a couple of things that
repeatedly
annoy me, and I wondered if anyone has neat ways to deal with them. (a) When using "apply" row-wise to a matrix, it returns the results column-wise, and to preserve the original orientation, I've to do a transpose. E.g. I've to keep doing a transpose, which I consider to be quite annoying. transformed.mtx <- t(apply( mtx, 1, exp))
I'd rather type exp(mtx)
(b) When extracting 2 or more columns of a matrix, R returns the result as a matrix, BUT when extracting just one column, it returns a vector/array, rather than a matrix, so I've to keep doing as.matrix, which is annoying. sub.mtx <- as.matrix(mtx[,1]) Of course I could write a suitable function cols <- function(mtx,range) as.matrix(mtx[, range]) but then I lose the syntactic sugar of being able to say "[,1]".
The docs suggest: mtx[ , 1, drop = FALSE] Uwe Ligges
______________________________________________ R-help at stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
______________________________________________ R-help at stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html